<?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>90766</bug_id>
          
          <creation_ts>2012-07-09 02:59:05 -0700</creation_ts>
          <short_desc>Register protocol handler files should be in Modules/protocolhandler</short_desc>
          <delta_ts>2012-07-12 04:26:50 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>90940</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Gyuyoung Kim">gyuyoung.kim</reporter>
          <assigned_to name="Gyuyoung Kim">gyuyoung.kim</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>664755</commentid>
    <comment_count>0</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-07-09 02:59:05 -0700</bug_when>
    <thetext>In my humble opinion, NavigatorRegisterProtocolHandler files is able to be moved to Modules. This modules is self-contained. However, I&apos;m not sure whether Bug 82266 should be landed first. If not so, files related to protocol handler should be moved to the modules.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664756</commentid>
    <comment_count>1</comment_count>
      <attachid>151220</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-07-09 03:00:36 -0700</bug_when>
    <thetext>Created attachment 151220
Patch for EFL ,GTK and QT port</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664757</commentid>
    <comment_count>2</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-07-09 03:01:43 -0700</bug_when>
    <thetext>CC&apos;ing Adam and Hajime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664759</commentid>
    <comment_count>3</comment_count>
      <attachid>151220</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-07-09 03:05:58 -0700</bug_when>
    <thetext>Comment on attachment 151220
Patch for EFL ,GTK and QT port

Attachment 151220 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/13167171</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664760</commentid>
    <comment_count>4</comment_count>
      <attachid>151220</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-09 03:07:38 -0700</bug_when>
    <thetext>Comment on attachment 151220
Patch for EFL ,GTK and QT port

Attachment 151220 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13157785</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664764</commentid>
    <comment_count>5</comment_count>
      <attachid>151220</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-07-09 03:22:00 -0700</bug_when>
    <thetext>Comment on attachment 151220
Patch for EFL ,GTK and QT port

Attachment 151220 did not pass win-ews (win):
Output: http://queues.webkit.org/results/13156885</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664902</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-07-09 08:57:12 -0700</bug_when>
    <thetext>protocolhandler is listed under &quot;Current Non-Modules Using Module-Related Techniques for Loose Coupling&quot; rather than &quot;Possibly Planned Modules, Based on Previous Emails and the Spreadsheet&quot;:

http://lists.webkit.org/pipermail/webkit-dev/2012-February/019628.html

The conversation progressed somewhat after that email, but that&apos;s a reasonably snapshot of our thinking about this topic back in February.  Obviously, the things we discussed in that thread aren&apos;t set in stone, but you might want to review that thread before working on these sorts of changes.  If you think we should do something different than what we discussed then, you might want to start a new thread on webkit-dev about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>664932</commentid>
    <comment_count>7</comment_count>
      <attachid>151264</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-07-09 10:03:55 -0700</bug_when>
    <thetext>Created attachment 151264
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>667495</commentid>
    <comment_count>8</comment_count>
      <attachid>151264</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-07-12 01:11:54 -0700</bug_when>
    <thetext>Comment on attachment 151264
Patch

Having the webkit-dev thread http://markmail.org/message/q3hvwjukeachf7sj got no objection, I&apos;d r+ this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>667510</commentid>
    <comment_count>9</comment_count>
      <attachid>151264</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-12 01:33:09 -0700</bug_when>
    <thetext>Comment on attachment 151264
Patch

Rejecting attachment 151264 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
ndler.cpp
rm &apos;Source/WebCore/page/NavigatorRegisterProtocolHandler.cpp&apos;
patching file Source/WebCore/page/NavigatorRegisterProtocolHandler.h
rm &apos;Source/WebCore/page/NavigatorRegisterProtocolHandler.h&apos;
patching file Source/WebCore/page/NavigatorRegisterProtocolHandler.idl
rm &apos;Source/WebCore/page/NavigatorRegisterProtocolHandler.idl&apos;

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--force&apos;, u&apos;--reviewer&apos;, u&apos;Hajime Mor...&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue/

Full output: http://queues.webkit.org/results/13205617</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>667529</commentid>
    <comment_count>10</comment_count>
      <attachid>151886</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-07-12 01:51:29 -0700</bug_when>
    <thetext>Created attachment 151886
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>667618</commentid>
    <comment_count>11</comment_count>
      <attachid>151886</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-12 04:26:44 -0700</bug_when>
    <thetext>Comment on attachment 151886
Patch

Clearing flags on attachment: 151886

Committed r122445: &lt;http://trac.webkit.org/changeset/122445&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>667620</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-12 04:26:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>151220</attachid>
            <date>2012-07-09 03:00:36 -0700</date>
            <delta_ts>2012-07-09 10:03:34 -0700</delta_ts>
            <desc>Patch for EFL ,GTK and QT port</desc>
            <filename>patch-protocol-handler.patch</filename>
            <type>text/plain</type>
            <size>30579</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNv
cmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZTM1NzcwNy4uZjZhYjMyNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTUsNiArNSw3IEBAIFNFVChXZWJDb3JlX0lOQ0xVREVfRElSRUNUT1JJRVMKICAg
ICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbmRleGVkZGIiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvaW50ZW50cyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9ub3RpZmljYXRp
b25zIgorICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlciIKICAgICAi
JHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9xdW90YSIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxl
cy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJkYXRhYmFzZSIKQEAg
LTEyNyw2ICsxMjgsOCBAQCBTRVQoV2ViQ29yZV9JRExfRklMRVMKICAgICBNb2R1bGVzL2dlb2xv
Y2F0aW9uL1Bvc2l0aW9uRXJyb3IuaWRsCiAgICAgTW9kdWxlcy9nZW9sb2NhdGlvbi9Qb3NpdGlv
bkVycm9yQ2FsbGJhY2suaWRsCiAKKyAgICBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0
b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwKKwogICAgIE1vZHVsZXMvd2ViYXVkaW8vQXVk
aW9CdWZmZXIuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZlckNhbGxiYWNrLmlk
bAogICAgIE1vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXJTb3VyY2VOb2RlLmlkbApAQCAtMzky
LDcgKzM5NSw2IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIHBhZ2UvTG9jYXRpb24uaWRs
CiAgICAgcGFnZS9NZW1vcnlJbmZvLmlkbAogICAgIHBhZ2UvTmF2aWdhdG9yLmlkbAotICAgIHBh
Z2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZS5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsCiAgICAgcGFnZS9QZXJmb3Jt
YW5jZUVudHJ5TGlzdC5pZGwKQEAgLTQzNCw2ICs0MzYsOCBAQCBTRVQoV2ViQ29yZV9TT1VSQ0VT
CiAgICAgTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2NhdGlvbkNvbnRyb2xsZXIuY3BwCiAgICAg
TW9kdWxlcy9nZW9sb2NhdGlvbi9OYXZpZ2F0b3JHZW9sb2NhdGlvbi5jcHAKIAorICAgIE1vZHVs
ZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcAor
CiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcAogICAgIGFjY2Vzc2liaWxpdHkv
QWNjZXNzaWJpbGl0eUFSSUFHcmlkLmNwcAogICAgIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0
eUFSSUFHcmlkQ2VsbC5jcHAKQEAgLTEwODAsNyArMTA4NCw2IEBAIFNFVChXZWJDb3JlX1NPVVJD
RVMKICAgICBwYWdlL01vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuY3BwCiAgICAgcGFnZS9O
YXZpZ2F0b3IuY3BwCiAgICAgcGFnZS9OYXZpZ2F0b3JCYXNlLmNwcAotICAgIHBhZ2UvTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwCiAgICAgcGFnZS9PcmlnaW5BY2Nlc3NFbnRy
eS5jcHAKICAgICBwYWdlL1BhZ2UuY3BwCiAgICAgcGFnZS9QYWdlR3JvdXAuY3BwCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggNzYxYzhhYi4uOTkxMDMxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEy
LTA3LTA5ICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAg
ICAgUmVnaXN0ZXIgcHJvdG9jb2wgaGFuZGxlciBmaWxlcyBzaG91bGQgYmUgaW4gTW9kdWxlcy9w
cm90b2NvbGhhbmRsZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTkwNzY2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlIHJlZ2lzdGVyIHByb3RvY29sIGhhbmRsZXIgZmlsZXMgYXJlIG5vdyBzZWxmLWNv
bnRhaW5lZC4gVGhpcyBwYXRjaCBpcyBtb3ZlZCB0byB0aGUgTW9kdWxlcy4KKworICAgICAgICBO
byBuZXcgdGVzdHMuIENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBDTWFr
ZUxpc3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKyAgICAgICAgKiBHTlVtYWtl
ZmlsZS5saXN0LmFtOgorICAgICAgICAqIE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRv
clJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwLgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjppbml0UHJvdG9jb2xIYW5kbGVyV2hpdGVsaXN0KToK
KyAgICAgICAgKFdlYkNvcmU6OnZlcmlmeUN1c3RvbUhhbmRsZXJVUkwpOgorICAgICAgICAoV2Vi
Q29yZTo6aXNQcm90b2NvbFdoaXRlbGlzdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OnZlcmlmeVBy
b3RvY29sSGFuZGxlclNjaGVtZSk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JSZWdpc3Rl
clByb3RvY29sSGFuZGxlcjo6TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIpOgorICAg
ICAgICAoV2ViQ29yZTo6TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6On5OYXZpZ2F0
b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlcjo6cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIpOgorICAgICAg
ICAoV2ViQ29yZTo6Y3VzdG9tSGFuZGxlcnNTdGF0ZVN0cmluZyk6CisgICAgICAgIChXZWJDb3Jl
OjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6aXNQcm90b2NvbEhhbmRsZXJSZWdp
c3RlcmVkKToKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyOjp1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKToKKyAgICAgICAgKiBNb2R1bGVzL3Byb3Rv
Y29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oOiBSZW5hbWVkIGZy
b20gU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5o
LgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29s
SGFuZGxlcik6CisgICAgICAgICogTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVn
aXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFn
ZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwuCisgICAgICAgICogVGFyZ2V0
LnByaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKwogMjAxMi0wNy0wOCAgU2hlcmlmZiBCb3Qg
IDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9s
bGluZyBvdXQgcjEyMTk2OC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxl
LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggYjgyNWYwYi4uZTkzMjg5
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvU291cmNl
L1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAgLTE3LDYgKzE3LDcgQEAgd2ViY29yZV9jcHBmbGFn
cyArPSBcCiAJLUkkKHNyY2RpcikvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIgXAog
CS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0gXAogCS1JJChz
cmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucyBcCisJLUkkKHNyY2Rp
cikvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIgXAogCS1JJChzcmNkaXIp
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8gXAogCS1JJChzcmNkaXIpL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UgXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2Vic29ja2V0cyBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCAz
NWI2ZDVkLi5mYjQ1ZWQ1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTcxMyw2
ICs3MTMsNyBAQCBkb21fYmluZGluZ19pZGxzICs9IFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90
aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90
aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaWRsIFwKKwkkKFdlYkNv
cmUpL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyLmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwg
XAogCSQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1Bhbm5lck5vZGUuaWRsIFwKIAkk
KFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgXApA
QCAtMTIwNiw2ICsxMjA3LDggQEAgd2ViY29yZV9tb2R1bGVzX3NvdXJjZXMgKz0gXAogCVNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2Fs
bGJhY2suaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckNv
bnRleHROb3RpZmljYXRpb25zLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmlj
YXRpb25zL1dvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmggXAorCVNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNw
cCBcCisJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVn
aXN0ZXJQcm90b2NvbEhhbmRsZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRh
YmFzZS9BYnN0cmFjdERhdGFiYXNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJk
YXRhYmFzZS9BYnN0cmFjdERhdGFiYXNlLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vi
ZGF0YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBwZXIuY3BwIFwKQEAgLTMwNDUsOCArMzA0OCw2IEBA
IHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaCBc
CiAJU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JCYXNlLmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvcGFnZS9OYXZpZ2F0b3JCYXNlLmggXAotCVNvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIFwKLQlTb3VyY2UvV2ViQ29yZS9wYWdlL05hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggXAogCVNvdXJjZS9XZWJDb3JlL3BhZ2UvT3Jp
Z2luQWNjZXNzRW50cnkuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wYWdlL09yaWdpbkFjY2Vzc0Vu
dHJ5LmggXAogCVNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAgXApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIv
TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjBkNWViODkKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxl
ci5jcHAKQEAgLTAsMCArMSwyMTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIFNhbXN1
bmcgRWxlY3Ryb25pY3MuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMgYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAq
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IKKyAqIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSCisgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSAorICogREFNQUdFLgorICovCisKKyNpbmNsdWRl
ICJjb25maWcuaCIKKyNpbmNsdWRlICJOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5o
IgorCisjaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNU
T01fU0NIRU1FX0hBTkRMRVIpCisKKyNpbmNsdWRlICJDaHJvbWUuaCIKKyNpbmNsdWRlICJDaHJv
bWVDbGllbnQuaCIKKyNpbmNsdWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkV4Y2VwdGlvbkNv
ZGUuaCIKKyNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIk5hdmlnYXRvci5oIgorI2luY2x1
ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorCituYW1lc3BhY2UgV2ViQ29y
ZSB7CisKK3N0YXRpYyBIYXNoU2V0PFN0cmluZz4qIHByb3RvY29sV2hpdGVsaXN0OworCitzdGF0
aWMgdm9pZCBpbml0UHJvdG9jb2xIYW5kbGVyV2hpdGVsaXN0KCkKK3sKKyAgICBwcm90b2NvbFdo
aXRlbGlzdCA9IG5ldyBIYXNoU2V0PFN0cmluZz47CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHBy
b3RvY29sc1tdID0geworI2lmICFQTEFURk9STShCTEFDS0JFUlJZKQorICAgICAgICAiaXJjIiwK
KyAgICAgICAgIm1haWx0byIsCisgICAgICAgICJtbXMiLAorICAgICAgICAibmV3cyIsCisgICAg
ICAgICJubnRwIiwKKyAgICAgICAgInNtcyIsCisgICAgICAgICJzbXN0byIsCisgICAgICAgICJ0
ZWwiLAorICAgICAgICAidXJuIiwKKyAgICAgICAgIndlYmNhbCIsCisjZW5kaWYKKyAgICB9Owor
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RGX0FSUkFZX0xFTkdUSChwcm90b2NvbHMpOyAr
K2kpCisgICAgICAgIHByb3RvY29sV2hpdGVsaXN0LT5hZGQocHJvdG9jb2xzW2ldKTsKK30KKwor
c3RhdGljIGJvb2wgdmVyaWZ5Q3VzdG9tSGFuZGxlclVSTChjb25zdCBTdHJpbmcmIGJhc2VVUkws
IGNvbnN0IFN0cmluZyYgdXJsLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICAvLyBUaGUgc3Bl
Y2lmaWNhdGlvbiByZXF1aXJlcyB0aGF0IGl0IGlzIGEgU1lOVEFYX0VSUiBpZiB0aGUgIiVzIiB0
b2tlbiBpcworICAgIC8vIG5vdCBwcmVzZW50LgorICAgIHN0YXRpYyBjb25zdCBjaGFyIHRva2Vu
W10gPSAiJXMiOworICAgIGludCBpbmRleCA9IHVybC5maW5kKHRva2VuKTsKKyAgICBpZiAoLTEg
PT0gaW5kZXgpIHsKKyAgICAgICAgZWMgPSBTWU5UQVhfRVJSOworICAgICAgICByZXR1cm4gZmFs
c2U7CisgICAgfQorCisgICAgLy8gSXQgaXMgYWxzbyBhIFNZTlRBWF9FUlIgaWYgdGhlIGN1c3Rv
bSBoYW5kbGVyIFVSTCwgYXMgY3JlYXRlZCBieSByZW1vdmluZworICAgIC8vIHRoZSAiJXMiIHRv
a2VuIGFuZCBwcmVwZW5kaW5nIHRoZSBiYXNlIHVybCwgZG9lcyBub3QgcmVzb2x2ZS4KKyAgICBT
dHJpbmcgbmV3VVJMID0gdXJsOworICAgIG5ld1VSTC5yZW1vdmUoaW5kZXgsIFdURl9BUlJBWV9M
RU5HVEgodG9rZW4pIC0gMSk7CisKKyAgICBLVVJMIGJhc2UoUGFyc2VkVVJMU3RyaW5nLCBiYXNl
VVJMKTsKKyAgICBLVVJMIGt1cmwoYmFzZSwgbmV3VVJMKTsKKworICAgIGlmIChrdXJsLmlzRW1w
dHkoKSB8fCAha3VybC5pc1ZhbGlkKCkpIHsKKyAgICAgICAgZWMgPSBTWU5UQVhfRVJSOworICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3N0YXRp
YyBib29sIGlzUHJvdG9jb2xXaGl0ZWxpc3RlZChjb25zdCBTdHJpbmcmIHNjaGVtZSkKK3sKKyAg
ICBpZiAoIXByb3RvY29sV2hpdGVsaXN0KQorICAgICAgICBpbml0UHJvdG9jb2xIYW5kbGVyV2hp
dGVsaXN0KCk7CisgICAgcmV0dXJuIHByb3RvY29sV2hpdGVsaXN0LT5jb250YWlucyhzY2hlbWUp
OworfQorCitzdGF0aWMgYm9vbCB2ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoY29uc3QgU3Ry
aW5nJiBzY2hlbWUsIEV4Y2VwdGlvbkNvZGUmIGVjKQoreworICAgIGlmIChzY2hlbWUuc3RhcnRz
V2l0aCgid2ViKyIpKSB7CisgICAgICAgIGlmIChpc1ZhbGlkUHJvdG9jb2woc2NoZW1lKSkKKyAg
ICAgICAgICAgIHJldHVybiB0cnVlOworICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIGlmIChpc1Byb3RvY29sV2hpdGVsaXN0ZWQo
c2NoZW1lKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgZWMgPSBTRUNVUklUWV9FUlI7Cisg
ICAgcmV0dXJuIGZhbHNlOworfQorCitOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6
TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKQoreworfQorCitOYXZpZ2F0b3JSZWdp
c3RlclByb3RvY29sSGFuZGxlcjo6fk5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKCkK
K3sKK30KKworI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQordm9pZCBOYXZp
Z2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoTmF2
aWdhdG9yKiBuYXZpZ2F0b3IsIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVy
bCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFu
YXZpZ2F0b3ItPmZyYW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIERvY3VtZW50KiBkb2N1
bWVudCA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+ZG9jdW1lbnQoKTsKKyAgICBpZiAoIWRvY3VtZW50
KQorICAgICAgICByZXR1cm47CisKKyAgICBTdHJpbmcgYmFzZVVSTCA9IGRvY3VtZW50LT5iYXNl
VVJMKCkuYmFzZUFzU3RyaW5nKCk7CisKKyAgICBpZiAoIXZlcmlmeUN1c3RvbUhhbmRsZXJVUkwo
YmFzZVVSTCwgdXJsLCBlYykpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghdmVyaWZ5UHJv
dG9jb2xIYW5kbGVyU2NoZW1lKHNjaGVtZSwgZWMpKQorICAgICAgICByZXR1cm47CisKKyAgICBQ
YWdlKiBwYWdlID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQor
ICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCktPnJlZ2lzdGVy
UHJvdG9jb2xIYW5kbGVyKHNjaGVtZSwgYmFzZVVSTCwgdXJsLCBuYXZpZ2F0b3ItPmZyYW1lKCkt
PmRpc3BsYXlTdHJpbmdNb2RpZmllZEJ5RW5jb2RpbmcodGl0bGUpKTsKK30KKyNlbmRpZgorCisj
aWYgRU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikKK3N0YXRpYyBTdHJpbmcgY3VzdG9tSGFu
ZGxlcnNTdGF0ZVN0cmluZyhjb25zdCBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzU3RhdGUg
c3RhdGUpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIG5ld0hhbmRs
ZXIsICgibmV3IikpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3RyaW5nLCByZWdp
c3RlcmVkSGFuZGxlciwgKCJyZWdpc3RlcmVkIikpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwo
Y29uc3QgU3RyaW5nLCBkZWNsaW5lZEhhbmRsZXIsICgiZGVjbGluZWQiKSk7CisKKyAgICBzd2l0
Y2ggKHN0YXRlKSB7CisgICAgY2FzZSBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzTmV3Ogor
ICAgICAgICByZXR1cm4gbmV3SGFuZGxlcjsKKyAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9t
SGFuZGxlcnNSZWdpc3RlcmVkOgorICAgICAgICByZXR1cm4gcmVnaXN0ZXJlZEhhbmRsZXI7Cisg
ICAgY2FzZSBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzRGVjbGluZWQ6CisgICAgICAgIHJl
dHVybiBkZWNsaW5lZEhhbmRsZXI7CisgICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
CisgICAgcmV0dXJuIFN0cmluZygpOworfQorCitTdHJpbmcgTmF2aWdhdG9yUmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXI6OmlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3IqIG5hdmln
YXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0IFN0cmluZyYgdXJsLCBFeGNlcHRpb25D
b2RlJiBlYykKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgZGVjbGlu
ZWQsICgiZGVjbGluZWQiKSk7CisKKyAgICBpZiAoIW5hdmlnYXRvci0+ZnJhbWUoKSkKKyAgICAg
ICAgcmV0dXJuIGRlY2xpbmVkOworCisgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gbmF2aWdhdG9y
LT5mcmFtZSgpLT5kb2N1bWVudCgpOworICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1lbnQtPmJh
c2VVUkwoKS5iYXNlQXNTdHJpbmcoKTsKKworICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFuZGxlclVS
TChiYXNlVVJMLCB1cmwsIGVjKSkKKyAgICAgICAgcmV0dXJuIGRlY2xpbmVkOworCisgICAgaWYg
KCF2ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCisgICAgICAgIHJldHVy
biBkZWNsaW5lZDsKKworICAgIFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2Uo
KTsKKyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybiBkZWNsaW5lZDsKKworICAgIHJldHVy
biBjdXN0b21IYW5kbGVyc1N0YXRlU3RyaW5nKHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+aXNQ
cm90b2NvbEhhbmRsZXJSZWdpc3RlcmVkKHNjaGVtZSwgYmFzZVVSTCwgdXJsKSk7Cit9CisKK3Zv
aWQgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6OnVucmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIoTmF2aWdhdG9yKiBuYXZpZ2F0b3IsIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBT
dHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFuYXZpZ2F0b3ItPmZy
YW1lKCkpCisgICAgICAgIHJldHVybjsKKworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IG5hdmln
YXRvci0+ZnJhbWUoKS0+ZG9jdW1lbnQoKTsKKyAgICBTdHJpbmcgYmFzZVVSTCA9IGRvY3VtZW50
LT5iYXNlVVJMKCkuYmFzZUFzU3RyaW5nKCk7CisKKyAgICBpZiAoIXZlcmlmeUN1c3RvbUhhbmRs
ZXJVUkwoYmFzZVVSTCwgdXJsLCBlYykpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghdmVy
aWZ5UHJvdG9jb2xIYW5kbGVyU2NoZW1lKHNjaGVtZSwgZWMpKQorICAgICAgICByZXR1cm47CisK
KyAgICBQYWdlKiBwYWdlID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5wYWdlKCk7CisgICAgaWYgKCFw
YWdlKQorICAgICAgICByZXR1cm47CisKKyAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCktPnVu
cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoc2NoZW1lLCBiYXNlVVJMLCB1cmwpOworfQorI2VuZGlm
CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9Q
Uk9UT0NPTF9IQU5ETEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQorCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2Nv
bGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMTkzZTAxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuaApAQCAtMCwwICsxLDYxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCBH
b29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEyLCBT
YW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJV
VE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
CisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMg
Q09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRF
IEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorICogQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJ
VFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJ
TiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gKKyAqIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyX2gKKyNkZWZpbmUgTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaAorCisjaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09M
X0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCisKKyNpbmNsdWRlIDx3
dGYvUGFzc1JlZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCituYW1l
c3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIE5hdmlnYXRvcjsKKwordHlwZWRlZiBpbnQgRXhjZXB0
aW9uQ29kZTsKKworY2xhc3MgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIgeworcHVi
bGljOgorI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQorICAgIHN0YXRpYyB2
b2lkIHJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmluZyYgc2No
ZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgRXhjZXB0aW9uQ29k
ZSYpOworI2VuZGlmIAorCisjaWYgRU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikKKyAgICBz
dGF0aWMgU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3IqLCBjb25z
dCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmKTsKKyAg
ICBzdGF0aWMgdm9pZCB1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0
IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYpOworI2Vu
ZGlmCisKK3ByaXZhdGU6CisgICAgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsK
KyAgICB+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKK307CisKK30gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5E
TEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQorCisjZW5kaWYgLy8gTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIu
aWRsIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVn
aXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjFiZDU3ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3By
b3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwKQEAgLTAs
MCArMSwzNCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgICAgQ29weXJpZ2h0IChDKSAyMDEyLCBTYW1z
dW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgICAgVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgIG1v
ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
CisgICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bjsgZWl0aGVyCisgICAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRp
b24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgICAgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgICBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBz
ZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgICAgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisKK21vZHVsZSB3aW5kb3cg
eworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgU3VwcGxlbWVudGFsPU5hdmlnYXRvcgorICAg
IF0gTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIgeworICAgICAgICBbQ29uZGl0aW9u
YWw9UkVHSVNURVJfUFJPVE9DT0xfSEFORExFUl0gdm9pZCByZWdpc3RlclByb3RvY29sSGFuZGxl
cihpbiBET01TdHJpbmcgc2NoZW1lLCBpbiBET01TdHJpbmcgdXJsLCBpbiBET01TdHJpbmcgdGl0
bGUpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgW0NvbmRpdGlv
bmFsPUNVU1RPTV9TQ0hFTUVfSEFORExFUl0gRE9NU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVn
aXN0ZXJlZChpbiBET01TdHJpbmcgc2NoZW1lLCBpbiBET01TdHJpbmcgdXJsKQorICAgICAgICAg
ICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisgICAgICAgIFtDb25kaXRpb25hbD1DVVNUT01fU0NI
RU1FX0hBTkRMRVJdIHZvaWQgdW5yZWdpc3RlclByb3RvY29sSGFuZGxlcihpbiBET01TdHJpbmcg
c2NoZW1lLCBpbiBET01TdHJpbmcgdXJsKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlv
bik7CisgICAgfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBi
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggNTc3MDhlZC4uZjMxZGE2YyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJn
ZXQucHJpCkBAIC00MzIsNiArNDMyLDcgQEAgU09VUkNFUyArPSBcCiAgICAgTW9kdWxlcy9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAgXAogICAgIE1vZHVsZXMvbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVyLmNwcCBcCiAgICAgTW9kdWxlcy9ub3RpZmljYXRp
b25zL1dvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmNwcCBcCisgICAgTW9kdWxlcy9wcm90b2Nv
bGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIFwKICAgICBjc3Mv
Q1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgXAogICAgIGNzcy9DU1NCb3JkZXJJbWFnZVNsaWNlVmFs
dWUuY3BwIFwKICAgICBjc3MvQ1NTQm9yZGVySW1hZ2UuY3BwIFwKQEAgLTEwNDAsNyArMTA0MSw2
IEBAIFNPVVJDRVMgKz0gXAogICAgIHBhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0UmVzdWx0cy5j
cHAgXAogICAgIHBhZ2UvTmF2aWdhdG9yLmNwcCBcCiAgICAgcGFnZS9OYXZpZ2F0b3JCYXNlLmNw
cCBcCi0gICAgcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAgXAogICAg
IHBhZ2UvT3JpZ2luQWNjZXNzRW50cnkuY3BwIFwKICAgICBwYWdlL1BhZ2UuY3BwIFwKICAgICBw
YWdlL1BhZ2VHcm91cC5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5w
cmkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAxYWY5Y2NjLi5hMGFhNDdiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnByaQpAQCAtMjEsNiArMjEsNyBAQCBJTkNMVURFUEFUSCArPSBcCiAgICAgJCRT
T1VSQ0VfRElSL01vZHVsZXMvZ2VvbG9jYXRpb24gXAogICAgICQkU09VUkNFX0RJUi9Nb2R1bGVz
L2luZGV4ZWRkYiBcCiAgICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvbm90aWZpY2F0aW9ucyBcCisg
ICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyIFwKICAgICAkJFNPVVJDRV9E
SVIvTW9kdWxlcy9xdW90YSBcCiAgICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvd2ViYXVkaW8gXAog
ICAgICQkU09VUkNFX0RJUi9Nb2R1bGVzL3dlYmRhdGFiYXNlIFwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNWViODkuLjAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKKysrIC9k
ZXYvbnVsbApAQCAtMSwyMTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSwgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMiwgU2Ft
c3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucyBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRP
UlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQot
ICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUgotICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKLSAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZ
LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNICi0gKiBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
LmgiCi0KLSNpZiBFTkFCTEUoUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgfHwgRU5BQkxFKENV
U1RPTV9TQ0hFTUVfSEFORExFUikKLQotI2luY2x1ZGUgIkNocm9tZS5oIgotI2luY2x1ZGUgIkNo
cm9tZUNsaWVudC5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9u
Q29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9yLmgiCi0jaW5j
bHVkZSAiUGFnZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotc3RhdGljIEhhc2hTZXQ8U3RyaW5nPiogcHJvdG9jb2xXaGl0ZWxpc3Q7Ci0KLXN0
YXRpYyB2b2lkIGluaXRQcm90b2NvbEhhbmRsZXJXaGl0ZWxpc3QoKQotewotICAgIHByb3RvY29s
V2hpdGVsaXN0ID0gbmV3IEhhc2hTZXQ8U3RyaW5nPjsKLSAgICBzdGF0aWMgY29uc3QgY2hhciog
cHJvdG9jb2xzW10gPSB7Ci0jaWYgIVBMQVRGT1JNKEJMQUNLQkVSUlkpCi0gICAgICAgICJpcmMi
LAotICAgICAgICAibWFpbHRvIiwKLSAgICAgICAgIm1tcyIsCi0gICAgICAgICJuZXdzIiwKLSAg
ICAgICAgIm5udHAiLAotICAgICAgICAic21zIiwKLSAgICAgICAgInNtc3RvIiwKLSAgICAgICAg
InRlbCIsCi0gICAgICAgICJ1cm4iLAotICAgICAgICAid2ViY2FsIiwKLSNlbmRpZgotICAgIH07
Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHByb3RvY29scyk7
ICsraSkKLSAgICAgICAgcHJvdG9jb2xXaGl0ZWxpc3QtPmFkZChwcm90b2NvbHNbaV0pOwotfQot
Ci1zdGF0aWMgYm9vbCB2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGNvbnN0IFN0cmluZyYgYmFzZVVS
TCwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIC8vIFRoZSBz
cGVjaWZpY2F0aW9uIHJlcXVpcmVzIHRoYXQgaXQgaXMgYSBTWU5UQVhfRVJSIGlmIHRoZSAiJXMi
IHRva2VuIGlzCi0gICAgLy8gbm90IHByZXNlbnQuCi0gICAgc3RhdGljIGNvbnN0IGNoYXIgdG9r
ZW5bXSA9ICIlcyI7Ci0gICAgaW50IGluZGV4ID0gdXJsLmZpbmQodG9rZW4pOwotICAgIGlmICgt
MSA9PSBpbmRleCkgewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgICAgIHJldHVybiBm
YWxzZTsKLSAgICB9Ci0KLSAgICAvLyBJdCBpcyBhbHNvIGEgU1lOVEFYX0VSUiBpZiB0aGUgY3Vz
dG9tIGhhbmRsZXIgVVJMLCBhcyBjcmVhdGVkIGJ5IHJlbW92aW5nCi0gICAgLy8gdGhlICIlcyIg
dG9rZW4gYW5kIHByZXBlbmRpbmcgdGhlIGJhc2UgdXJsLCBkb2VzIG5vdCByZXNvbHZlLgotICAg
IFN0cmluZyBuZXdVUkwgPSB1cmw7Ci0gICAgbmV3VVJMLnJlbW92ZShpbmRleCwgV1RGX0FSUkFZ
X0xFTkdUSCh0b2tlbikgLSAxKTsKLQotICAgIEtVUkwgYmFzZShQYXJzZWRVUkxTdHJpbmcsIGJh
c2VVUkwpOwotICAgIEtVUkwga3VybChiYXNlLCBuZXdVUkwpOwotCi0gICAgaWYgKGt1cmwuaXNF
bXB0eSgpIHx8ICFrdXJsLmlzVmFsaWQoKSkgewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0g
ICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotc3Rh
dGljIGJvb2wgaXNQcm90b2NvbFdoaXRlbGlzdGVkKGNvbnN0IFN0cmluZyYgc2NoZW1lKQotewot
ICAgIGlmICghcHJvdG9jb2xXaGl0ZWxpc3QpCi0gICAgICAgIGluaXRQcm90b2NvbEhhbmRsZXJX
aGl0ZWxpc3QoKTsKLSAgICByZXR1cm4gcHJvdG9jb2xXaGl0ZWxpc3QtPmNvbnRhaW5zKHNjaGVt
ZSk7Ci19Ci0KLXN0YXRpYyBib29sIHZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShjb25zdCBT
dHJpbmcmIHNjaGVtZSwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKHNjaGVtZS5zdGFy
dHNXaXRoKCJ3ZWIrIikpIHsKLSAgICAgICAgaWYgKGlzVmFsaWRQcm90b2NvbChzY2hlbWUpKQot
ICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOwotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0gICAgaWYgKGlzUHJvdG9jb2xXaGl0ZWxpc3Rl
ZChzY2hlbWUpKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBlYyA9IFNFQ1VSSVRZX0VSUjsK
LSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLU5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
OjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcigpCi17Ci19Ci0KLU5hdmlnYXRvclJl
Z2lzdGVyUHJvdG9jb2xIYW5kbGVyOjp+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIo
KQotewotfQotCi0jaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpCi12b2lkIE5h
dmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjpyZWdpc3RlclByb3RvY29sSGFuZGxlcihO
YXZpZ2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0IFN0cmluZyYg
dXJsLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpZiAo
IW5hdmlnYXRvci0+ZnJhbWUoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgRG9jdW1lbnQqIGRv
Y3VtZW50ID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVudCgpOwotICAgIGlmICghZG9jdW1l
bnQpCi0gICAgICAgIHJldHVybjsKLQotICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1lbnQtPmJh
c2VVUkwoKS5iYXNlQXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFuZGxlclVS
TChiYXNlVVJMLCB1cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKCF2ZXJpZnlQ
cm90b2NvbEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAgIHJldHVybjsKLQotICAg
IFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKLSAgICBpZiAoIXBhZ2Up
Ci0gICAgICAgIHJldHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+cmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXIoc2NoZW1lLCBiYXNlVVJMLCB1cmwsIG5hdmlnYXRvci0+ZnJhbWUo
KS0+ZGlzcGxheVN0cmluZ01vZGlmaWVkQnlFbmNvZGluZyh0aXRsZSkpOwotfQotI2VuZGlmCi0K
LSNpZiBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQotc3RhdGljIFN0cmluZyBjdXN0b21I
YW5kbGVyc1N0YXRlU3RyaW5nKGNvbnN0IENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNTdGF0
ZSBzdGF0ZSkKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgbmV3SGFu
ZGxlciwgKCJuZXciKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIHJl
Z2lzdGVyZWRIYW5kbGVyLCAoInJlZ2lzdGVyZWQiKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NB
TChjb25zdCBTdHJpbmcsIGRlY2xpbmVkSGFuZGxlciwgKCJkZWNsaW5lZCIpKTsKLQotICAgIHN3
aXRjaCAoc3RhdGUpIHsKLSAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNOZXc6
Ci0gICAgICAgIHJldHVybiBuZXdIYW5kbGVyOwotICAgIGNhc2UgQ2hyb21lQ2xpZW50OjpDdXN0
b21IYW5kbGVyc1JlZ2lzdGVyZWQ6Ci0gICAgICAgIHJldHVybiByZWdpc3RlcmVkSGFuZGxlcjsK
LSAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNEZWNsaW5lZDoKLSAgICAgICAg
cmV0dXJuIGRlY2xpbmVkSGFuZGxlcjsKLSAgICB9Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBOYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlcjo6aXNQcm90b2NvbEhhbmRsZXJSZWdpc3RlcmVkKE5hdmlnYXRvciogbmF2
aWdhdG9yLCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlv
bkNvZGUmIGVjKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3RyaW5nLCBkZWNs
aW5lZCwgKCJkZWNsaW5lZCIpKTsKLQotICAgIGlmICghbmF2aWdhdG9yLT5mcmFtZSgpKQotICAg
ICAgICByZXR1cm4gZGVjbGluZWQ7Ci0KLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBuYXZpZ2F0
b3ItPmZyYW1lKCktPmRvY3VtZW50KCk7Ci0gICAgU3RyaW5nIGJhc2VVUkwgPSBkb2N1bWVudC0+
YmFzZVVSTCgpLmJhc2VBc1N0cmluZygpOwotCi0gICAgaWYgKCF2ZXJpZnlDdXN0b21IYW5kbGVy
VVJMKGJhc2VVUkwsIHVybCwgZWMpKQotICAgICAgICByZXR1cm4gZGVjbGluZWQ7Ci0KLSAgICBp
ZiAoIXZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShzY2hlbWUsIGVjKSkKLSAgICAgICAgcmV0
dXJuIGRlY2xpbmVkOwotCi0gICAgUGFnZSogcGFnZSA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+cGFn
ZSgpOwotICAgIGlmICghcGFnZSkKLSAgICAgICAgcmV0dXJuIGRlY2xpbmVkOwotCi0gICAgcmV0
dXJuIGN1c3RvbUhhbmRsZXJzU3RhdGVTdHJpbmcocGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5p
c1Byb3RvY29sSGFuZGxlclJlZ2lzdGVyZWQoc2NoZW1lLCBiYXNlVVJMLCB1cmwpKTsKLX0KLQot
dm9pZCBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6dW5yZWdpc3RlclByb3RvY29s
SGFuZGxlcihOYXZpZ2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0
IFN0cmluZyYgdXJsLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpZiAoIW5hdmlnYXRvci0+
ZnJhbWUoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gbmF2
aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVudCgpOwotICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1l
bnQtPmJhc2VVUkwoKS5iYXNlQXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFu
ZGxlclVSTChiYXNlVVJMLCB1cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKCF2
ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAgIHJldHVybjsK
LQotICAgIFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKLSAgICBpZiAo
IXBhZ2UpCi0gICAgICAgIHJldHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+
dW5yZWdpc3RlclByb3RvY29sSGFuZGxlcihzY2hlbWUsIGJhc2VVUkwsIHVybCk7Ci19Ci0jZW5k
aWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJFR0lTVEVS
X1BST1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCi0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjE5M2UwMS4uMDAwMDAwMAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDExLCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAy
MDEyLCBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgot
ICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SCi0gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgotICogQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gKLSAqIERBTUFHRS4KLSAqLwot
Ci0jaWZuZGVmIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyX2gKLSNkZWZpbmUgTmF2
aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaAotCi0jaWYgRU5BQkxFKFJFR0lTVEVSX1BS
T1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCi0KLSNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgot
Ci1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRvcjsKLQotdHlwZWRlZiBpbnQg
RXhjZXB0aW9uQ29kZTsKLQotY2xhc3MgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIg
ewotcHVibGljOgotI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQotICAgIHN0
YXRpYyB2b2lkIHJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmlu
ZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgRXhjZXB0
aW9uQ29kZSYpOwotI2VuZGlmIAotCi0jaWYgRU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikK
LSAgICBzdGF0aWMgU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3Iq
LCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUm
KTsKLSAgICBzdGF0aWMgdm9pZCB1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvcios
IGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYp
OwotI2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRs
ZXIoKTsKLSAgICB+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKLX07Ci0KLX0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NP
TF9IQU5ETEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQotCi0jZW5kaWYgLy8g
TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbApkZWxldGVk
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWJkNTdmMi4uMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbAorKysgL2Rldi9u
dWxsCkBAIC0xLDM0ICswLDAgQEAKLS8qCi0gICAgQ29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENv
cnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQotICAgIENvcHlyaWdodCAoQykg
MjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQotICAgIFRo
aXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQv
b3IKLSAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5l
cmFsIFB1YmxpYwotICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJl
IEZvdW5kYXRpb247IGVpdGhlcgotICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0
IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLQotICAgIFRoaXMgbGlicmFyeSBpcyBk
aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICAgIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
Ci0gICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
LiAgU2VlIHRoZSBHTlUKLSAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1v
cmUgZGV0YWlscy4KLQotICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhl
IEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSAgICBhbG9uZyB3aXRoIHRoaXMg
bGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwotICAg
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwg
RmlmdGggRmxvb3IsCi0gICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCi0qLwotCi1tb2R1
bGUgd2luZG93IHsKLQotICAgIGludGVyZmFjZSBbCi0gICAgICAgIFN1cHBsZW1lbnRhbD1OYXZp
Z2F0b3IKLSAgICBdIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyIHsKLSAgICAgICAg
W0NvbmRpdGlvbmFsPVJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVJdIHZvaWQgcmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCwgaW4gRE9N
U3RyaW5nIHRpdGxlKQotICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0gICAgICAg
IFtDb25kaXRpb25hbD1DVVNUT01fU0NIRU1FX0hBTkRMRVJdIERPTVN0cmluZyBpc1Byb3RvY29s
SGFuZGxlclJlZ2lzdGVyZWQoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCkK
LSAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotICAgICAgICBbQ29uZGl0aW9uYWw9
Q1VTVE9NX1NDSEVNRV9IQU5ETEVSXSB2b2lkIHVucmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoaW4g
RE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCkKLSAgICAgICAgICAgIHJhaXNlcyhE
T01FeGNlcHRpb24pOwotICAgIH07Ci0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>151264</attachid>
            <date>2012-07-09 10:03:55 -0700</date>
            <delta_ts>2012-07-12 01:51:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-90766-20120710020351.patch</filename>
            <type>text/plain</type>
            <size>53043</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIyMTEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjI2NGUwNTRhYmU5NGI4
Nzc2MDhmYjAzZTdkOTkyZTYyMjU4MGJhZi4uNjE0ODgyOGNiODk2ODA5MWE1ODUwNTdkNGJjOWE4
NzAzMmRmOTQ4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTA3LTA5ICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgUmVnaXN0ZXIg
cHJvdG9jb2wgaGFuZGxlciBmaWxlcyBzaG91bGQgYmUgaW4gTW9kdWxlcy9wcm90b2NvbGhhbmRs
ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkwNzY2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHJl
Z2lzdGVyIHByb3RvY29sIGhhbmRsZXIgZmlsZXMgYXJlIG5vdyBzZWxmLWNvbnRhaW5lZC4gVGhp
cyBwYXRjaCBpcyBtb3ZlZCB0byB0aGUgTW9kdWxlcy4KKworICAgICAgICBObyBuZXcgdGVzdHMu
IENvdmVyZWQgYnkgZXhpc3RpbmcgdGVzdHMuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFt
OgorICAgICAgICAqIE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJv
dG9jb2xIYW5kbGVyLmNwcDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwLgorICAgICAgICAoV2ViQ29yZSk6CisgICAg
ICAgIChXZWJDb3JlOjppbml0UHJvdG9jb2xIYW5kbGVyV2hpdGVsaXN0KToKKyAgICAgICAgKFdl
YkNvcmU6OnZlcmlmeUN1c3RvbUhhbmRsZXJVUkwpOgorICAgICAgICAoV2ViQ29yZTo6aXNQcm90
b2NvbFdoaXRlbGlzdGVkKToKKyAgICAgICAgKFdlYkNvcmU6OnZlcmlmeVByb3RvY29sSGFuZGxl
clNjaGVtZSk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFu
ZGxlcjo6TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6On5OYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JSZWdpc3RlclByb3Rv
Y29sSGFuZGxlcjo6cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIpOgorICAgICAgICAoV2ViQ29yZTo6
Y3VzdG9tSGFuZGxlcnNTdGF0ZVN0cmluZyk6CisgICAgICAgIChXZWJDb3JlOjpOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlcjo6aXNQcm90b2NvbEhhbmRsZXJSZWdpc3RlcmVkKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjp1bnJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyKToKKyAgICAgICAgKiBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9O
YXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oLgorICAgICAgICAo
V2ViQ29yZSk6CisgICAgICAgIChOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcik6Cisg
ICAgICAgICogTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuaWRsOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwuCisgICAgICAgICogVGFyZ2V0LnByaToKKyAgICAg
ICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDoKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6Cisg
ICAgICAgICogV2ViQ29yZS5wcmk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52
Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZUNvbW1vbi52c3Byb3BzOgor
ICAgICAgICAqIFdlYkNvcmUudmNwcm9qL2NvcHlGb3J3YXJkaW5nSGVhZGVycy5jbWQ6CisgICAg
ICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorCiAyMDEyLTA3LTA5ICBT
aGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkLCByb2xsaW5nIG91dCByMTIyMTA3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCBlMzU3
NzA3ZjI3M2Q3NzZlYTU2YjEzMTY2ZGIwZGFlMDgwZjU4ZWNlLi5mNmFiMzI2YWViY2YzYjM0ZjE5
OGUwYTAxZTM5MmEwODQyZWQ0YzI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxp
c3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtNSw2ICs1LDcg
QEAgU0VUKFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dFQkNPUkVfRElSfS9N
b2R1bGVzL2luZGV4ZWRkYiIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbnRlbnRzIgog
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMiCisgICAgIiR7V0VCQ09S
RV9ESVJ9L01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1
bGVzL3F1b3RhIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYmF1ZGlvIgogICAgICIk
e1dFQkNPUkVfRElSfS9Nb2R1bGVzL3dlYmRhdGFiYXNlIgpAQCAtMTI3LDYgKzEyOCw4IEBAIFNF
VChXZWJDb3JlX0lETF9GSUxFUwogICAgIE1vZHVsZXMvZ2VvbG9jYXRpb24vUG9zaXRpb25FcnJv
ci5pZGwKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uRXJyb3JDYWxsYmFjay5pZGwK
IAorICAgIE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xI
YW5kbGVyLmlkbAorCiAgICAgTW9kdWxlcy93ZWJhdWRpby9BdWRpb0J1ZmZlci5pZGwKICAgICBN
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvQnVmZmVyQ2FsbGJhY2suaWRsCiAgICAgTW9kdWxlcy93ZWJh
dWRpby9BdWRpb0J1ZmZlclNvdXJjZU5vZGUuaWRsCkBAIC0zOTIsNyArMzk1LDYgQEAgU0VUKFdl
YkNvcmVfSURMX0ZJTEVTCiAgICAgcGFnZS9Mb2NhdGlvbi5pZGwKICAgICBwYWdlL01lbW9yeUlu
Zm8uaWRsCiAgICAgcGFnZS9OYXZpZ2F0b3IuaWRsCi0gICAgcGFnZS9OYXZpZ2F0b3JSZWdpc3Rl
clByb3RvY29sSGFuZGxlci5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlLmlkbAogICAgIHBhZ2Uv
UGVyZm9ybWFuY2VFbnRyeS5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlRW50cnlMaXN0LmlkbApA
QCAtNDM0LDYgKzQzNiw4IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAgICBNb2R1bGVzL2dlb2xv
Y2F0aW9uL0dlb2xvY2F0aW9uQ29udHJvbGxlci5jcHAKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9u
L05hdmlnYXRvckdlb2xvY2F0aW9uLmNwcAogCisgICAgTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIv
TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwCisKICAgICBhY2Nlc3NpYmlsaXR5
L0FYT2JqZWN0Q2FjaGUuY3BwCiAgICAgYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5QVJJQUdy
aWQuY3BwCiAgICAgYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5QVJJQUdyaWRDZWxsLmNwcApA
QCAtMTA4MCw3ICsxMDg0LDYgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAgIHBhZ2UvTW91c2VF
dmVudFdpdGhIaXRUZXN0UmVzdWx0cy5jcHAKICAgICBwYWdlL05hdmlnYXRvci5jcHAKICAgICBw
YWdlL05hdmlnYXRvckJhc2UuY3BwCi0gICAgcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29s
SGFuZGxlci5jcHAKICAgICBwYWdlL09yaWdpbkFjY2Vzc0VudHJ5LmNwcAogICAgIHBhZ2UvUGFn
ZS5jcHAKICAgICBwYWdlL1BhZ2VHcm91cC5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggYjgy
NWYwYjdhN2I2YzI0NmMyNGU2ZTE0YmVjNGJkZDU3N2ZlMWEyNy4uZTkzMjg5YzNkYjkyOGQ4MWYx
OWY5MGM4OTkwMjIxZjJiNzViNGI0ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KQEAgLTE3LDYgKzE3
LDcgQEAgd2ViY29yZV9jcHBmbGFncyArPSBcCiAJLUkkKHNyY2RpcikvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIgXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
bWVkaWFzdHJlYW0gXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucyBcCisJLUkkKHNyY2RpcikvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhh
bmRsZXIgXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8gXAog
CS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UgXAogCS1JJChz
cmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2Vic29ja2V0cyBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQppbmRleCAzNWI2ZDVkZTQzNjZiMWQ4NTRiMDZkNTAxNDAzMTdhZGEyNmM4
ZTVjLi5mYjQ1ZWQ1OWUxYmI3NjIwMjdmOTM2MTcwZDljZGMyOWZkOGZhOTkxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTcxMyw2ICs3MTMsNyBAQCBkb21fYmluZGluZ19pZGxz
ICs9IFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb24uaWRs
IFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIu
aWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJt
aXNzaW9uQ2FsbGJhY2suaWRsIFwKKwkkKFdlYkNvcmUpL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVy
L05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1
bGVzL3dlYmF1ZGlvL0F1ZGlvQ29udGV4dC5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy93ZWJh
dWRpby9BdWRpb1Bhbm5lck5vZGUuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8v
RHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwgXApAQCAtMTIwNiw2ICsxMjA3LDggQEAgd2ViY29y
ZV9tb2R1bGVzX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaCBcCiAJU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckNvbnRleHROb3RpZmlj
YXRpb25zLmggXAorCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCBcCisJU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCBcCiAJ
U291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9BYnN0cmFjdERhdGFiYXNlLmNwcCBc
CiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9BYnN0cmFjdERhdGFiYXNlLmgg
XAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvQ2hhbmdlVmVyc2lvbldyYXBw
ZXIuY3BwIFwKQEAgLTMwNDUsOCArMzA0OCw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291
cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3IuaCBcCiAJU291cmNlL1dlYkNvcmUvcGFnZS9OYXZp
Z2F0b3JCYXNlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JCYXNlLmggXAot
CVNvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3Bw
IFwKLQlTb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
LmggXAogCVNvdXJjZS9XZWJDb3JlL3BhZ2UvT3JpZ2luQWNjZXNzRW50cnkuY3BwIFwKIAlTb3Vy
Y2UvV2ViQ29yZS9wYWdlL09yaWdpbkFjY2Vzc0VudHJ5LmggXAogCVNvdXJjZS9XZWJDb3JlL3Bh
Z2UvUGFnZS5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2Nv
bGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBkNWViODljOTQ4M2Y3OWZlYTEzMzZkZWU2OGU5MzhhN2Yw
MmEwNWQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Byb3RvY29s
aGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKQEAgLTAsMCArMSwy
MTcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTEsIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIsIFNhbXN1bmcgRWxlY3Ryb25pY3MuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlIG1l
dDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAq
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxF
CisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyAqIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSCisgKiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSAorICogREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oIgorCisjaWYgRU5BQkxFKFJF
R0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIp
CisKKyNpbmNsdWRlICJDaHJvbWUuaCIKKyNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKKyNpbmNs
dWRlICJEb2N1bWVudC5oIgorI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlICJG
cmFtZS5oIgorI2luY2x1ZGUgIk5hdmlnYXRvci5oIgorI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNs
dWRlIDx3dGYvSGFzaFNldC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK3N0YXRpYyBIYXNo
U2V0PFN0cmluZz4qIHByb3RvY29sV2hpdGVsaXN0OworCitzdGF0aWMgdm9pZCBpbml0UHJvdG9j
b2xIYW5kbGVyV2hpdGVsaXN0KCkKK3sKKyAgICBwcm90b2NvbFdoaXRlbGlzdCA9IG5ldyBIYXNo
U2V0PFN0cmluZz47CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHByb3RvY29sc1tdID0geworI2lm
ICFQTEFURk9STShCTEFDS0JFUlJZKQorICAgICAgICAiaXJjIiwKKyAgICAgICAgIm1haWx0byIs
CisgICAgICAgICJtbXMiLAorICAgICAgICAibmV3cyIsCisgICAgICAgICJubnRwIiwKKyAgICAg
ICAgInNtcyIsCisgICAgICAgICJzbXN0byIsCisgICAgICAgICJ0ZWwiLAorICAgICAgICAidXJu
IiwKKyAgICAgICAgIndlYmNhbCIsCisjZW5kaWYKKyAgICB9OworICAgIGZvciAoc2l6ZV90IGkg
PSAwOyBpIDwgV1RGX0FSUkFZX0xFTkdUSChwcm90b2NvbHMpOyArK2kpCisgICAgICAgIHByb3Rv
Y29sV2hpdGVsaXN0LT5hZGQocHJvdG9jb2xzW2ldKTsKK30KKworc3RhdGljIGJvb2wgdmVyaWZ5
Q3VzdG9tSGFuZGxlclVSTChjb25zdCBTdHJpbmcmIGJhc2VVUkwsIGNvbnN0IFN0cmluZyYgdXJs
LCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICAvLyBUaGUgc3BlY2lmaWNhdGlvbiByZXF1aXJl
cyB0aGF0IGl0IGlzIGEgU1lOVEFYX0VSUiBpZiB0aGUgIiVzIiB0b2tlbiBpcworICAgIC8vIG5v
dCBwcmVzZW50LgorICAgIHN0YXRpYyBjb25zdCBjaGFyIHRva2VuW10gPSAiJXMiOworICAgIGlu
dCBpbmRleCA9IHVybC5maW5kKHRva2VuKTsKKyAgICBpZiAoLTEgPT0gaW5kZXgpIHsKKyAgICAg
ICAgZWMgPSBTWU5UQVhfRVJSOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAg
Ly8gSXQgaXMgYWxzbyBhIFNZTlRBWF9FUlIgaWYgdGhlIGN1c3RvbSBoYW5kbGVyIFVSTCwgYXMg
Y3JlYXRlZCBieSByZW1vdmluZworICAgIC8vIHRoZSAiJXMiIHRva2VuIGFuZCBwcmVwZW5kaW5n
IHRoZSBiYXNlIHVybCwgZG9lcyBub3QgcmVzb2x2ZS4KKyAgICBTdHJpbmcgbmV3VVJMID0gdXJs
OworICAgIG5ld1VSTC5yZW1vdmUoaW5kZXgsIFdURl9BUlJBWV9MRU5HVEgodG9rZW4pIC0gMSk7
CisKKyAgICBLVVJMIGJhc2UoUGFyc2VkVVJMU3RyaW5nLCBiYXNlVVJMKTsKKyAgICBLVVJMIGt1
cmwoYmFzZSwgbmV3VVJMKTsKKworICAgIGlmIChrdXJsLmlzRW1wdHkoKSB8fCAha3VybC5pc1Zh
bGlkKCkpIHsKKyAgICAgICAgZWMgPSBTWU5UQVhfRVJSOworICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29sIGlzUHJvdG9jb2xX
aGl0ZWxpc3RlZChjb25zdCBTdHJpbmcmIHNjaGVtZSkKK3sKKyAgICBpZiAoIXByb3RvY29sV2hp
dGVsaXN0KQorICAgICAgICBpbml0UHJvdG9jb2xIYW5kbGVyV2hpdGVsaXN0KCk7CisgICAgcmV0
dXJuIHByb3RvY29sV2hpdGVsaXN0LT5jb250YWlucyhzY2hlbWUpOworfQorCitzdGF0aWMgYm9v
bCB2ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoY29uc3QgU3RyaW5nJiBzY2hlbWUsIEV4Y2Vw
dGlvbkNvZGUmIGVjKQoreworICAgIGlmIChzY2hlbWUuc3RhcnRzV2l0aCgid2ViKyIpKSB7Cisg
ICAgICAgIGlmIChpc1ZhbGlkUHJvdG9jb2woc2NoZW1lKSkKKyAgICAgICAgICAgIHJldHVybiB0
cnVlOworICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgIH0KKworICAgIGlmIChpc1Byb3RvY29sV2hpdGVsaXN0ZWQoc2NoZW1lKSkKKyAgICAgICAg
cmV0dXJuIHRydWU7CisgICAgZWMgPSBTRUNVUklUWV9FUlI7CisgICAgcmV0dXJuIGZhbHNlOwor
fQorCitOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6TmF2aWdhdG9yUmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIoKQoreworfQorCitOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxl
cjo6fk5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKCkKK3sKK30KKworI2lmIEVOQUJM
RShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQordm9pZCBOYXZpZ2F0b3JSZWdpc3RlclByb3Rv
Y29sSGFuZGxlcjo6cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoTmF2aWdhdG9yKiBuYXZpZ2F0b3Is
IGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0
aXRsZSwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFuYXZpZ2F0b3ItPmZyYW1lKCkp
CisgICAgICAgIHJldHVybjsKKworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IG5hdmlnYXRvci0+
ZnJhbWUoKS0+ZG9jdW1lbnQoKTsKKyAgICBpZiAoIWRvY3VtZW50KQorICAgICAgICByZXR1cm47
CisKKyAgICBTdHJpbmcgYmFzZVVSTCA9IGRvY3VtZW50LT5iYXNlVVJMKCkuYmFzZUFzU3RyaW5n
KCk7CisKKyAgICBpZiAoIXZlcmlmeUN1c3RvbUhhbmRsZXJVUkwoYmFzZVVSTCwgdXJsLCBlYykp
CisgICAgICAgIHJldHVybjsKKworICAgIGlmICghdmVyaWZ5UHJvdG9jb2xIYW5kbGVyU2NoZW1l
KHNjaGVtZSwgZWMpKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0gbmF2aWdh
dG9yLT5mcmFtZSgpLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm47CisK
KyAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCktPnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKHNj
aGVtZSwgYmFzZVVSTCwgdXJsLCBuYXZpZ2F0b3ItPmZyYW1lKCktPmRpc3BsYXlTdHJpbmdNb2Rp
ZmllZEJ5RW5jb2RpbmcodGl0bGUpKTsKK30KKyNlbmRpZgorCisjaWYgRU5BQkxFKENVU1RPTV9T
Q0hFTUVfSEFORExFUikKK3N0YXRpYyBTdHJpbmcgY3VzdG9tSGFuZGxlcnNTdGF0ZVN0cmluZyhj
b25zdCBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzU3RhdGUgc3RhdGUpCit7CisgICAgREVG
SU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIG5ld0hhbmRsZXIsICgibmV3IikpOworICAg
IERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3RyaW5nLCByZWdpc3RlcmVkSGFuZGxlciwgKCJy
ZWdpc3RlcmVkIikpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3RyaW5nLCBkZWNs
aW5lZEhhbmRsZXIsICgiZGVjbGluZWQiKSk7CisKKyAgICBzd2l0Y2ggKHN0YXRlKSB7CisgICAg
Y2FzZSBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzTmV3OgorICAgICAgICByZXR1cm4gbmV3
SGFuZGxlcjsKKyAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNSZWdpc3RlcmVk
OgorICAgICAgICByZXR1cm4gcmVnaXN0ZXJlZEhhbmRsZXI7CisgICAgY2FzZSBDaHJvbWVDbGll
bnQ6OkN1c3RvbUhhbmRsZXJzRGVjbGluZWQ6CisgICAgICAgIHJldHVybiBkZWNsaW5lZEhhbmRs
ZXI7CisgICAgfQorCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIFN0cmlu
ZygpOworfQorCitTdHJpbmcgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6OmlzUHJv
dG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5n
JiBzY2hlbWUsIGNvbnN0IFN0cmluZyYgdXJsLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgZGVjbGluZWQsICgiZGVjbGluZWQiKSk7
CisKKyAgICBpZiAoIW5hdmlnYXRvci0+ZnJhbWUoKSkKKyAgICAgICAgcmV0dXJuIGRlY2xpbmVk
OworCisgICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVu
dCgpOworICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1lbnQtPmJhc2VVUkwoKS5iYXNlQXNTdHJp
bmcoKTsKKworICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFuZGxlclVSTChiYXNlVVJMLCB1cmwsIGVj
KSkKKyAgICAgICAgcmV0dXJuIGRlY2xpbmVkOworCisgICAgaWYgKCF2ZXJpZnlQcm90b2NvbEhh
bmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCisgICAgICAgIHJldHVybiBkZWNsaW5lZDsKKworICAg
IFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2Up
CisgICAgICAgIHJldHVybiBkZWNsaW5lZDsKKworICAgIHJldHVybiBjdXN0b21IYW5kbGVyc1N0
YXRlU3RyaW5nKHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+aXNQcm90b2NvbEhhbmRsZXJSZWdp
c3RlcmVkKHNjaGVtZSwgYmFzZVVSTCwgdXJsKSk7Cit9CisKK3ZvaWQgTmF2aWdhdG9yUmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXI6OnVucmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoTmF2aWdhdG9yKiBu
YXZpZ2F0b3IsIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0
aW9uQ29kZSYgZWMpCit7CisgICAgaWYgKCFuYXZpZ2F0b3ItPmZyYW1lKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIERvY3VtZW50KiBkb2N1bWVudCA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+ZG9j
dW1lbnQoKTsKKyAgICBTdHJpbmcgYmFzZVVSTCA9IGRvY3VtZW50LT5iYXNlVVJMKCkuYmFzZUFz
U3RyaW5nKCk7CisKKyAgICBpZiAoIXZlcmlmeUN1c3RvbUhhbmRsZXJVUkwoYmFzZVVSTCwgdXJs
LCBlYykpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghdmVyaWZ5UHJvdG9jb2xIYW5kbGVy
U2NoZW1lKHNjaGVtZSwgZWMpKQorICAgICAgICByZXR1cm47CisKKyAgICBQYWdlKiBwYWdlID0g
bmF2aWdhdG9yLT5mcmFtZSgpLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm47CisKKyAgICBwYWdlLT5jaHJvbWUoKS0+Y2xpZW50KCktPnVucmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIoc2NoZW1lLCBiYXNlVVJMLCB1cmwpOworfQorI2VuZGlmCisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSB8
fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFu
ZGxlci5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yMTkzZTAxZjQzN2NhNGFjMzBj
NmM2ZDNmZTFhNjc2MDJjZTVjNTlkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIu
aApAQCAtMCwwICsxLDYxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExLCBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEyLCBTYW1zdW5nIEVs
ZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zIGFyZSBtZXQ6CisgKgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
CisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUgorICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
CisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gKKyAqIERBTUFHRS4KKyAqLworCisjaWZuZGVmIE5hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyX2gKKyNkZWZpbmUgTmF2aWdhdG9yUmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXJfaAorCisjaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIp
IHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCisKKyNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2UgV2Vi
Q29yZSB7CisKK2NsYXNzIE5hdmlnYXRvcjsKKwordHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsK
KworY2xhc3MgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIgeworcHVibGljOgorI2lm
IEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQorICAgIHN0YXRpYyB2b2lkIHJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25z
dCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgRXhjZXB0aW9uQ29kZSYpOworI2Vu
ZGlmIAorCisjaWYgRU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikKKyAgICBzdGF0aWMgU3Ry
aW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3IqLCBjb25zdCBTdHJpbmcm
IHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICBzdGF0aWMg
dm9pZCB1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmluZyYg
c2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYpOworI2VuZGlmCisKK3By
aXZhdGU6CisgICAgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKKyAgICB+TmF2
aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSB8fCBF
TkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQorCisjZW5kaWYgLy8gTmF2aWdhdG9yUmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9w
cm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXIuaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjFiZDU3ZjJmZTJjNDJlNjZlMTlhNmQyNzVkZmMy
OGE4ODA5NWM1NzEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3By
b3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwKQEAgLTAs
MCArMSwzNCBAQAorLyoKKyAgICBDb3B5cmlnaHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24g
YW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCisgICAgQ29weXJpZ2h0IChDKSAyMDEyLCBTYW1z
dW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorCisgICAgVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICAgIG1v
ZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
CisgICAgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv
bjsgZWl0aGVyCisgICAgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRp
b24pIGFueSBsYXRlciB2ZXJzaW9uLgorCisgICAgVGhpcyBsaWJyYXJ5IGlzIGRpc3RyaWJ1dGVk
IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgICAgYnV0IFdJVEhPVVQgQU5Z
IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgICBNRVJD
SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl
IEdOVQorICAgIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorCisgICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBz
ZWUgdGhlIGZpbGUgQ09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgICAgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9v
ciwKKyAgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyovCisKK21vZHVsZSB3aW5kb3cg
eworCisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgU3VwcGxlbWVudGFsPU5hdmlnYXRvcgorICAg
IF0gTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIgeworICAgICAgICBbQ29uZGl0aW9u
YWw9UkVHSVNURVJfUFJPVE9DT0xfSEFORExFUl0gdm9pZCByZWdpc3RlclByb3RvY29sSGFuZGxl
cihpbiBET01TdHJpbmcgc2NoZW1lLCBpbiBET01TdHJpbmcgdXJsLCBpbiBET01TdHJpbmcgdGl0
bGUpCisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgW0NvbmRpdGlv
bmFsPUNVU1RPTV9TQ0hFTUVfSEFORExFUl0gRE9NU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVn
aXN0ZXJlZChpbiBET01TdHJpbmcgc2NoZW1lLCBpbiBET01TdHJpbmcgdXJsKQorICAgICAgICAg
ICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisgICAgICAgIFtDb25kaXRpb25hbD1DVVNUT01fU0NI
RU1FX0hBTkRMRVJdIHZvaWQgdW5yZWdpc3RlclByb3RvY29sSGFuZGxlcihpbiBET01TdHJpbmcg
c2NoZW1lLCBpbiBET01TdHJpbmcgdXJsKQorICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlv
bik7CisgICAgfTsKKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBi
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggNTc3MDhlZGM0ODIwMGNkY2JhNDQ4ODhm
MmRiZTg4ZDRjNjMzNDk3NS4uZjMxZGE2Y2U4YjYzZjJlN2NlODdmMThhMGZhZGQ2NmVmOGQyY2Nl
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9UYXJnZXQucHJpCkBAIC00MzIsNiArNDMyLDcgQEAgU09VUkNFUyArPSBcCiAgICAgTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5jcHAgXAogICAgIE1vZHVsZXMv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25Db250cm9sbGVyLmNwcCBcCiAgICAgTW9kdWxlcy9u
b3RpZmljYXRpb25zL1dvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmNwcCBcCisgICAgTW9kdWxl
cy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIFwK
ICAgICBjc3MvQ1NTQXNwZWN0UmF0aW9WYWx1ZS5jcHAgXAogICAgIGNzcy9DU1NCb3JkZXJJbWFn
ZVNsaWNlVmFsdWUuY3BwIFwKICAgICBjc3MvQ1NTQm9yZGVySW1hZ2UuY3BwIFwKQEAgLTEwNDAs
NyArMTA0MSw2IEBAIFNPVVJDRVMgKz0gXAogICAgIHBhZ2UvTW91c2VFdmVudFdpdGhIaXRUZXN0
UmVzdWx0cy5jcHAgXAogICAgIHBhZ2UvTmF2aWdhdG9yLmNwcCBcCiAgICAgcGFnZS9OYXZpZ2F0
b3JCYXNlLmNwcCBcCi0gICAgcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5j
cHAgXAogICAgIHBhZ2UvT3JpZ2luQWNjZXNzRW50cnkuY3BwIFwKICAgICBwYWdlL1BhZ2UuY3Bw
IFwKICAgICBwYWdlL1BhZ2VHcm91cC5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5neXAvV2ViQ29yZS5neXAgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJD
b3JlLmd5cAppbmRleCBjYjBlNzZhMDUwYTA1NzBmNmViZGZkMmUzNzhjZDc3MTNjN2FlNzk5Li5l
YzI3MDA3YmQ3OGNkNTcwYmUxOTE0ZWExZmI3NDJkMDA1MGU1MzYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cC9XZWJDb3JlLmd5cApAQCAtNjAsNiArNjAsNyBAQAogICAgICAgJy4uL01vZHVs
ZXMvaW5kZXhlZGRiJywKICAgICAgICcuLi9Nb2R1bGVzL21lZGlhc3RyZWFtJywKICAgICAgICcu
Li9Nb2R1bGVzL25vdGlmaWNhdGlvbnMnLAorICAgICAgJy4uL01vZHVsZXMvcHJvdG9jb2xoYW5k
bGVyJywKICAgICAgICcuLi9Nb2R1bGVzL3F1b3RhJywKICAgICAgICcuLi9Nb2R1bGVzL3NwZWVj
aCcsCiAgICAgICAnLi4vTW9kdWxlcy93ZWJhdWRpbycsCkBAIC0xMDQ4LDYgKzEwNDksNyBAQAog
ICAgICAgICAgICAgICAnLS1pbmNsdWRlJywgJy4uL01vZHVsZXMvaW50ZW50cycsCiAgICAgICAg
ICAgICAgICctLWluY2x1ZGUnLCAnLi4vTW9kdWxlcy9tZWRpYXN0cmVhbScsCiAgICAgICAgICAg
ICAgICctLWluY2x1ZGUnLCAnLi4vTW9kdWxlcy9ub3RpZmljYXRpb25zJywKKyAgICAgICAgICAg
ICAgJy0taW5jbHVkZScsICcuLi9Nb2R1bGVzL3Byb3RvY29saGFuZGxlcicsCiAgICAgICAgICAg
ICAgICctLWluY2x1ZGUnLCAnLi4vTW9kdWxlcy93ZWJhdWRpbycsCiAgICAgICAgICAgICAgICct
LWluY2x1ZGUnLCAnLi4vTW9kdWxlcy93ZWJkYXRhYmFzZScsCiAgICAgICAgICAgICAgICctLWlu
Y2x1ZGUnLCAnLi4vY3NzJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lw
aSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCBiNWY0MDQ4MGRkMDQ3ZjlhNDc5
NzkyMGI4ZTI0OTE4NDRlOTgwYmQ3Li40N2EyMTlkNDIzMjM4NzQ1ODllYjVhMzdkYmZiMzQ4ZWJl
Y2ZjZDFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC04NDcsNiArODQ3LDcgQEAKICAgICAgICAgICAg
ICdNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCcsCiAgICAgICAg
ICAgICAnTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFj
ay5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvbm90aWZpY2F0aW9ucy9Xb3JrZXJDb250ZXh0
Tm90aWZpY2F0aW9ucy5pZGwnLAorICAgICAgICAgICAgJ01vZHVsZXMvcHJvdG9jb2xoYW5kbGVy
L05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCcsCiAgICAgICAgICAgICAnTW9k
dWxlcy9xdW90YS9ET01XaW5kb3dRdW90YS5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvcXVv
dGEvU3RvcmFnZUluZm8uaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3F1b3RhL1N0b3JhZ2VJ
bmZvRXJyb3JDYWxsYmFjay5pZGwnLApAQCAtMTE2NCw3ICsxMTY1LDYgQEAKICAgICAgICAgICAg
ICdwYWdlL0xvY2F0aW9uLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9NZW1vcnlJbmZvLmlkbCcs
CiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuaWRsJywKLSAgICAgICAgICAgICdwYWdlL05h
dmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9Q
YWdlUG9wdXBDb250cm9sbGVyLmlkbCcsCiAgICAgICAgICAgICAncGFnZS9QZXJmb3JtYW5jZS5p
ZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2VFbnRyeS5pZGwnLApAQCAtMTU4MCw2
ICsxNTgwLDggQEAKICAgICAgICAgICAgICdNb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uUGVybWlzc2lvbkNhbGxiYWNrLmgnLAogICAgICAgICAgICAgJ01vZHVsZXMvbm90aWZpY2F0
aW9ucy9Xb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5jcHAnLAogICAgICAgICAgICAgJ01vZHVs
ZXMvbm90aWZpY2F0aW9ucy9Xb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5oJywKKyAgICAgICAg
ICAgICdNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFu
ZGxlci5jcHAnLAorICAgICAgICAgICAgJ01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRv
clJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgnLAogICAgICAgICAgICAgJ01vZHVsZXMvcXVvdGEv
RE9NV2luZG93UXVvdGEuY3BwJywKICAgICAgICAgICAgICdNb2R1bGVzL3F1b3RhL0RPTVdpbmRv
d1F1b3RhLmgnLAogICAgICAgICAgICAgJ01vZHVsZXMvcXVvdGEvU3RvcmFnZUluZm8uY3BwJywK
QEAgLTMwNTksOCArMzA2MSw2IEBACiAgICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3IuaCcsCiAg
ICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3JCYXNlLmNwcCcsCiAgICAgICAgICAgICAncGFnZS9O
YXZpZ2F0b3JCYXNlLmgnLAotICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXIuY3BwJywKLSAgICAgICAgICAgICdwYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJv
dG9jb2xIYW5kbGVyLmgnLAogICAgICAgICAgICAgJ3BhZ2UvT3JpZ2luQWNjZXNzRW50cnkuY3Bw
JywKICAgICAgICAgICAgICdwYWdlL09yaWdpbkFjY2Vzc0VudHJ5LmgnLAogICAgICAgICAgICAg
J3BhZ2UvUGFnZS5jcHAnLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcmkg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCAxYWY5Y2NjM2U2NzgyYTAyODhhN2U5
MjQ3N2I1NjgzZWEwODJlODMwLi5hMGFhNDdiZmFlNDEwZTFhMjlkMDY5ZDY0YWVhMjkwZGUyMThl
NzdkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtMjEsNiArMjEsNyBAQCBJTkNMVURFUEFUSCArPSBcCiAg
ICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvZ2VvbG9jYXRpb24gXAogICAgICQkU09VUkNFX0RJUi9N
b2R1bGVzL2luZGV4ZWRkYiBcCiAgICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvbm90aWZpY2F0aW9u
cyBcCisgICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyIFwKICAgICAkJFNP
VVJDRV9ESVIvTW9kdWxlcy9xdW90YSBcCiAgICAgJCRTT1VSQ0VfRElSL01vZHVsZXMvd2ViYXVk
aW8gXAogICAgICQkU09VUkNFX0RJUi9Nb2R1bGVzL3dlYmRhdGFiYXNlIFwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKaW5kZXggNWVjNWM1ZGRhNzhhY2Q2
OTA3YWMxZTAyOWM5M2YzYjAwZjhjZjU3OS4uZTY3M2U3N2RhOWQ2MTAwMjliYmM4MjI2YzRjNmNi
MzA4MWJmNGJjMiAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2Vi
Q29yZS52Y3Byb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52
Y3Byb2oKQEAgLTI0OTI3LDYgKzI0OTI3LDE4IEBACiAJCQkJPC9GaWxlPgogCQkJPC9GaWx0ZXI+
CiAJCQk8RmlsdGVyCisJCQkJTmFtZT0icHJvdG9jb2xoYW5kbGVyIgorCQkJCT4KKwkJCQk8Rmls
ZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNccHJvdG9jb2xoYW5kbGVyXE5hdmlnYXRv
clJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCIKKwkJCQkJPgorCQkJCTwvRmlsZT4KKwkJCQk8
RmlsZQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXE1vZHVsZXNccHJvdG9jb2xoYW5kbGVyXE5hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQk8
L0ZpbHRlcj4KKwkJCTxGaWx0ZXIKIAkJCQlOYW1lPSJxdW90YSIKIAkJCQk+CiAJCQkJPEZpbGUK
QEAgLTI2ODM1LDE0ICsyNjg0Nyw2IEBACiAJCQkJPgogCQkJPC9GaWxlPgogCQkJPEZpbGUKLQkJ
CQlSZWxhdGl2ZVBhdGg9Ii4uXHBhZ2VcTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIu
Y3BwIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxw
YWdlXE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgiCi0JCQkJPgotCQkJPC9GaWxl
PgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXHBhZ2VcT3JpZ2luQWNjZXNzRW50cnku
Y3BwIgogCQkJCT4KIAkJCTwvRmlsZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmVDb21tb24udnNwcm9wcyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmVDb21tb24udnNwcm9wcwppbmRleCAwNjQxZDY1YTAxMjVkOGEzNzQ5MGMz
OGNiOWZjYTgxMzE1NDY3YWY2Li4xMmU4NzY3NmM4NzhlOGM2Y2ExNmJjNDhiOGU2ZjQyMGQ0MDU5
NDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlQ29t
bW9uLnZzcHJvcHMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZUNv
bW1vbi52c3Byb3BzCkBAIC03LDcgKzcsNyBAQAogCT4KIAk8VG9vbAogCQlOYW1lPSJWQ0NMQ29t
cGlsZXJUb29sIgotCQlBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPSImcXVvdDskKFByb2pl
Y3REaXIpLi4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcZmlsZXN5c3RlbSZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xnZW9sb2NhdGlvbiZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xpbmRleGVkZGImcXVvdDs7JnF1b3Q7JChQcm9qZWN0
RGlyKS4uXE1vZHVsZXNccXVvdGEmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNc
bm90aWZpY2F0aW9ucyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9kdWxlc1x3ZWJkYXRh
YmFzZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9kdWxlc1x3ZWJzb2NrZXRzJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxhY2Nlc3NpYmlsaXR5JnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxhY2Nlc3NpYmlsaXR5XHdpbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYnJp
ZGdlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxicmlkZ2VcYyZxdW90OzsmcXVvdDskKFBy
b2plY3REaXIpLi5cYnJpZGdlXGpzYyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cY3NzJnF1
b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxlZGl0aW5nJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxmaWxlYXBpJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxyZW5kZXJpbmcmcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xtYXRobWwmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHJlbmRlcmluZ1xzdHlsZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccmVu
ZGVyaW5nXHN2ZyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYmluZGluZ3MmcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXGJpbmRpbmdzXGdlbmVyaWMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0
RGlyKS4uXGJpbmRpbmdzXGpzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxiaW5kaW5nc1xq
c1xzcGVjaWFsaXphdGlvbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cZG9tJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxkb21cZGVmYXVsdCZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5caGlzdG9yeSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5caHRtbCZxdW90OzsmcXVvdDsk
KFByb2plY3REaXIpLi5caHRtbFxjYW52YXMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGh0
bWxccGFyc2VyJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxodG1sXHNoYWRvdyZxdW90Ozsm
cXVvdDskKFByb2plY3REaXIpLi5caW5zcGVjdG9yJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpciku
Llxsb2FkZXImcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxhcHBjYWNoZSZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5cbG9hZGVyXGFyY2hpdmUmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXGxvYWRlclxhcmNoaXZlXGNmJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxs
b2FkZXJcY2FjaGUmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxpY29uJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxtYXRobWwmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4u
XHBhZ2UmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBhZ2VcYW5pbWF0aW9uJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxwYWdlXHNjcm9sbGluZyZxdW90OzsmcXVvdDskKFByb2plY3RE
aXIpLi5ccGFnZVx3aW4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxhbmltYXRpb24mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXHBsYXRmb3JtXG1vY2smcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBs
YXRmb3JtXHNxbCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cd2luJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxuZXR3b3JrJnF1b3Q7OyZxdW90OyQoUHJv
amVjdERpcikuLlxwbGF0Zm9ybVxuZXR3b3JrXHdpbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5ccGxhdGZvcm1cY2YmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBo
aWNzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xjYSZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVycyZxdW90Ozsm
cXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xhcm0mcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXG9wZW50eXBlJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFuc2Zvcm1zJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVx0ZXh0JnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxwbGF0Zm9ybVx0ZXh0XHRyYW5zY29kZXImcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4u
XHBsYXRmb3JtXGdyYXBoaWNzXHdpbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ceG1sJnF1
b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx4bWxccGFyc2VyJnF1b3Q7OyZxdW90OyQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxvYmpcV2ViQ29yZVxEZXJpdmVkU291cmNlcyZxdW90OzsmcXVvdDsk
KFByb2plY3REaXIpLi5ccGx1Z2lucyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGx1Z2lu
c1x3aW4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xhbmltYXRpb24mcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xncmFwaGljcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5cc3ZnXHByb3BlcnRpZXMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xncmFwaGlj
c1xmaWx0ZXJzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxzdmcmcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXHRlc3RpbmcmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHdtbCZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5cc3RvcmFnZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5cd2Vic29ja2V0cyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cd29ya2VycyZxdW90Ozsm
cXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5jbHVkZSZxdW90OzsmcXVvdDskKENvbmZp
Z3VyYXRpb25CdWlsZERpcilcaW5jbHVkZVxwcml2YXRlJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJh
dGlvbkJ1aWxkRGlyKVxpbmNsdWRlXEphdmFTY3JpcHRDb3JlJnF1b3Q7OyZxdW90OyQoQ29uZmln
dXJhdGlvbkJ1aWxkRGlyKVxpbmNsdWRlXHByaXZhdGVcSmF2YVNjcmlwdENvcmUmcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXEZvcndhcmRpbmdIZWFkZXJzJnF1b3Q7OyZxdW90OyQoV2ViS2l0
TGlicmFyaWVzRGlyKVxpbmNsdWRlJnF1b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxp
bmNsdWRlXHByaXZhdGUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVc
cHJpdmF0ZVxKYXZhU2NyaXB0Q29yZSZxdW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0Rpcilc
aW5jbHVkZVxwdGhyZWFkcyZxdW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVk
ZVxzcWxpdGUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVcSmF2YVNj
cmlwdENvcmUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVcemxpYiZx
dW90OyIKKwkJQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJnF1b3Q7JChQcm9qZWN0RGly
KS4uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXGZpbGVzeXN0ZW0mcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcZ2VvbG9jYXRpb24mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXE1vZHVsZXNcaW5kZXhlZGRiJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpciku
LlxNb2R1bGVzXHByb3RvY29saGFuZGxlciZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9k
dWxlc1xxdW90YSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xub3RpZmljYXRp
b25zJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXHdlYmRhdGFiYXNlJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXHdlYnNvY2tldHMmcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXGFjY2Vzc2liaWxpdHkmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGFj
Y2Vzc2liaWxpdHlcd2luJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxicmlkZ2UmcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJyaWRnZVxjJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpciku
LlxicmlkZ2VcanNjJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxjc3MmcXVvdDs7JnF1b3Q7
JChQcm9qZWN0RGlyKS4uXGVkaXRpbmcmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGZpbGVh
cGkmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZyZxdW90OzsmcXVvdDskKFBy
b2plY3REaXIpLi5ccmVuZGVyaW5nXG1hdGhtbCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5c
cmVuZGVyaW5nXHN0eWxlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxyZW5kZXJpbmdcc3Zn
JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxiaW5kaW5ncyZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cYmluZGluZ3NcZ2VuZXJpYyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYmlu
ZGluZ3NcanMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJpbmRpbmdzXGpzXHNwZWNpYWxp
emF0aW9uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxkb20mcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXGRvbVxkZWZhdWx0JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxoaXN0b3J5
JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxodG1sJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxodG1sXGNhbnZhcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5caHRtbFxwYXJzZXIm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGh0bWxcc2hhZG93JnF1b3Q7OyZxdW90OyQoUHJv
amVjdERpcikuLlxpbnNwZWN0b3ImcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGxvYWRlciZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cbG9hZGVyXGFwcGNhY2hlJnF1b3Q7OyZxdW90OyQo
UHJvamVjdERpcikuLlxsb2FkZXJcYXJjaGl2ZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5c
bG9hZGVyXGFyY2hpdmVcY2YmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxjYWNo
ZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cbG9hZGVyXGljb24mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXG1hdGhtbCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGFnZSZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGFnZVxhbmltYXRpb24mcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHBhZ2Vcc2Nyb2xsaW5nJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwYWdl
XHdpbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm0mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXHBsYXRmb3JtXGFuaW1hdGlvbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5ccGxhdGZvcm1cbW9jayZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cc3Fs
JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVx3aW4mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXHBsYXRmb3JtXG5ldHdvcmsmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4u
XHBsYXRmb3JtXG5ldHdvcmtcd2luJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9y
bVxjZiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3MmcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXGNhJnF1b3Q7OyZxdW90OyQo
UHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzJnF1b3Q7OyZxdW90OyQoUHJv
amVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXGFybSZxdW90OzsmcXVvdDskKFBy
b2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3Ncb3BlbnR5cGUmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXMmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHBsYXRmb3JtXHRleHQmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRm
b3JtXHRleHRcdHJhbnNjb2RlciZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1c
Z3JhcGhpY3Ncd2luJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx4bWwmcXVvdDs7JnF1b3Q7
JChQcm9qZWN0RGlyKS4uXHhtbFxwYXJzZXImcXVvdDs7JnF1b3Q7JChDb25maWd1cmF0aW9uQnVp
bGREaXIpXG9ialxXZWJDb3JlXERlcml2ZWRTb3VyY2VzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxwbHVnaW5zJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbHVnaW5zXHdpbiZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5cc3ZnXGFuaW1hdGlvbiZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cc3ZnXGdyYXBoaWNzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxzdmdccHJv
cGVydGllcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cc3ZnXGdyYXBoaWNzXGZpbHRlcnMm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2ZyZxdW90OzsmcXVvdDskKFByb2plY3REaXIp
Li5cdGVzdGluZyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cd21sJnF1b3Q7OyZxdW90OyQo
UHJvamVjdERpcikuLlxzdG9yYWdlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx3ZWJzb2Nr
ZXRzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx3b3JrZXJzJnF1b3Q7OyZxdW90OyQoQ29u
ZmlndXJhdGlvbkJ1aWxkRGlyKVxpbmNsdWRlJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlvbkJ1
aWxkRGlyKVxpbmNsdWRlXHByaXZhdGUmcXVvdDs7JnF1b3Q7JChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXGluY2x1ZGVcSmF2YVNjcmlwdENvcmUmcXVvdDs7JnF1b3Q7JChDb25maWd1cmF0aW9uQnVp
bGREaXIpXGluY2x1ZGVccHJpdmF0ZVxKYXZhU2NyaXB0Q29yZSZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cRm9yd2FyZGluZ0hlYWRlcnMmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNE
aXIpXGluY2x1ZGUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVccHJp
dmF0ZSZxdW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVxwcml2YXRlXEph
dmFTY3JpcHRDb3JlJnF1b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXHB0
aHJlYWRzJnF1b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXHNxbGl0ZSZx
dW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVxKYXZhU2NyaXB0Q29yZSZx
dW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVx6bGliJnF1b3Q7IgogCQlQ
cmVwcm9jZXNzb3JEZWZpbml0aW9ucz0iX19XSU4zMl9fO0RJU0FCTEVfM0RfUkVOREVSSU5HO1dF
QkNPUkVfQ09OVEVYVF9NRU5VUyIKIAkJVXNlUHJlY29tcGlsZWRIZWFkZXI9IjIiCiAJCVByZWNv
bXBpbGVkSGVhZGVyVGhyb3VnaD0iV2ViQ29yZVByZWZpeC5oIgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovY29weUZvcndhcmRpbmdIZWFkZXJzLmNtZCBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL2NvcHlGb3J3YXJkaW5nSGVhZGVycy5jbWQKaW5kZXgg
ODNmMWYwMzE3YzhhZTc3OTU4ZGMyOGYxOGUwMWZhMGM5Y2U2NTAwMS4uMDkxN2NkNzkxN2RmODVh
NGI1NmJjOGNkN2Y2YTZlOGI2OTgxZDM3YSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS52Y3Byb2ovY29weUZvcndhcmRpbmdIZWFkZXJzLmNtZAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9jb3B5Rm9yd2FyZGluZ0hlYWRlcnMuY21kCkBAIC0yMSw4ICsyMSw5
IEBAIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUuLlxjb25maWcuaCIgIiVDT05GSUdVUkFUSU9O
QlVJTERESVIlXGluY2x1ZGVcV2ViQ29yZSIKIHhjb3B5IC95IC9kICIlQ09ORklHVVJBVElPTkJV
SUxERElSJVxvYmpcV2ViQ29yZVxEZXJpdmVkU291cmNlc1wqLmgiICIlQ09ORklHVVJBVElPTkJV
SUxERElSJVxpbmNsdWRlXFdlYkNvcmUiCiB4Y29weSAveSAvZCAiJVByb2plY3REaXIlLi5cTW9k
dWxlc1xmaWxlc3lzdGVtXCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2Vi
Q29yZSIKIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUuLlxNb2R1bGVzXGdlb2xvY2F0aW9uXCou
aCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2ViQ29yZSIKLXhjb3B5IC95IC9k
ICIlUHJvamVjdERpciUuLlxNb2R1bGVzXHF1b3RhXCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERE
SVIlXGluY2x1ZGVcV2ViQ29yZSIKIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUuLlxNb2R1bGVz
XG5vdGlmaWNhdGlvbnNcKi5oIiAiJUNPTkZJR1VSQVRJT05CVUlMRERJUiVcaW5jbHVkZVxXZWJD
b3JlIgoreGNvcHkgL3kgL2QgIiVQcm9qZWN0RGlyJS4uXE1vZHVsZXNccHJvdG9jb2xoYW5kbGVy
XCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2ViQ29yZSIKK3hjb3B5IC95
IC9kICIlUHJvamVjdERpciUuLlxNb2R1bGVzXHF1b3RhXCouaCIgIiVDT05GSUdVUkFUSU9OQlVJ
TERESVIlXGluY2x1ZGVcV2ViQ29yZSIKIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUuLlxNb2R1
bGVzXHdlYmRhdGFiYXNlXCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2Vi
Q29yZSIKIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUuLlxNb2R1bGVzXHdlYnNvY2tldHNcKi5o
IiAiJUNPTkZJR1VSQVRJT05CVUlMRERJUiVcaW5jbHVkZVxXZWJDb3JlIgogeGNvcHkgL3kgL2Qg
IiVQcm9qZWN0RGlyJS4uXGFjY2Vzc2liaWxpdHlcKi5oIiAiJUNPTkZJR1VSQVRJT05CVUlMRERJ
UiVcaW5jbHVkZVxXZWJDb3JlIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGI2NmQ3ZjJmMDI4YzA5MjYyYmZlYTRiN2QzMTEyNjM5
YzliZmNjZGIuLmYwNGUzYjVhZWFkNTBlZDVhODliODRlYjFhMmZhN2QzNjQ2N2ZhNjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTM2MzYsOCArMzYzNiw2IEBACiAJCTk3RENFMjAyMTA4MDdDNzUwMDU3RDM5NCAvKiBIaXN0b3J5
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTdEQ0UyMDAxMDgwN0M3NTAwNTdEMzk0IC8qIEhpc3RvcnlDb250cm9sbGVyLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJOTdFNDAyOEYxM0E2
OTZFRDAwOTEzRDY3IC8qIEljb25Db250cm9sbGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3RTQwMjhEMTNBNjk2RUQwMDkxM0Q2NyAvKiBJY29u
Q29udHJvbGxlci5jcHAgKi87IH07CiAJCTk3RTQwMjkwMTNBNjk2RUQwMDkxM0Q2NyAvKiBJY29u
Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gOTdFNDAyOEUxM0E2OTZFRDAwOTEzRDY3IC8qIEljb25Db250cm9sbGVyLmggKi87IHNldHRp
bmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJOTdFNEExMjYxNEY0QzVE
NDAwODcwRTQzIC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzMwQkUxNTE0RUYyODZCMDBE
RjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCAqLzsgfTsKLQkJOTdF
NEExMjcxNEY0QzVENzAwODcwRTQzIC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3MzBC
RTE0MTRFRjI4NkIwMERGMDZCOSAvKiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5j
cHAgKi87IH07CiAJCTk3RUY3REZFMTA3RTU1QjcwMEQ3QzQ5QyAvKiBTY3JpcHRDb250cm9sbGVy
QmFzZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
N0VGN0RGRDEwN0U1NUI3MDBEN0M0OUMgLyogU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwICovOyB9
OwogCQk5N0Y4RTY2NTE1MUQ0QTRCMDBEMkQxODEgLyogV29ya2VyQ29udGV4dE5vdGlmaWNhdGlv
bnMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdG
OEU2NjExNTFENEEzRjAwRDJEMTgxIC8qIFdvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmNwcCAq
LzsgfTsKIAkJOTdGOEU2NjYxNTFENEE0RTAwRDJEMTgxIC8qIFdvcmtlckNvbnRleHROb3RpZmlj
YXRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5
N0Y4RTY2MjE1MUQ0QTNGMDBEMkQxODEgLyogV29ya2VyQ29udGV4dE5vdGlmaWNhdGlvbnMuaCAq
LzsgfTsKQEAgLTg3ODEsNiArODc3OSw5IEBACiAJCTYzMTg5QUUyMEU4M0EzMzMwMDAxMkU0MSAv
KiBOb2RlUmFyZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTm9kZVJh
cmVEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTYzN0I3QURFMEU4NzY3Qjgw
MEUzMjE5NCAvKiBFbGVtZW50UmFyZURhdGEuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gRWxlbWVudFJhcmVEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTYz
RDdCMzJDMEU3OENEM0YwMEY3NjE3QyAvKiBOb2RlUmVuZGVyU3R5bGUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTm9kZVJlbmRlclN0eWxlLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTY0NTgyODQ0MTVBQjI3QzgwMEJCRjkxQSAvKiBOYXZpZ2F0b3JSZWdpc3Rl
clByb3RvY29sSGFuZGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxl
ci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTY0NTgyODQ1MTVBQjI3QzgwMEJC
RjkxQSAvKiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdp
c3RlclByb3RvY29sSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2NDU4
Mjg0NjE1QUIyN0M4MDBCQkY5MUEgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNjUwRjUzREIwOUQxNUREQTAwQzlCMEM4IC8qIENTU0dyYW1tYXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENTU0dyYW1tYXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJNjUwRkJGMjcwRDlBRjA0NjAwOEZDMjkyIC8qIFNWR0hLZXJuRWxlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBTVkdIS2VybkVsZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2NTBGQkYyODBEOUFGMDQ3MDA4RkMy
OTIgLyogU1ZHSEtlcm5FbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFNWR0hLZXJuRWxlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTA1Mjgs
OSArMTA1MjksNiBAQAogCQk5NzIwNUFCQTEyMzkyOTI3MDBCMTczODAgLyogUGx1Z2luRG9jdW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGx1Z2luRG9jdW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTcyOEMzMTExMjY4RTQzOTAwNDFFODlCIC8q
IE1hcmt1cEFjY3VtdWxhdG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1hcmt1cEFjY3VtdWxhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
OTcyOEMzMTIxMjY4RTQzOTAwNDFFODlCIC8qIE1hcmt1cEFjY3VtdWxhdG9yLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1hcmt1cEFjY3VtdWxhdG9yLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTk3MzBCRTE0MTRFRjI4NkIwMERGMDZCOSAvKiBOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07Ci0JCTk3MzBCRTE1MTRFRjI4NkIwMERGMDZCOSAvKiBOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk5NzMwQkUxNjE0RUYyODZCMDBERjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIuaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IE5hdmlnYXRvclJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJOTcz
ODg5OUUxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50V3JpdGVyLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvY3VtZW50V3JpdGVyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJOTczODg5OUYxMTZFQTlEQzAwQURGMzEzIC8qIERvY3VtZW50V3Jp
dGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERvY3VtZW50V3JpdGVyLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3M0RDNjNEMTQ1QTk0MDkwMDI4NDJDMiAv
KiBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTE1Mjg3LDYgKzE1Mjg1LDE3IEBACiAJCQlwYXRoID0gcGx1Z2luczsK
IAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CiAJCX07CisJCTY0NTgyODQzMTVBQjI3QzgwMEJC
RjkxQSAvKiBwcm90b2NvbGhhbmRsZXIgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNo
aWxkcmVuID0gKAorCQkJCTY0NTgyODQ0MTVBQjI3QzgwMEJCRjkxQSAvKiBOYXZpZ2F0b3JSZWdp
c3RlclByb3RvY29sSGFuZGxlci5jcHAgKi8sCisJCQkJNjQ1ODI4NDUxNUFCMjdDODAwQkJGOTFB
IC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggKi8sCisJCQkJNjQ1ODI4NDYx
NUFCMjdDODAwQkJGOTFBIC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCAq
LywKKwkJCSk7CisJCQluYW1lID0gcHJvdG9jb2xoYW5kbGVyOworCQkJcGF0aCA9IE1vZHVsZXMv
cHJvdG9jb2xoYW5kbGVyOworCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKKwkJfTsKIAkJNjU2
NTgwRUMwOUQxMkIyMDAwMEU2MUQ3IC8qIERlcml2ZWQgU291cmNlcyAqLyA9IHsKIAkJCWlzYSA9
IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCkBAIC0xNTYyMiw5ICsxNTYzMSw2IEBACiAJCQkJ
QTlDNkU2NUQwRDc0NjY5NDAwNjQ0MkU5IC8qIE5hdmlnYXRvci5pZGwgKi8sCiAJCQkJRTEyNzE5
QzkwRUVFQzIxMzAwRjYxMjEzIC8qIE5hdmlnYXRvckJhc2UuY3BwICovLAogCQkJCUUxMjcxOUM2
MEVFRUMxNjgwMEY2MTIxMyAvKiBOYXZpZ2F0b3JCYXNlLmggKi8sCi0JCQkJOTczMEJFMTQxNEVG
Mjg2QjAwREYwNkI5IC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCAqLywK
LQkJCQk5NzMwQkUxNTE0RUYyODZCMDBERjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuaCAqLywKLQkJCQk5NzMwQkUxNjE0RUYyODZCMDBERjA2QjkgLyogTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsICovLAogCQkJCTAwMTQ2Mjg4MTAzQ0QxREUwMDBC
MjBEQiAvKiBPcmlnaW5BY2Nlc3NFbnRyeS5jcHAgKi8sCiAJCQkJMDAxNDYyODkxMDNDRDFERTAw
MEIyMERCIC8qIE9yaWdpbkFjY2Vzc0VudHJ5LmggKi8sCiAJCQkJNjVGRUE4NjgwOTgzM0FERTAw
QkVENEFCIC8qIFBhZ2UuY3BwICovLApAQCAtMTc0OTQsNiArMTc1MDAsNyBAQAogCQk5NzExNDVG
RTE0RUYwMDZFMDA2NzRGRDkgLyogTW9kdWxlcyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCisJCQkJNjQ1ODI4NDMxNUFCMjdDODAwQkJGOTFBIC8qIHByb3RvY29s
aGFuZGxlciAqLywKIAkJCQkzMzNGNzAzRDBGQjQ5QzE2MDA4RTEyQTYgLyogbm90aWZpY2F0aW9u
cyAqLywKIAkJCQk5NzExNDVGRjE0RUYwMDc5MDA2NzRGRDkgLyogZ2VvbG9jYXRpb24gKi8sCiAJ
CQkJOTcxMkE1NTMxNTAwNEUzQzAwNDhBRjEwIC8qIGluZGV4ZWRkYiAqLywKQEAgLTI0MTIxLDcg
KzI0MTI4LDYgQEAKIAkJCQlBOUM2RTVBNjBENzQ2NDU4MDA2NDQyRTkgLyogTmF2aWdhdG9yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlFMTI3MTlDNzBFRUVDMTY4MDBGNjEyMTMgLyogTmF2aWdhdG9y
QmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTcxMTQ2MDQxNEVGMDA5QTAwNjc0RkQ5IC8qIE5h
dmlnYXRvckdlb2xvY2F0aW9uLmggaW4gSGVhZGVycyAqLywKLQkJCQk5N0U0QTEyNjE0RjRDNUQ0
MDA4NzBFNDMgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCBpbiBIZWFkZXJz
ICovLAogCQkJCThBMzA5QzlGMTIzOTUwQkUwMENCOTIwNCAvKiBOZXN0aW5nTGV2ZWxJbmNyZW1l
bnRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjU2RDM3NDMwQURCQTVERTAwQTQ1NTREIC8qIE5l
dHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk2MjhEMjE0QzEy
MTMxRUQxMDA1NURDRkMgLyogTmV0d29ya2luZ0NvbnRleHQuaCBpbiBIZWFkZXJzICovLApAQCAt
MjczODEsNyArMjczODcsNiBAQAogCQkJCUE5QzZFNUE1MEQ3NDY0NTgwMDY0NDJFOSAvKiBOYXZp
Z2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTEyNzE5Q0EwRUVFQzIxMzAwRjYxMjEzIC8q
IE5hdmlnYXRvckJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTcxMTQ2MDMxNEVGMDA5QTAw
Njc0RkQ5IC8qIE5hdmlnYXRvckdlb2xvY2F0aW9uLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTk3
RTRBMTI3MTRGNEM1RDcwMDg3MEU0MyAvKiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxl
ci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1RDg3NEYxMzBEMTYxRDMyMDA3OTZDM0IgLyogTmV0
c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTlDMjdGMDUx
MzhEMjhDMTAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJjZXNEYXRhLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTFBN0ZBNjFCMEREQTNCQkUwMDI4RjhBNSAvKiBOZXR3b3JrU3RhdGVOb3RpZmllci5j
cHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZp
Z2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDBkNWViODljOTQ4M2Y3OWZlYTEzMzZkZWU2OGU5MzhhN2YwMmEwNWQuLjAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKKysrIC9kZXYvbnVsbApAQCAt
MSwyMTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSwgR29vZ2xlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykgMjAxMiwgU2Ftc3VuZyBFbGVjdHJv
bmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cyBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1
dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAot
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp
YWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJF
IElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycn
IEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQotICogQVJFIERJU0NM
QUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBEQU1BR0VTIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgotICog
U0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIKLSAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICogTElBQklMSVRZLCBPUiBUT1JUIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQotICog
T1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNICi0gKiBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUgImNvbmZpZy5o
IgotI2luY2x1ZGUgIk5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgiCi0KLSNpZiBF
TkFCTEUoUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgfHwgRU5BQkxFKENVU1RPTV9TQ0hFTUVf
SEFORExFUikKLQotI2luY2x1ZGUgIkNocm9tZS5oIgotI2luY2x1ZGUgIkNocm9tZUNsaWVudC5o
IgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgotI2lu
Y2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9yLmgiCi0jaW5jbHVkZSAiUGFnZS5o
IgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotc3Rh
dGljIEhhc2hTZXQ8U3RyaW5nPiogcHJvdG9jb2xXaGl0ZWxpc3Q7Ci0KLXN0YXRpYyB2b2lkIGlu
aXRQcm90b2NvbEhhbmRsZXJXaGl0ZWxpc3QoKQotewotICAgIHByb3RvY29sV2hpdGVsaXN0ID0g
bmV3IEhhc2hTZXQ8U3RyaW5nPjsKLSAgICBzdGF0aWMgY29uc3QgY2hhciogcHJvdG9jb2xzW10g
PSB7Ci0jaWYgIVBMQVRGT1JNKEJMQUNLQkVSUlkpCi0gICAgICAgICJpcmMiLAotICAgICAgICAi
bWFpbHRvIiwKLSAgICAgICAgIm1tcyIsCi0gICAgICAgICJuZXdzIiwKLSAgICAgICAgIm5udHAi
LAotICAgICAgICAic21zIiwKLSAgICAgICAgInNtc3RvIiwKLSAgICAgICAgInRlbCIsCi0gICAg
ICAgICJ1cm4iLAotICAgICAgICAid2ViY2FsIiwKLSNlbmRpZgotICAgIH07Ci0gICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHByb3RvY29scyk7ICsraSkKLSAgICAg
ICAgcHJvdG9jb2xXaGl0ZWxpc3QtPmFkZChwcm90b2NvbHNbaV0pOwotfQotCi1zdGF0aWMgYm9v
bCB2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGNvbnN0IFN0cmluZyYgYmFzZVVSTCwgY29uc3QgU3Ry
aW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIC8vIFRoZSBzcGVjaWZpY2F0aW9u
IHJlcXVpcmVzIHRoYXQgaXQgaXMgYSBTWU5UQVhfRVJSIGlmIHRoZSAiJXMiIHRva2VuIGlzCi0g
ICAgLy8gbm90IHByZXNlbnQuCi0gICAgc3RhdGljIGNvbnN0IGNoYXIgdG9rZW5bXSA9ICIlcyI7
Ci0gICAgaW50IGluZGV4ID0gdXJsLmZpbmQodG9rZW4pOwotICAgIGlmICgtMSA9PSBpbmRleCkg
ewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9
Ci0KLSAgICAvLyBJdCBpcyBhbHNvIGEgU1lOVEFYX0VSUiBpZiB0aGUgY3VzdG9tIGhhbmRsZXIg
VVJMLCBhcyBjcmVhdGVkIGJ5IHJlbW92aW5nCi0gICAgLy8gdGhlICIlcyIgdG9rZW4gYW5kIHBy
ZXBlbmRpbmcgdGhlIGJhc2UgdXJsLCBkb2VzIG5vdCByZXNvbHZlLgotICAgIFN0cmluZyBuZXdV
UkwgPSB1cmw7Ci0gICAgbmV3VVJMLnJlbW92ZShpbmRleCwgV1RGX0FSUkFZX0xFTkdUSCh0b2tl
bikgLSAxKTsKLQotICAgIEtVUkwgYmFzZShQYXJzZWRVUkxTdHJpbmcsIGJhc2VVUkwpOwotICAg
IEtVUkwga3VybChiYXNlLCBuZXdVUkwpOwotCi0gICAgaWYgKGt1cmwuaXNFbXB0eSgpIHx8ICFr
dXJsLmlzVmFsaWQoKSkgewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgICAgIHJldHVy
biBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQotc3RhdGljIGJvb2wgaXNQ
cm90b2NvbFdoaXRlbGlzdGVkKGNvbnN0IFN0cmluZyYgc2NoZW1lKQotewotICAgIGlmICghcHJv
dG9jb2xXaGl0ZWxpc3QpCi0gICAgICAgIGluaXRQcm90b2NvbEhhbmRsZXJXaGl0ZWxpc3QoKTsK
LSAgICByZXR1cm4gcHJvdG9jb2xXaGl0ZWxpc3QtPmNvbnRhaW5zKHNjaGVtZSk7Ci19Ci0KLXN0
YXRpYyBib29sIHZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShjb25zdCBTdHJpbmcmIHNjaGVt
ZSwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKHNjaGVtZS5zdGFydHNXaXRoKCJ3ZWIr
IikpIHsKLSAgICAgICAgaWYgKGlzVmFsaWRQcm90b2NvbChzY2hlbWUpKQotICAgICAgICAgICAg
cmV0dXJuIHRydWU7Ci0gICAgICAgIGVjID0gU0VDVVJJVFlfRVJSOwotICAgICAgICByZXR1cm4g
ZmFsc2U7Ci0gICAgfQotCi0gICAgaWYgKGlzUHJvdG9jb2xXaGl0ZWxpc3RlZChzY2hlbWUpKQot
ICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKLSAgICByZXR1cm4g
ZmFsc2U7Ci19Ci0KLU5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjpOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlcigpCi17Ci19Ci0KLU5hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyOjp+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKQotewotfQotCi0j
aWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpCi12b2lkIE5hdmlnYXRvclJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyOjpyZWdpc3RlclByb3RvY29sSGFuZGxlcihOYXZpZ2F0b3IqIG5h
dmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBT
dHJpbmcmIHRpdGxlLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpZiAoIW5hdmlnYXRvci0+
ZnJhbWUoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gbmF2
aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVudCgpOwotICAgIGlmICghZG9jdW1lbnQpCi0gICAgICAg
IHJldHVybjsKLQotICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1lbnQtPmJhc2VVUkwoKS5iYXNl
QXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFuZGxlclVSTChiYXNlVVJMLCB1
cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKCF2ZXJpZnlQcm90b2NvbEhhbmRs
ZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAgIHJldHVybjsKLQotICAgIFBhZ2UqIHBhZ2Ug
PSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKLSAgICBpZiAoIXBhZ2UpCi0gICAgICAgIHJl
dHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+cmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIoc2NoZW1lLCBiYXNlVVJMLCB1cmwsIG5hdmlnYXRvci0+ZnJhbWUoKS0+ZGlzcGxheVN0
cmluZ01vZGlmaWVkQnlFbmNvZGluZyh0aXRsZSkpOwotfQotI2VuZGlmCi0KLSNpZiBFTkFCTEUo
Q1VTVE9NX1NDSEVNRV9IQU5ETEVSKQotc3RhdGljIFN0cmluZyBjdXN0b21IYW5kbGVyc1N0YXRl
U3RyaW5nKGNvbnN0IENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNTdGF0ZSBzdGF0ZSkKLXsK
LSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgbmV3SGFuZGxlciwgKCJuZXci
KSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIHJlZ2lzdGVyZWRIYW5k
bGVyLCAoInJlZ2lzdGVyZWQiKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBTdHJp
bmcsIGRlY2xpbmVkSGFuZGxlciwgKCJkZWNsaW5lZCIpKTsKLQotICAgIHN3aXRjaCAoc3RhdGUp
IHsKLSAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNOZXc6Ci0gICAgICAgIHJl
dHVybiBuZXdIYW5kbGVyOwotICAgIGNhc2UgQ2hyb21lQ2xpZW50OjpDdXN0b21IYW5kbGVyc1Jl
Z2lzdGVyZWQ6Ci0gICAgICAgIHJldHVybiByZWdpc3RlcmVkSGFuZGxlcjsKLSAgICBjYXNlIENo
cm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNEZWNsaW5lZDoKLSAgICAgICAgcmV0dXJuIGRlY2xp
bmVkSGFuZGxlcjsKLSAgICB9Ci0KLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1
cm4gU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxl
cjo6aXNQcm90b2NvbEhhbmRsZXJSZWdpc3RlcmVkKE5hdmlnYXRvciogbmF2aWdhdG9yLCBjb25z
dCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmIGVjKQot
ewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3RyaW5nLCBkZWNsaW5lZCwgKCJkZWNs
aW5lZCIpKTsKLQotICAgIGlmICghbmF2aWdhdG9yLT5mcmFtZSgpKQotICAgICAgICByZXR1cm4g
ZGVjbGluZWQ7Ci0KLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBuYXZpZ2F0b3ItPmZyYW1lKCkt
PmRvY3VtZW50KCk7Ci0gICAgU3RyaW5nIGJhc2VVUkwgPSBkb2N1bWVudC0+YmFzZVVSTCgpLmJh
c2VBc1N0cmluZygpOwotCi0gICAgaWYgKCF2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGJhc2VVUkws
IHVybCwgZWMpKQotICAgICAgICByZXR1cm4gZGVjbGluZWQ7Ci0KLSAgICBpZiAoIXZlcmlmeVBy
b3RvY29sSGFuZGxlclNjaGVtZShzY2hlbWUsIGVjKSkKLSAgICAgICAgcmV0dXJuIGRlY2xpbmVk
OwotCi0gICAgUGFnZSogcGFnZSA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+cGFnZSgpOwotICAgIGlm
ICghcGFnZSkKLSAgICAgICAgcmV0dXJuIGRlY2xpbmVkOwotCi0gICAgcmV0dXJuIGN1c3RvbUhh
bmRsZXJzU3RhdGVTdHJpbmcocGFnZS0+Y2hyb21lKCktPmNsaWVudCgpLT5pc1Byb3RvY29sSGFu
ZGxlclJlZ2lzdGVyZWQoc2NoZW1lLCBiYXNlVVJMLCB1cmwpKTsKLX0KLQotdm9pZCBOYXZpZ2F0
b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6dW5yZWdpc3RlclByb3RvY29sSGFuZGxlcihOYXZp
Z2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0IFN0cmluZyYgdXJs
LCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpZiAoIW5hdmlnYXRvci0+ZnJhbWUoKSkKLSAg
ICAgICAgcmV0dXJuOwotCi0gICAgRG9jdW1lbnQqIGRvY3VtZW50ID0gbmF2aWdhdG9yLT5mcmFt
ZSgpLT5kb2N1bWVudCgpOwotICAgIFN0cmluZyBiYXNlVVJMID0gZG9jdW1lbnQtPmJhc2VVUkwo
KS5iYXNlQXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5Q3VzdG9tSGFuZGxlclVSTChiYXNl
VVJMLCB1cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKCF2ZXJpZnlQcm90b2Nv
bEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAgIHJldHVybjsKLQotICAgIFBhZ2Uq
IHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKLSAgICBpZiAoIXBhZ2UpCi0gICAg
ICAgIHJldHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQoKS0+dW5yZWdpc3RlclBy
b3RvY29sSGFuZGxlcihzY2hlbWUsIGJhc2VVUkwsIHVybCk7Ci19Ci0jZW5kaWYKLQotfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hB
TkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCi0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaApkZWxl
dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjE5M2UwMWY0MzdjYTRhYzMwYzZjNmQzZmUxYTY3
NjAyY2U1YzU5ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgK
KysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDEx
LCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICogQ29weXJpZ2h0IChDKSAyMDEy
LCBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6Ci0gKgotICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
LSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwKLSAqIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SCi0gKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgotICogQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUCi0gKiBMSUFC
SUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gKLSAqIERBTUFHRS4KLSAqLwotCi0j
aWZuZGVmIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyX2gKLSNkZWZpbmUgTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaAotCi0jaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RP
Q09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCi0KLSNpbmNsdWRl
IDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRvcjsKLQotdHlwZWRlZiBpbnQgRXhj
ZXB0aW9uQ29kZTsKLQotY2xhc3MgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIgewot
cHVibGljOgotI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKQotICAgIHN0YXRp
YyB2b2lkIHJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmluZyYg
c2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiB0aXRsZSwgRXhjZXB0aW9u
Q29kZSYpOwotI2VuZGlmIAotCi0jaWYgRU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikKLSAg
ICBzdGF0aWMgU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChOYXZpZ2F0b3IqLCBj
b25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmKTsK
LSAgICBzdGF0aWMgdm9pZCB1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciosIGNv
bnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYpOwot
I2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIo
KTsKLSAgICB+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9I
QU5ETEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQotCi0jZW5kaWYgLy8gTmF2
aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMWJkNTdmMmZlMmM0MmU2NmUxOWE2ZDI3NWRmYzI4YTg4MDk1
YzU3MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbAorKysg
L2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLS8qCi0gICAgQ29weXJpZ2h0IChDKSAyMDA4IE5v
a2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQotICAgIENvcHlyaWdo
dCAoQykgMjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLQot
ICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dCBhbmQvb3IKLSAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFy
eSBHZW5lcmFsIFB1YmxpYwotICAgIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICAgIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwg
b3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KLQotICAgIFRoaXMgbGlicmFy
eSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICAg
IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh
bnR5IG9mCi0gICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFLiAgU2VlIHRoZSBHTlUKLSAgICBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug
Zm9yIG1vcmUgZGV0YWlscy4KLQotICAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg
b2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSAgICBhbG9uZyB3aXRo
IHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0
bwotICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0
cmVldCwgRmlmdGggRmxvb3IsCi0gICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCi0qLwot
Ci1tb2R1bGUgd2luZG93IHsKLQotICAgIGludGVyZmFjZSBbCi0gICAgICAgIFN1cHBsZW1lbnRh
bD1OYXZpZ2F0b3IKLSAgICBdIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyIHsKLSAg
ICAgICAgW0NvbmRpdGlvbmFsPVJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVJdIHZvaWQgcmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCwg
aW4gRE9NU3RyaW5nIHRpdGxlKQotICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0g
ICAgICAgIFtDb25kaXRpb25hbD1DVVNUT01fU0NIRU1FX0hBTkRMRVJdIERPTVN0cmluZyBpc1By
b3RvY29sSGFuZGxlclJlZ2lzdGVyZWQoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5n
IHVybCkKLSAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotICAgICAgICBbQ29uZGl0
aW9uYWw9Q1VTVE9NX1NDSEVNRV9IQU5ETEVSXSB2b2lkIHVucmVnaXN0ZXJQcm90b2NvbEhhbmRs
ZXIoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCkKLSAgICAgICAgICAgIHJh
aXNlcyhET01FeGNlcHRpb24pOwotICAgIH07Ci0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>151886</attachid>
            <date>2012-07-12 01:51:29 -0700</date>
            <delta_ts>2012-07-12 04:26:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-90766-20120712175128.patch</filename>
            <type>text/plain</type>
            <size>52779</size>
            <attacher name="Gyuyoung Kim">gyuyoung.kim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIyNDI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDJjMTNkMDgwODljY2I0
ZDA4YmFhZDhkNDRlYWEzOWZhMTdlMjk3OC4uYjVlZDViMjYxMDQyOTkxZjdiODhmZmRkY2U1Njk1
N2EwZDg3N2EzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTA3LTEyICBHeXV5
b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgUmVnaXN0ZXIg
cHJvdG9jb2wgaGFuZGxlciBmaWxlcyBzaG91bGQgYmUgaW4gTW9kdWxlcy9wcm90b2NvbGhhbmRs
ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkwNzY2
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSGFqaW1lIE1vcml0YS4KKworICAgICAgICBUaGUgcmVn
aXN0ZXIgcHJvdG9jb2wgaGFuZGxlciBmaWxlcyBhcmUgbm93IHNlbGYtY29udGFpbmVkLiBUaGlz
IHBhdGNoIGlzIG1vdmVkIHRvIHRoZSBNb2R1bGVzLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4g
Q292ZXJlZCBieSBleGlzdGluZyB0ZXN0cy4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0Ogor
ICAgICAgICAqIEdOVW1ha2VmaWxlLmFtOgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06
CisgICAgICAgICogTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90
b2NvbEhhbmRsZXIuY3BwOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0
b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OmluaXRQcm90b2NvbEhhbmRsZXJXaGl0ZWxpc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6dmVyaWZ5Q3VzdG9tSGFuZGxlclVSTCk6CisgICAgICAgIChXZWJDb3JlOjppc1Byb3Rv
Y29sV2hpdGVsaXN0ZWQpOgorICAgICAgICAoV2ViQ29yZTo6dmVyaWZ5UHJvdG9jb2xIYW5kbGVy
U2NoZW1lKToKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyOjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcik6CisgICAgICAgIChXZWJDb3Jl
OjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6fk5hdmlnYXRvclJlZ2lzdGVyUHJv
dG9jb2xIYW5kbGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyOjpyZWdpc3RlclByb3RvY29sSGFuZGxlcik6CisgICAgICAgIChXZWJDb3JlOjpj
dXN0b21IYW5kbGVyc1N0YXRlU3RyaW5nKToKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmlnYXRvclJl
Z2lzdGVyUHJvdG9jb2xIYW5kbGVyOjppc1Byb3RvY29sSGFuZGxlclJlZ2lzdGVyZWQpOgorICAg
ICAgICAoV2ViQ29yZTo6TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6OnVucmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXIpOgorICAgICAgICAqIE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05h
dmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmguCisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKToKKyAg
ICAgICAgKiBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29s
SGFuZGxlci5pZGw6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJl
Z2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbC4KKyAgICAgICAgKiBUYXJnZXQucHJpOgorICAgICAg
ICAqIFdlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAg
ICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZj
cHJvajoKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlQ29tbW9uLnZzcHJvcHM6Cisg
ICAgICAgICogV2ViQ29yZS52Y3Byb2ovY29weUZvcndhcmRpbmdIZWFkZXJzLmNtZDoKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMTItMDctMTEgIENh
cmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtd
IEFkZCB3ZWJraXRfY29va2llX21hbmFnZXJfc2V0X3BlcnNpc3RlbnRfc3RvcmFnZSgpIHRvIFdl
YktpdDIgR1RLKyBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggZTA3MzdkOGZkNWM4MzEzNzc4
N2RkYjJmMDEwNzkxZmM5MjdmYWI3OC4uYzAyYjIxMWU0MTI2MTc0ZmZiZGNiMmFhZGFlYzBmOGY4
MjY3ZTVkYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTUsNiArNSw3IEBAIFNFVChXZWJDb3Jl
X0lOQ0xVREVfRElSRUNUT1JJRVMKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9pbmRleGVk
ZGIiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvaW50ZW50cyIKICAgICAiJHtXRUJDT1JF
X0RJUn0vTW9kdWxlcy9ub3RpZmljYXRpb25zIgorICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVz
L3Byb3RvY29saGFuZGxlciIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9xdW90YSIKICAg
ICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy93ZWJhdWRpbyIKICAgICAiJHtXRUJDT1JFX0RJUn0v
TW9kdWxlcy93ZWJkYXRhYmFzZSIKQEAgLTEyNyw2ICsxMjgsOCBAQCBTRVQoV2ViQ29yZV9JRExf
RklMRVMKICAgICBNb2R1bGVzL2dlb2xvY2F0aW9uL1Bvc2l0aW9uRXJyb3IuaWRsCiAgICAgTW9k
dWxlcy9nZW9sb2NhdGlvbi9Qb3NpdGlvbkVycm9yQ2FsbGJhY2suaWRsCiAKKyAgICBNb2R1bGVz
L3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwKKwog
ICAgIE1vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZmZXIuaWRsCiAgICAgTW9kdWxlcy93ZWJhdWRp
by9BdWRpb0J1ZmZlckNhbGxiYWNrLmlkbAogICAgIE1vZHVsZXMvd2ViYXVkaW8vQXVkaW9CdWZm
ZXJTb3VyY2VOb2RlLmlkbApAQCAtMzkzLDcgKzM5Niw2IEBAIFNFVChXZWJDb3JlX0lETF9GSUxF
UwogICAgIHBhZ2UvTG9jYXRpb24uaWRsCiAgICAgcGFnZS9NZW1vcnlJbmZvLmlkbAogICAgIHBh
Z2UvTmF2aWdhdG9yLmlkbAotICAgIHBhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRs
ZXIuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZS5pZGwKICAgICBwYWdlL1BlcmZvcm1hbmNlRW50
cnkuaWRsCiAgICAgcGFnZS9QZXJmb3JtYW5jZUVudHJ5TGlzdC5pZGwKQEAgLTQzNSw2ICs0Mzcs
OCBAQCBTRVQoV2ViQ29yZV9TT1VSQ0VTCiAgICAgTW9kdWxlcy9nZW9sb2NhdGlvbi9HZW9sb2Nh
dGlvbkNvbnRyb2xsZXIuY3BwCiAgICAgTW9kdWxlcy9nZW9sb2NhdGlvbi9OYXZpZ2F0b3JHZW9s
b2NhdGlvbi5jcHAKIAorICAgIE1vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyLmNwcAorCiAgICAgYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hl
LmNwcAogICAgIGFjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eUFSSUFHcmlkLmNwcAogICAgIGFj
Y2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eUFSSUFHcmlkQ2VsbC5jcHAKQEAgLTEwODIsNyArMTA4
Niw2IEBAIFNFVChXZWJDb3JlX1NPVVJDRVMKICAgICBwYWdlL01vdXNlRXZlbnRXaXRoSGl0VGVz
dFJlc3VsdHMuY3BwCiAgICAgcGFnZS9OYXZpZ2F0b3IuY3BwCiAgICAgcGFnZS9OYXZpZ2F0b3JC
YXNlLmNwcAotICAgIHBhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwCiAg
ICAgcGFnZS9PcmlnaW5BY2Nlc3NFbnRyeS5jcHAKICAgICBwYWdlL1BhZ2UuY3BwCiAgICAgcGFn
ZS9QYWdlR3JvdXAuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5h
bSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IGQ5N2I4NWJkYjc4ZjIxNmUz
ZWYwNTc0NDlhNjM0NjFlZDA1NzdlMzEuLjE4NDY1ZjlmMTdlOGI4ODAxYmZiODM3Njc0YjA0Y2Rj
NzE1NWNmNDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0xNyw2ICsxNyw3IEBAIHdlYmNvcmVf
Y3BwZmxhZ3MgKz0gXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiIFwKIAktSSQoc3JjZGlyKS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhc3RyZWFtIFwK
IAktSSQoc3JjZGlyKS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMgXAorCS1J
JChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyIFwKIAktSSQo
c3JjZGlyKS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvIFwKIAktSSQoc3JjZGlyKS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlIFwKIAktSSQoc3JjZGlyKS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3dlYnNvY2tldHMgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
R05VbWFrZWZpbGUubGlzdC5hbSBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0K
aW5kZXggMzc4MTcyN2FhNmEwZTRlMTU0ZTllYmY3NjE5ZWE5ZjJjZTNjODQzYy4uOGY0M2RiODAy
ZDk2ZWIxYjBjOTJiZGU2MGE4MjQ2MzA3ZmUwZTQ0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvR05VbWFrZWZpbGUubGlzdC5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCkBAIC03MTMsNiArNzEzLDcgQEAgZG9tX2JpbmRpbmdfaWRscyArPSBcCiAJJChXZWJD
b3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uLmlkbCBcCiAJJChXZWJDb3Jl
KS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAJJChXZWJD
b3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNr
LmlkbCBcCisJJChXZWJDb3JlKS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdp
c3RlclByb3RvY29sSGFuZGxlci5pZGwgXAogCSQoV2ViQ29yZSkvTW9kdWxlcy93ZWJhdWRpby9B
dWRpb0NvbnRleHQuaWRsIFwKIAkkKFdlYkNvcmUpL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9QYW5u
ZXJOb2RlLmlkbCBcCiAJJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvL0R5bmFtaWNzQ29tcHJl
c3Nvck5vZGUuaWRsIFwKQEAgLTEyMDYsNiArMTIwNyw4IEBAIHdlYmNvcmVfbW9kdWxlc19zb3Vy
Y2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0
aW9uUGVybWlzc2lvbkNhbGxiYWNrLmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Xb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvbm90aWZpY2F0aW9ucy9Xb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5oIFwKKwlT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlci5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5k
bGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggXAogCVNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZGF0YWJhc2UvQWJzdHJhY3REYXRhYmFzZS5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvQWJzdHJhY3REYXRhYmFzZS5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0NoYW5nZVZlcnNpb25XcmFwcGVyLmNwcCBcCkBAIC0z
MDQ1LDggKzMwNDgsNiBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9XZWJDb3JlL3Bh
Z2UvTmF2aWdhdG9yLmggXAogCVNvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yQmFzZS5jcHAg
XAogCVNvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yQmFzZS5oIFwKLQlTb3VyY2UvV2ViQ29y
ZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCBcCi0JU291cmNlL1dl
YkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oIFwKIAlTb3VyY2Uv
V2ViQ29yZS9wYWdlL09yaWdpbkFjY2Vzc0VudHJ5LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGFn
ZS9PcmlnaW5BY2Nlc3NFbnRyeS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
cHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wZDVlYjg5Yzk0ODNmNzlmZWExMzM2ZGVlNjhlOTM4YTdmMDJhMDVkCi0tLSAvZGV2
L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwCkBAIC0wLDAgKzEsMjE3IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDExLCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICog
Q29weXJpZ2h0IChDKSAyMDEyLCBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgorICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECisgKiBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUK
KyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQorICogRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwKKyAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgorICog
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUCisgKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCisgKiBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gKKyAq
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCIKKworI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NP
TF9IQU5ETEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQorCisjaW5jbHVkZSAi
Q2hyb21lLmgiCisjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCisjaW5jbHVkZSAiRG9jdW1lbnQu
aCIKKyNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCisjaW5jbHVkZSAiRnJhbWUuaCIKKyNpbmNs
dWRlICJOYXZpZ2F0b3IuaCIKKyNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hT
ZXQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgSGFzaFNldDxTdHJpbmc+KiBw
cm90b2NvbFdoaXRlbGlzdDsKKworc3RhdGljIHZvaWQgaW5pdFByb3RvY29sSGFuZGxlcldoaXRl
bGlzdCgpCit7CisgICAgcHJvdG9jb2xXaGl0ZWxpc3QgPSBuZXcgSGFzaFNldDxTdHJpbmc+Owor
ICAgIHN0YXRpYyBjb25zdCBjaGFyKiBwcm90b2NvbHNbXSA9IHsKKyNpZiAhUExBVEZPUk0oQkxB
Q0tCRVJSWSkKKyAgICAgICAgImlyYyIsCisgICAgICAgICJtYWlsdG8iLAorICAgICAgICAibW1z
IiwKKyAgICAgICAgIm5ld3MiLAorICAgICAgICAibm50cCIsCisgICAgICAgICJzbXMiLAorICAg
ICAgICAic21zdG8iLAorICAgICAgICAidGVsIiwKKyAgICAgICAgInVybiIsCisgICAgICAgICJ3
ZWJjYWwiLAorI2VuZGlmCisgICAgfTsKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IFdURl9B
UlJBWV9MRU5HVEgocHJvdG9jb2xzKTsgKytpKQorICAgICAgICBwcm90b2NvbFdoaXRlbGlzdC0+
YWRkKHByb3RvY29sc1tpXSk7Cit9CisKK3N0YXRpYyBib29sIHZlcmlmeUN1c3RvbUhhbmRsZXJV
UkwoY29uc3QgU3RyaW5nJiBiYXNlVVJMLCBjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29k
ZSYgZWMpCit7CisgICAgLy8gVGhlIHNwZWNpZmljYXRpb24gcmVxdWlyZXMgdGhhdCBpdCBpcyBh
IFNZTlRBWF9FUlIgaWYgdGhlICIlcyIgdG9rZW4gaXMKKyAgICAvLyBub3QgcHJlc2VudC4KKyAg
ICBzdGF0aWMgY29uc3QgY2hhciB0b2tlbltdID0gIiVzIjsKKyAgICBpbnQgaW5kZXggPSB1cmwu
ZmluZCh0b2tlbik7CisgICAgaWYgKC0xID09IGluZGV4KSB7CisgICAgICAgIGVjID0gU1lOVEFY
X0VSUjsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIC8vIEl0IGlzIGFsc28g
YSBTWU5UQVhfRVJSIGlmIHRoZSBjdXN0b20gaGFuZGxlciBVUkwsIGFzIGNyZWF0ZWQgYnkgcmVt
b3ZpbmcKKyAgICAvLyB0aGUgIiVzIiB0b2tlbiBhbmQgcHJlcGVuZGluZyB0aGUgYmFzZSB1cmws
IGRvZXMgbm90IHJlc29sdmUuCisgICAgU3RyaW5nIG5ld1VSTCA9IHVybDsKKyAgICBuZXdVUkwu
cmVtb3ZlKGluZGV4LCBXVEZfQVJSQVlfTEVOR1RIKHRva2VuKSAtIDEpOworCisgICAgS1VSTCBi
YXNlKFBhcnNlZFVSTFN0cmluZywgYmFzZVVSTCk7CisgICAgS1VSTCBrdXJsKGJhc2UsIG5ld1VS
TCk7CisKKyAgICBpZiAoa3VybC5pc0VtcHR5KCkgfHwgIWt1cmwuaXNWYWxpZCgpKSB7CisgICAg
ICAgIGVjID0gU1lOVEFYX0VSUjsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAg
IHJldHVybiB0cnVlOworfQorCitzdGF0aWMgYm9vbCBpc1Byb3RvY29sV2hpdGVsaXN0ZWQoY29u
c3QgU3RyaW5nJiBzY2hlbWUpCit7CisgICAgaWYgKCFwcm90b2NvbFdoaXRlbGlzdCkKKyAgICAg
ICAgaW5pdFByb3RvY29sSGFuZGxlcldoaXRlbGlzdCgpOworICAgIHJldHVybiBwcm90b2NvbFdo
aXRlbGlzdC0+Y29udGFpbnMoc2NoZW1lKTsKK30KKworc3RhdGljIGJvb2wgdmVyaWZ5UHJvdG9j
b2xIYW5kbGVyU2NoZW1lKGNvbnN0IFN0cmluZyYgc2NoZW1lLCBFeGNlcHRpb25Db2RlJiBlYykK
K3sKKyAgICBpZiAoc2NoZW1lLnN0YXJ0c1dpdGgoIndlYisiKSkgeworICAgICAgICBpZiAoaXNW
YWxpZFByb3RvY29sKHNjaGVtZSkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAg
ZWMgPSBTRUNVUklUWV9FUlI7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBp
ZiAoaXNQcm90b2NvbFdoaXRlbGlzdGVkKHNjaGVtZSkpCisgICAgICAgIHJldHVybiB0cnVlOwor
ICAgIGVjID0gU0VDVVJJVFlfRVJSOworICAgIHJldHVybiBmYWxzZTsKK30KKworTmF2aWdhdG9y
UmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6Ok5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
KCkKK3sKK30KKworTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6On5OYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlcigpCit7Cit9CisKKyNpZiBFTkFCTEUoUkVHSVNURVJfUFJP
VE9DT0xfSEFORExFUikKK3ZvaWQgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXI6OnJl
Z2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciogbmF2aWdhdG9yLCBjb25zdCBTdHJpbmcm
IHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIEV4Y2VwdGlv
bkNvZGUmIGVjKQoreworICAgIGlmICghbmF2aWdhdG9yLT5mcmFtZSgpKQorICAgICAgICByZXR1
cm47CisKKyAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPmRvY3Vt
ZW50KCk7CisgICAgaWYgKCFkb2N1bWVudCkKKyAgICAgICAgcmV0dXJuOworCisgICAgU3RyaW5n
IGJhc2VVUkwgPSBkb2N1bWVudC0+YmFzZVVSTCgpLmJhc2VBc1N0cmluZygpOworCisgICAgaWYg
KCF2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGJhc2VVUkwsIHVybCwgZWMpKQorICAgICAgICByZXR1
cm47CisKKyAgICBpZiAoIXZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShzY2hlbWUsIGVjKSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+
cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcGFnZS0+Y2hy
b21lKCktPmNsaWVudCgpLT5yZWdpc3RlclByb3RvY29sSGFuZGxlcihzY2hlbWUsIGJhc2VVUkws
IHVybCwgbmF2aWdhdG9yLT5mcmFtZSgpLT5kaXNwbGF5U3RyaW5nTW9kaWZpZWRCeUVuY29kaW5n
KHRpdGxlKSk7Cit9CisjZW5kaWYKKworI2lmIEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIp
CitzdGF0aWMgU3RyaW5nIGN1c3RvbUhhbmRsZXJzU3RhdGVTdHJpbmcoY29uc3QgQ2hyb21lQ2xp
ZW50OjpDdXN0b21IYW5kbGVyc1N0YXRlIHN0YXRlKQoreworICAgIERFRklORV9TVEFUSUNfTE9D
QUwoY29uc3QgU3RyaW5nLCBuZXdIYW5kbGVyLCAoIm5ldyIpKTsKKyAgICBERUZJTkVfU1RBVElD
X0xPQ0FMKGNvbnN0IFN0cmluZywgcmVnaXN0ZXJlZEhhbmRsZXIsICgicmVnaXN0ZXJlZCIpKTsK
KyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmluZywgZGVjbGluZWRIYW5kbGVyLCAo
ImRlY2xpbmVkIikpOworCisgICAgc3dpdGNoIChzdGF0ZSkgeworICAgIGNhc2UgQ2hyb21lQ2xp
ZW50OjpDdXN0b21IYW5kbGVyc05ldzoKKyAgICAgICAgcmV0dXJuIG5ld0hhbmRsZXI7CisgICAg
Y2FzZSBDaHJvbWVDbGllbnQ6OkN1c3RvbUhhbmRsZXJzUmVnaXN0ZXJlZDoKKyAgICAgICAgcmV0
dXJuIHJlZ2lzdGVyZWRIYW5kbGVyOworICAgIGNhc2UgQ2hyb21lQ2xpZW50OjpDdXN0b21IYW5k
bGVyc0RlY2xpbmVkOgorICAgICAgICByZXR1cm4gZGVjbGluZWRIYW5kbGVyOworICAgIH0KKwor
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBTdHJpbmcoKTsKK30KKworU3Ry
aW5nIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjppc1Byb3RvY29sSGFuZGxlclJl
Z2lzdGVyZWQoTmF2aWdhdG9yKiBuYXZpZ2F0b3IsIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25z
dCBTdHJpbmcmIHVybCwgRXhjZXB0aW9uQ29kZSYgZWMpCit7CisgICAgREVGSU5FX1NUQVRJQ19M
T0NBTChjb25zdCBTdHJpbmcsIGRlY2xpbmVkLCAoImRlY2xpbmVkIikpOworCisgICAgaWYgKCFu
YXZpZ2F0b3ItPmZyYW1lKCkpCisgICAgICAgIHJldHVybiBkZWNsaW5lZDsKKworICAgIERvY3Vt
ZW50KiBkb2N1bWVudCA9IG5hdmlnYXRvci0+ZnJhbWUoKS0+ZG9jdW1lbnQoKTsKKyAgICBTdHJp
bmcgYmFzZVVSTCA9IGRvY3VtZW50LT5iYXNlVVJMKCkuYmFzZUFzU3RyaW5nKCk7CisKKyAgICBp
ZiAoIXZlcmlmeUN1c3RvbUhhbmRsZXJVUkwoYmFzZVVSTCwgdXJsLCBlYykpCisgICAgICAgIHJl
dHVybiBkZWNsaW5lZDsKKworICAgIGlmICghdmVyaWZ5UHJvdG9jb2xIYW5kbGVyU2NoZW1lKHNj
aGVtZSwgZWMpKQorICAgICAgICByZXR1cm4gZGVjbGluZWQ7CisKKyAgICBQYWdlKiBwYWdlID0g
bmF2aWdhdG9yLT5mcmFtZSgpLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm4gZGVjbGluZWQ7CisKKyAgICByZXR1cm4gY3VzdG9tSGFuZGxlcnNTdGF0ZVN0cmluZyhwYWdl
LT5jaHJvbWUoKS0+Y2xpZW50KCktPmlzUHJvdG9jb2xIYW5kbGVyUmVnaXN0ZXJlZChzY2hlbWUs
IGJhc2VVUkwsIHVybCkpOworfQorCit2b2lkIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyOjp1bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmlnYXRvciogbmF2aWdhdG9yLCBjb25z
dCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmIGVjKQor
eworICAgIGlmICghbmF2aWdhdG9yLT5mcmFtZSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBE
b2N1bWVudCogZG9jdW1lbnQgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPmRvY3VtZW50KCk7CisgICAg
U3RyaW5nIGJhc2VVUkwgPSBkb2N1bWVudC0+YmFzZVVSTCgpLmJhc2VBc1N0cmluZygpOworCisg
ICAgaWYgKCF2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGJhc2VVUkwsIHVybCwgZWMpKQorICAgICAg
ICByZXR1cm47CisKKyAgICBpZiAoIXZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShzY2hlbWUs
IGVjKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgUGFnZSogcGFnZSA9IG5hdmlnYXRvci0+ZnJh
bWUoKS0+cGFnZSgpOworICAgIGlmICghcGFnZSkKKyAgICAgICAgcmV0dXJuOworCisgICAgcGFn
ZS0+Y2hyb21lKCktPmNsaWVudCgpLT51bnJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKHNjaGVtZSwg
YmFzZVVSTCwgdXJsKTsKK30KKyNlbmRpZgorCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNl
bmRpZiAvLyBFTkFCTEUoUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgfHwgRU5BQkxFKENVU1RP
TV9TQ0hFTUVfSEFORExFUikKKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9w
cm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjE5M2UwMWY0MzdjYTRhYzMwYzZjNmQzZmUxYTY3NjAy
Y2U1YzU5ZAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9j
b2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmgKQEAgLTAsMCArMSw2
MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0
OgorICoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICog
QU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUK
KyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUgorICogU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIKKyAqIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRI
RSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNICisgKiBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBOYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlcl9oCisjZGVmaW5lIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
X2gKKworI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSB8fCBFTkFCTEUoQ1VT
VE9NX1NDSEVNRV9IQU5ETEVSKQorCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNs
dWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFz
cyBOYXZpZ2F0b3I7CisKK3R5cGVkZWYgaW50IEV4Y2VwdGlvbkNvZGU7CisKK2NsYXNzIE5hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyIHsKK3B1YmxpYzoKKyNpZiBFTkFCTEUoUkVHSVNU
RVJfUFJPVE9DT0xfSEFORExFUikKKyAgICBzdGF0aWMgdm9pZCByZWdpc3RlclByb3RvY29sSGFu
ZGxlcihOYXZpZ2F0b3IqLCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmws
IGNvbnN0IFN0cmluZyYgdGl0bGUsIEV4Y2VwdGlvbkNvZGUmKTsKKyNlbmRpZiAKKworI2lmIEVO
QUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCisgICAgc3RhdGljIFN0cmluZyBpc1Byb3RvY29s
SGFuZGxlclJlZ2lzdGVyZWQoTmF2aWdhdG9yKiwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0
IFN0cmluZyYgdXJsLCBFeGNlcHRpb25Db2RlJik7CisgICAgc3RhdGljIHZvaWQgdW5yZWdpc3Rl
clByb3RvY29sSGFuZGxlcihOYXZpZ2F0b3IqLCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3Qg
U3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmKTsKKyNlbmRpZgorCitwcml2YXRlOgorICAgIE5h
dmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKCk7CisgICAgfk5hdmlnYXRvclJlZ2lzdGVy
UHJvdG9jb2xIYW5kbGVyKCk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRp
ZiAvLyBFTkFCTEUoUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgfHwgRU5BQkxFKENVU1RPTV9T
Q0hFTUVfSEFORExFUikKKworI2VuZGlmIC8vIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJvdG9jb2xoYW5kbGVy
L05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvcHJvdG9jb2xoYW5kbGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xYmQ1N2YyZmUyYzQyZTY2ZTE5YTZkMjc1ZGZjMjhhODgwOTVjNTcxCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIv
TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaWRsCkBAIC0wLDAgKzEsMzQgQEAKKy8q
CisgICAgQ29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vi
c2lkaWFyeSgtaWVzKQorICAgIENvcHlyaWdodCAoQykgMjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmlj
cy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKworICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3
YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAgICBtb2RpZnkgaXQgdW5kZXIg
dGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICAgIExpY2Vuc2Ug
YXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICAg
IHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIg
dmVyc2lvbi4KKworICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0
aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0
aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICAgTUVSQ0hBTlRBQklMSVRZIG9y
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAgICBMaWJy
YXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgIFlvdSBz
aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVi
bGljIExpY2Vuc2UKKyAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENP
UFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bworICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5k
YXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisgICAgQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCisqLworCittb2R1bGUgd2luZG93IHsKKworICAgIGludGVy
ZmFjZSBbCisgICAgICAgIFN1cHBsZW1lbnRhbD1OYXZpZ2F0b3IKKyAgICBdIE5hdmlnYXRvclJl
Z2lzdGVyUHJvdG9jb2xIYW5kbGVyIHsKKyAgICAgICAgW0NvbmRpdGlvbmFsPVJFR0lTVEVSX1BS
T1RPQ09MX0hBTkRMRVJdIHZvaWQgcmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5n
IHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCwgaW4gRE9NU3RyaW5nIHRpdGxlKQorICAgICAgICAg
ICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CisgICAgICAgIFtDb25kaXRpb25hbD1DVVNUT01fU0NI
RU1FX0hBTkRMRVJdIERPTVN0cmluZyBpc1Byb3RvY29sSGFuZGxlclJlZ2lzdGVyZWQoaW4gRE9N
U3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCkKKyAgICAgICAgICAgIHJhaXNlcyhET01F
eGNlcHRpb24pOworICAgICAgICBbQ29uZGl0aW9uYWw9Q1VTVE9NX1NDSEVNRV9IQU5ETEVSXSB2
b2lkIHVucmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9N
U3RyaW5nIHVybCkKKyAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOworICAgIH07CisK
K30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkgYi9Tb3VyY2UvV2ViQ29y
ZS9UYXJnZXQucHJpCmluZGV4IGI5MTQ5NzU1M2Y0YTBlNGI5MzRjYzVhZjRjNGE2Mjc1MjA2MzJm
NTguLjJhZWViZmMzNjk4MTQ1MTBiNzg3OTM1NjAwN2Q1ZDdhMGRkZWE4ODAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKKysrIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnBy
aQpAQCAtNDMyLDYgKzQzMiw3IEBAIFNPVVJDRVMgKz0gXAogICAgIE1vZHVsZXMvbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwIFwKICAgICBNb2R1bGVzL25vdGlmaWNhdGlvbnMv
Tm90aWZpY2F0aW9uQ29udHJvbGxlci5jcHAgXAogICAgIE1vZHVsZXMvbm90aWZpY2F0aW9ucy9X
b3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5jcHAgXAorICAgIE1vZHVsZXMvcHJvdG9jb2xoYW5k
bGVyL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCBcCiAgICAgY3NzL0NTU0Fz
cGVjdFJhdGlvVmFsdWUuY3BwIFwKICAgICBjc3MvQ1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlLmNw
cCBcCiAgICAgY3NzL0NTU0JvcmRlckltYWdlLmNwcCBcCkBAIC0xMDQxLDcgKzEwNDIsNiBAQCBT
T1VSQ0VTICs9IFwKICAgICBwYWdlL01vdXNlRXZlbnRXaXRoSGl0VGVzdFJlc3VsdHMuY3BwIFwK
ICAgICBwYWdlL05hdmlnYXRvci5jcHAgXAogICAgIHBhZ2UvTmF2aWdhdG9yQmFzZS5jcHAgXAot
ICAgIHBhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIFwKICAgICBwYWdl
L09yaWdpbkFjY2Vzc0VudHJ5LmNwcCBcCiAgICAgcGFnZS9QYWdlLmNwcCBcCiAgICAgcGFnZS9Q
YWdlR3JvdXAuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwL1dl
YkNvcmUuZ3lwIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXAKaW5kZXgg
YTUzMTE3NDE5ZDVhZjEwMWI3OTdhZjk4MWUzMjgwYWVhOWM5ODc4NS4uMGRiMWI1YWVhZjJlMjIz
ODg2ZjUxOGUwM2U5NDJmMjI3NGExMTU4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS5neXAvV2ViQ29yZS5neXAKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXAvV2Vi
Q29yZS5neXAKQEAgLTYyLDYgKzYyLDcgQEAKICAgICAgICcuLi9Nb2R1bGVzL2luZGV4ZWRkYics
CiAgICAgICAnLi4vTW9kdWxlcy9tZWRpYXN0cmVhbScsCiAgICAgICAnLi4vTW9kdWxlcy9ub3Rp
ZmljYXRpb25zJywKKyAgICAgICcuLi9Nb2R1bGVzL3Byb3RvY29saGFuZGxlcicsCiAgICAgICAn
Li4vTW9kdWxlcy9xdW90YScsCiAgICAgICAnLi4vTW9kdWxlcy9zcGVlY2gnLAogICAgICAgJy4u
L01vZHVsZXMvd2ViYXVkaW8nLApAQCAtMTA1NSw2ICsxMDU2LDcgQEAKICAgICAgICAgICAgICAg
Jy0taW5jbHVkZScsICcuLi9Nb2R1bGVzL2ludGVudHMnLAogICAgICAgICAgICAgICAnLS1pbmNs
dWRlJywgJy4uL01vZHVsZXMvbWVkaWFzdHJlYW0nLAogICAgICAgICAgICAgICAnLS1pbmNsdWRl
JywgJy4uL01vZHVsZXMvbm90aWZpY2F0aW9ucycsCisgICAgICAgICAgICAgICctLWluY2x1ZGUn
LCAnLi4vTW9kdWxlcy9wcm90b2NvbGhhbmRsZXInLAogICAgICAgICAgICAgICAnLS1pbmNsdWRl
JywgJy4uL01vZHVsZXMvd2ViYXVkaW8nLAogICAgICAgICAgICAgICAnLS1pbmNsdWRlJywgJy4u
L01vZHVsZXMvd2ViZGF0YWJhc2UnLAogICAgICAgICAgICAgICAnLS1pbmNsdWRlJywgJy4uL2Nz
cycsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkKaW5kZXggZTM4YmU5MmFkMjk0YTkyMTk1Y2Q2NzIyNTY3M2JhMGYz
MWEzMmZkNC4uZjgzMmZjNWEzMGI0ZGUxMjFmMTczYTViNWU3ZTcwMzljN2E5NjRjMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQpAQCAtODQ3LDYgKzg0Nyw3IEBACiAgICAgICAgICAgICAnTW9kdWxlcy9ub3Rp
ZmljYXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMv
bm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJhY2suaWRsJywKICAgICAg
ICAgICAgICdNb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyQ29udGV4dE5vdGlmaWNhdGlvbnMu
aWRsJywKKyAgICAgICAgICAgICdNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdp
c3RlclByb3RvY29sSGFuZGxlci5pZGwnLAogICAgICAgICAgICAgJ01vZHVsZXMvcXVvdGEvRE9N
V2luZG93UXVvdGEuaWRsJywKICAgICAgICAgICAgICdNb2R1bGVzL3F1b3RhL1N0b3JhZ2VJbmZv
LmlkbCcsCiAgICAgICAgICAgICAnTW9kdWxlcy9xdW90YS9TdG9yYWdlSW5mb0Vycm9yQ2FsbGJh
Y2suaWRsJywKQEAgLTExNjUsNyArMTE2Niw2IEBACiAgICAgICAgICAgICAncGFnZS9Mb2NhdGlv
bi5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvTWVtb3J5SW5mby5pZGwnLAogICAgICAgICAgICAg
J3BhZ2UvTmF2aWdhdG9yLmlkbCcsCi0gICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3JSZWdpc3Rl
clByb3RvY29sSGFuZGxlci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUGFnZVBvcHVwQ29udHJv
bGxlci5pZGwnLAogICAgICAgICAgICAgJ3BhZ2UvUGVyZm9ybWFuY2UuaWRsJywKICAgICAgICAg
ICAgICdwYWdlL1BlcmZvcm1hbmNlRW50cnkuaWRsJywKQEAgLTE1ODEsNiArMTU4MSw4IEBACiAg
ICAgICAgICAgICAnTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvblBlcm1pc3Npb25D
YWxsYmFjay5oJywKICAgICAgICAgICAgICdNb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyQ29u
dGV4dE5vdGlmaWNhdGlvbnMuY3BwJywKICAgICAgICAgICAgICdNb2R1bGVzL25vdGlmaWNhdGlv
bnMvV29ya2VyQ29udGV4dE5vdGlmaWNhdGlvbnMuaCcsCisgICAgICAgICAgICAnTW9kdWxlcy9w
cm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwJywKKyAg
ICAgICAgICAgICdNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclByb3Rv
Y29sSGFuZGxlci5oJywKICAgICAgICAgICAgICdNb2R1bGVzL3F1b3RhL0RPTVdpbmRvd1F1b3Rh
LmNwcCcsCiAgICAgICAgICAgICAnTW9kdWxlcy9xdW90YS9ET01XaW5kb3dRdW90YS5oJywKICAg
ICAgICAgICAgICdNb2R1bGVzL3F1b3RhL1N0b3JhZ2VJbmZvLmNwcCcsCkBAIC0zMDYwLDggKzMw
NjIsNiBAQAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yLmgnLAogICAgICAgICAgICAgJ3Bh
Z2UvTmF2aWdhdG9yQmFzZS5jcHAnLAogICAgICAgICAgICAgJ3BhZ2UvTmF2aWdhdG9yQmFzZS5o
JywKLSAgICAgICAgICAgICdwYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNw
cCcsCi0gICAgICAgICAgICAncGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5o
JywKICAgICAgICAgICAgICdwYWdlL09yaWdpbkFjY2Vzc0VudHJ5LmNwcCcsCiAgICAgICAgICAg
ICAncGFnZS9PcmlnaW5BY2Nlc3NFbnRyeS5oJywKICAgICAgICAgICAgICdwYWdlL1BhZ2UuY3Bw
JywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJpIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5wcmkKaW5kZXggMGQ2MDE1NWNmZGU1MGUyYjliOGE0NGVjM2ExNjQzMzhjZmUz
OTRlYS4uM2VkOThjMjVmNTE5NDMxNjQyNjU1ZDY4MjI5ZDg0YzAwOTZjMTlhNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5wcmkKQEAgLTE4LDYgKzE4LDcgQEAgSU5DTFVERVBBVEggKz0gXAogICAgICQkU09VUkNFX0RJ
Ui9Nb2R1bGVzL2dlb2xvY2F0aW9uIFwKICAgICAkJFNPVVJDRV9ESVIvTW9kdWxlcy9pbmRleGVk
ZGIgXAogICAgICQkU09VUkNFX0RJUi9Nb2R1bGVzL25vdGlmaWNhdGlvbnMgXAorICAgICQkU09V
UkNFX0RJUi9Nb2R1bGVzL3Byb3RvY29saGFuZGxlciBcCiAgICAgJCRTT1VSQ0VfRElSL01vZHVs
ZXMvcXVvdGEgXAogICAgICQkU09VUkNFX0RJUi9Nb2R1bGVzL3dlYmF1ZGlvIFwKICAgICAkJFNP
VVJDRV9ESVIvTW9kdWxlcy93ZWJkYXRhYmFzZSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDkwNjJjOGIyMzFmNmMwYTVhYTNiZDFhOTRiNTFm
NGQ0OGZkMzg4MzQuLjk1MTE4ZGM4N2U5Njk2ZjJkNjk2ZjQ5MzA4NzAyYzhkYjRhZmQ3NDMgMTAw
NzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC0yNDky
Nyw2ICsyNDkyNywxOCBAQAogCQkJCTwvRmlsZT4KIAkJCTwvRmlsdGVyPgogCQkJPEZpbHRlcgor
CQkJCU5hbWU9InByb3RvY29saGFuZGxlciIKKwkJCQk+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRp
dmVQYXRoPSIuLlxNb2R1bGVzXHByb3RvY29saGFuZGxlclxOYXZpZ2F0b3JSZWdpc3RlclByb3Rv
Y29sSGFuZGxlci5jcHAiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVs
YXRpdmVQYXRoPSIuLlxNb2R1bGVzXHByb3RvY29saGFuZGxlclxOYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlci5oIgorCQkJCQk+CisJCQkJPC9GaWxlPgorCQkJPC9GaWx0ZXI+CisJCQk8
RmlsdGVyCiAJCQkJTmFtZT0icXVvdGEiCiAJCQkJPgogCQkJCTxGaWxlCkBAIC0yNjgzNSwxNCAr
MjY4NDcsNiBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRo
PSIuLlxwYWdlXE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmNwcCIKLQkJCQk+Ci0J
CQk8L0ZpbGU+Ci0JCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5ccGFnZVxOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5oIgotCQkJCT4KLQkJCTwvRmlsZT4KLQkJCTxGaWxlCiAJ
CQkJUmVsYXRpdmVQYXRoPSIuLlxwYWdlXE9yaWdpbkFjY2Vzc0VudHJ5LmNwcCIKIAkJCQk+CiAJ
CQk8L0ZpbGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlQ29tbW9uLnZzcHJvcHMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3Jl
Q29tbW9uLnZzcHJvcHMKaW5kZXggMDY0MWQ2NWEwMTI1ZDhhMzc0OTBjMzhjYjlmY2E4MTMxNTQ2
N2FmNi4uMTJlODc2NzZjODc4ZThjNmNhMTZiYzQ4YjhlNmY0MjBkNDA1OTQ0ZiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZUNvbW1vbi52c3Byb3BzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmVDb21tb24udnNwcm9wcwpA
QCAtNyw3ICs3LDcgQEAKIAk+CiAJPFRvb2wKIAkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCIKLQkJ
QWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz0iJnF1b3Q7JChQcm9qZWN0RGlyKS4uJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXGZpbGVzeXN0ZW0mcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXE1vZHVsZXNcZ2VvbG9jYXRpb24mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGly
KS4uXE1vZHVsZXNcaW5kZXhlZGRiJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVz
XHF1b3RhJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXG5vdGlmaWNhdGlvbnMm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcd2ViZGF0YWJhc2UmcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcd2Vic29ja2V0cyZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cYWNjZXNzaWJpbGl0eSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYWNjZXNz
aWJpbGl0eVx3aW4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJyaWRnZSZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5cYnJpZGdlXGMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJy
aWRnZVxqc2MmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGNzcyZxdW90OzsmcXVvdDskKFBy
b2plY3REaXIpLi5cZWRpdGluZyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cZmlsZWFwaSZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccmVuZGVyaW5nJnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxyZW5kZXJpbmdcbWF0aG1sJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxyZW5k
ZXJpbmdcc3R5bGUmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xzdmcmcXVv
dDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJpbmRpbmdzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxiaW5kaW5nc1xnZW5lcmljJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxiaW5kaW5n
c1xqcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYmluZGluZ3NcanNcc3BlY2lhbGl6YXRp
b24mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGRvbSZxdW90OzsmcXVvdDskKFByb2plY3RE
aXIpLi5cZG9tXGRlZmF1bHQmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGhpc3RvcnkmcXVv
dDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGh0bWwmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4u
XGh0bWxcY2FudmFzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxodG1sXHBhcnNlciZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5caHRtbFxzaGFkb3cmcXVvdDs7JnF1b3Q7JChQcm9qZWN0
RGlyKS4uXGluc3BlY3RvciZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cbG9hZGVyJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxsb2FkZXJcYXBwY2FjaGUmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXGxvYWRlclxhcmNoaXZlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxsb2Fk
ZXJcYXJjaGl2ZVxjZiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cbG9hZGVyXGNhY2hlJnF1
b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxsb2FkZXJcaWNvbiZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cbWF0aG1sJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwYWdlJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxwYWdlXGFuaW1hdGlvbiZxdW90OzsmcXVvdDskKFByb2plY3RE
aXIpLi5ccGFnZVxzY3JvbGxpbmcmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBhZ2Vcd2lu
JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybSZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5ccGxhdGZvcm1cYW5pbWF0aW9uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxw
bGF0Zm9ybVxtb2NrJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxzcWwmcXVv
dDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXHdpbiZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5ccGxhdGZvcm1cbmV0d29yayZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxh
dGZvcm1cbmV0d29ya1x3aW4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGNm
JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljcyZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2EmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0
RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXGZpbHRlcnNcYXJtJnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xvcGVudHlwZSZxdW90OzsmcXVvdDskKFByb2plY3RE
aXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcdHJhbnNmb3JtcyZxdW90OzsmcXVvdDskKFByb2plY3RE
aXIpLi5ccGxhdGZvcm1cdGV4dCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1c
dGV4dFx0cmFuc2NvZGVyJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFw
aGljc1x3aW4mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHhtbCZxdW90OzsmcXVvdDskKFBy
b2plY3REaXIpLi5ceG1sXHBhcnNlciZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERp
cilcb2JqXFdlYkNvcmVcRGVyaXZlZFNvdXJjZXMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4u
XHBsdWdpbnMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsdWdpbnNcd2luJnF1b3Q7OyZx
dW90OyQoUHJvamVjdERpcikuLlxzdmdcYW5pbWF0aW9uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxzdmdcZ3JhcGhpY3MmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xwcm9wZXJ0
aWVzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxzdmdcZ3JhcGhpY3NcZmlsdGVycyZxdW90
OzsmcXVvdDskKFByb2plY3REaXIpLi5cc3ZnJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx0
ZXN0aW5nJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlx3bWwmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHN0b3JhZ2UmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHdlYnNvY2tldHMm
cXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHdvcmtlcnMmcXVvdDs7JnF1b3Q7JChDb25maWd1
cmF0aW9uQnVpbGREaXIpXGluY2x1ZGUmcXVvdDs7JnF1b3Q7JChDb25maWd1cmF0aW9uQnVpbGRE
aXIpXGluY2x1ZGVccHJpdmF0ZSZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilc
aW5jbHVkZVxKYXZhU2NyaXB0Q29yZSZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERp
cilcaW5jbHVkZVxwcml2YXRlXEphdmFTY3JpcHRDb3JlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERp
cikuLlxGb3J3YXJkaW5nSGVhZGVycyZxdW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0Rpcilc
aW5jbHVkZSZxdW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVxwcml2YXRl
JnF1b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXHByaXZhdGVcSmF2YVNj
cmlwdENvcmUmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVccHRocmVh
ZHMmcXVvdDs7JnF1b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVcc3FsaXRlJnF1b3Q7
OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXEphdmFTY3JpcHRDb3JlJnF1b3Q7
OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXHpsaWImcXVvdDsiCisJCUFkZGl0
aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM9IiZxdW90OyQoUHJvamVjdERpcikuLiZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xmaWxlc3lzdGVtJnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxNb2R1bGVzXGdlb2xvY2F0aW9uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxN
b2R1bGVzXGluZGV4ZWRkYiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xwcm90
b2NvbGhhbmRsZXImcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNccXVvdGEmcXVv
dDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcbm90aWZpY2F0aW9ucyZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZSZxdW90OzsmcXVvdDskKFByb2pl
Y3REaXIpLi5cTW9kdWxlc1x3ZWJzb2NrZXRzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxh
Y2Nlc3NpYmlsaXR5JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxhY2Nlc3NpYmlsaXR5XHdp
biZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYnJpZGdlJnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxicmlkZ2VcYyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cYnJpZGdlXGpzYyZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cY3NzJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpciku
LlxlZGl0aW5nJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxmaWxlYXBpJnF1b3Q7OyZxdW90
OyQoUHJvamVjdERpcikuLlxyZW5kZXJpbmcmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHJl
bmRlcmluZ1xtYXRobWwmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xzdHls
ZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccmVuZGVyaW5nXHN2ZyZxdW90OzsmcXVvdDsk
KFByb2plY3REaXIpLi5cYmluZGluZ3MmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJpbmRp
bmdzXGdlbmVyaWMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGJpbmRpbmdzXGpzJnF1b3Q7
OyZxdW90OyQoUHJvamVjdERpcikuLlxiaW5kaW5nc1xqc1xzcGVjaWFsaXphdGlvbiZxdW90Ozsm
cXVvdDskKFByb2plY3REaXIpLi5cZG9tJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxkb21c
ZGVmYXVsdCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5caGlzdG9yeSZxdW90OzsmcXVvdDsk
KFByb2plY3REaXIpLi5caHRtbCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5caHRtbFxjYW52
YXMmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGh0bWxccGFyc2VyJnF1b3Q7OyZxdW90OyQo
UHJvamVjdERpcikuLlxodG1sXHNoYWRvdyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5caW5z
cGVjdG9yJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxsb2FkZXImcXVvdDs7JnF1b3Q7JChQ
cm9qZWN0RGlyKS4uXGxvYWRlclxhcHBjYWNoZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5c
bG9hZGVyXGFyY2hpdmUmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxhcmNoaXZl
XGNmJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxsb2FkZXJcY2FjaGUmcXVvdDs7JnF1b3Q7
JChQcm9qZWN0RGlyKS4uXGxvYWRlclxpY29uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxt
YXRobWwmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBhZ2UmcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHBhZ2VcYW5pbWF0aW9uJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwYWdl
XHNjcm9sbGluZyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGFnZVx3aW4mcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxw
bGF0Zm9ybVxhbmltYXRpb24mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXG1v
Y2smcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXHNxbCZxdW90OzsmcXVvdDsk
KFByb2plY3REaXIpLi5ccGxhdGZvcm1cd2luJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxw
bGF0Zm9ybVxuZXR3b3JrJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxuZXR3
b3JrXHdpbiZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cY2YmcXVvdDs7JnF1
b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzJnF1b3Q7OyZxdW90OyQoUHJvamVj
dERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xjYSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVycyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGxh
dGZvcm1cZ3JhcGhpY3NcZmlsdGVyc1xhcm0mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBs
YXRmb3JtXGdyYXBoaWNzXG9wZW50eXBlJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0
Zm9ybVxncmFwaGljc1x0cmFuc2Zvcm1zJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0
Zm9ybVx0ZXh0JnF1b3Q7OyZxdW90OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVx0ZXh0XHRyYW5z
Y29kZXImcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXHdpbiZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ceG1sJnF1b3Q7OyZxdW90OyQoUHJvamVjdERpciku
Llx4bWxccGFyc2VyJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmpcV2Vi
Q29yZVxEZXJpdmVkU291cmNlcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGx1Z2lucyZx
dW90OzsmcXVvdDskKFByb2plY3REaXIpLi5ccGx1Z2luc1x3aW4mcXVvdDs7JnF1b3Q7JChQcm9q
ZWN0RGlyKS4uXHN2Z1xhbmltYXRpb24mcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xn
cmFwaGljcyZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cc3ZnXHByb3BlcnRpZXMmcXVvdDs7
JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHN2Z1xncmFwaGljc1xmaWx0ZXJzJnF1b3Q7OyZxdW90OyQo
UHJvamVjdERpcikuLlxzdmcmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHRlc3RpbmcmcXVv
dDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXHdtbCZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5c
c3RvcmFnZSZxdW90OzsmcXVvdDskKFByb2plY3REaXIpLi5cd2Vic29ja2V0cyZxdW90OzsmcXVv
dDskKFByb2plY3REaXIpLi5cd29ya2VycyZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWls
ZERpcilcaW5jbHVkZSZxdW90OzsmcXVvdDskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5jbHVk
ZVxwcml2YXRlJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxpbmNsdWRlXEph
dmFTY3JpcHRDb3JlJnF1b3Q7OyZxdW90OyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxpbmNsdWRl
XHByaXZhdGVcSmF2YVNjcmlwdENvcmUmcXVvdDs7JnF1b3Q7JChQcm9qZWN0RGlyKS4uXEZvcndh
cmRpbmdIZWFkZXJzJnF1b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlJnF1
b3Q7OyZxdW90OyQoV2ViS2l0TGlicmFyaWVzRGlyKVxpbmNsdWRlXHByaXZhdGUmcXVvdDs7JnF1
b3Q7JChXZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVccHJpdmF0ZVxKYXZhU2NyaXB0Q29yZSZx
dW90OzsmcXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVxwdGhyZWFkcyZxdW90Ozsm
cXVvdDskKFdlYktpdExpYnJhcmllc0RpcilcaW5jbHVkZVxzcWxpdGUmcXVvdDs7JnF1b3Q7JChX
ZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVcSmF2YVNjcmlwdENvcmUmcXVvdDs7JnF1b3Q7JChX
ZWJLaXRMaWJyYXJpZXNEaXIpXGluY2x1ZGVcemxpYiZxdW90OyIKIAkJUHJlcHJvY2Vzc29yRGVm
aW5pdGlvbnM9Il9fV0lOMzJfXztESVNBQkxFXzNEX1JFTkRFUklORztXRUJDT1JFX0NPTlRFWFRf
TUVOVVMiCiAJCVVzZVByZWNvbXBpbGVkSGVhZGVyPSIyIgogCQlQcmVjb21waWxlZEhlYWRlclRo
cm91Z2g9IldlYkNvcmVQcmVmaXguaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL2NvcHlGb3J3YXJkaW5nSGVhZGVycy5jbWQgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9jb3B5Rm9yd2FyZGluZ0hlYWRlcnMuY21kCmluZGV4IDgzZjFmMDMxN2M4YWU3
Nzk1OGRjMjhmMThlMDFmYTBjOWNlNjUwMDEuLjA5MTdjZDc5MTdkZjg1YTRiNTZiYzhjZDdmNmE2
ZThiNjk4MWQzN2EgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL2Nv
cHlGb3J3YXJkaW5nSGVhZGVycy5jbWQKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3By
b2ovY29weUZvcndhcmRpbmdIZWFkZXJzLmNtZApAQCAtMjEsOCArMjEsOSBAQCB4Y29weSAveSAv
ZCAiJVByb2plY3REaXIlLi5cY29uZmlnLmgiICIlQ09ORklHVVJBVElPTkJVSUxERElSJVxpbmNs
dWRlXFdlYkNvcmUiCiB4Y29weSAveSAvZCAiJUNPTkZJR1VSQVRJT05CVUlMRERJUiVcb2JqXFdl
YkNvcmVcRGVyaXZlZFNvdXJjZXNcKi5oIiAiJUNPTkZJR1VSQVRJT05CVUlMRERJUiVcaW5jbHVk
ZVxXZWJDb3JlIgogeGNvcHkgL3kgL2QgIiVQcm9qZWN0RGlyJS4uXE1vZHVsZXNcZmlsZXN5c3Rl
bVwqLmgiICIlQ09ORklHVVJBVElPTkJVSUxERElSJVxpbmNsdWRlXFdlYkNvcmUiCiB4Y29weSAv
eSAvZCAiJVByb2plY3REaXIlLi5cTW9kdWxlc1xnZW9sb2NhdGlvblwqLmgiICIlQ09ORklHVVJB
VElPTkJVSUxERElSJVxpbmNsdWRlXFdlYkNvcmUiCi14Y29weSAveSAvZCAiJVByb2plY3REaXIl
Li5cTW9kdWxlc1xxdW90YVwqLmgiICIlQ09ORklHVVJBVElPTkJVSUxERElSJVxpbmNsdWRlXFdl
YkNvcmUiCiB4Y29weSAveSAvZCAiJVByb2plY3REaXIlLi5cTW9kdWxlc1xub3RpZmljYXRpb25z
XCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2ViQ29yZSIKK3hjb3B5IC95
IC9kICIlUHJvamVjdERpciUuLlxNb2R1bGVzXHByb3RvY29saGFuZGxlclwqLmgiICIlQ09ORklH
VVJBVElPTkJVSUxERElSJVxpbmNsdWRlXFdlYkNvcmUiCit4Y29weSAveSAvZCAiJVByb2plY3RE
aXIlLi5cTW9kdWxlc1xxdW90YVwqLmgiICIlQ09ORklHVVJBVElPTkJVSUxERElSJVxpbmNsdWRl
XFdlYkNvcmUiCiB4Y29weSAveSAvZCAiJVByb2plY3REaXIlLi5cTW9kdWxlc1x3ZWJkYXRhYmFz
ZVwqLmgiICIlQ09ORklHVVJBVElPTkJVSUxERElSJVxpbmNsdWRlXFdlYkNvcmUiCiB4Y29weSAv
eSAvZCAiJVByb2plY3REaXIlLi5cTW9kdWxlc1x3ZWJzb2NrZXRzXCouaCIgIiVDT05GSUdVUkFU
SU9OQlVJTERESVIlXGluY2x1ZGVcV2ViQ29yZSIKIHhjb3B5IC95IC9kICIlUHJvamVjdERpciUu
LlxhY2Nlc3NpYmlsaXR5XCouaCIgIiVDT05GSUdVUkFUSU9OQlVJTERESVIlXGluY2x1ZGVcV2Vi
Q29yZSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCBkODhhZjE4ZTFkNWRiMTg1MmRjYjdiYjU3ZTdmZTU3NDg3MWI0MzMxLi5hMTUy
MGE3NGM2NjNkZjBhZTBhNzNhYmFkMTA3MDNiNjNkMDI5YWRmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0zNjQyLDggKzM2NDIs
NiBAQAogCQk5N0RDRTIwMjEwODA3Qzc1MDA1N0QzOTQgLyogSGlzdG9yeUNvbnRyb2xsZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3RENFMjAwMTA4
MDdDNzUwMDU3RDM5NCAvKiBIaXN0b3J5Q29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTk3RTQwMjhGMTNBNjk2RUQwMDkxM0Q2NyAv
KiBJY29uQ29udHJvbGxlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA5N0U0MDI4RDEzQTY5NkVEMDA5MTNENjcgLyogSWNvbkNvbnRyb2xsZXIuY3Bw
ICovOyB9OwogCQk5N0U0MDI5MDEzQTY5NkVEMDA5MTNENjcgLyogSWNvbkNvbnRyb2xsZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3RTQwMjhFMTNB
Njk2RUQwMDkxM0Q2NyAvKiBJY29uQ29udHJvbGxlci5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTk3RTRBMTI2MTRGNEM1RDQwMDg3MEU0MyAvKiBO
YXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTczMEJFMTUxNEVGMjg2QjAwREYwNkI5IC8qIE5hdmln
YXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggKi87IH07Ci0JCTk3RTRBMTI3MTRGNEM1RDcw
MDg3MEU0MyAvKiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA5NzMwQkUxNDE0RUYyODZCMDBE
RjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwICovOyB9OwogCQk5
N0VGN0RGRTEwN0U1NUI3MDBEN0M0OUMgLyogU2NyaXB0Q29udHJvbGxlckJhc2UuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdFRjdERkQxMDdFNTVC
NzAwRDdDNDlDIC8qIFNjcmlwdENvbnRyb2xsZXJCYXNlLmNwcCAqLzsgfTsKIAkJOTdGOEU2NjUx
NTFENEE0QjAwRDJEMTgxIC8qIFdvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDk3RjhFNjYxMTUxRDRBM0Yw
MEQyRDE4MSAvKiBXb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5jcHAgKi87IH07CiAJCTk3RjhF
NjY2MTUxRDRBNEUwMEQyRDE4MSAvKiBXb3JrZXJDb250ZXh0Tm90aWZpY2F0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gOTdGOEU2NjIxNTFENEEz
RjAwRDJEMTgxIC8qIFdvcmtlckNvbnRleHROb3RpZmljYXRpb25zLmggKi87IH07CkBAIC04Nzg5
LDYgKzg3ODcsOSBAQAogCQk2MzE4OUFFMjBFODNBMzMzMDAwMTJFNDEgLyogTm9kZVJhcmVEYXRh
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5vZGVSYXJlRGF0YS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2MzdCN0FERTBFODc2N0I4MDBFMzIxOTQgLyogRWxl
bWVudFJhcmVEYXRhLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEVsZW1lbnRS
YXJlRGF0YS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk2M0Q3QjMyQzBFNzhDRDNG
MDBGNzYxN0MgLyogTm9kZVJlbmRlclN0eWxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE5vZGVSZW5kZXJTdHlsZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk2
NDU4Mjg0NDE1QUIyN0M4MDBCQkY5MUEgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRs
ZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTW9kdWxlcy9wcm90
b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQk2NDU4Mjg0NTE1QUIyN0M4MDBCQkY5MUEgLyogTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gTW9kdWxlcy9wcm90b2NvbGhhbmRsZXIvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNjQ1ODI4NDYxNUFCMjdDODAw
QkJGOTFBIC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmlkbCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHRleHQ7IHBhdGggPSBNb2R1bGVzL3Byb3RvY29saGFuZGxlci9OYXZpZ2F0b3JSZWdpc3RlclBy
b3RvY29sSGFuZGxlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTY1MEY1M0RC
MDlEMTVEREEwMEM5QjBDOCAvKiBDU1NHcmFtbWFyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBDU1NHcmFtbWFyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTY1
MEZCRjI3MEQ5QUYwNDYwMDhGQzI5MiAvKiBTVkdIS2VybkVsZW1lbnQuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU1ZHSEtlcm5FbGVtZW50LmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNjUwRkJGMjgwRDlBRjA0NzAwOEZDMjkyIC8qIFNWR0hLZXJu
RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTVkdIS2VybkVsZW1l
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEwNTQxLDkgKzEwNTQyLDYgQEAK
IAkJOTcyMDVBQkExMjM5MjkyNzAwQjE3MzgwIC8qIFBsdWdpbkRvY3VtZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsdWdpbkRvY3VtZW50Lmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTk3MjhDMzExMTI2OEU0MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVs
YXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNYXJrdXBBY2N1
bXVsYXRvci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3MjhDMzEyMTI2OEU0
MzkwMDQxRTg5QiAvKiBNYXJrdXBBY2N1bXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBNYXJrdXBBY2N1bXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk5NzMwQkUxNDE0RUYyODZCMDBERjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmF2aWdh
dG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQk5NzMwQkUxNTE0RUYyODZCMDBERjA2QjkgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmF2aWdhdG9yUmVn
aXN0ZXJQcm90b2NvbEhhbmRsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJOTcz
MEJFMTYxNEVGMjg2QjAwREYwNkI5IC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVy
LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFu
ZGxlci5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTk3Mzg4OTlFMTE2RUE5REMw
MEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBEb2N1bWVudFdyaXRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTk3Mzg4OTlGMTE2RUE5REMwMEFERjMxMyAvKiBEb2N1bWVudFdyaXRlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb2N1bWVudFdyaXRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQk5NzNEQzYzRDE0NUE5NDA5MDAyODQyQzIgLyogRXhjZXB0aW9uQ29k
ZURlc2NyaXB0aW9uLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEV4
Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbi5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xNTMwMCw2ICsxNTI5OCwxNyBAQAogCQkJcGF0aCA9IHBsdWdpbnM7CiAJCQlzb3VyY2VUcmVl
ID0gIjxncm91cD4iOwogCQl9OworCQk2NDU4Mjg0MzE1QUIyN0M4MDBCQkY5MUEgLyogcHJvdG9j
b2xoYW5kbGVyICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJ
CQk2NDU4Mjg0NDE1QUIyN0M4MDBCQkY5MUEgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIuY3BwICovLAorCQkJCTY0NTgyODQ1MTVBQjI3QzgwMEJCRjkxQSAvKiBOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5oICovLAorCQkJCTY0NTgyODQ2MTVBQjI3QzgwMEJCRjkx
QSAvKiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5pZGwgKi8sCisJCQkpOworCQkJ
bmFtZSA9IHByb3RvY29saGFuZGxlcjsKKwkJCXBhdGggPSBNb2R1bGVzL3Byb3RvY29saGFuZGxl
cjsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CiAJCTY1NjU4MEVDMDlEMTJCMjAw
MDBFNjFENyAvKiBEZXJpdmVkIFNvdXJjZXMgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJ
CWNoaWxkcmVuID0gKApAQCAtMTU2MzUsOSArMTU2NDQsNiBAQAogCQkJCUE5QzZFNjVEMEQ3NDY2
OTQwMDY0NDJFOSAvKiBOYXZpZ2F0b3IuaWRsICovLAogCQkJCUUxMjcxOUM5MEVFRUMyMTMwMEY2
MTIxMyAvKiBOYXZpZ2F0b3JCYXNlLmNwcCAqLywKIAkJCQlFMTI3MTlDNjBFRUVDMTY4MDBGNjEy
MTMgLyogTmF2aWdhdG9yQmFzZS5oICovLAotCQkJCTk3MzBCRTE0MTRFRjI4NkIwMERGMDZCOSAv
KiBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAgKi8sCi0JCQkJOTczMEJFMTUx
NEVGMjg2QjAwREYwNkI5IC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyLmggKi8s
Ci0JCQkJOTczMEJFMTYxNEVGMjg2QjAwREYwNkI5IC8qIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyLmlkbCAqLywKIAkJCQkwMDE0NjI4ODEwM0NEMURFMDAwQjIwREIgLyogT3JpZ2lu
QWNjZXNzRW50cnkuY3BwICovLAogCQkJCTAwMTQ2Mjg5MTAzQ0QxREUwMDBCMjBEQiAvKiBPcmln
aW5BY2Nlc3NFbnRyeS5oICovLAogCQkJCTY1RkVBODY4MDk4MzNBREUwMEJFRDRBQiAvKiBQYWdl
LmNwcCAqLywKQEAgLTI0MTQ5LDcgKzI0MTU1LDYgQEAKIAkJCQlBOUM2RTVBNjBENzQ2NDU4MDA2
NDQyRTkgLyogTmF2aWdhdG9yLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTI3MTlDNzBFRUVDMTY4
MDBGNjEyMTMgLyogTmF2aWdhdG9yQmFzZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTcxMTQ2MDQx
NEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRvckdlb2xvY2F0aW9uLmggaW4gSGVhZGVycyAqLywK
LQkJCQk5N0U0QTEyNjE0RjRDNUQ0MDA4NzBFNDMgLyogTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCThBMzA5QzlGMTIzOTUwQkUwMENCOTIwNCAv
KiBOZXN0aW5nTGV2ZWxJbmNyZW1lbnRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNjU2RDM3NDMw
QURCQTVERTAwQTQ1NTREIC8qIE5ldHNjYXBlUGx1Z0luU3RyZWFtTG9hZGVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk2MjhEMjE0QzEyMTMxRUQxMDA1NURDRkMgLyogTmV0d29ya2luZ0NvbnRleHQu
aCBpbiBIZWFkZXJzICovLApAQCAtMjc0MTIsNyArMjc0MTcsNiBAQAogCQkJCUE5QzZFNUE1MEQ3
NDY0NTgwMDY0NDJFOSAvKiBOYXZpZ2F0b3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTEyNzE5
Q0EwRUVFQzIxMzAwRjYxMjEzIC8qIE5hdmlnYXRvckJhc2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJOTcxMTQ2MDMxNEVGMDA5QTAwNjc0RkQ5IC8qIE5hdmlnYXRvckdlb2xvY2F0aW9uLmNwcCBp
biBTb3VyY2VzICovLAotCQkJCTk3RTRBMTI3MTRGNEM1RDcwMDg3MEU0MyAvKiBOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1RDg3NEYxMzBE
MTYxRDMyMDA3OTZDM0IgLyogTmV0c2NhcGVQbHVnSW5TdHJlYW1Mb2FkZXIuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNTlDMjdGMDUxMzhEMjhDMTAwNzlCN0UyIC8qIE5ldHdvcmtSZXNvdXJjZXNE
YXRhLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBN0ZBNjFCMEREQTNCQkUwMDI4RjhBNSAvKiBO
ZXR3b3JrU3RhdGVOb3RpZmllci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5jcHAKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDBkNWViODljOTQ4M2Y3OWZlYTEzMzZkZWU2OGU5
MzhhN2YwMmEwNWQuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlci5j
cHAKKysrIC9kZXYvbnVsbApAQCAtMSwyMTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMSwgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqIENvcHlyaWdodCAoQykg
MjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgotICoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnIEFORAotICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRQotICogQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKLSAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCi0gKiBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUgotICogU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIKLSAqIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAotICog
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWQotICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNICi0gKiBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIk5hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyLmgiCi0KLSNpZiBFTkFCTEUoUkVHSVNURVJfUFJPVE9DT0xfSEFORExFUikgfHwg
RU5BQkxFKENVU1RPTV9TQ0hFTUVfSEFORExFUikKLQotI2luY2x1ZGUgIkNocm9tZS5oIgotI2lu
Y2x1ZGUgIkNocm9tZUNsaWVudC5oIgotI2luY2x1ZGUgIkRvY3VtZW50LmgiCi0jaW5jbHVkZSAi
RXhjZXB0aW9uQ29kZS5oIgotI2luY2x1ZGUgIkZyYW1lLmgiCi0jaW5jbHVkZSAiTmF2aWdhdG9y
LmgiCi0jaW5jbHVkZSAiUGFnZS5oIgotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+Ci0KLW5hbWVz
cGFjZSBXZWJDb3JlIHsKLQotc3RhdGljIEhhc2hTZXQ8U3RyaW5nPiogcHJvdG9jb2xXaGl0ZWxp
c3Q7Ci0KLXN0YXRpYyB2b2lkIGluaXRQcm90b2NvbEhhbmRsZXJXaGl0ZWxpc3QoKQotewotICAg
IHByb3RvY29sV2hpdGVsaXN0ID0gbmV3IEhhc2hTZXQ8U3RyaW5nPjsKLSAgICBzdGF0aWMgY29u
c3QgY2hhciogcHJvdG9jb2xzW10gPSB7Ci0jaWYgIVBMQVRGT1JNKEJMQUNLQkVSUlkpCi0gICAg
ICAgICJpcmMiLAotICAgICAgICAibWFpbHRvIiwKLSAgICAgICAgIm1tcyIsCi0gICAgICAgICJu
ZXdzIiwKLSAgICAgICAgIm5udHAiLAotICAgICAgICAic21zIiwKLSAgICAgICAgInNtc3RvIiwK
LSAgICAgICAgInRlbCIsCi0gICAgICAgICJ1cm4iLAotICAgICAgICAid2ViY2FsIiwKLSNlbmRp
ZgotICAgIH07Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHBy
b3RvY29scyk7ICsraSkKLSAgICAgICAgcHJvdG9jb2xXaGl0ZWxpc3QtPmFkZChwcm90b2NvbHNb
aV0pOwotfQotCi1zdGF0aWMgYm9vbCB2ZXJpZnlDdXN0b21IYW5kbGVyVVJMKGNvbnN0IFN0cmlu
ZyYgYmFzZVVSTCwgY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAg
IC8vIFRoZSBzcGVjaWZpY2F0aW9uIHJlcXVpcmVzIHRoYXQgaXQgaXMgYSBTWU5UQVhfRVJSIGlm
IHRoZSAiJXMiIHRva2VuIGlzCi0gICAgLy8gbm90IHByZXNlbnQuCi0gICAgc3RhdGljIGNvbnN0
IGNoYXIgdG9rZW5bXSA9ICIlcyI7Ci0gICAgaW50IGluZGV4ID0gdXJsLmZpbmQodG9rZW4pOwot
ICAgIGlmICgtMSA9PSBpbmRleCkgewotICAgICAgICBlYyA9IFNZTlRBWF9FUlI7Ci0gICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICAvLyBJdCBpcyBhbHNvIGEgU1lOVEFYX0VSUiBp
ZiB0aGUgY3VzdG9tIGhhbmRsZXIgVVJMLCBhcyBjcmVhdGVkIGJ5IHJlbW92aW5nCi0gICAgLy8g
dGhlICIlcyIgdG9rZW4gYW5kIHByZXBlbmRpbmcgdGhlIGJhc2UgdXJsLCBkb2VzIG5vdCByZXNv
bHZlLgotICAgIFN0cmluZyBuZXdVUkwgPSB1cmw7Ci0gICAgbmV3VVJMLnJlbW92ZShpbmRleCwg
V1RGX0FSUkFZX0xFTkdUSCh0b2tlbikgLSAxKTsKLQotICAgIEtVUkwgYmFzZShQYXJzZWRVUkxT
dHJpbmcsIGJhc2VVUkwpOwotICAgIEtVUkwga3VybChiYXNlLCBuZXdVUkwpOwotCi0gICAgaWYg
KGt1cmwuaXNFbXB0eSgpIHx8ICFrdXJsLmlzVmFsaWQoKSkgewotICAgICAgICBlYyA9IFNZTlRB
WF9FUlI7Ci0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICB9Ci0KLSAgICByZXR1cm4gdHJ1ZTsK
LX0KLQotc3RhdGljIGJvb2wgaXNQcm90b2NvbFdoaXRlbGlzdGVkKGNvbnN0IFN0cmluZyYgc2No
ZW1lKQotewotICAgIGlmICghcHJvdG9jb2xXaGl0ZWxpc3QpCi0gICAgICAgIGluaXRQcm90b2Nv
bEhhbmRsZXJXaGl0ZWxpc3QoKTsKLSAgICByZXR1cm4gcHJvdG9jb2xXaGl0ZWxpc3QtPmNvbnRh
aW5zKHNjaGVtZSk7Ci19Ci0KLXN0YXRpYyBib29sIHZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVt
ZShjb25zdCBTdHJpbmcmIHNjaGVtZSwgRXhjZXB0aW9uQ29kZSYgZWMpCi17Ci0gICAgaWYgKHNj
aGVtZS5zdGFydHNXaXRoKCJ3ZWIrIikpIHsKLSAgICAgICAgaWYgKGlzVmFsaWRQcm90b2NvbChz
Y2hlbWUpKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIGVjID0gU0VDVVJJVFlf
RVJSOwotICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgfQotCi0gICAgaWYgKGlzUHJvdG9jb2xX
aGl0ZWxpc3RlZChzY2hlbWUpKQotICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICBlYyA9IFNFQ1VS
SVRZX0VSUjsKLSAgICByZXR1cm4gZmFsc2U7Ci19Ci0KLU5hdmlnYXRvclJlZ2lzdGVyUHJvdG9j
b2xIYW5kbGVyOjpOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcigpCi17Ci19Ci0KLU5h
dmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjp+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2Nv
bEhhbmRsZXIoKQotewotfQotCi0jaWYgRU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIp
Ci12b2lkIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyOjpyZWdpc3RlclByb3RvY29s
SGFuZGxlcihOYXZpZ2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hlbWUsIGNvbnN0
IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIHRpdGxlLCBFeGNlcHRpb25Db2RlJiBlYykKLXsK
LSAgICBpZiAoIW5hdmlnYXRvci0+ZnJhbWUoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgRG9j
dW1lbnQqIGRvY3VtZW50ID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVudCgpOwotICAgIGlm
ICghZG9jdW1lbnQpCi0gICAgICAgIHJldHVybjsKLQotICAgIFN0cmluZyBiYXNlVVJMID0gZG9j
dW1lbnQtPmJhc2VVUkwoKS5iYXNlQXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5Q3VzdG9t
SGFuZGxlclVSTChiYXNlVVJMLCB1cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYg
KCF2ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAgIHJldHVy
bjsKLQotICAgIFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsKLSAgICBp
ZiAoIXBhZ2UpCi0gICAgICAgIHJldHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5jbGllbnQo
KS0+cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoc2NoZW1lLCBiYXNlVVJMLCB1cmwsIG5hdmlnYXRv
ci0+ZnJhbWUoKS0+ZGlzcGxheVN0cmluZ01vZGlmaWVkQnlFbmNvZGluZyh0aXRsZSkpOwotfQot
I2VuZGlmCi0KLSNpZiBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKQotc3RhdGljIFN0cmlu
ZyBjdXN0b21IYW5kbGVyc1N0YXRlU3RyaW5nKGNvbnN0IENocm9tZUNsaWVudDo6Q3VzdG9tSGFu
ZGxlcnNTdGF0ZSBzdGF0ZSkKLXsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKGNvbnN0IFN0cmlu
ZywgbmV3SGFuZGxlciwgKCJuZXciKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19MT0NBTChjb25zdCBT
dHJpbmcsIHJlZ2lzdGVyZWRIYW5kbGVyLCAoInJlZ2lzdGVyZWQiKSk7Ci0gICAgREVGSU5FX1NU
QVRJQ19MT0NBTChjb25zdCBTdHJpbmcsIGRlY2xpbmVkSGFuZGxlciwgKCJkZWNsaW5lZCIpKTsK
LQotICAgIHN3aXRjaCAoc3RhdGUpIHsKLSAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFu
ZGxlcnNOZXc6Ci0gICAgICAgIHJldHVybiBuZXdIYW5kbGVyOwotICAgIGNhc2UgQ2hyb21lQ2xp
ZW50OjpDdXN0b21IYW5kbGVyc1JlZ2lzdGVyZWQ6Ci0gICAgICAgIHJldHVybiByZWdpc3RlcmVk
SGFuZGxlcjsKLSAgICBjYXNlIENocm9tZUNsaWVudDo6Q3VzdG9tSGFuZGxlcnNEZWNsaW5lZDoK
LSAgICAgICAgcmV0dXJuIGRlY2xpbmVkSGFuZGxlcjsKLSAgICB9Ci0KLSAgICBBU1NFUlRfTk9U
X1JFQUNIRUQoKTsKLSAgICByZXR1cm4gU3RyaW5nKCk7Ci19Ci0KLVN0cmluZyBOYXZpZ2F0b3JS
ZWdpc3RlclByb3RvY29sSGFuZGxlcjo6aXNQcm90b2NvbEhhbmRsZXJSZWdpc3RlcmVkKE5hdmln
YXRvciogbmF2aWdhdG9yLCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1cmws
IEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIERFRklORV9TVEFUSUNfTE9DQUwoY29uc3QgU3Ry
aW5nLCBkZWNsaW5lZCwgKCJkZWNsaW5lZCIpKTsKLQotICAgIGlmICghbmF2aWdhdG9yLT5mcmFt
ZSgpKQotICAgICAgICByZXR1cm4gZGVjbGluZWQ7Ci0KLSAgICBEb2N1bWVudCogZG9jdW1lbnQg
PSBuYXZpZ2F0b3ItPmZyYW1lKCktPmRvY3VtZW50KCk7Ci0gICAgU3RyaW5nIGJhc2VVUkwgPSBk
b2N1bWVudC0+YmFzZVVSTCgpLmJhc2VBc1N0cmluZygpOwotCi0gICAgaWYgKCF2ZXJpZnlDdXN0
b21IYW5kbGVyVVJMKGJhc2VVUkwsIHVybCwgZWMpKQotICAgICAgICByZXR1cm4gZGVjbGluZWQ7
Ci0KLSAgICBpZiAoIXZlcmlmeVByb3RvY29sSGFuZGxlclNjaGVtZShzY2hlbWUsIGVjKSkKLSAg
ICAgICAgcmV0dXJuIGRlY2xpbmVkOwotCi0gICAgUGFnZSogcGFnZSA9IG5hdmlnYXRvci0+ZnJh
bWUoKS0+cGFnZSgpOwotICAgIGlmICghcGFnZSkKLSAgICAgICAgcmV0dXJuIGRlY2xpbmVkOwot
Ci0gICAgcmV0dXJuIGN1c3RvbUhhbmRsZXJzU3RhdGVTdHJpbmcocGFnZS0+Y2hyb21lKCktPmNs
aWVudCgpLT5pc1Byb3RvY29sSGFuZGxlclJlZ2lzdGVyZWQoc2NoZW1lLCBiYXNlVVJMLCB1cmwp
KTsKLX0KLQotdm9pZCBOYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFuZGxlcjo6dW5yZWdpc3Rl
clByb3RvY29sSGFuZGxlcihOYXZpZ2F0b3IqIG5hdmlnYXRvciwgY29uc3QgU3RyaW5nJiBzY2hl
bWUsIGNvbnN0IFN0cmluZyYgdXJsLCBFeGNlcHRpb25Db2RlJiBlYykKLXsKLSAgICBpZiAoIW5h
dmlnYXRvci0+ZnJhbWUoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgRG9jdW1lbnQqIGRvY3Vt
ZW50ID0gbmF2aWdhdG9yLT5mcmFtZSgpLT5kb2N1bWVudCgpOwotICAgIFN0cmluZyBiYXNlVVJM
ID0gZG9jdW1lbnQtPmJhc2VVUkwoKS5iYXNlQXNTdHJpbmcoKTsKLQotICAgIGlmICghdmVyaWZ5
Q3VzdG9tSGFuZGxlclVSTChiYXNlVVJMLCB1cmwsIGVjKSkKLSAgICAgICAgcmV0dXJuOwotCi0g
ICAgaWYgKCF2ZXJpZnlQcm90b2NvbEhhbmRsZXJTY2hlbWUoc2NoZW1lLCBlYykpCi0gICAgICAg
IHJldHVybjsKLQotICAgIFBhZ2UqIHBhZ2UgPSBuYXZpZ2F0b3ItPmZyYW1lKCktPnBhZ2UoKTsK
LSAgICBpZiAoIXBhZ2UpCi0gICAgICAgIHJldHVybjsKLQotICAgIHBhZ2UtPmNocm9tZSgpLT5j
bGllbnQoKS0+dW5yZWdpc3RlclByb3RvY29sSGFuZGxlcihzY2hlbWUsIGJhc2VVUkwsIHVybCk7
Ci19Ci0jZW5kaWYKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRM
RVIpCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvTmF2aWdhdG9yUmVnaXN0ZXJQ
cm90b2NvbEhhbmRsZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjE5M2UwMWY0
MzdjYTRhYzMwYzZjNmQzZmUxYTY3NjAyY2U1YzU5ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lz
dGVyUHJvdG9jb2xIYW5kbGVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw2MSArMCwwIEBACi0vKgot
ICogQ29weXJpZ2h0IChDKSAyMDExLCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgot
ICogQ29weXJpZ2h0IChDKSAyMDEyLCBTYW1zdW5nIEVsZWN0cm9uaWNzLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6Ci0gKgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycgQU5ECi0gKiBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCi0gKiBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRQotICogRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwKLSAqIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SCi0gKiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUgot
ICogQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUCi0gKiBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZCi0gKiBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gK
LSAqIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIE5hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xIYW5k
bGVyX2gKLSNkZWZpbmUgTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaAotCi0jaWYg
RU5BQkxFKFJFR0lTVEVSX1BST1RPQ09MX0hBTkRMRVIpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1F
X0hBTkRMRVIpCi0KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE5hdmlnYXRv
cjsKLQotdHlwZWRlZiBpbnQgRXhjZXB0aW9uQ29kZTsKLQotY2xhc3MgTmF2aWdhdG9yUmVnaXN0
ZXJQcm90b2NvbEhhbmRsZXIgewotcHVibGljOgotI2lmIEVOQUJMRShSRUdJU1RFUl9QUk9UT0NP
TF9IQU5ETEVSKQotICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVyUHJvdG9jb2xIYW5kbGVyKE5hdmln
YXRvciosIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3Ry
aW5nJiB0aXRsZSwgRXhjZXB0aW9uQ29kZSYpOwotI2VuZGlmIAotCi0jaWYgRU5BQkxFKENVU1RP
TV9TQ0hFTUVfSEFORExFUikKLSAgICBzdGF0aWMgU3RyaW5nIGlzUHJvdG9jb2xIYW5kbGVyUmVn
aXN0ZXJlZChOYXZpZ2F0b3IqLCBjb25zdCBTdHJpbmcmIHNjaGVtZSwgY29uc3QgU3RyaW5nJiB1
cmwsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICBzdGF0aWMgdm9pZCB1bnJlZ2lzdGVyUHJvdG9jb2xI
YW5kbGVyKE5hdmlnYXRvciosIGNvbnN0IFN0cmluZyYgc2NoZW1lLCBjb25zdCBTdHJpbmcmIHVy
bCwgRXhjZXB0aW9uQ29kZSYpOwotI2VuZGlmCi0KLXByaXZhdGU6Ci0gICAgTmF2aWdhdG9yUmVn
aXN0ZXJQcm90b2NvbEhhbmRsZXIoKTsKLSAgICB+TmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhh
bmRsZXIoKTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShSRUdJU1RFUl9QUk9UT0NPTF9IQU5ETEVSKSB8fCBFTkFCTEUoQ1VTVE9NX1NDSEVNRV9IQU5E
TEVSKQotCi0jZW5kaWYgLy8gTmF2aWdhdG9yUmVnaXN0ZXJQcm90b2NvbEhhbmRsZXJfaApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9OYXZpZ2F0b3JSZWdpc3RlclByb3RvY29sSGFu
ZGxlci5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJvdG9jb2xI
YW5kbGVyLmlkbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMWJkNTdmMmZlMmM0MmU2
NmUxOWE2ZDI3NWRmYzI4YTg4MDk1YzU3MS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL05hdmlnYXRvclJlZ2lzdGVyUHJv
dG9jb2xIYW5kbGVyLmlkbAorKysgL2Rldi9udWxsCkBAIC0xLDM0ICswLDAgQEAKLS8qCi0gICAg
Q29weXJpZ2h0IChDKSAyMDA4IE5va2lhIENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFy
eSgtaWVzKQotICAgIENvcHlyaWdodCAoQykgMjAxMiwgU2Ftc3VuZyBFbGVjdHJvbmljcy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KLQotICAgIFRoaXMgbGlicmFyeSBpcyBmcmVlIHNvZnR3YXJlOyB5
b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKLSAgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl
cm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYwotICAgIExpY2Vuc2UgYXMgcHVi
bGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICAgIHZlcnNp
b24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv
bi4KLQotICAgIFRoaXMgbGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0
IHdpbGwgYmUgdXNlZnVsLAotICAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBl
dmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0gICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKLSAgICBMaWJyYXJ5IEdl
bmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLQotICAgIFlvdSBzaG91bGQg
aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExp
Y2Vuc2UKLSAgICBhbG9uZyB3aXRoIHRoaXMgbGlicmFyeTsgc2VlIHRoZSBmaWxlIENPUFlJTkcu
TElCLiAgSWYgbm90LCB3cml0ZSB0bwotICAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s
IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCi0gICAgQm9zdG9uLCBNQSAw
MjExMC0xMzAxLCBVU0EuCi0qLwotCi1tb2R1bGUgd2luZG93IHsKLQotICAgIGludGVyZmFjZSBb
Ci0gICAgICAgIFN1cHBsZW1lbnRhbD1OYXZpZ2F0b3IKLSAgICBdIE5hdmlnYXRvclJlZ2lzdGVy
UHJvdG9jb2xIYW5kbGVyIHsKLSAgICAgICAgW0NvbmRpdGlvbmFsPVJFR0lTVEVSX1BST1RPQ09M
X0hBTkRMRVJdIHZvaWQgcmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5nIHNjaGVt
ZSwgaW4gRE9NU3RyaW5nIHVybCwgaW4gRE9NU3RyaW5nIHRpdGxlKQotICAgICAgICAgICAgcmFp
c2VzKERPTUV4Y2VwdGlvbik7Ci0gICAgICAgIFtDb25kaXRpb25hbD1DVVNUT01fU0NIRU1FX0hB
TkRMRVJdIERPTVN0cmluZyBpc1Byb3RvY29sSGFuZGxlclJlZ2lzdGVyZWQoaW4gRE9NU3RyaW5n
IHNjaGVtZSwgaW4gRE9NU3RyaW5nIHVybCkKLSAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRp
b24pOwotICAgICAgICBbQ29uZGl0aW9uYWw9Q1VTVE9NX1NDSEVNRV9IQU5ETEVSXSB2b2lkIHVu
cmVnaXN0ZXJQcm90b2NvbEhhbmRsZXIoaW4gRE9NU3RyaW5nIHNjaGVtZSwgaW4gRE9NU3RyaW5n
IHVybCkKLSAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotICAgIH07Ci0KLX0K
</data>

          </attachment>
      

    </bug>

</bugzilla>