<?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>108615</bug_id>
          
          <creation_ts>2013-02-01 04:32:08 -0800</creation_ts>
          <short_desc>[Soup] Wrap SoupSession by NetworkStorageSession</short_desc>
          <delta_ts>2013-02-19 04:42:24 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</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>108832</blocked>
    
    <blocked>108613</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Balazs Kelemen">kbalazs</reporter>
          <assigned_to name="Balazs Kelemen">kbalazs</assigned_to>
          <cc>ap</cc>
    
    <cc>danw</cc>
    
    <cc>dglazkov</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>japhet</cc>
    
    <cc>jesus</cc>
    
    <cc>kenneth</cc>
    
    <cc>mrobinson</cc>
    
    <cc>peter+ews</cc>
    
    <cc>philn</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>822618</commentid>
    <comment_count>0</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-01 04:32:08 -0800</bug_when>
    <thetext>Soup should use this abstraction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822971</commentid>
    <comment_count>1</comment_count>
      <attachid>186080</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-01 10:57:03 -0800</bug_when>
    <thetext>Created attachment 186080
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822984</commentid>
    <comment_count>2</comment_count>
      <attachid>186080</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-01 11:02:11 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

Attachment 186080 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16305884</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822985</commentid>
    <comment_count>3</comment_count>
      <attachid>186080</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-02-01 11:02:55 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

Attachment 186080 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/16295857</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822987</commentid>
    <comment_count>4</comment_count>
      <attachid>186080</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-02-01 11:03:26 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

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

Cool!

&gt; Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp:2
&gt; + * Copyright (C) 2013 Apple Computer, Inc.  All rights reserved.

Did the Mac version say &quot;Apple Computer&quot;? The correct name is &quot;Apple Inc.&quot;

&gt; Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:33
&gt; +using namespace WebCore;

We normally don&apos;t put &quot;using&quot; into headers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822988</commentid>
    <comment_count>5</comment_count>
      <attachid>186080</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-02-01 11:03:30 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

Attachment 186080 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16295856</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822989</commentid>
    <comment_count>6</comment_count>
      <attachid>186080</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-01 11:03:39 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

Attachment 186080 did not pass cr-linux-debug-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16305887</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822997</commentid>
    <comment_count>7</comment_count>
      <attachid>186080</attachid>
    <who name="Peter Beverloo (cr-android ews)">peter+ews</who>
    <bug_when>2013-02-01 11:08:14 -0800</bug_when>
    <thetext>Comment on attachment 186080
Patch

Attachment 186080 did not pass cr-android-ews (chromium-android):
Output: http://queues.webkit.org/results/16309894</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823816</commentid>
    <comment_count>8</comment_count>
      <attachid>186258</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-03 04:39:21 -0800</bug_when>
    <thetext>Created attachment 186258
Fixing builds, incorporate review comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823817</commentid>
    <comment_count>9</comment_count>
      <attachid>186258</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-02-03 04:42:25 -0800</bug_when>
    <thetext>Comment on attachment 186258
Fixing builds, incorporate review comments.

Attachment 186258 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/16354502</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823821</commentid>
    <comment_count>10</comment_count>
      <attachid>186258</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-02-03 05:00:14 -0800</bug_when>
    <thetext>Comment on attachment 186258
Fixing builds, incorporate review comments.

Did you forget to include NetworkStorageSessionSoup.cpp ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823831</commentid>
    <comment_count>11</comment_count>
      <attachid>186258</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-03 05:41:48 -0800</bug_when>
    <thetext>Comment on attachment 186258
Fixing builds, incorporate review comments.

Attachment 186258 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16356484</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823836</commentid>
    <comment_count>12</comment_count>
      <attachid>186258</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-03 06:42:03 -0800</bug_when>
    <thetext>Comment on attachment 186258
Fixing builds, incorporate review comments.

Attachment 186258 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16350527</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823848</commentid>
    <comment_count>13</comment_count>
      <attachid>186265</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-03 09:04:23 -0800</bug_when>
    <thetext>Created attachment 186265
Adding new file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823856</commentid>
    <comment_count>14</comment_count>
      <attachid>186265</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-03 10:10:04 -0800</bug_when>
    <thetext>Comment on attachment 186265
Adding new file

Attachment 186265 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16360598</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823863</commentid>
    <comment_count>15</comment_count>
      <attachid>186265</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-03 11:14:34 -0800</bug_when>
    <thetext>Comment on attachment 186265
Adding new file

Attachment 186265 did not pass win-ews (win):
Output: http://queues.webkit.org/results/16357581</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823864</commentid>
    <comment_count>16</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-03 11:19:31 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 186265 [details])
&gt; Attachment 186265 [details] did not pass win-ews (win):
&gt; Output: http://queues.webkit.org/results/16357581

Does not seem to be my fault:
ImageDiffCG.cpp
1&gt;..\cg\ImageDiffCG.cpp(37) : fatal error C1083: Cannot open include file: &apos;wtf/Platform.h&apos;: No such file or directory

I guess this bot is plain broken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823982</commentid>
    <comment_count>17</comment_count>
      <attachid>186265</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-02-03 19:22:32 -0800</bug_when>
    <thetext>Comment on attachment 186265
Adding new file

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

&gt; Source/WebCore/ChangeLog:6
&gt; +        Reviewed by Alexey Proskuryakov.

Unsure why this is marked r?. Is there anything in particular you&apos;d like me to have another look at?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>824144</commentid>
    <comment_count>18</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-04 01:31:07 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (From update of attachment 186265 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=186265&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:6
&gt; &gt; +        Reviewed by Alexey Proskuryakov.
&gt; 
&gt; Unsure why this is marked r?. Is there anything in particular you&apos;d like me to have another look at?

Actually no, nothing important has changed, just I was needing the ews outputs.  I was believing that setting r+ myself is not a acceptable behavior :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>824147</commentid>
    <comment_count>19</comment_count>
      <attachid>186265</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-04 01:35:06 -0800</bug_when>
    <thetext>Comment on attachment 186265
Adding new file

Clearing flags on attachment: 186265

Committed r141749: &lt;http://trac.webkit.org/changeset/141749&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>824148</commentid>
    <comment_count>20</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2013-02-04 01:35:14 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>824378</commentid>
    <comment_count>21</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-02-04 08:27:25 -0800</bug_when>
    <thetext>&gt; I was believing that setting r+ myself is not a acceptable behavior :)

This is indeed not right.

However a patch that already has reviewer name in ChangeLog does not need any review flag, commit-queue won&apos;t complain (and so won&apos;t people if you manually commit a reviewed patch with build fixes).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186080</attachid>
            <date>2013-02-01 10:57:03 -0800</date>
            <delta_ts>2013-02-03 04:39:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108615-20130201195343.patch</filename>
            <type>text/plain</type>
            <size>25383</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzA3ZjI4N2RmMjdlMzg0
YjZkZDc3MDVjNmJhNTUxZWNjY2I4NTVjNC4uMDg1OTc0NWQzNDNjY2NmYjEzZWE3OGE5MzA1NjFk
NDgwYjk5NWE3MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEzLTAyLTAxICBCYWxh
enMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKworICAgICAgICBbU291cF0gV3JhcCBT
b3VwU2Vzc2lvbiBieSBOZXR3b3JrU3RvcmFnZVNlc3Npb24KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODYxNQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcGxlbWVudCBOZXR3b3JrU3RvcmFnZVNlc3Np
b24gZm9yIHBvcnRzIHVzaW5nIHNvdXAuIEl0IGhhcyBiZWVuCisgICAgICAgIHNlcGFyYXRlZCBm
cm9tIE5ldHdvcmtpbmdDb250ZXh0LCBzbyBub3cgd2UgaGF2ZSBhIGRlZmF1bHQgc3RvcmFnZQor
ICAgICAgICBzZXNzaW9uLCB3aGljaCBpcyB0aGUgc2FtZSBhcyBiZWZvcmUgYnV0IG5vdyB3cmFw
cGVkIHdpdGggTmV0d29ya1N0b3JhZ2VTZXNzaW9uLAorICAgICAgICBhbmQgaXQgY2FuIGJlIG92
ZXJyaWRkZW4gYnkgdGhlIG5ldHdvcmtpbmcgY29udGV4dC4KKworICAgICAgICBObyBjaGFuZ2Ug
aW4gYmVoYXZpb3Igc28gbm8gbmV3IHRlc3RzLgorCisgICAgICAgICogQ01ha2VMaXN0cy50eHQ6
CisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbToKKyAgICAgICAgKiBQbGF0Zm9ybUJsYWNr
QmVycnkuY21ha2U6CisgICAgICAgICogUGxhdGZvcm1FZmwuY21ha2U6CisgICAgICAgICogbG9h
ZGVyL0Nvb2tpZUphci5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgTm93IHdlIGFs
c28gZ2V0IHRoZSBzdG9yYWdlIHNlc3Npb24gZnJvbSB0aGUgbmV0d29ya2luZyBjb250ZXh0Cisg
ICAgICAgIGFuZCBub3QgdGhlIG90aGVyIHdheS4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdv
cmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmg6CisgICAgICAgIChOZXR3b3JrU3RvcmFnZVNlc3Np
b24pOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpzZXRTb3VwU2Vz
c2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNvdXBTZXNz
aW9uKToKKyAgICAgICAgSG9sZCBhIFNvdXBTZXNzaW9uIHBvaW50ZXIgZm9yIHBvcnRzIHVzaW5n
IHNvdXAuIEFkZGVkIGEgc2V0dGVyIGJlY2F1c2UgaXQgaXMKKyAgICAgICAgbmVjZXNzYXJ5IGZv
ciBBUEkncyB0aGF0IGFsbG93IGl0IHRvIGJlIHNwZWNpZmllZCBwZXIgcGFnZSwgbGlrZSBFRkwg
V0sxLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9OZXR3b3JraW5nQ29udGV4dC5oOgor
ICAgICAgICAoTmV0d29ya2luZ0NvbnRleHQpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsv
c291cC9Db29raWVKYXJTb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvb2tpZUphckZvclNl
c3Npb24pOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvc291cC9OZXR3b3JrU3RvcmFnZVNl
c3Npb25Tb3VwLmNwcDogQ29waWVkIGZyb20gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuY3BwLgorICAgICAgICAo
V2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24pOgor
ICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNl
c3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjcmVhdGVE
ZWZhdWx0U2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246
OmNyZWF0ZVByaXZhdGVCcm93c2luZ1Nlc3Npb24pOgorICAgICAgICAoV2ViQ29yZTo6TmV0d29y
a1N0b3JhZ2VTZXNzaW9uOjpzd2l0Y2hUb05ld1Rlc3RpbmdTZXNzaW9uKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VIYW5kbGVTb3VwLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnNlc3Npb25Gcm9tQ29udGV4dCk6CisKIDIwMTMtMDItMDEgIEFuZHJleSBBZGFpa2lu
ICA8YWFuZHJleUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogZml4IGpz
Y29tcGlsZXIgd2FybmluZ3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCA1NTdjOTBjZTg5YjM1MjVlYjg2
MjRlNGNlYTFmMDZmNzA5NzU1Yzc5Li5hY2ZiODE5ZGE0YzFkZDgwZDBjMjk3MmUwYTQ2NmM2YTU1
YjgyMzc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTMtMDItMDEgIEJh
bGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgorCisgICAgICAgIFtTb3VwXSBXcmFw
IFNvdXBTZXNzaW9uIGJ5IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NjE1CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2hhbmdlZCB0byBob2xkIHRoZSBTb3VwU2Vz
c2lvbiBwb2ludGVyIGluIGEgTmV0d29ya1N0b3JhZ2VTZXNzaW9uCisgICAgICAgIHNvIHdlIGNh
biBwYXNzIGl0IHRvIFdlYkNvcmUuIF9Fd2tfVmlld19Qcml2YXRlX0RhdGEgaGFzIHRvIGJlCisg
ICAgICAgIGNoYW5nZWQgZm9yIHRoYXQgcmVhc29uLgorCisgICAgICAgICogV2ViQ29yZVN1cHBv
cnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0RWZsOjpzdG9yYWdlU2Vzc2lvbik6CisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbC5oOgorICAgICAgICAoRnJhbWVOZXR3
b3JraW5nQ29udGV4dEVmbCk6CisgICAgICAgICogZXdrL2V3a192aWV3LmNwcDoKKyAgICAgICAg
KF9Fd2tfVmlld19Qcml2YXRlX0RhdGEpOgorICAgICAgICAoX2V3a192aWV3X3ByaXZfbmV3KToK
KyAgICAgICAgKGV3a192aWV3X3NvdXBfc2Vzc2lvbl9nZXQpOgorICAgICAgICAoZXdrX3ZpZXdf
c291cF9zZXNzaW9uX3NldCk6CisgICAgICAgIChFV0tQcml2YXRlOjpzdG9yYWdlU2Vzc2lvbik6
CisgICAgICAgIChFV0tQcml2YXRlKToKKyAgICAgICAgKiBld2svZXdrX3ZpZXdfcHJpdmF0ZS5o
OgorICAgICAgICAoRVdLUHJpdmF0ZSk6CisKIDIwMTMtMDEtMzEgIEF1cmltYXMgTGl1dGlrYXMg
IDxhdXJpbWFzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBFZGl0b3I6Om1fY29tcG9zaXRpb25O
b2RlIG5vdCB1cGRhdGVkIG9uIEhUTUxJbnB1dEVsZW1lbnQ6OnNldFZhbHVlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5n
ZUxvZwppbmRleCBhMjhlYmEyOGQyODgyMDhlOTliNjBmMmQwYTk0YTEwNzU4OGFjZGVlLi5lMmQ0
N2ZlMGVkOWNjNzNhZjFkNjYxOGU4ZjdmMjBjMWU2MzgzYmM5IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2d0ay9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMTMtMDItMDEgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJr
aXQub3JnPgorCisgICAgICAgIFtTb3VwXSBXcmFwIFNvdXBTZXNzaW9uIGJ5IE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTA4NjE1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6RnJhbWVOZXR3b3JraW5nQ29udGV4dEd0azo6c3RvcmFnZVNlc3Npb24pOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuaDoKKyAg
ICAgICAgKEZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGspOgorCiAyMDEzLTAyLTAxICBQaGlsaXBw
ZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtHU3RyZWFt
ZXJdIEZ1bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXJHdGsgaW1wbGVtZW50YXRpb24KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpp
bmRleCBlNjNkM2ZiYjliZjUyODIzMDIwY2FmNTJiMDg5MDA4MTRlMjFlNzE2Li45NWM5MDgxODNl
YzgyMmZlZGU1ODUwOGNhZmI5YjU2YWEzMGM1M2JiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTMtMDItMDEgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgorCisg
ICAgICAgIFtTb3VwXSBXcmFwIFNvdXBTZXNzaW9uIGJ5IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NjE1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnN0b3JhZ2VTZXNzaW9u
KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dC5oOgorICAgICAgICAoV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dCk6CisK
IDIwMTMtMDItMDEgIEphZSBIeXVuIFBhcmsgIDxqYWUucGFya0Bjb21wYW55MTAwLm5ldD4KIAog
ICAgICAgICBDb29yZGluYXRlZCBHcmFwaGljcyA6IFNvcnQgVGFyZ2V0LnByaSBhbmQgY2xhc3Mg
ZGVjbGFyYXRpb25zIGluIGFscGhhYmV0aWNhbCBvcmRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5k
ZXggMGQ3MmNhMGZkZGJjN2ZlZTUwOGFkOTZhMmUxMGNkY2JmZTRkNDkxNy4uNjNmOTQ3MzVlZWY5
MmFiNTEzMmEzZjE3ZDZmYWQ3NDQ2ZTNkZjEzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTIw
NTgsNyArMjA1OCw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBwbGF0Zm9ybS9uZXR3b3Jr
L0hUVFBWYWxpZGF0aW9uLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvTUlNRUhlYWRlci5jcHAK
ICAgICBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmNwcAotICAgIHBsYXRm
b3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uU3R1Yi5jcHAKICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL1BhcnNlZENvbnRlbnRUeXBlLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvUHJvdGVj
dGlvblNwYWNlLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvUHJveHlTZXJ2ZXIuY3BwCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNv
cmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBlMmFhOTBjZmFkNGMyNmU5NzQ2YzY1ZTcwMjc0
N2E0ZjZmODBhMjFhLi42ZjdlNzA4MDMyMzQzYjU1NDZkZWIzNDI5OWE5NzhiMWU3NTYzOTM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTU4MTYsNyArNTgxNiw2IEBAIHdlYmNv
cmVfcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9OZXR3b3JrU3RhdGVOb3RpZmllci5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25l
dHdvcmsvTmV0d29ya1N0YXRlTm90aWZpZXIuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaCBcCi0JU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb25TdHViLmNwcCBcCiAJU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9QYXJzZWRDb250ZW50VHlwZS5jcHAgXAogCVNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvUGFyc2VkQ29udGVudFR5cGUuaCBcCiAJU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9QbGF0Zm9ybUNvb2tpZUphci5oIFwKQEAgLTU4NTQsNiArNTg1
Myw3IEBAIHdlYmNvcmVfcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9zb3VwL0ROU1NvdXAuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL3NvdXAvR093blB0clNvdXAuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL3NvdXAvR093blB0clNvdXAuaCBcCisJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9zb3VwL05ldHdvcmtTdG9yYWdlU2Vzc2lvblNvdXAuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUHJveHlTZXJ2ZXJTb3VwLmNwcCBcCiAJU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3IuaCBcCiAJU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3JTb3VwLmNwcCBcCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnkuY21ha2UgYi9Tb3Vy
Y2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnkuY21ha2UKaW5kZXggODM4ZjZkNzcyZDRlNzRm
MDYzNzkzNDc4NzQwODFiNmJhM2I3MzY3Yy4uZjFkMDVjZjgzOTU1NjA4M2I3MDcyZDliNTNjMzMy
ZTRkNjRkYWYxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFja0JlcnJ5
LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZQpAQCAt
ODYsNiArODYsNyBAQCBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICMgTmV0d29ya2luZyBz
b3VyY2VzCiBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBwbGF0Zm9ybS9uZXR3b3Jr
L01JTUVTbmlmZmluZy5jcHAKKyAgICBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vz
c2lvblN0dWIuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9Qcm94eVNlcnZlci5jcHAKICAgICBw
bGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQXV0b2ZpbGxCYWNraW5nU3RvcmUuY3BwCiAgICAg
cGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0ROU0JsYWNrQmVycnkuY3BwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUVmbC5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BsYXRm
b3JtRWZsLmNtYWtlCmluZGV4IDM0MzIxNWU5ZGQwZWU4ZDZkYTBlOTQzOGEwNzhhYjQ5ODM0NTg1
OTQuLjViMTY4ZDM5OWYyMTE4OGFhOTUzNzY3MDNlMDIyY2NjZWZjMmE3YWEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1Bs
YXRmb3JtRWZsLmNtYWtlCkBAIC0xNTAsNiArMTUwLDcgQEAgbGlzdChBUFBFTkQgV2ViQ29yZV9T
T1VSQ0VTCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL0NyZWRlbnRpYWxTdG9yYWdlU291cC5j
cHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvRE5TU291cC5jcHAKICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL3NvdXAvR093blB0clNvdXAuY3BwCisgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL05l
dHdvcmtTdG9yYWdlU2Vzc2lvblNvdXAuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL1By
b3h5UmVzb2x2ZXJTb3VwLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvc291cC9Qcm94eVNlcnZl
clNvdXAuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3JTb3VwLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nvb2tpZUphci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcAppbmRleCA1ZjE1YTU0ZTE3NDY0NDM0OTc3
NTg5NThmNzM2MDI0NjM2N2VmNzZkLi5lNWI3NTg3YWNmYjkxN2ZlZWQyMjg2NDg1YzlkMjhhMTJj
ZTEwYmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcApAQCAtNTYsNyArNTYsNyBA
QCBzdGF0aWMgTmV0d29ya2luZ0NvbnRleHQqIG5ldHdvcmtpbmdDb250ZXh0KGNvbnN0IERvY3Vt
ZW50KiBkb2N1bWVudCkKICAgICByZXR1cm4gbG9hZGVyLT5uZXR3b3JraW5nQ29udGV4dCgpOwog
fQogCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBVU0UoQ0ZORVRXT1JLKQorI2lmIFBMQVRGT1JNKE1B
QykgfHwgVVNFKENGTkVUV09SSykgfHwgVVNFKFNPVVApCiBpbmxpbmUgTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbihjb25zdCBEb2N1bWVudCogZG9jdW1lbnQpCiB7CiAgICAg
TmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQgPSBuZXR3b3JraW5nQ29udGV4dChkb2N1bWVudCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3Rv
cmFnZVNlc3Npb24uaAppbmRleCA4MTA5Y2FhNmQ3NTRlMGZiZWUwYmQzMTZlNzgyZGM1ZjMzNjk2
Y2VjLi41MTM5YjhjYWUwNDA2MWM1YzRjNDJmNDU3YzVlMjg0ODNmYzllOWVjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNz
aW9uLmgKQEAgLTMyLDE3ICszMiwxOCBAQAogI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKENGTkVU
V09SSykKIHR5cGVkZWYgY29uc3Qgc3RydWN0IF9fQ0ZVUkxTdG9yYWdlU2Vzc2lvbiogQ0ZVUkxT
dG9yYWdlU2Vzc2lvblJlZjsKIHR5cGVkZWYgc3RydWN0IE9wYXF1ZUNGSFRUUENvb2tpZVN0b3Jh
Z2UqICBDRkhUVFBDb29raWVTdG9yYWdlUmVmOworI2VsaWYgVVNFKFNPVVApCit0eXBlZGVmIHN0
cnVjdCBfU291cENvb2tpZUphciBTb3VwQ29va2llSmFyOwordHlwZWRlZiBzdHJ1Y3QgX1NvdXBT
ZXNzaW9uIFNvdXBTZXNzaW9uOwogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xh
c3MgTmV0d29ya2luZ0NvbnRleHQ7Ci0KIGNsYXNzIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiB7CiAg
ICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoTmV0d29ya1N0b3JhZ2VTZXNzaW9uKTsgV1RGX01BS0Vf
RkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIE5ldHdvcmtTdG9yYWdlU2Vzc2lv
biYgZGVmYXVsdFN0b3JhZ2VTZXNzaW9uKCk7Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8TmV0d29y
a1N0b3JhZ2VTZXNzaW9uPiBjcmVhdGVEZWZhdWx0U2Vzc2lvbihjb25zdCBTdHJpbmcmIGlkZW50
aWZpZXJCYXNlKTsKKyAgICBzdGF0aWMgUGFzc093blB0cjxOZXR3b3JrU3RvcmFnZVNlc3Npb24+
IGNyZWF0ZURlZmF1bHRTZXNzaW9uKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllckJhc2UgPSBTdHJp
bmcoKSk7CiAgICAgc3RhdGljIFBhc3NPd25QdHI8TmV0d29ya1N0b3JhZ2VTZXNzaW9uPiBjcmVh
dGVQcml2YXRlQnJvd3NpbmdTZXNzaW9uKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllckJhc2UpOwog
CiAgICAgc3RhdGljIHZvaWQgc3dpdGNoVG9OZXdUZXN0aW5nU2Vzc2lvbigpOwpAQCAtNTIsNiAr
NTMsOSBAQCBwdWJsaWM6CiAgICAgQ0ZVUkxTdG9yYWdlU2Vzc2lvblJlZiBwbGF0Zm9ybVNlc3Np
b24oKSB7IHJldHVybiBtX3BsYXRmb3JtU2Vzc2lvbi5nZXQoKTsgfQogICAgIFJldGFpblB0cjxD
RkhUVFBDb29raWVTdG9yYWdlUmVmPiBjb29raWVTdG9yYWdlKCkgY29uc3Q7CiAgICAgYm9vbCBp
c1ByaXZhdGVCcm93c2luZ1Nlc3Npb24oKSBjb25zdCB7IHJldHVybiBtX2lzUHJpdmF0ZTsgfQor
I2VsaWYgVVNFKFNPVVApCisgICAgdm9pZCBzZXRTb3VwU2Vzc2lvbihTb3VwU2Vzc2lvbiogc2Vz
c2lvbikgeyBtX3Nlc3Npb24gPSBzZXNzaW9uOyB9CisgICAgU291cFNlc3Npb24qIHNvdXBTZXNz
aW9uKCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uOyB9CiAjZWxzZQogICAgIE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbihOZXR3b3JraW5nQ29udGV4dCopOwogICAgIH5OZXR3b3JrU3RvcmFnZVNlc3Np
b24oKTsKQEAgLTY0LDYgKzY4LDkgQEAgcHJpdmF0ZToKICAgICBOZXR3b3JrU3RvcmFnZVNlc3Np
b24oKTsKICAgICBSZXRhaW5QdHI8Q0ZVUkxTdG9yYWdlU2Vzc2lvblJlZj4gbV9wbGF0Zm9ybVNl
c3Npb247CiAgICAgYm9vbCBtX2lzUHJpdmF0ZTsKKyNlbGlmIFVTRShTT1VQKQorICAgIE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbihTb3VwU2Vzc2lvbiopOworICAgIFNvdXBTZXNzaW9uKiBtX3Nlc3Np
b247CiAjZWxzZQogICAgIFJlZlB0cjxOZXR3b3JraW5nQ29udGV4dD4gbV9jb250ZXh0OwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtp
bmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtpbmdD
b250ZXh0LmgKaW5kZXggODQxZjdlY2ZlM2RkN2FiNzZlMDM4MmJlMDk3MWZlOTk3NzZhYjdlYy4u
MTRjZDQyMDY5NWU4ZDVhM2FkMjViZTgxZjYxMDQ1OWMzMTkzODc1YiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya2luZ0NvbnRleHQuaApAQCAtNzgs
OCArNzgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJv
cihjb25zdCBSZXNvdXJjZVJlcXVlc3QmKSBjb25zdCA9IDA7CiAjZW5kaWYKIAotI2lmIFBMQVRG
T1JNKE1BQykgfHwgVVNFKENGTkVUV09SSykKLQorI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKENG
TkVUV09SSykgfHwgVVNFKFNPVVApCiAgICAgdmlydHVhbCBOZXR3b3JrU3RvcmFnZVNlc3Npb24m
IHN0b3JhZ2VTZXNzaW9uKCkgY29uc3QgPSAwOwogI2VuZGlmCiAKQEAgLTk4LDggKzk3LDYgQEAg
cHVibGljOgogI2VuZGlmCiAKICNpZiBVU0UoU09VUCkKLSAgICAvLyBGSVhNRTogV3JhcCBTb3Vw
U2Vzc2lvbiBpbnRvIGEgTmV0d29ya1N0b3JhZ2VTZXNzaW9uIHRvIG1ha2UgdGhlIGNvZGUgY3Jv
c3MtcGxhdGZvcm0uCi0gICAgdmlydHVhbCBTb3VwU2Vzc2lvbiogc291cFNlc3Npb24oKSBjb25z
dCA9IDA7CiAgICAgdmlydHVhbCB1aW50NjRfdCBpbml0aWF0aW5nUGFnZUlEKCkgY29uc3QgPSAw
OwogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
c291cC9Db29raWVKYXJTb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
c291cC9Db29raWVKYXJTb3VwLmNwcAppbmRleCBjNjhiMDgzMmVhNmI5M2M4YmY2M2ExZjdkOTkz
Y2MwMTNhZjlmYWQzLi5lY2Y1YTgzMTE0MzlhZDA0ZmYzZDA3YzMxN2ExNjAxMDE4ZjY5YzgyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFy
U291cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tp
ZUphclNvdXAuY3BwCkBAIC0zNCw5ICszNCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3Rh
dGljIFNvdXBDb29raWVKYXIqIGNvb2tpZUphckZvclNlc3Npb24oY29uc3QgTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uJiBzZXNzaW9uKQogewotICAgIGlmICghc2Vzc2lvbi5jb250ZXh0KCkpCisgICAg
aWYgKCFzZXNzaW9uLnNvdXBTZXNzaW9uKCkpCiAgICAgICAgIHJldHVybiBzb3VwQ29va2llSmFy
KCk7Ci0gICAgcmV0dXJuIFNPVVBfQ09PS0lFX0pBUihzb3VwX3Nlc3Npb25fZ2V0X2ZlYXR1cmUo
c2Vzc2lvbi5jb250ZXh0KCktPnNvdXBTZXNzaW9uKCksIFNPVVBfVFlQRV9DT09LSUVfSkFSKSk7
CisgICAgcmV0dXJuIFNPVVBfQ09PS0lFX0pBUihzb3VwX3Nlc3Npb25fZ2V0X2ZlYXR1cmUoc2Vz
c2lvbi5zb3VwU2Vzc2lvbigpLCBTT1VQX1RZUEVfQ09PS0lFX0pBUikpOwogfQogCiBzdGF0aWMg
R1JlZlB0cjxTb3VwQ29va2llSmFyPiYgZGVmYXVsdENvb2tpZUphcigpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvTmV0d29ya1N0b3JhZ2VTZXNzaW9u
U291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvTmV0d29ya1N0
b3JhZ2VTZXNzaW9uU291cC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTA2Njk3ZGE4MmQ3ZTY4ZDk5ZDVjYzBl
ZWM0NmY3N2JjMWRiNDUxMgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL25ldHdvcmsvc291cC9OZXR3b3JrU3RvcmFnZVNlc3Npb25Tb3VwLmNwcApAQCAtMCwwICsx
LDc0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIENvbXB1dGVyLCBJbmMuICBB
bGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29weXJpZ2h0IChDKSAyMDEzIFVuaXZlcnNpdHkgb2Yg
U3plZ2VkLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNs
dWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKKworI2luY2x1ZGUgIlJlc291cmNlSGFuZGxl
LmgiCisjaW5jbHVkZSA8d3RmL01haW5UaHJlYWQuaD4KKyNpbmNsdWRlIDx3dGYvUGFzc093blB0
ci5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK05ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uKFNvdXBTZXNzaW9uKiBzZXNzaW9uKQorICAgIDogbV9zZXNzaW9u
KHNlc3Npb24pCit7Cit9CisKK3N0YXRpYyBPd25QdHI8TmV0d29ya1N0b3JhZ2VTZXNzaW9uPiYg
ZGVmYXVsdFNlc3Npb24oKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAgREVG
SU5FX1NUQVRJQ19MT0NBTChPd25QdHI8TmV0d29ya1N0b3JhZ2VTZXNzaW9uPiwgc2Vzc2lvbiwg
KCkpOworICAgIHJldHVybiBzZXNzaW9uOworfQorCitOZXR3b3JrU3RvcmFnZVNlc3Npb24mIE5l
dHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVmYXVsdFN0b3JhZ2VTZXNzaW9uKCkKK3sKKyAgICBpZiAo
IWRlZmF1bHRTZXNzaW9uKCkpCisgICAgICAgIGRlZmF1bHRTZXNzaW9uKCkgPSBhZG9wdFB0cihu
ZXcgTmV0d29ya1N0b3JhZ2VTZXNzaW9uKFJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigp
KSk7CisgICAgcmV0dXJuICpkZWZhdWx0U2Vzc2lvbigpOworfQorCitQYXNzT3duUHRyPE5ldHdv
cmtTdG9yYWdlU2Vzc2lvbj4gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpjcmVhdGVEZWZhdWx0U2Vz
c2lvbihjb25zdCBTdHJpbmcmKQoreworICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CisgICAg
cmV0dXJuIGFkb3B0UHRyKG5ldyBOZXR3b3JrU3RvcmFnZVNlc3Npb24oUmVzb3VyY2VIYW5kbGU6
OmRlZmF1bHRTZXNzaW9uKCkpKTsKK30KKworUGFzc093blB0cjxOZXR3b3JrU3RvcmFnZVNlc3Np
b24+IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y3JlYXRlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbihj
b25zdCBTdHJpbmcmKQoreworICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOworICAgIHJldHVybiBu
dWxscHRyOworfQorCit2b2lkIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c3dpdGNoVG9OZXdUZXN0
aW5nU2Vzc2lvbigpCit7CisgICAgLy8gQSBudWxsIHNlc3Npb24gd2lsbCBtYWtlIHVzIGZhbGwg
YmFjayB0byB0aGUgZGVmYXVsdCBjb29raWUgamFyLCB3aGljaCBpcyBjdXJyZW50bHkKKyAgICAv
LyB0aGUgZXhwZWN0ZWQgYmVoYXZpb3IgZm9yIHRlc3RzLgorICAgIGRlZmF1bHRTZXNzaW9uKCkg
PSBhZG9wdFB0cihuZXcgTmV0d29ya1N0b3JhZ2VTZXNzaW9uKDApKTsKK30KKworfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxl
U291cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VI
YW5kbGVTb3VwLmNwcAppbmRleCA0YjRlNmRlYzkwNmUzNjg1NWViODExMjczNmY3YjJkZmZkMDI5
YTM2Li5kNTlkZDI4ZmJmNTJjM2NhMGQ3ZjkyZDgyMzQzODY3Y2MxNmRjZTE2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VIYW5kbGVTb3Vw
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VI
YW5kbGVTb3VwLmNwcApAQCAtMjU4LDcgKzI1OCw5IEBAIFJlc291cmNlSGFuZGxlSW50ZXJuYWw6
On5SZXNvdXJjZUhhbmRsZUludGVybmFsKCkKIAogc3RhdGljIFNvdXBTZXNzaW9uKiBzZXNzaW9u
RnJvbUNvbnRleHQoTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQpCiB7Ci0gICAgcmV0dXJuIChj
b250ZXh0ICYmIGNvbnRleHQtPmlzVmFsaWQoKSkgPyBjb250ZXh0LT5zb3VwU2Vzc2lvbigpIDog
UmVzb3VyY2VIYW5kbGU6OmRlZmF1bHRTZXNzaW9uKCk7CisgICAgaWYgKCFjb250ZXh0IHx8ICFj
b250ZXh0LT5pc1ZhbGlkKCkpCisgICAgICAgIHJldHVybiBSZXNvdXJjZUhhbmRsZTo6ZGVmYXVs
dFNlc3Npb24oKTsKKyAgICByZXR1cm4gY29udGV4dC0+c3RvcmFnZVNlc3Npb24oKS5zb3VwU2Vz
c2lvbigpOwogfQogCiBSZXNvdXJjZUhhbmRsZTo6flJlc291cmNlSGFuZGxlKCkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRl
eHRFZmwuY3BwIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dEVmbC5jcHAKaW5kZXggNTNjMDVmYjA0Y2VhYTc4OWMwNGNmMGMyYTU2N2FmNTZj
ODc4ZGQ4Ny4uM2NhNmMxMWQ0ZDFmMTJmNDFhZDU0YzVhMDg1OTdiMGVjODEyNmY0YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29u
dGV4dEVmbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVO
ZXR3b3JraW5nQ29udGV4dEVmbC5jcHAKQEAgLTM0LDYgKzM0LDcgQEAKICNpbmNsdWRlICJSZXNv
dXJjZUhhbmRsZS5oIgogI2luY2x1ZGUgImV3a19mcmFtZS5oIgogI2luY2x1ZGUgImV3a192aWV3
LmgiCisjaW5jbHVkZSAiZXdrX3ZpZXdfcHJpdmF0ZS5oIgogCiAjaW5jbHVkZSA8RXZhcy5oPgog
CkBAIC01MCw5ICs1MSwxMSBAQCBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsOjpGcmFtZU5ldHdv
cmtpbmdDb250ZXh0RWZsKEZyYW1lKiBmcmFtZSwgRXZhc19PYmplY3QqCiB7CiB9CiAKLVNvdXBT
ZXNzaW9uKiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsOjpzb3VwU2Vzc2lvbigpIGNvbnN0CitO
ZXR3b3JrU3RvcmFnZVNlc3Npb24mIEZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmw6OnN0b3JhZ2VT
ZXNzaW9uKCkgY29uc3QKIHsKLSAgICByZXR1cm4gZXdrX3ZpZXdfc291cF9zZXNzaW9uX2dldChl
d2tfZnJhbWVfdmlld19nZXQobV9ld2tGcmFtZSkpOworICAgIGlmIChOZXR3b3JrU3RvcmFnZVNl
c3Npb24qIHNlc3Npb24gPSBFV0tQcml2YXRlOjpzdG9yYWdlU2Vzc2lvbihld2tfZnJhbWVfdmll
d19nZXQobV9ld2tGcmFtZSkpKQorICAgICAgICByZXR1cm4gKnNlc3Npb247CisgICAgcmV0dXJu
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6ZGVmYXVsdFN0b3JhZ2VTZXNzaW9uKCk7CiB9CiAKIHVp
bnQ2NF90IEZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmw6OmluaXRpYXRpbmdQYWdlSUQoKSBjb25z
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3
b3JraW5nQ29udGV4dEVmbC5oIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJh
bWVOZXR3b3JraW5nQ29udGV4dEVmbC5oCmluZGV4IDMxNDcwZTk3NzIzYWNkMjE1MzBmN2Y2N2Zm
YWMwNjQ2MzkzMDczMGYuLmMwYWM1YTM3MjQ1ZDk2NWM0NmZmMjQwZWVmZmQ5NWVmMDNhYWMxM2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29y
a2luZ0NvbnRleHRFZmwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9G
cmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmgKQEAgLTM4LDEwICszOCwxMSBAQCBwdWJsaWM6CiAg
ICAgc3RhdGljIFBhc3NSZWZQdHI8RnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbD4gY3JlYXRlKEZy
YW1lKiwgRXZhc19PYmplY3QqKTsKIAogICAgIFdlYkNvcmU6OkZyYW1lKiBjb3JlRnJhbWUoKSBj
b25zdCB7IHJldHVybiBmcmFtZSgpOyB9Ci0gICAgdmlydHVhbCBTb3VwU2Vzc2lvbiogc291cFNl
c3Npb24oKSBjb25zdDsKICAgICB2aXJ0dWFsIHVpbnQ2NF90IGluaXRpYXRpbmdQYWdlSUQoKSBj
b25zdDsKIAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3Rv
cmFnZVNlc3Npb24oKSBjb25zdDsKKyAgICAKICAgICBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZs
KEZyYW1lKiwgRXZhc19PYmplY3QqKTsKIAogICAgIEV2YXNfT2JqZWN0KiBtX2V3a0ZyYW1lOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5kZXggZTFkM2JkYTNkMTkyNzhmZjFmMTJmMjJh
ODZlNDY3MjhjMDA4MWI0Yi4uNTU2YmU1NzlhZWM2YTg4MjE1NWYzYWU1ODYyNWMwMDU5YjRjYjk3
OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC00OSw2ICs0OSw3IEBACiAjaW5j
bHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRl
ICJKU0xvY2suaCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRl
ICJPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSAiUGFnZUNsaWVudEVmbC5oIgogI2luY2x1ZGUgIlBh
Z2VHcm91cC5oIgpAQCAtMjcyLDYgKzI3Myw3IEBAIHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9E
YXRhIHsKICNpZiBFTkFCTEUoTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpIHx8IEVOQUJMRShDVVNU
T01fU0NIRU1FX0hBTkRMRVIpCiAgICAgT3duUHRyPFdlYkNvcmU6Ok5hdmlnYXRvckNvbnRlbnRV
dGlsc0NsaWVudEVmbD4gbmF2aWdhdG9yQ29udGVudFV0aWxzQ2xpZW50OwogI2VuZGlmCisgICAg
T3duUHRyPFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4gc3RvcmFnZVNlc3Npb247CiAg
ICAgc3RydWN0IHsKICAgICAgICAgRXdrX01lbnUgbWVudTsKICAgICAgICAgV2ViQ29yZTo6UG9w
dXBNZW51Q2xpZW50KiBtZW51Q2xpZW50OwpAQCAtMzY5LDcgKzM3MSw2IEBAIHN0cnVjdCBfRXdr
X1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICAgICAgICAgfSBjZW50ZXI7CiAgICAgICAgIEVjb3JlX0Fu
aW1hdG9yKiBhbmltYXRvcjsKICAgICB9IGFuaW1hdGVkWm9vbTsKLSAgICBTb3VwU2Vzc2lvbiog
c291cFNlc3Npb247CiAgICAgY29uc3QgY2hhciogY3Vyc29yR3JvdXA7CiAgICAgRXZhc19PYmpl
Y3QqIGN1cnNvck9iamVjdDsKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQpAQCAtOTI2LDcgKzkyNyw3
IEBAIHN0YXRpYyBFd2tfVmlld19Qcml2YXRlX0RhdGEqIF9ld2tfdmlld19wcml2X25ldyhFd2tf
Vmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiAKICAgICBwcml2LT5oaXN0b3J5ID0gZXdrX2hp
c3RvcnlfbmV3KHN0YXRpY19jYXN0PFdlYkNvcmU6OkJhY2tGb3J3YXJkTGlzdEltcGwqPihwcml2
LT5wYWdlLT5iYWNrRm9yd2FyZExpc3QoKSkpOwogCi0gICAgcHJpdi0+c291cFNlc3Npb24gPSBX
ZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsKKyAgICBwcml2LT5zdG9y
YWdlU2Vzc2lvbiA9IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y3JlYXRlRGVmYXVs
dFNlc3Npb24oKTsKIAogICAgIHByaXYtPnBhZ2VDbGllbnQgPSBhZG9wdFB0cihuZXcgUGFnZUNs
aWVudEVmbChzbWFydERhdGEtPnNlbGYpKTsKIApAQCAtNDM4MSw3ICs0MzgyLDcgQEAgU291cFNl
c3Npb24qIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9nZXQoY29uc3QgRXZhc19PYmplY3QqIGV3a1Zp
ZXcpCiB7CiAgICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEs
IDApOwogICAgIEVXS19WSUVXX1BSSVZfR0VUX09SX1JFVFVSTihzbWFydERhdGEsIHByaXYsIDAp
OwotICAgIHJldHVybiBwcml2LT5zb3VwU2Vzc2lvbjsKKyAgICByZXR1cm4gcHJpdi0+c3RvcmFn
ZVNlc3Npb24tPnNvdXBTZXNzaW9uKCk7CiB9CiAKIHZvaWQgZXdrX3ZpZXdfc291cF9zZXNzaW9u
X3NldChFdmFzX09iamVjdCogZXdrVmlldywgU291cFNlc3Npb24qIHNlc3Npb24pCkBAIC00Mzkz
LDcgKzQzOTQsNyBAQCB2b2lkIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9zZXQoRXZhc19PYmplY3Qq
IGV3a1ZpZXcsIFNvdXBTZXNzaW9uKiBzZXNzaW9uKQogICAgICAgICAgICAgImEgU291cFNlc3Np
b25TeW5jIHdhcyBwcm92aWRlZC4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBwcml2
LT5zb3VwU2Vzc2lvbiA9IHNlc3Npb247CisgICAgcHJpdi0+c3RvcmFnZVNlc3Npb24tPnNldFNv
dXBTZXNzaW9uKHNlc3Npb24pOwogfQogCiBFaW5hX0Jvb2wgZXdrX3ZpZXdfc2V0dGluZ19lbmFi
bGVfeHNzX2F1ZGl0b3JfZ2V0KGNvbnN0IEV2YXNfT2JqZWN0KiBld2tWaWV3KQpAQCAtNDg1MSw0
ICs0ODUyLDExIEBAIFBsYXRmb3JtUGFnZUNsaWVudCBjb3JlUGFnZUNsaWVudChFdmFzX09iamVj
dCogZXdrVmlldykKICAgICByZXR1cm4gcHJpdi0+cGFnZUNsaWVudC5nZXQoKTsKIH0KIAorV2Vi
Q29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uKiBzdG9yYWdlU2Vzc2lvbihjb25zdCBFdmFzX09i
amVjdCogZXdrVmlldykKK3sKKyAgICBFV0tfVklFV19TRF9HRVRfT1JfUkVUVVJOKGV3a1ZpZXcs
IHNtYXJ0RGF0YSwgMCk7CisgICAgRVdLX1ZJRVdfUFJJVl9HRVRfT1JfUkVUVVJOKHNtYXJ0RGF0
YSwgcHJpdiwgMCk7CisgICAgcmV0dXJuIHByaXYtPnN0b3JhZ2VTZXNzaW9uLmdldCgpOworfQor
CiB9IC8vIG5hbWVzcGFjZSBFV0tQcml2YXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3
X3ByaXZhdGUuaAppbmRleCA1ZGM0YzBiYmYyMmMzYWIzNmQwOTRjNDkxOGVjNzIwYjJkOWE5OGZk
Li5iYWQyYmRjMTc4ZmQxOTgwODI3MjBmMDc4M2RiZmU4OTliZWZlOWM5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvZWZsL2V3ay9ld2tfdmlld19wcml2YXRlLmgKQEAgLTIzLDYgKzIzLDcgQEAKICNkZWZpbmUg
ZXdrX3ZpZXdfcHJpdmF0ZV9oCiAKICNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIk5ldHdv
cmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJXaWRnZXQu
aCIKICNpbmNsdWRlICJld2tfcGFpbnRfY29udGV4dF9wcml2YXRlLmgiCkBAIC0xNzQsNiArMTc1
LDcgQEAgdm9pZCBld2tfdmlld19mdWxsc2NyZWVuX2V4aXQoY29uc3QgRXZhc19PYmplY3QqIGV3
a1ZpZXcpOwogbmFtZXNwYWNlIEVXS1ByaXZhdGUgewogV2ViQ29yZTo6UGFnZSAqY29yZVBhZ2Uo
Y29uc3QgRXZhc19PYmplY3QgKmV3a1ZpZXcpOwogUGxhdGZvcm1QYWdlQ2xpZW50IGNvcmVQYWdl
Q2xpZW50KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsKK1dlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vz
c2lvbiogc3RvcmFnZVNlc3Npb24oY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpOwogfSAvLyBu
YW1lc3BhY2UgRVdLUHJpdmF0ZQogCiAjZW5kaWYgLy8gZXdrX3ZpZXdfcHJpdmF0ZV9oCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdD
b250ZXh0R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0
d29ya2luZ0NvbnRleHRHdGsuY3BwCmluZGV4IDFjMTVhODQ2MjUzMGQyNmZmYjQ0NjkxZDQ1ZDE3
NTZlM2ZkZmU4NGQuLjQ5YTFhZWIzMjQyNTJmYTAwNTFlNjI1ZDUwN2NjOWNkODY5MjQyNDIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2lu
Z0NvbnRleHRHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0Zy
YW1lTmV0d29ya2luZ0NvbnRleHRHdGsuY3BwCkBAIC0yMSwxNiArMjEsMTYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmgiCiAKKyNp
bmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRl
ZC5oIgotI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJD
b3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAotU291cFNlc3Npb24qIEZyYW1lTmV0d29ya2lu
Z0NvbnRleHRHdGs6OnNvdXBTZXNzaW9uKCkgY29uc3QKK3ZpcnR1YWwgTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrOjpzdG9yYWdlU2Vzc2lvbigpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIFJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigpOworICAgIHJl
dHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpOwogfQog
CiB1aW50NjRfdCBGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrOjppbml0aWF0aW5nUGFnZUlEKCkg
Y29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TmV0d29ya2luZ0NvbnRleHRHdGsuaCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0
L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuaAppbmRleCBjYWRhMTliOWM5NTJmNGZkNjMxNTBm
ODYwOTlhMGU2NmUwNzVjMjYzLi42MjlhNjIzNjM5ODg0NzA0MDUzNWEyZWM0NGMzNzU2MDFiZmYw
NmVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5l
dHdvcmtpbmdDb250ZXh0R3RrLmgKKysrIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBv
cnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEd0ay5oCkBAIC0zMiwxMCArMzIsMTEgQEAgcHVibGlj
OgogICAgIH0KIAogICAgIFdlYkNvcmU6OkZyYW1lKiBjb3JlRnJhbWUoKSBjb25zdCB7IHJldHVy
biBmcmFtZSgpOyB9Ci0gICAgdmlydHVhbCBTb3VwU2Vzc2lvbiogc291cFNlc3Npb24oKSBjb25z
dDsKICAgICB2aXJ0dWFsIHVpbnQ2NF90IGluaXRpYXRpbmdQYWdlSUQoKSBjb25zdDsKIAogcHJp
dmF0ZToKKyAgICB2aXJ0dWFsIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24o
KSBjb25zdDsKKwogICAgIEZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsoV2ViQ29yZTo6RnJhbWUq
IGZyYW1lKQogICAgICAgICA6IFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHQoZnJhbWUp
CiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuY3BwIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQu
Y3BwCmluZGV4IDZlN2I1OTNiYzIxODI3YjFlNjViN2VmZThjNzIxYzM1NzE1OGZiODUuLmI0MDI5
ZGNhZjExNTIxYjBmY2M1MzRjNGE0NWVmM2Y4NTNjODk4YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdD
b250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5jcHAKQEAgLTI4LDcgKzI4LDYgQEAKIAog
I2luY2x1ZGUgIldlYkZyYW1lLmgiCiAjaW5jbHVkZSAiV2ViUGFnZS5oIgotI2luY2x1ZGUgPFdl
YkNvcmUvUmVzb3VyY2VIYW5kbGUuaD4KIAogdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKQEAg
LTQyLDkgKzQxLDkgQEAgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6V2ViRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dChXZWJGcmFtZSogZnJhbWUpCiAgICAgICAgIG1faW5pdGlhdGluZ1BhZ2VJRCA9
IHBhZ2UtPnBhZ2VJRCgpOwogfQogCi1Tb3VwU2Vzc2lvbiogV2ViRnJhbWVOZXR3b3JraW5nQ29u
dGV4dDo6c291cFNlc3Npb24oKSBjb25zdAorTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBXZWJGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0OjpzdG9yYWdlU2Vzc2lvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IFJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigpOworICAgIHJldHVybiBOZXR3b3JrU3Rv
cmFnZVNlc3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpOwogfQogCiB1aW50NjRfdCBXZWJG
cmFtZU5ldHdvcmtpbmdDb250ZXh0Ojppbml0aWF0aW5nUGFnZUlEKCkgY29uc3QKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFt
ZU5ldHdvcmtpbmdDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCmluZGV4IGEwNmE2OTI1MjMy
ZjZmYTlmNTliYTMyYmRkZWY4NGZjMjI1NzAzYjIuLjgzM2E1ODRjMGFkNDQ3MmU5MjJhNGQ0YWM5
YzEzNTIzMjVjYjZlYWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKKysrIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQuaApAQCAtMzAsNiArMzAsOCBAQAogCiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZU5l
dHdvcmtpbmdDb250ZXh0Lmg+CiAKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOworCiBuYW1lc3Bh
Y2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViRnJhbWU7CkBAIC00NCw3ICs0Niw3IEBAIHB1YmxpYzoK
IHByaXZhdGU6CiAgICAgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dChXZWJGcmFtZSopOwogCi0g
ICAgdmlydHVhbCBTb3VwU2Vzc2lvbiogc291cFNlc3Npb24oKSBjb25zdDsKKyAgICB2aXJ0dWFs
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24oKSBjb25zdDsKICAgICB2aXJ0
dWFsIHVpbnQ2NF90IGluaXRpYXRpbmdQYWdlSUQoKSBjb25zdDsKIAogICAgIHVpbnQ2NF90IG1f
aW5pdGlhdGluZ1BhZ2VJRDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186258</attachid>
            <date>2013-02-03 04:39:21 -0800</date>
            <delta_ts>2013-02-03 09:04:16 -0800</delta_ts>
            <desc>Fixing builds, incorporate review comments.</desc>
            <filename>bug-108615-20130203133601.patch</filename>
            <type>text/plain</type>
            <size>22094</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGZkYTM0ODc2YjI1ZTcw
MmFlYWY1ZGQxMmI2MDA2NWEzYmZjYWE1YS4uMGRkNjBhNDQzY2MxZjhlYzJhYWVkYmMyOGFmODNm
ZjczMGU3NTAwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEzLTAyLTAzICBCYWxh
enMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKworICAgICAgICBbU291cF0gV3JhcCBT
b3VwU2Vzc2lvbiBieSBOZXR3b3JrU3RvcmFnZVNlc3Npb24KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODYxNQorCisgICAgICAgIFJldmlld2VkIGJ5
IEFsZXhleSBQcm9za3VyeWFrb3YuCisKKyAgICAgICAgSW1wbGVtZW50IE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiBmb3IgcG9ydHMgdXNpbmcgc291cC4gSXQgaGFzIGJlZW4KKyAgICAgICAgc2VwYXJh
dGVkIGZyb20gTmV0d29ya2luZ0NvbnRleHQsIHNvIG5vdyB3ZSBoYXZlIGEgZGVmYXVsdCBzdG9y
YWdlCisgICAgICAgIHNlc3Npb24sIHdoaWNoIGlzIHRoZSBzYW1lIGFzIGJlZm9yZSBidXQgbm93
IHdyYXBwZWQgd2l0aCBOZXR3b3JrU3RvcmFnZVNlc3Npb24sCisgICAgICAgIGFuZCBpdCBjYW4g
YmUgb3ZlcnJpZGRlbiBieSB0aGUgbmV0d29ya2luZyBjb250ZXh0LgorCisgICAgICAgIE5vIGNo
YW5nZSBpbiBiZWhhdmlvciBzbyBubyBuZXcgdGVzdHMuCisKKyAgICAgICAgKiBDTWFrZUxpc3Rz
LnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFBsYXRmb3Jt
QmxhY2tCZXJyeS5jbWFrZToKKyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZToKKyAgICAgICAg
KiBsb2FkZXIvQ29va2llSmFyLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICBOb3cg
d2UgYWxzbyBnZXQgdGhlIHN0b3JhZ2Ugc2Vzc2lvbiBmcm9tIHRoZSBuZXR3b3JraW5nIGNvbnRl
eHQKKyAgICAgICAgYW5kIG5vdCB0aGUgb3RoZXIgd2F5LgorCisgICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaDoKKyAgICAgICAgKE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldFNv
dXBTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c291
cFNlc3Npb24pOgorICAgICAgICBIb2xkIGEgU291cFNlc3Npb24gcG9pbnRlciBmb3IgcG9ydHMg
dXNpbmcgc291cC4gQWRkZWQgYSBzZXR0ZXIgYmVjYXVzZSBpdCBpcworICAgICAgICBuZWNlc3Nh
cnkgZm9yIEFQSSdzIHRoYXQgYWxsb3cgaXQgdG8gYmUgc3BlY2lmaWVkIHBlciBwYWdlLCBsaWtl
IEVGTCBXSzEuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtpbmdDb250ZXh0
Lmg6CisgICAgICAgIChOZXR3b3JraW5nQ29udGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llSmFy
Rm9yU2Vzc2lvbik6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL05ldHdvcmtTdG9y
YWdlU2Vzc2lvblNvdXAuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5jcHAuCisgICAg
ICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246Ok5ldHdvcmtTdG9yYWdlU2Vzc2lv
bik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9y
YWdlU2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNy
ZWF0ZURlZmF1bHRTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vz
c2lvbjo6Y3JlYXRlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpO
ZXR3b3JrU3RvcmFnZVNlc3Npb246OnN3aXRjaFRvTmV3VGVzdGluZ1Nlc3Npb24pOgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhhbmRsZVNvdXAuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6c2Vzc2lvbkZyb21Db250ZXh0KToKKwogMjAxMy0wMi0wMiAgSnVuIEppYW5n
ICA8anVuLmEuamlhbmdAaW50ZWwuY29tPgogCiAgICAgICAgIE9wdGltaXplIHNvbWUgb3BlcmF0
aW9ucyBmb3IgZmxvYXQgdHlwZSBpbiB0ZXh0dXJlIGZvcm1hdCBjb252ZXJzaW9ucyBvZiBXZWJH
TApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9lZmwvQ2hhbmdlTG9nCmluZGV4IDU1N2M5MGNlODliMzUyNWViODYyNGU0Y2VhMWYwNmY3MDk3
NTVjNzkuLjUxZWM4YWFkYmUxNmQwOGEyOTVmYTFhYWFlYmFmNzk0ODE5MTczNDIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxMy0wMi0wMyAgQmFsYXpzIEtlbGVtZW4gIDxr
YmFsYXpzQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1NvdXBdIFdyYXAgU291cFNlc3Npb24gYnkg
TmV0d29ya1N0b3JhZ2VTZXNzaW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDg2MTUKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1
cnlha292LgorCisgICAgICAgIENoYW5nZWQgdG8gaG9sZCB0aGUgU291cFNlc3Npb24gcG9pbnRl
ciBpbiBhIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgorICAgICAgICBzbyB3ZSBjYW4gcGFzcyBpdCB0
byBXZWJDb3JlLiBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIGhhcyB0byBiZQorICAgICAgICBjaGFu
Z2VkIGZvciB0aGF0IHJlYXNvbi4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0
d29ya2luZ0NvbnRleHRFZmwuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVOZXR3b3JraW5n
Q29udGV4dEVmbDo6c3RvcmFnZVNlc3Npb24pOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0Zy
YW1lTmV0d29ya2luZ0NvbnRleHRFZmwuaDoKKyAgICAgICAgKEZyYW1lTmV0d29ya2luZ0NvbnRl
eHRFZmwpOgorICAgICAgICAqIGV3ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChfRXdrX1ZpZXdf
UHJpdmF0ZV9EYXRhKToKKyAgICAgICAgKF9ld2tfdmlld19wcml2X25ldyk6CisgICAgICAgIChl
d2tfdmlld19zb3VwX3Nlc3Npb25fZ2V0KToKKyAgICAgICAgKGV3a192aWV3X3NvdXBfc2Vzc2lv
bl9zZXQpOgorICAgICAgICAoRVdLUHJpdmF0ZTo6c3RvcmFnZVNlc3Npb24pOgorICAgICAgICAo
RVdLUHJpdmF0ZSk6CisgICAgICAgICogZXdrL2V3a192aWV3X3ByaXZhdGUuaDoKKyAgICAgICAg
KEVXS1ByaXZhdGUpOgorCiAyMDEzLTAxLTMxICBBdXJpbWFzIExpdXRpa2FzICA8YXVyaW1hc0Bj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgRWRpdG9yOjptX2NvbXBvc2l0aW9uTm9kZSBub3QgdXBk
YXRlZCBvbiBIVE1MSW5wdXRFbGVtZW50OjpzZXRWYWx1ZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2d0ay9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXgg
YTI4ZWJhMjhkMjg4MjA4ZTk5YjYwZjJkMGE5NGExMDc1ODhhY2RlZS4uYTRkY2I3ZmVjMWY4NGQy
NjkwNGM1M2MxNzBiNDA0MjAwMjIwYWQ2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsv
Q2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1
IEBACisyMDEzLTAyLTAzICBCYWxhenMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbU291cF0gV3JhcCBTb3VwU2Vzc2lvbiBieSBOZXR3b3JrU3RvcmFnZVNlc3Npb24K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODYxNQor
CisgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCisKKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6RnJhbWVOZXR3b3JraW5nQ29udGV4dEd0azo6c3RvcmFnZVNlc3Npb24pOgorICAgICAg
ICAqIFdlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuaDoKKyAgICAgICAg
KEZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGspOgorCiAyMDEzLTAyLTAxICBQaGlsaXBwZSBOb3Jt
YW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBbR1RLXVtHU3RyZWFtZXJdIEZ1
bGxzY3JlZW5WaWRlb0NvbnRyb2xsZXJHdGsgaW1wbGVtZW50YXRpb24KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBj
M2EwYjI1MGY1MjAyNmRiNzYyMmIxZjNmODJmNDJhYzYwMDVhYjM5Li5hOTYxNzVmNDZiMWM3NGIx
ZmJkODE1ZWViOTU1NTVhZWI1Nzc1ZDdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIw
MTMtMDItMDMgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgorCisgICAgICAg
IFtTb3VwXSBXcmFwIFNvdXBTZXNzaW9uIGJ5IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NjE1CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24p
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0Lmg6CisgICAgICAgIChXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KToKKwog
MjAxMy0wMi0wMiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJlbW92
ZSBtb3JlIExlZ2FjeVJlY2VpdmVycwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAppbmRleCAwZDcyY2EwZmRk
YmM3ZmVlNTA4YWQ5NmEyZTEwY2RjYmZlNGQ0OTE3Li42M2Y5NDczNWVlZjkyYWI1MTMyYTNmMTdk
NmZhZDc0NDZlM2RmMTM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4
dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMjA1OCw3ICsyMDU4LDYg
QEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIHBsYXRmb3JtL25ldHdvcmsvSFRUUFZhbGlkYXRp
b24uY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9NSU1FSGVhZGVyLmNwcAogICAgIHBsYXRmb3Jt
L25ldHdvcmsvTmV0d29ya1N0YXRlTm90aWZpZXIuY3BwCi0gICAgcGxhdGZvcm0vbmV0d29yay9O
ZXR3b3JrU3RvcmFnZVNlc3Npb25TdHViLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvUGFyc2Vk
Q29udGVudFR5cGUuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9Qcm90ZWN0aW9uU3BhY2UuY3Bw
CiAgICAgcGxhdGZvcm0vbmV0d29yay9Qcm94eVNlcnZlci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmls
ZS5saXN0LmFtCmluZGV4IGUyYWE5MGNmYWQ0YzI2ZTk3NDZjNjVlNzAyNzQ3YTRmNmY4MGEyMWEu
LjZmN2U3MDgwMzIzNDNiNTU0NmRlYjM0Mjk5YTk3OGIxZTc1NjM5MzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05V
bWFrZWZpbGUubGlzdC5hbQpAQCAtNTgxNiw3ICs1ODE2LDYgQEAgd2ViY29yZV9wbGF0Zm9ybV9z
b3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0
ZU5vdGlmaWVyLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3Jr
U3RhdGVOb3RpZmllci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdv
cmtTdG9yYWdlU2Vzc2lvbi5oIFwKLQlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05l
dHdvcmtTdG9yYWdlU2Vzc2lvblN0dWIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL1BhcnNlZENvbnRlbnRUeXBlLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9QYXJzZWRDb250ZW50VHlwZS5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL1BsYXRmb3JtQ29va2llSmFyLmggXApAQCAtNTg1NCw2ICs1ODUzLDcgQEAgd2ViY29y
ZV9wbGF0Zm9ybV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L3NvdXAvRE5TU291cC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9HT3duUHRyU291cC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9HT3duUHRyU291cC5oIFwKKwlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAv
TmV0d29ya1N0b3JhZ2VTZXNzaW9uU291cC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvc291cC9Qcm94eVNlcnZlclNvdXAuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvclNvdXAuY3BwIFwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BsYXRmb3JtQmxhY2tCZXJyeS5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1Bs
YXRmb3JtQmxhY2tCZXJyeS5jbWFrZQppbmRleCA4MzhmNmQ3NzJkNGU3NGYwNjM3OTM0Nzg3NDA4
MWI2YmEzYjczNjdjLi5mMWQwNWNmODM5NTU2MDgzYjcwNzJkOWI1M2MzMzJlNGQ2NGRhZjE3IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnkuY21ha2UKKysrIGIv
U291cmNlL1dlYkNvcmUvUGxhdGZvcm1CbGFja0JlcnJ5LmNtYWtlCkBAIC04Niw2ICs4Niw3IEBA
IGxpc3QoQVBQRU5EIFdlYkNvcmVfU09VUkNFUwogIyBOZXR3b3JraW5nIHNvdXJjZXMKIGxpc3Qo
QVBQRU5EIFdlYkNvcmVfU09VUkNFUwogICAgIHBsYXRmb3JtL25ldHdvcmsvTUlNRVNuaWZmaW5n
LmNwcAorICAgIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uU3R1Yi5jcHAK
ICAgICBwbGF0Zm9ybS9uZXR3b3JrL1Byb3h5U2VydmVyLmNwcAogICAgIHBsYXRmb3JtL25ldHdv
cmsvYmxhY2tiZXJyeS9BdXRvZmlsbEJhY2tpbmdTdG9yZS5jcHAKICAgICBwbGF0Zm9ybS9uZXR3
b3JrL2JsYWNrYmVycnkvRE5TQmxhY2tCZXJyeS5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BsYXRmb3JtRWZsLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1FZmwuY21ha2UK
aW5kZXggMzQzMjE1ZTlkZDBlZThkNmRhMGU5NDM4YTA3OGFiNDk4MzQ1ODU5NC4uNWIxNjhkMzk5
ZjIxMTg4YWE5NTM3NjcwM2UwMjJjY2NlZmMyYTdhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvUGxhdGZvcm1FZmwuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUGxhdGZvcm1FZmwuY21h
a2UKQEAgLTE1MCw2ICsxNTAsNyBAQCBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ3JlZGVudGlhbFN0b3JhZ2VTb3VwLmNwcAogICAgIHBsYXRm
b3JtL25ldHdvcmsvc291cC9ETlNTb3VwLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvc291cC9H
T3duUHRyU291cC5jcHAKKyAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uU291cC5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUHJveHlSZXNvbHZlclNv
dXAuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL1Byb3h5U2VydmVyU291cC5jcHAKICAg
ICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VFcnJvclNvdXAuY3BwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9Db29raWVKYXIuY3BwCmluZGV4IDVmMTVhNTRlMTc0NjQ0MzQ5Nzc1ODk1OGY3MzYwMjQ2
MzY3ZWY3NmQuLmU1Yjc1ODdhY2ZiOTE3ZmVlZDIyODY0ODVjOWQyOGExMmNlMTBiY2UgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Db29raWVKYXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9Db29raWVKYXIuY3BwCkBAIC01Niw3ICs1Niw3IEBAIHN0YXRpYyBOZXR3
b3JraW5nQ29udGV4dCogbmV0d29ya2luZ0NvbnRleHQoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50
KQogICAgIHJldHVybiBsb2FkZXItPm5ldHdvcmtpbmdDb250ZXh0KCk7CiB9CiAKLSNpZiBQTEFU
Rk9STShNQUMpIHx8IFVTRShDRk5FVFdPUkspCisjaWYgUExBVEZPUk0oTUFDKSB8fCBVU0UoQ0ZO
RVRXT1JLKSB8fCBVU0UoU09VUCkKIGlubGluZSBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0b3Jh
Z2VTZXNzaW9uKGNvbnN0IERvY3VtZW50KiBkb2N1bWVudCkKIHsKICAgICBOZXR3b3JraW5nQ29u
dGV4dCogY29udGV4dCA9IG5ldHdvcmtpbmdDb250ZXh0KGRvY3VtZW50KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5o
CmluZGV4IDgxMDljYWE2ZDc1NGUwZmJlZTBiZDMxNmU3ODJkYzVmMzM2OTZjZWMuLjdiMTYxYTAw
Yzk3NjBiNWNjMTI3MDhhNjc1MmY5YTFmM2Y2ZThiOGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaApAQCAtMzIs
NiArMzIsOSBAQAogI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKENGTkVUV09SSykKIHR5cGVkZWYg
Y29uc3Qgc3RydWN0IF9fQ0ZVUkxTdG9yYWdlU2Vzc2lvbiogQ0ZVUkxTdG9yYWdlU2Vzc2lvblJl
ZjsKIHR5cGVkZWYgc3RydWN0IE9wYXF1ZUNGSFRUUENvb2tpZVN0b3JhZ2UqICBDRkhUVFBDb29r
aWVTdG9yYWdlUmVmOworI2VsaWYgVVNFKFNPVVApCit0eXBlZGVmIHN0cnVjdCBfU291cENvb2tp
ZUphciBTb3VwQ29va2llSmFyOwordHlwZWRlZiBzdHJ1Y3QgX1NvdXBTZXNzaW9uIFNvdXBTZXNz
aW9uOwogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQyLDcgKzQ1LDcgQEAgY2xh
c3MgTmV0d29ya1N0b3JhZ2VTZXNzaW9uIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShOZXR3
b3JrU3RvcmFnZVNlc3Npb24pOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKICAg
ICBzdGF0aWMgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsK
LSAgICBzdGF0aWMgUGFzc093blB0cjxOZXR3b3JrU3RvcmFnZVNlc3Npb24+IGNyZWF0ZURlZmF1
bHRTZXNzaW9uKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllckJhc2UpOworICAgIHN0YXRpYyBQYXNz
T3duUHRyPE5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4gY3JlYXRlRGVmYXVsdFNlc3Npb24oY29uc3Qg
U3RyaW5nJiBpZGVudGlmaWVyQmFzZSA9IFN0cmluZygpKTsKICAgICBzdGF0aWMgUGFzc093blB0
cjxOZXR3b3JrU3RvcmFnZVNlc3Npb24+IGNyZWF0ZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oY29u
c3QgU3RyaW5nJiBpZGVudGlmaWVyQmFzZSk7CiAKICAgICBzdGF0aWMgdm9pZCBzd2l0Y2hUb05l
d1Rlc3RpbmdTZXNzaW9uKCk7CkBAIC01Miw2ICs1NSw5IEBAIHB1YmxpYzoKICAgICBDRlVSTFN0
b3JhZ2VTZXNzaW9uUmVmIHBsYXRmb3JtU2Vzc2lvbigpIHsgcmV0dXJuIG1fcGxhdGZvcm1TZXNz
aW9uLmdldCgpOyB9CiAgICAgUmV0YWluUHRyPENGSFRUUENvb2tpZVN0b3JhZ2VSZWY+IGNvb2tp
ZVN0b3JhZ2UoKSBjb25zdDsKICAgICBib29sIGlzUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbigpIGNv
bnN0IHsgcmV0dXJuIG1faXNQcml2YXRlOyB9CisjZWxpZiBVU0UoU09VUCkKKyAgICB2b2lkIHNl
dFNvdXBTZXNzaW9uKFNvdXBTZXNzaW9uKiBzZXNzaW9uKSB7IG1fc2Vzc2lvbiA9IHNlc3Npb247
IH0KKyAgICBTb3VwU2Vzc2lvbiogc291cFNlc3Npb24oKSBjb25zdCB7IHJldHVybiBtX3Nlc3Np
b247IH0KICNlbHNlCiAgICAgTmV0d29ya1N0b3JhZ2VTZXNzaW9uKE5ldHdvcmtpbmdDb250ZXh0
Kik7CiAgICAgfk5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpOwpAQCAtNjQsNiArNzAsOSBAQCBwcml2
YXRlOgogICAgIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbigpOwogICAgIFJldGFpblB0cjxDRlVSTFN0
b3JhZ2VTZXNzaW9uUmVmPiBtX3BsYXRmb3JtU2Vzc2lvbjsKICAgICBib29sIG1faXNQcml2YXRl
OworI2VsaWYgVVNFKFNPVVApCisgICAgTmV0d29ya1N0b3JhZ2VTZXNzaW9uKFNvdXBTZXNzaW9u
Kik7CisgICAgU291cFNlc3Npb24qIG1fc2Vzc2lvbjsKICNlbHNlCiAgICAgUmVmUHRyPE5ldHdv
cmtpbmdDb250ZXh0PiBtX2NvbnRleHQ7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya2luZ0NvbnRleHQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya2luZ0NvbnRleHQuaAppbmRleCA4NDFmN2VjZmUzZGQ3
YWI3NmUwMzgyYmUwOTcxZmU5OTc3NmFiN2VjLi4xNGNkNDIwNjk1ZThkNWEzYWQyNWJlODFmNjEw
NDU5YzMxOTM4NzViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L05ldHdvcmtpbmdDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9OZXR3b3JraW5nQ29udGV4dC5oCkBAIC03OCw4ICs3OCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIFJlc291cmNlRXJyb3IgYmxvY2tlZEVycm9yKGNvbnN0IFJlc291cmNlUmVxdWVzdCYpIGNv
bnN0ID0gMDsKICNlbmRpZgogCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBVU0UoQ0ZORVRXT1JLKQot
CisjaWYgUExBVEZPUk0oTUFDKSB8fCBVU0UoQ0ZORVRXT1JLKSB8fCBVU0UoU09VUCkKICAgICB2
aXJ0dWFsIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgc3RvcmFnZVNlc3Npb24oKSBjb25zdCA9IDA7
CiAjZW5kaWYKIApAQCAtOTgsOCArOTcsNiBAQCBwdWJsaWM6CiAjZW5kaWYKIAogI2lmIFVTRShT
T1VQKQotICAgIC8vIEZJWE1FOiBXcmFwIFNvdXBTZXNzaW9uIGludG8gYSBOZXR3b3JrU3RvcmFn
ZVNlc3Npb24gdG8gbWFrZSB0aGUgY29kZSBjcm9zcy1wbGF0Zm9ybS4KLSAgICB2aXJ0dWFsIFNv
dXBTZXNzaW9uKiBzb3VwU2Vzc2lvbigpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIHVpbnQ2NF90
IGluaXRpYXRpbmdQYWdlSUQoKSBjb25zdCA9IDA7CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwCmluZGV4
IGM2OGIwODMyZWE2YjkzYzhiZjYzYTFmN2Q5OTNjYzAxM2FmOWZhZDMuLmVjZjVhODMxMTQzOWFk
MDRmZjNkMDdjMzE3YTE2MDEwMThmNjljODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvc291cC9Db29raWVKYXJTb3VwLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5jcHAKQEAgLTM0LDkgKzM0LDkg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdGF0aWMgU291cENvb2tpZUphciogY29va2llSmFy
Rm9yU2Vzc2lvbihjb25zdCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Npb24pCiB7Ci0gICAg
aWYgKCFzZXNzaW9uLmNvbnRleHQoKSkKKyAgICBpZiAoIXNlc3Npb24uc291cFNlc3Npb24oKSkK
ICAgICAgICAgcmV0dXJuIHNvdXBDb29raWVKYXIoKTsKLSAgICByZXR1cm4gU09VUF9DT09LSUVf
SkFSKHNvdXBfc2Vzc2lvbl9nZXRfZmVhdHVyZShzZXNzaW9uLmNvbnRleHQoKS0+c291cFNlc3Np
b24oKSwgU09VUF9UWVBFX0NPT0tJRV9KQVIpKTsKKyAgICByZXR1cm4gU09VUF9DT09LSUVfSkFS
KHNvdXBfc2Vzc2lvbl9nZXRfZmVhdHVyZShzZXNzaW9uLnNvdXBTZXNzaW9uKCksIFNPVVBfVFlQ
RV9DT09LSUVfSkFSKSk7CiB9CiAKIHN0YXRpYyBHUmVmUHRyPFNvdXBDb29raWVKYXI+JiBkZWZh
dWx0Q29va2llSmFyKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvc291cC9SZXNvdXJjZUhhbmRsZVNvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKaW5kZXggNGI0ZTZkZWM5MDZlMzY4
NTVlYjgxMTI3MzZmN2IyZGZmZDAyOWEzNi4uZDU5ZGQyOGZiZjUyYzNjYTBkN2Y5MmQ4MjM0Mzg2
N2NjMTZkY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9z
b3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKQEAgLTI1OCw3ICsyNTgsOSBAQCBS
ZXNvdXJjZUhhbmRsZUludGVybmFsOjp+UmVzb3VyY2VIYW5kbGVJbnRlcm5hbCgpCiAKIHN0YXRp
YyBTb3VwU2Vzc2lvbiogc2Vzc2lvbkZyb21Db250ZXh0KE5ldHdvcmtpbmdDb250ZXh0KiBjb250
ZXh0KQogewotICAgIHJldHVybiAoY29udGV4dCAmJiBjb250ZXh0LT5pc1ZhbGlkKCkpID8gY29u
dGV4dC0+c291cFNlc3Npb24oKSA6IFJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lvbigpOwor
ICAgIGlmICghY29udGV4dCB8fCAhY29udGV4dC0+aXNWYWxpZCgpKQorICAgICAgICByZXR1cm4g
UmVzb3VyY2VIYW5kbGU6OmRlZmF1bHRTZXNzaW9uKCk7CisgICAgcmV0dXJuIGNvbnRleHQtPnN0
b3JhZ2VTZXNzaW9uKCkuc291cFNlc3Npb24oKTsKIH0KIAogUmVzb3VyY2VIYW5kbGU6On5SZXNv
dXJjZUhhbmRsZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9y
dC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNv
cmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuY3BwCmluZGV4IDUzYzA1ZmIwNGNl
YWE3ODljMDRjZjBjMmE1NjdhZjU2Yzg3OGRkODcuLjNjYTZjMTFkNGQxZjEyZjQxYWQ1NGM1YTA4
NTk3YjBlYzgxMjZmNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBw
b3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZs
L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuY3BwCkBAIC0zNCw2ICsz
NCw3IEBACiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKICNpbmNsdWRlICJld2tfZnJhbWUu
aCIKICNpbmNsdWRlICJld2tfdmlldy5oIgorI2luY2x1ZGUgImV3a192aWV3X3ByaXZhdGUuaCIK
IAogI2luY2x1ZGUgPEV2YXMuaD4KIApAQCAtNTAsOSArNTEsMTEgQEAgRnJhbWVOZXR3b3JraW5n
Q29udGV4dEVmbDo6RnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbChGcmFtZSogZnJhbWUsIEV2YXNf
T2JqZWN0KgogewogfQogCi1Tb3VwU2Vzc2lvbiogRnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbDo6
c291cFNlc3Npb24oKSBjb25zdAorTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBGcmFtZU5ldHdvcmtp
bmdDb250ZXh0RWZsOjpzdG9yYWdlU2Vzc2lvbigpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIGV3a192
aWV3X3NvdXBfc2Vzc2lvbl9nZXQoZXdrX2ZyYW1lX3ZpZXdfZ2V0KG1fZXdrRnJhbWUpKTsKKyAg
ICBpZiAoTmV0d29ya1N0b3JhZ2VTZXNzaW9uKiBzZXNzaW9uID0gRVdLUHJpdmF0ZTo6c3RvcmFn
ZVNlc3Npb24oZXdrX2ZyYW1lX3ZpZXdfZ2V0KG1fZXdrRnJhbWUpKSkKKyAgICAgICAgcmV0dXJu
ICpzZXNzaW9uOworICAgIHJldHVybiBOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9y
YWdlU2Vzc2lvbigpOwogfQogCiB1aW50NjRfdCBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsOjpp
bml0aWF0aW5nUGFnZUlEKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL1dl
YkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuaCBiL1NvdXJjZS9XZWJLaXQv
ZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuaAppbmRleCAzMTQ3
MGU5NzcyM2FjZDIxNTMwZjdmNjdmZmFjMDY0NjM5MzA3MzBmLi42YjEzNDdmZDYyNTY0Y2MyOTQy
Mzc0ODIwNjkzMGMzM2YxMjUzMDRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9XZWJD
b3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmgKKysrIGIvU291cmNlL1dlYktp
dC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbC5oCkBAIC0zOCwx
MCArMzgsMTEgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEZyYW1lTmV0d29ya2lu
Z0NvbnRleHRFZmw+IGNyZWF0ZShGcmFtZSosIEV2YXNfT2JqZWN0Kik7CiAKICAgICBXZWJDb3Jl
OjpGcmFtZSogY29yZUZyYW1lKCkgY29uc3QgeyByZXR1cm4gZnJhbWUoKTsgfQotICAgIHZpcnR1
YWwgU291cFNlc3Npb24qIHNvdXBTZXNzaW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB1aW50NjRf
dCBpbml0aWF0aW5nUGFnZUlEKCkgY29uc3Q7CiAKIHByaXZhdGU6CisgICAgdmlydHVhbCBXZWJD
b3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3Q7CisKICAg
ICBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsKEZyYW1lKiwgRXZhc19PYmplY3QqKTsKIAogICAg
IEV2YXNfT2JqZWN0KiBtX2V3a0ZyYW1lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a192aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKaW5k
ZXggZTFkM2JkYTNkMTkyNzhmZjFmMTJmMjJhODZlNDY3MjhjMDA4MWI0Yi4uNTU2YmU1NzlhZWM2
YTg4MjE1NWYzYWU1ODYyNWMwMDU5YjRjYjk3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9l
ZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXcu
Y3BwCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVk
ZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0xvY2suaCIKKyNpbmNsdWRlICJOZXR3b3Jr
U3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSAiUGFn
ZUNsaWVudEVmbC5oIgogI2luY2x1ZGUgIlBhZ2VHcm91cC5oIgpAQCAtMjcyLDYgKzI3Myw3IEBA
IHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICNpZiBFTkFCTEUoTkFWSUdBVE9SX0NP
TlRFTlRfVVRJTFMpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1FX0hBTkRMRVIpCiAgICAgT3duUHRy
PFdlYkNvcmU6Ok5hdmlnYXRvckNvbnRlbnRVdGlsc0NsaWVudEVmbD4gbmF2aWdhdG9yQ29udGVu
dFV0aWxzQ2xpZW50OwogI2VuZGlmCisgICAgT3duUHRyPFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdl
U2Vzc2lvbj4gc3RvcmFnZVNlc3Npb247CiAgICAgc3RydWN0IHsKICAgICAgICAgRXdrX01lbnUg
bWVudTsKICAgICAgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KiBtZW51Q2xpZW50OwpAQCAt
MzY5LDcgKzM3MSw2IEBAIHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICAgICAgICAg
fSBjZW50ZXI7CiAgICAgICAgIEVjb3JlX0FuaW1hdG9yKiBhbmltYXRvcjsKICAgICB9IGFuaW1h
dGVkWm9vbTsKLSAgICBTb3VwU2Vzc2lvbiogc291cFNlc3Npb247CiAgICAgY29uc3QgY2hhciog
Y3Vyc29yR3JvdXA7CiAgICAgRXZhc19PYmplY3QqIGN1cnNvck9iamVjdDsKICNpZiBFTkFCTEUo
SU5TUEVDVE9SKQpAQCAtOTI2LDcgKzkyNyw3IEBAIHN0YXRpYyBFd2tfVmlld19Qcml2YXRlX0Rh
dGEqIF9ld2tfdmlld19wcml2X25ldyhFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiAK
ICAgICBwcml2LT5oaXN0b3J5ID0gZXdrX2hpc3RvcnlfbmV3KHN0YXRpY19jYXN0PFdlYkNvcmU6
OkJhY2tGb3J3YXJkTGlzdEltcGwqPihwcml2LT5wYWdlLT5iYWNrRm9yd2FyZExpc3QoKSkpOwog
Ci0gICAgcHJpdi0+c291cFNlc3Npb24gPSBXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6ZGVmYXVs
dFNlc3Npb24oKTsKKyAgICBwcml2LT5zdG9yYWdlU2Vzc2lvbiA9IFdlYkNvcmU6Ok5ldHdvcmtT
dG9yYWdlU2Vzc2lvbjo6Y3JlYXRlRGVmYXVsdFNlc3Npb24oKTsKIAogICAgIHByaXYtPnBhZ2VD
bGllbnQgPSBhZG9wdFB0cihuZXcgUGFnZUNsaWVudEVmbChzbWFydERhdGEtPnNlbGYpKTsKIApA
QCAtNDM4MSw3ICs0MzgyLDcgQEAgU291cFNlc3Npb24qIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9n
ZXQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpCiB7CiAgICAgRVdLX1ZJRVdfU0RfR0VUX09S
X1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEsIDApOwogICAgIEVXS19WSUVXX1BSSVZfR0VUX09S
X1JFVFVSTihzbWFydERhdGEsIHByaXYsIDApOwotICAgIHJldHVybiBwcml2LT5zb3VwU2Vzc2lv
bjsKKyAgICByZXR1cm4gcHJpdi0+c3RvcmFnZVNlc3Npb24tPnNvdXBTZXNzaW9uKCk7CiB9CiAK
IHZvaWQgZXdrX3ZpZXdfc291cF9zZXNzaW9uX3NldChFdmFzX09iamVjdCogZXdrVmlldywgU291
cFNlc3Npb24qIHNlc3Npb24pCkBAIC00MzkzLDcgKzQzOTQsNyBAQCB2b2lkIGV3a192aWV3X3Nv
dXBfc2Vzc2lvbl9zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcsIFNvdXBTZXNzaW9uKiBzZXNzaW9u
KQogICAgICAgICAgICAgImEgU291cFNlc3Npb25TeW5jIHdhcyBwcm92aWRlZC4iKTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KLSAgICBwcml2LT5zb3VwU2Vzc2lvbiA9IHNlc3Npb247CisgICAg
cHJpdi0+c3RvcmFnZVNlc3Npb24tPnNldFNvdXBTZXNzaW9uKHNlc3Npb24pOwogfQogCiBFaW5h
X0Jvb2wgZXdrX3ZpZXdfc2V0dGluZ19lbmFibGVfeHNzX2F1ZGl0b3JfZ2V0KGNvbnN0IEV2YXNf
T2JqZWN0KiBld2tWaWV3KQpAQCAtNDg1MSw0ICs0ODUyLDExIEBAIFBsYXRmb3JtUGFnZUNsaWVu
dCBjb3JlUGFnZUNsaWVudChFdmFzX09iamVjdCogZXdrVmlldykKICAgICByZXR1cm4gcHJpdi0+
cGFnZUNsaWVudC5nZXQoKTsKIH0KIAorV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uKiBz
dG9yYWdlU2Vzc2lvbihjb25zdCBFdmFzX09iamVjdCogZXdrVmlldykKK3sKKyAgICBFV0tfVklF
V19TRF9HRVRfT1JfUkVUVVJOKGV3a1ZpZXcsIHNtYXJ0RGF0YSwgMCk7CisgICAgRVdLX1ZJRVdf
UFJJVl9HRVRfT1JfUkVUVVJOKHNtYXJ0RGF0YSwgcHJpdiwgMCk7CisgICAgcmV0dXJuIHByaXYt
PnN0b3JhZ2VTZXNzaW9uLmdldCgpOworfQorCiB9IC8vIG5hbWVzcGFjZSBFV0tQcml2YXRlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oIGIvU291
cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3ByaXZhdGUuaAppbmRleCA1ZGM0YzBiYmYyMmMz
YWIzNmQwOTRjNDkxOGVjNzIwYjJkOWE5OGZkLi5iYWQyYmRjMTc4ZmQxOTgwODI3MjBmMDc4M2Ri
ZmU4OTliZWZlOWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdf
cHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19wcml2YXRlLmgK
QEAgLTIzLDYgKzIzLDcgQEAKICNkZWZpbmUgZXdrX3ZpZXdfcHJpdmF0ZV9oCiAKICNpbmNsdWRl
ICJGcmFtZS5oIgorI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIgogI2luY2x1ZGUg
IlBhZ2UuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIKICNpbmNsdWRlICJld2tfcGFpbnRfY29udGV4
dF9wcml2YXRlLmgiCkBAIC0xNzQsNiArMTc1LDcgQEAgdm9pZCBld2tfdmlld19mdWxsc2NyZWVu
X2V4aXQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpOwogbmFtZXNwYWNlIEVXS1ByaXZhdGUg
ewogV2ViQ29yZTo6UGFnZSAqY29yZVBhZ2UoY29uc3QgRXZhc19PYmplY3QgKmV3a1ZpZXcpOwog
UGxhdGZvcm1QYWdlQ2xpZW50IGNvcmVQYWdlQ2xpZW50KEV2YXNfT2JqZWN0KiBld2tWaWV3KTsK
K1dlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiogc3RvcmFnZVNlc3Npb24oY29uc3QgRXZh
c19PYmplY3QqIGV3a1ZpZXcpOwogfSAvLyBuYW1lc3BhY2UgRVdLUHJpdmF0ZQogCiAjZW5kaWYg
Ly8gZXdrX3ZpZXdfcHJpdmF0ZV9oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJD
b3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmNwcCBiL1NvdXJjZS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuY3BwCmluZGV4IDFj
MTVhODQ2MjUzMGQyNmZmYjQ0NjkxZDQ1ZDE3NTZlM2ZkZmU4NGQuLmZhZTEzN2VhYzcyNDkyMTc0
M2Y5NTkzNjRlOGViMTVjOWMzYzdkM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL1dl
YkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuY3BwCkBA
IC0yMSwxNiArMjEsMTYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJGcmFtZU5l
dHdvcmtpbmdDb250ZXh0R3RrLmgiCiAKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24u
aCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgotI2luY2x1ZGUgIlJlc291cmNlSGFuZGxl
LmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAot
U291cFNlc3Npb24qIEZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGs6OnNvdXBTZXNzaW9uKCkgY29u
c3QKK05ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgRnJhbWVOZXR3b3JraW5nQ29udGV4dEd0azo6c3Rv
cmFnZVNlc3Npb24oKSBjb25zdAogewotICAgIHJldHVybiBSZXNvdXJjZUhhbmRsZTo6ZGVmYXVs
dFNlc3Npb24oKTsKKyAgICByZXR1cm4gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3Rv
cmFnZVNlc3Npb24oKTsKIH0KIAogdWludDY0X3QgRnJhbWVOZXR3b3JraW5nQ29udGV4dEd0azo6
aW5pdGlhdGluZ1BhZ2VJRCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmggYi9Tb3VyY2UvV2ViS2l0
L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmgKaW5kZXggY2Fk
YTE5YjljOTUyZjRmZDYzMTUwZjg2MDk5YTBlNjZlMDc1YzI2My4uNjQyZGZiMWI0NDhhYjViM2Ex
NjJjZDFmZGY3YmI1NzI4MTJlNmVjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2Vi
Q29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEd0ay5oCisrKyBiL1NvdXJjZS9XZWJL
aXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGsuaApAQCAtMzIs
MTAgKzMyLDExIEBAIHB1YmxpYzoKICAgICB9CiAKICAgICBXZWJDb3JlOjpGcmFtZSogY29yZUZy
YW1lKCkgY29uc3QgeyByZXR1cm4gZnJhbWUoKTsgfQotICAgIHZpcnR1YWwgU291cFNlc3Npb24q
IHNvdXBTZXNzaW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB1aW50NjRfdCBpbml0aWF0aW5nUGFn
ZUlEKCkgY29uc3Q7CiAKIHByaXZhdGU6CisgICAgdmlydHVhbCBXZWJDb3JlOjpOZXR3b3JrU3Rv
cmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3Q7CisKICAgICBGcmFtZU5ldHdvcmtp
bmdDb250ZXh0R3RrKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkKICAgICAgICAgOiBXZWJDb3JlOjpG
cmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdD
b250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291
cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmNwcAppbmRleCA2ZTdiNTkzYmMyMTgyN2IxZTY1
YjdlZmU4YzcyMWMzNTcxNThmYjg1Li5iNDAyOWRjYWYxMTUyMWIwZmNjNTM0YzRhNDVlZjNmODUz
Yzg5OGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQuY3BwCkBAIC0yOCw3ICsyOCw2IEBACiAKICNpbmNsdWRlICJXZWJGcmFtZS5oIgogI2luY2x1
ZGUgIldlYlBhZ2UuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL1Jlc291cmNlSGFuZGxlLmg+CiAKIHVz
aW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCkBAIC00Miw5ICs0MSw5IEBAIFdlYkZyYW1lTmV0d29y
a2luZ0NvbnRleHQ6OldlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQoV2ViRnJhbWUqIGZyYW1lKQog
ICAgICAgICBtX2luaXRpYXRpbmdQYWdlSUQgPSBwYWdlLT5wYWdlSUQoKTsKIH0KIAotU291cFNl
c3Npb24qIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnNvdXBTZXNzaW9uKCkgY29uc3QKK05l
dHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6c3RvcmFnZVNl
c3Npb24oKSBjb25zdAogewotICAgIHJldHVybiBSZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Np
b24oKTsKKyAgICByZXR1cm4gTmV0d29ya1N0b3JhZ2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNl
c3Npb24oKTsKIH0KIAogdWludDY0X3QgV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dDo6aW5pdGlh
dGluZ1BhZ2VJRCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9zb3VwL1dlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQuaAppbmRleCBhMDZhNjkyNTIzMmY2ZmE5ZjU5YmEzMmJkZGVmODRmYzIyNTcwM2Iy
Li5jYTIyYjJjNDM5Zjk0MzEzNmFjODdiNWI5YTBkYmFiNmQyM2EwN2VlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmgKQEAgLTQ0LDcgKzQ0LDcgQEAg
cHVibGljOgogcHJpdmF0ZToKICAgICBXZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0KFdlYkZyYW1l
Kik7CiAKLSAgICB2aXJ0dWFsIFNvdXBTZXNzaW9uKiBzb3VwU2Vzc2lvbigpIGNvbnN0OworICAg
IHZpcnR1YWwgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbigp
IGNvbnN0OwogICAgIHZpcnR1YWwgdWludDY0X3QgaW5pdGlhdGluZ1BhZ2VJRCgpIGNvbnN0Owog
CiAgICAgdWludDY0X3QgbV9pbml0aWF0aW5nUGFnZUlEOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186265</attachid>
            <date>2013-02-03 09:04:23 -0800</date>
            <delta_ts>2013-02-04 01:35:06 -0800</delta_ts>
            <desc>Adding new file</desc>
            <filename>bug-108615-20130203180102.patch</filename>
            <type>text/plain</type>
            <size>25877</size>
            <attacher name="Balazs Kelemen">kbalazs</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGZkYTM0ODc2YjI1ZTcw
MmFlYWY1ZGQxMmI2MDA2NWEzYmZjYWE1YS4uN2NiYTE1MzdjYmM3NDM1MmRiMTQ3OTNjMGRmZTMw
YTQwZTBhYTg1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYzIEBACisyMDEzLTAyLTAzICBCYWxh
enMgS2VsZW1lbiAgPGtiYWxhenNAd2Via2l0Lm9yZz4KKworICAgICAgICBbU291cF0gV3JhcCBT
b3VwU2Vzc2lvbiBieSBOZXR3b3JrU3RvcmFnZVNlc3Npb24KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODYxNQorCisgICAgICAgIFJldmlld2VkIGJ5
IEFsZXhleSBQcm9za3VyeWFrb3YuCisKKyAgICAgICAgSW1wbGVtZW50IE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiBmb3IgcG9ydHMgdXNpbmcgc291cC4gSXQgaGFzIGJlZW4KKyAgICAgICAgc2VwYXJh
dGVkIGZyb20gTmV0d29ya2luZ0NvbnRleHQsIHNvIG5vdyB3ZSBoYXZlIGEgZGVmYXVsdCBzdG9y
YWdlCisgICAgICAgIHNlc3Npb24sIHdoaWNoIGlzIHRoZSBzYW1lIGFzIGJlZm9yZSBidXQgbm93
IHdyYXBwZWQgd2l0aCBOZXR3b3JrU3RvcmFnZVNlc3Npb24sCisgICAgICAgIGFuZCBpdCBjYW4g
YmUgb3ZlcnJpZGRlbiBieSB0aGUgbmV0d29ya2luZyBjb250ZXh0LgorCisgICAgICAgIE5vIGNo
YW5nZSBpbiBiZWhhdmlvciBzbyBubyBuZXcgdGVzdHMuCisKKyAgICAgICAgKiBDTWFrZUxpc3Rz
LnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFtOgorICAgICAgICAqIFBsYXRmb3Jt
QmxhY2tCZXJyeS5jbWFrZToKKyAgICAgICAgKiBQbGF0Zm9ybUVmbC5jbWFrZToKKyAgICAgICAg
KiBsb2FkZXIvQ29va2llSmFyLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICBOb3cg
d2UgYWxzbyBnZXQgdGhlIHN0b3JhZ2Ugc2Vzc2lvbiBmcm9tIHRoZSBuZXR3b3JraW5nIGNvbnRl
eHQKKyAgICAgICAgYW5kIG5vdCB0aGUgb3RoZXIgd2F5LgorCisgICAgICAgICogcGxhdGZvcm0v
bmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaDoKKyAgICAgICAgKE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OnNldFNv
dXBTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6c291
cFNlc3Npb24pOgorICAgICAgICBIb2xkIGEgU291cFNlc3Npb24gcG9pbnRlciBmb3IgcG9ydHMg
dXNpbmcgc291cC4gQWRkZWQgYSBzZXR0ZXIgYmVjYXVzZSBpdCBpcworICAgICAgICBuZWNlc3Nh
cnkgZm9yIEFQSSdzIHRoYXQgYWxsb3cgaXQgdG8gYmUgc3BlY2lmaWVkIHBlciBwYWdlLCBsaWtl
IEVGTCBXSzEuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtpbmdDb250ZXh0
Lmg6CisgICAgICAgIChOZXR3b3JraW5nQ29udGV4dCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0
d29yay9zb3VwL0Nvb2tpZUphclNvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29va2llSmFy
Rm9yU2Vzc2lvbik6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL05ldHdvcmtTdG9y
YWdlU2Vzc2lvblNvdXAuY3BwOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5jcHAuCisgICAg
ICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246Ok5ldHdvcmtTdG9yYWdlU2Vzc2lv
bik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmRlZmF1bHRTdG9y
YWdlU2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246OmNy
ZWF0ZURlZmF1bHRTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vz
c2lvbjo6Y3JlYXRlUHJpdmF0ZUJyb3dzaW5nU2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpO
ZXR3b3JrU3RvcmFnZVNlc3Npb246OnN3aXRjaFRvTmV3VGVzdGluZ1Nlc3Npb24pOgorICAgICAg
ICAqIHBsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhhbmRsZVNvdXAuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6c2Vzc2lvbkZyb21Db250ZXh0KToKKworICAgICAgICAqIENNYWtlTGlzdHMu
dHh0OgorICAgICAgICAqIEdOVW1ha2VmaWxlLmxpc3QuYW06CisgICAgICAgICogUGxhdGZvcm1C
bGFja0JlcnJ5LmNtYWtlOgorICAgICAgICAqIFBsYXRmb3JtRWZsLmNtYWtlOgorICAgICAgICAq
IGxvYWRlci9Db29raWVKYXIuY3BwOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaDoKKyAgICAgICAgKE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbik6CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb246
OnNldFNvdXBTZXNzaW9uKToKKyAgICAgICAgKFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lv
bjo6c291cFNlc3Npb24pOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya2luZ0Nv
bnRleHQuaDoKKyAgICAgICAgKE5ldHdvcmtpbmdDb250ZXh0KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291cC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjb29r
aWVKYXJGb3JTZXNzaW9uKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3Vy
Y2VIYW5kbGVTb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnNlc3Npb25Gcm9tQ29udGV4dCk6
CisKIDIwMTMtMDItMDIgIEp1biBKaWFuZyAgPGp1bi5hLmppYW5nQGludGVsLmNvbT4KIAogICAg
ICAgICBPcHRpbWl6ZSBzb21lIG9wZXJhdGlvbnMgZm9yIGZsb2F0IHR5cGUgaW4gdGV4dHVyZSBm
b3JtYXQgY29udmVyc2lvbnMgb2YgV2ViR0wKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZs
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwppbmRleCA1NTdjOTBjZTg5
YjM1MjVlYjg2MjRlNGNlYTFmMDZmNzA5NzU1Yzc5Li41MWVjOGFhZGJlMTZkMDhhMjk1ZmExYWFh
ZWJhZjc5NDgxOTE3MzQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTMt
MDItMDMgIEJhbGF6cyBLZWxlbWVuICA8a2JhbGF6c0B3ZWJraXQub3JnPgorCisgICAgICAgIFtT
b3VwXSBXcmFwIFNvdXBTZXNzaW9uIGJ5IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NjE1CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KKworICAgICAgICBDaGFuZ2VkIHRvIGhv
bGQgdGhlIFNvdXBTZXNzaW9uIHBvaW50ZXIgaW4gYSBOZXR3b3JrU3RvcmFnZVNlc3Npb24KKyAg
ICAgICAgc28gd2UgY2FuIHBhc3MgaXQgdG8gV2ViQ29yZS4gX0V3a19WaWV3X1ByaXZhdGVfRGF0
YSBoYXMgdG8gYmUKKyAgICAgICAgY2hhbmdlZCBmb3IgdGhhdCByZWFzb24uCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmw6OnN0b3JhZ2VTZXNzaW9uKToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmg6CisgICAg
ICAgIChGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsKToKKyAgICAgICAgKiBld2svZXdrX3ZpZXcu
Y3BwOgorICAgICAgICAoX0V3a19WaWV3X1ByaXZhdGVfRGF0YSk6CisgICAgICAgIChfZXdrX3Zp
ZXdfcHJpdl9uZXcpOgorICAgICAgICAoZXdrX3ZpZXdfc291cF9zZXNzaW9uX2dldCk6CisgICAg
ICAgIChld2tfdmlld19zb3VwX3Nlc3Npb25fc2V0KToKKyAgICAgICAgKEVXS1ByaXZhdGU6OnN0
b3JhZ2VTZXNzaW9uKToKKyAgICAgICAgKEVXS1ByaXZhdGUpOgorICAgICAgICAqIGV3ay9ld2tf
dmlld19wcml2YXRlLmg6CisgICAgICAgIChFV0tQcml2YXRlKToKKwogMjAxMy0wMS0zMSAgQXVy
aW1hcyBMaXV0aWthcyAgPGF1cmltYXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEVkaXRvcjo6
bV9jb21wb3NpdGlvbk5vZGUgbm90IHVwZGF0ZWQgb24gSFRNTElucHV0RWxlbWVudDo6c2V0VmFs
dWUoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9ndGsvQ2hhbmdlTG9nCmluZGV4IGEyOGViYTI4ZDI4ODIwOGU5OWI2MGYyZDBhOTRhMTA3
NTg4YWNkZWUuLmE0ZGNiN2ZlYzFmODRkMjY5MDRjNTNjMTcwYjQwNDIwMDIyMGFkNjQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2d0
ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMy0wMi0wMyAgQmFsYXpzIEtlbGVtZW4g
IDxrYmFsYXpzQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1NvdXBdIFdyYXAgU291cFNlc3Npb24g
YnkgTmV0d29ya1N0b3JhZ2VTZXNzaW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMDg2MTUKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJv
c2t1cnlha292LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29u
dGV4dEd0ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OkZyYW1lTmV0d29ya2luZ0NvbnRleHRHdGs6
OnN0b3JhZ2VTZXNzaW9uKToKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtp
bmdDb250ZXh0R3RrLmg6CisgICAgICAgIChGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrKToKKwog
MjAxMy0wMi0wMSAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgW0dUS11bR1N0cmVhbWVyXSBGdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyR3RrIGltcGxl
bWVudGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2Uv
V2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYzNhMGIyNTBmNTIwMjZkYjc2MjJiMWYzZjgyZjQyYWM2
MDA1YWIzOS4uYTk2MTc1ZjQ2YjFjNzRiMWZiZDgxNWVlYjk1NTU1YWViNTc3NWQ3YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEzLTAyLTAzICBCYWxhenMgS2VsZW1lbiAgPGtiYWxh
enNAd2Via2l0Lm9yZz4KKworICAgICAgICBbU291cF0gV3JhcCBTb3VwU2Vzc2lvbiBieSBOZXR3
b3JrU3RvcmFnZVNlc3Npb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwODYxNQorCisgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFr
b3YuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVO
ZXR3b3JraW5nQ29udGV4dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTmV0d29ya2lu
Z0NvbnRleHQ6OnN0b3JhZ2VTZXNzaW9uKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oOgorICAgICAgICAoV2ViRnJh
bWVOZXR3b3JraW5nQ29udGV4dCk6CisKIDIwMTMtMDItMDIgIFNhbSBXZWluaWcgIDxzYW1Ad2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZW1vdmUgbW9yZSBMZWdhY3lSZWNlaXZlcnMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIvU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQKaW5kZXggMGQ3MmNhMGZkZGJjN2ZlZTUwOGFkOTZhMmUxMGNkY2JmZTRkNDkxNy4u
NjNmOTQ3MzVlZWY5MmFiNTEzMmEzZjE3ZDZmYWQ3NDQ2ZTNkZjEzOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0
cy50eHQKQEAgLTIwNTgsNyArMjA1OCw2IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAgICBwbGF0
Zm9ybS9uZXR3b3JrL0hUVFBWYWxpZGF0aW9uLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvTUlN
RUhlYWRlci5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdGF0ZU5vdGlmaWVyLmNw
cAotICAgIHBsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0b3JhZ2VTZXNzaW9uU3R1Yi5jcHAKICAg
ICBwbGF0Zm9ybS9uZXR3b3JrL1BhcnNlZENvbnRlbnRUeXBlLmNwcAogICAgIHBsYXRmb3JtL25l
dHdvcmsvUHJvdGVjdGlvblNwYWNlLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvUHJveHlTZXJ2
ZXIuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtIGIv
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBlMmFhOTBjZmFkNGMyNmU5
NzQ2YzY1ZTcwMjc0N2E0ZjZmODBhMjFhLi42ZjdlNzA4MDMyMzQzYjU1NDZkZWIzNDI5OWE5Nzhi
MWU3NTYzOTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFt
CisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KQEAgLTU4MTYsNyArNTgx
Niw2IEBAIHdlYmNvcmVfcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9OZXR3b3JrU3RhdGVOb3RpZmllci5jcHAgXAogCVNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya1N0YXRlTm90aWZpZXIuaCBcCiAJU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaCBcCi0JU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JrU3RvcmFnZVNlc3Npb25TdHViLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9QYXJzZWRDb250ZW50VHlwZS5jcHAgXAog
CVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvUGFyc2VkQ29udGVudFR5cGUuaCBcCiAJ
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9QbGF0Zm9ybUNvb2tpZUphci5oIFwKQEAg
LTU4NTQsNiArNTg1Myw3IEBAIHdlYmNvcmVfcGxhdGZvcm1fc291cmNlcyArPSBcCiAJU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0ROU1NvdXAuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvR093blB0clNvdXAuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvR093blB0clNvdXAuaCBcCisJU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL05ldHdvcmtTdG9yYWdlU2Vzc2lvblNvdXAuY3BwIFwK
IAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUHJveHlTZXJ2ZXJTb3VwLmNw
cCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3Iu
aCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlRXJyb3JT
b3VwLmNwcCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnku
Y21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUJsYWNrQmVycnkuY21ha2UKaW5kZXggODM4
ZjZkNzcyZDRlNzRmMDYzNzkzNDc4NzQwODFiNmJhM2I3MzY3Yy4uZjFkMDVjZjgzOTU1NjA4M2I3
MDcyZDliNTNjMzMyZTRkNjRkYWYxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUGxhdGZv
cm1CbGFja0JlcnJ5LmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtQmxhY2tCZXJy
eS5jbWFrZQpAQCAtODYsNiArODYsNyBAQCBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICMg
TmV0d29ya2luZyBzb3VyY2VzCiBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBwbGF0
Zm9ybS9uZXR3b3JrL01JTUVTbmlmZmluZy5jcHAKKyAgICBwbGF0Zm9ybS9uZXR3b3JrL05ldHdv
cmtTdG9yYWdlU2Vzc2lvblN0dWIuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9Qcm94eVNlcnZl
ci5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL2JsYWNrYmVycnkvQXV0b2ZpbGxCYWNraW5nU3Rv
cmUuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9ibGFja2JlcnJ5L0ROU0JsYWNrQmVycnkuY3Bw
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QbGF0Zm9ybUVmbC5jbWFrZSBiL1NvdXJjZS9X
ZWJDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCmluZGV4IDM0MzIxNWU5ZGQwZWU4ZDZkYTBlOTQzOGEw
NzhhYjQ5ODM0NTg1OTQuLjViMTY4ZDM5OWYyMTE4OGFhOTUzNzY3MDNlMDIyY2NjZWZjMmE3YWEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BsYXRmb3JtRWZsLmNtYWtlCkBAIC0xNTAsNiArMTUwLDcgQEAgbGlzdChBUFBF
TkQgV2ViQ29yZV9TT1VSQ0VTCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL0NyZWRlbnRpYWxT
dG9yYWdlU291cC5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvRE5TU291cC5jcHAKICAg
ICBwbGF0Zm9ybS9uZXR3b3JrL3NvdXAvR093blB0clNvdXAuY3BwCisgICAgcGxhdGZvcm0vbmV0
d29yay9zb3VwL05ldHdvcmtTdG9yYWdlU2Vzc2lvblNvdXAuY3BwCiAgICAgcGxhdGZvcm0vbmV0
d29yay9zb3VwL1Byb3h5UmVzb2x2ZXJTb3VwLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvc291
cC9Qcm94eVNlcnZlclNvdXAuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNl
RXJyb3JTb3VwLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Nvb2tpZUph
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcAppbmRleCA1ZjE1YTU0
ZTE3NDY0NDM0OTc3NTg5NThmNzM2MDI0NjM2N2VmNzZkLi5lNWI3NTg3YWNmYjkxN2ZlZWQyMjg2
NDg1YzlkMjhhMTJjZTEwYmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29v
a2llSmFyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvQ29va2llSmFyLmNwcApAQCAt
NTYsNyArNTYsNyBAQCBzdGF0aWMgTmV0d29ya2luZ0NvbnRleHQqIG5ldHdvcmtpbmdDb250ZXh0
KGNvbnN0IERvY3VtZW50KiBkb2N1bWVudCkKICAgICByZXR1cm4gbG9hZGVyLT5uZXR3b3JraW5n
Q29udGV4dCgpOwogfQogCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBVU0UoQ0ZORVRXT1JLKQorI2lm
IFBMQVRGT1JNKE1BQykgfHwgVVNFKENGTkVUV09SSykgfHwgVVNFKFNPVVApCiBpbmxpbmUgTmV0
d29ya1N0b3JhZ2VTZXNzaW9uJiBzdG9yYWdlU2Vzc2lvbihjb25zdCBEb2N1bWVudCogZG9jdW1l
bnQpCiB7CiAgICAgTmV0d29ya2luZ0NvbnRleHQqIGNvbnRleHQgPSBuZXR3b3JraW5nQ29udGV4
dChkb2N1bWVudCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L05ldHdvcmtTdG9yYWdlU2Vzc2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9OZXR3b3JrU3RvcmFnZVNlc3Npb24uaAppbmRleCA4MTA5Y2FhNmQ3NTRlMGZiZWUwYmQzMTZl
NzgyZGM1ZjMzNjk2Y2VjLi43YjE2MWEwMGM5NzYwYjVjYzEyNzA4YTY3NTJmOWExZjNmNmU4Yjhm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtTdG9y
YWdlU2Vzc2lvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29y
a1N0b3JhZ2VTZXNzaW9uLmgKQEAgLTMyLDYgKzMyLDkgQEAKICNpZiBQTEFURk9STShNQUMpIHx8
IFVTRShDRk5FVFdPUkspCiB0eXBlZGVmIGNvbnN0IHN0cnVjdCBfX0NGVVJMU3RvcmFnZVNlc3Np
b24qIENGVVJMU3RvcmFnZVNlc3Npb25SZWY7CiB0eXBlZGVmIHN0cnVjdCBPcGFxdWVDRkhUVFBD
b29raWVTdG9yYWdlKiAgQ0ZIVFRQQ29va2llU3RvcmFnZVJlZjsKKyNlbGlmIFVTRShTT1VQKQor
dHlwZWRlZiBzdHJ1Y3QgX1NvdXBDb29raWVKYXIgU291cENvb2tpZUphcjsKK3R5cGVkZWYgc3Ry
dWN0IF9Tb3VwU2Vzc2lvbiBTb3VwU2Vzc2lvbjsKICNlbmRpZgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CkBAIC00Miw3ICs0NSw3IEBAIGNsYXNzIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiB7CiAgICAg
V1RGX01BS0VfTk9OQ09QWUFCTEUoTmV0d29ya1N0b3JhZ2VTZXNzaW9uKTsgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIE5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYg
ZGVmYXVsdFN0b3JhZ2VTZXNzaW9uKCk7Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8TmV0d29ya1N0
b3JhZ2VTZXNzaW9uPiBjcmVhdGVEZWZhdWx0U2Vzc2lvbihjb25zdCBTdHJpbmcmIGlkZW50aWZp
ZXJCYXNlKTsKKyAgICBzdGF0aWMgUGFzc093blB0cjxOZXR3b3JrU3RvcmFnZVNlc3Npb24+IGNy
ZWF0ZURlZmF1bHRTZXNzaW9uKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllckJhc2UgPSBTdHJpbmco
KSk7CiAgICAgc3RhdGljIFBhc3NPd25QdHI8TmV0d29ya1N0b3JhZ2VTZXNzaW9uPiBjcmVhdGVQ
cml2YXRlQnJvd3NpbmdTZXNzaW9uKGNvbnN0IFN0cmluZyYgaWRlbnRpZmllckJhc2UpOwogCiAg
ICAgc3RhdGljIHZvaWQgc3dpdGNoVG9OZXdUZXN0aW5nU2Vzc2lvbigpOwpAQCAtNTIsNiArNTUs
OSBAQCBwdWJsaWM6CiAgICAgQ0ZVUkxTdG9yYWdlU2Vzc2lvblJlZiBwbGF0Zm9ybVNlc3Npb24o
KSB7IHJldHVybiBtX3BsYXRmb3JtU2Vzc2lvbi5nZXQoKTsgfQogICAgIFJldGFpblB0cjxDRkhU
VFBDb29raWVTdG9yYWdlUmVmPiBjb29raWVTdG9yYWdlKCkgY29uc3Q7CiAgICAgYm9vbCBpc1By
aXZhdGVCcm93c2luZ1Nlc3Npb24oKSBjb25zdCB7IHJldHVybiBtX2lzUHJpdmF0ZTsgfQorI2Vs
aWYgVVNFKFNPVVApCisgICAgdm9pZCBzZXRTb3VwU2Vzc2lvbihTb3VwU2Vzc2lvbiogc2Vzc2lv
bikgeyBtX3Nlc3Npb24gPSBzZXNzaW9uOyB9CisgICAgU291cFNlc3Npb24qIHNvdXBTZXNzaW9u
KCkgY29uc3QgeyByZXR1cm4gbV9zZXNzaW9uOyB9CiAjZWxzZQogICAgIE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbihOZXR3b3JraW5nQ29udGV4dCopOwogICAgIH5OZXR3b3JrU3RvcmFnZVNlc3Npb24o
KTsKQEAgLTY0LDYgKzcwLDkgQEAgcHJpdmF0ZToKICAgICBOZXR3b3JrU3RvcmFnZVNlc3Npb24o
KTsKICAgICBSZXRhaW5QdHI8Q0ZVUkxTdG9yYWdlU2Vzc2lvblJlZj4gbV9wbGF0Zm9ybVNlc3Np
b247CiAgICAgYm9vbCBtX2lzUHJpdmF0ZTsKKyNlbGlmIFVTRShTT1VQKQorICAgIE5ldHdvcmtT
dG9yYWdlU2Vzc2lvbihTb3VwU2Vzc2lvbiopOworICAgIFNvdXBTZXNzaW9uKiBtX3Nlc3Npb247
CiAjZWxzZQogICAgIFJlZlB0cjxOZXR3b3JraW5nQ29udGV4dD4gbV9jb250ZXh0OwogI2VuZGlm
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtpbmdD
b250ZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL05ldHdvcmtpbmdDb250
ZXh0LmgKaW5kZXggODQxZjdlY2ZlM2RkN2FiNzZlMDM4MmJlMDk3MWZlOTk3NzZhYjdlYy4uMTRj
ZDQyMDY5NWU4ZDVhM2FkMjViZTgxZjYxMDQ1OWMzMTkzODc1YiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9OZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvTmV0d29ya2luZ0NvbnRleHQuaApAQCAtNzgsOCAr
NzgsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBSZXNvdXJjZUVycm9yIGJsb2NrZWRFcnJvcihj
b25zdCBSZXNvdXJjZVJlcXVlc3QmKSBjb25zdCA9IDA7CiAjZW5kaWYKIAotI2lmIFBMQVRGT1JN
KE1BQykgfHwgVVNFKENGTkVUV09SSykKLQorI2lmIFBMQVRGT1JNKE1BQykgfHwgVVNFKENGTkVU
V09SSykgfHwgVVNFKFNPVVApCiAgICAgdmlydHVhbCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0
b3JhZ2VTZXNzaW9uKCkgY29uc3QgPSAwOwogI2VuZGlmCiAKQEAgLTk4LDggKzk3LDYgQEAgcHVi
bGljOgogI2VuZGlmCiAKICNpZiBVU0UoU09VUCkKLSAgICAvLyBGSVhNRTogV3JhcCBTb3VwU2Vz
c2lvbiBpbnRvIGEgTmV0d29ya1N0b3JhZ2VTZXNzaW9uIHRvIG1ha2UgdGhlIGNvZGUgY3Jvc3Mt
cGxhdGZvcm0uCi0gICAgdmlydHVhbCBTb3VwU2Vzc2lvbiogc291cFNlc3Npb24oKSBjb25zdCA9
IDA7CiAgICAgdmlydHVhbCB1aW50NjRfdCBpbml0aWF0aW5nUGFnZUlEKCkgY29uc3QgPSAwOwog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9Db29raWVKYXJTb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291
cC9Db29raWVKYXJTb3VwLmNwcAppbmRleCBjNjhiMDgzMmVhNmI5M2M4YmY2M2ExZjdkOTkzY2Mw
MTNhZjlmYWQzLi5lY2Y1YTgzMTE0MzlhZDA0ZmYzZDA3YzMxN2ExNjAxMDE4ZjY5YzgyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvQ29va2llSmFyU291
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL0Nvb2tpZUph
clNvdXAuY3BwCkBAIC0zNCw5ICszNCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RhdGlj
IFNvdXBDb29raWVKYXIqIGNvb2tpZUphckZvclNlc3Npb24oY29uc3QgTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBzZXNzaW9uKQogewotICAgIGlmICghc2Vzc2lvbi5jb250ZXh0KCkpCisgICAgaWYg
KCFzZXNzaW9uLnNvdXBTZXNzaW9uKCkpCiAgICAgICAgIHJldHVybiBzb3VwQ29va2llSmFyKCk7
Ci0gICAgcmV0dXJuIFNPVVBfQ09PS0lFX0pBUihzb3VwX3Nlc3Npb25fZ2V0X2ZlYXR1cmUoc2Vz
c2lvbi5jb250ZXh0KCktPnNvdXBTZXNzaW9uKCksIFNPVVBfVFlQRV9DT09LSUVfSkFSKSk7Cisg
ICAgcmV0dXJuIFNPVVBfQ09PS0lFX0pBUihzb3VwX3Nlc3Npb25fZ2V0X2ZlYXR1cmUoc2Vzc2lv
bi5zb3VwU2Vzc2lvbigpLCBTT1VQX1RZUEVfQ09PS0lFX0pBUikpOwogfQogCiBzdGF0aWMgR1Jl
ZlB0cjxTb3VwQ29va2llSmFyPiYgZGVmYXVsdENvb2tpZUphcigpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvTmV0d29ya1N0b3JhZ2VTZXNzaW9uU291
cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uU291cC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGQ1NmUyYjg5ZjUxY2Q3N2NjYjIwMjczZjdh
MmM1ZDM4ZWJmZWFkMAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvc291cC9OZXR3b3JrU3RvcmFnZVNlc3Npb25Tb3VwLmNwcApAQCAtMCwwICsxLDc0
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxMyBVbml2ZXJzaXR5IG9mIFN6ZWdlZC4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiTmV0d29ya1N0
b3JhZ2VTZXNzaW9uLmgiCisKKyNpbmNsdWRlICJSZXNvdXJjZUhhbmRsZS5oIgorI2luY2x1ZGUg
PHd0Zi9NYWluVGhyZWFkLmg+CisjaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitOZXR3b3JrU3RvcmFnZVNlc3Npb246Ok5ldHdvcmtTdG9yYWdlU2Vz
c2lvbihTb3VwU2Vzc2lvbiogc2Vzc2lvbikKKyAgICA6IG1fc2Vzc2lvbihzZXNzaW9uKQorewor
fQorCitzdGF0aWMgT3duUHRyPE5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4mIGRlZmF1bHRTZXNzaW9u
KCkKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIERFRklORV9TVEFUSUNfTE9D
QUwoT3duUHRyPE5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4sIHNlc3Npb24sICgpKTsKKyAgICByZXR1
cm4gc2Vzc2lvbjsKK30KKworTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBOZXR3b3JrU3RvcmFnZVNl
c3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpCit7CisgICAgaWYgKCFkZWZhdWx0U2Vzc2lv
bigpKQorICAgICAgICBkZWZhdWx0U2Vzc2lvbigpID0gYWRvcHRQdHIobmV3IE5ldHdvcmtTdG9y
YWdlU2Vzc2lvbihSZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKSkpOworICAgIHJldHVy
biAqZGVmYXVsdFNlc3Npb24oKTsKK30KKworUGFzc093blB0cjxOZXR3b3JrU3RvcmFnZVNlc3Np
b24+IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y3JlYXRlRGVmYXVsdFNlc3Npb24oY29uc3QgU3Ry
aW5nJikKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworICAgIHJldHVybiBhZG9wdFB0
cihuZXcgTmV0d29ya1N0b3JhZ2VTZXNzaW9uKFJlc291cmNlSGFuZGxlOjpkZWZhdWx0U2Vzc2lv
bigpKSk7Cit9CisKK1Bhc3NPd25QdHI8TmV0d29ya1N0b3JhZ2VTZXNzaW9uPiBOZXR3b3JrU3Rv
cmFnZVNlc3Npb246OmNyZWF0ZVByaXZhdGVCcm93c2luZ1Nlc3Npb24oY29uc3QgU3RyaW5nJikK
K3sKKyAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKwor
dm9pZCBOZXR3b3JrU3RvcmFnZVNlc3Npb246OnN3aXRjaFRvTmV3VGVzdGluZ1Nlc3Npb24oKQor
eworICAgIC8vIEEgbnVsbCBzZXNzaW9uIHdpbGwgbWFrZSB1cyBmYWxsIGJhY2sgdG8gdGhlIGRl
ZmF1bHQgY29va2llIGphciwgd2hpY2ggaXMgY3VycmVudGx5CisgICAgLy8gdGhlIGV4cGVjdGVk
IGJlaGF2aW9yIGZvciB0ZXN0cy4KKyAgICBkZWZhdWx0U2Vzc2lvbigpID0gYWRvcHRQdHIobmV3
IE5ldHdvcmtTdG9yYWdlU2Vzc2lvbigwKSk7Cit9CisKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhhbmRsZVNvdXAuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAK
aW5kZXggNGI0ZTZkZWM5MDZlMzY4NTVlYjgxMTI3MzZmN2IyZGZmZDAyOWEzNi4uZDU5ZGQyOGZi
ZjUyYzNjYTBkN2Y5MmQ4MjM0Mzg2N2NjMTZkY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAK
QEAgLTI1OCw3ICsyNTgsOSBAQCBSZXNvdXJjZUhhbmRsZUludGVybmFsOjp+UmVzb3VyY2VIYW5k
bGVJbnRlcm5hbCgpCiAKIHN0YXRpYyBTb3VwU2Vzc2lvbiogc2Vzc2lvbkZyb21Db250ZXh0KE5l
dHdvcmtpbmdDb250ZXh0KiBjb250ZXh0KQogewotICAgIHJldHVybiAoY29udGV4dCAmJiBjb250
ZXh0LT5pc1ZhbGlkKCkpID8gY29udGV4dC0+c291cFNlc3Npb24oKSA6IFJlc291cmNlSGFuZGxl
OjpkZWZhdWx0U2Vzc2lvbigpOworICAgIGlmICghY29udGV4dCB8fCAhY29udGV4dC0+aXNWYWxp
ZCgpKQorICAgICAgICByZXR1cm4gUmVzb3VyY2VIYW5kbGU6OmRlZmF1bHRTZXNzaW9uKCk7Cisg
ICAgcmV0dXJuIGNvbnRleHQtPnN0b3JhZ2VTZXNzaW9uKCkuc291cFNlc3Npb24oKTsKIH0KIAog
UmVzb3VyY2VIYW5kbGU6On5SZXNvdXJjZUhhbmRsZSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwu
Y3BwCmluZGV4IDUzYzA1ZmIwNGNlYWE3ODljMDRjZjBjMmE1NjdhZjU2Yzg3OGRkODcuLjNjYTZj
MTFkNGQxZjEyZjQxYWQ1NGM1YTA4NTk3YjBlYzgxMjZmNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmwuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRl
eHRFZmwuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIK
ICNpbmNsdWRlICJld2tfZnJhbWUuaCIKICNpbmNsdWRlICJld2tfdmlldy5oIgorI2luY2x1ZGUg
ImV3a192aWV3X3ByaXZhdGUuaCIKIAogI2luY2x1ZGUgPEV2YXMuaD4KIApAQCAtNTAsOSArNTEs
MTEgQEAgRnJhbWVOZXR3b3JraW5nQ29udGV4dEVmbDo6RnJhbWVOZXR3b3JraW5nQ29udGV4dEVm
bChGcmFtZSogZnJhbWUsIEV2YXNfT2JqZWN0KgogewogfQogCi1Tb3VwU2Vzc2lvbiogRnJhbWVO
ZXR3b3JraW5nQ29udGV4dEVmbDo6c291cFNlc3Npb24oKSBjb25zdAorTmV0d29ya1N0b3JhZ2VT
ZXNzaW9uJiBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsOjpzdG9yYWdlU2Vzc2lvbigpIGNvbnN0
CiB7Ci0gICAgcmV0dXJuIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9nZXQoZXdrX2ZyYW1lX3ZpZXdf
Z2V0KG1fZXdrRnJhbWUpKTsKKyAgICBpZiAoTmV0d29ya1N0b3JhZ2VTZXNzaW9uKiBzZXNzaW9u
ID0gRVdLUHJpdmF0ZTo6c3RvcmFnZVNlc3Npb24oZXdrX2ZyYW1lX3ZpZXdfZ2V0KG1fZXdrRnJh
bWUpKSkKKyAgICAgICAgcmV0dXJuICpzZXNzaW9uOworICAgIHJldHVybiBOZXR3b3JrU3RvcmFn
ZVNlc3Npb246OmRlZmF1bHRTdG9yYWdlU2Vzc2lvbigpOwogfQogCiB1aW50NjRfdCBGcmFtZU5l
dHdvcmtpbmdDb250ZXh0RWZsOjppbml0aWF0aW5nUGFnZUlEKCkgY29uc3QKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRF
ZmwuaCBiL1NvdXJjZS9XZWJLaXQvZWZsL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0Nv
bnRleHRFZmwuaAppbmRleCAzMTQ3MGU5NzcyM2FjZDIxNTMwZjdmNjdmZmFjMDY0NjM5MzA3MzBm
Li42YjEzNDdmZDYyNTY0Y2MyOTQyMzc0ODIwNjkzMGMzM2YxMjUzMDRiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZs
LmgKKysrIGIvU291cmNlL1dlYktpdC9lZmwvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5n
Q29udGV4dEVmbC5oCkBAIC0zOCwxMCArMzgsMTEgQEAgcHVibGljOgogICAgIHN0YXRpYyBQYXNz
UmVmUHRyPEZyYW1lTmV0d29ya2luZ0NvbnRleHRFZmw+IGNyZWF0ZShGcmFtZSosIEV2YXNfT2Jq
ZWN0Kik7CiAKICAgICBXZWJDb3JlOjpGcmFtZSogY29yZUZyYW1lKCkgY29uc3QgeyByZXR1cm4g
ZnJhbWUoKTsgfQotICAgIHZpcnR1YWwgU291cFNlc3Npb24qIHNvdXBTZXNzaW9uKCkgY29uc3Q7
CiAgICAgdmlydHVhbCB1aW50NjRfdCBpbml0aWF0aW5nUGFnZUlEKCkgY29uc3Q7CiAKIHByaXZh
dGU6CisgICAgdmlydHVhbCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0b3JhZ2VT
ZXNzaW9uKCkgY29uc3Q7CisKICAgICBGcmFtZU5ldHdvcmtpbmdDb250ZXh0RWZsKEZyYW1lKiwg
RXZhc19PYmplY3QqKTsKIAogICAgIEV2YXNfT2JqZWN0KiBtX2V3a0ZyYW1lOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZs
L2V3ay9ld2tfdmlldy5jcHAKaW5kZXggZTFkM2JkYTNkMTkyNzhmZjFmMTJmMjJhODZlNDY3Mjhj
MDA4MWI0Yi4uNTU2YmU1NzlhZWM2YTg4MjE1NWYzYWU1ODYyNWMwMDU5YjRjYjk3OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX3ZpZXcuY3BwCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSAiSlNE
T01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNET01XaW5kb3cuaCIKICNpbmNsdWRlICJKU0xvY2su
aCIKKyNpbmNsdWRlICJOZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJPcGVyYXRp
b25zLmgiCiAjaW5jbHVkZSAiUGFnZUNsaWVudEVmbC5oIgogI2luY2x1ZGUgIlBhZ2VHcm91cC5o
IgpAQCAtMjcyLDYgKzI3Myw3IEBAIHN0cnVjdCBfRXdrX1ZpZXdfUHJpdmF0ZV9EYXRhIHsKICNp
ZiBFTkFCTEUoTkFWSUdBVE9SX0NPTlRFTlRfVVRJTFMpIHx8IEVOQUJMRShDVVNUT01fU0NIRU1F
X0hBTkRMRVIpCiAgICAgT3duUHRyPFdlYkNvcmU6Ok5hdmlnYXRvckNvbnRlbnRVdGlsc0NsaWVu
dEVmbD4gbmF2aWdhdG9yQ29udGVudFV0aWxzQ2xpZW50OwogI2VuZGlmCisgICAgT3duUHRyPFdl
YkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbj4gc3RvcmFnZVNlc3Npb247CiAgICAgc3RydWN0
IHsKICAgICAgICAgRXdrX01lbnUgbWVudTsKICAgICAgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xp
ZW50KiBtZW51Q2xpZW50OwpAQCAtMzY5LDcgKzM3MSw2IEBAIHN0cnVjdCBfRXdrX1ZpZXdfUHJp
dmF0ZV9EYXRhIHsKICAgICAgICAgfSBjZW50ZXI7CiAgICAgICAgIEVjb3JlX0FuaW1hdG9yKiBh
bmltYXRvcjsKICAgICB9IGFuaW1hdGVkWm9vbTsKLSAgICBTb3VwU2Vzc2lvbiogc291cFNlc3Np
b247CiAgICAgY29uc3QgY2hhciogY3Vyc29yR3JvdXA7CiAgICAgRXZhc19PYmplY3QqIGN1cnNv
ck9iamVjdDsKICNpZiBFTkFCTEUoSU5TUEVDVE9SKQpAQCAtOTI2LDcgKzkyNyw3IEBAIHN0YXRp
YyBFd2tfVmlld19Qcml2YXRlX0RhdGEqIF9ld2tfdmlld19wcml2X25ldyhFd2tfVmlld19TbWFy
dF9EYXRhKiBzbWFydERhdGEpCiAKICAgICBwcml2LT5oaXN0b3J5ID0gZXdrX2hpc3RvcnlfbmV3
KHN0YXRpY19jYXN0PFdlYkNvcmU6OkJhY2tGb3J3YXJkTGlzdEltcGwqPihwcml2LT5wYWdlLT5i
YWNrRm9yd2FyZExpc3QoKSkpOwogCi0gICAgcHJpdi0+c291cFNlc3Npb24gPSBXZWJDb3JlOjpS
ZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsKKyAgICBwcml2LT5zdG9yYWdlU2Vzc2lv
biA9IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbjo6Y3JlYXRlRGVmYXVsdFNlc3Npb24o
KTsKIAogICAgIHByaXYtPnBhZ2VDbGllbnQgPSBhZG9wdFB0cihuZXcgUGFnZUNsaWVudEVmbChz
bWFydERhdGEtPnNlbGYpKTsKIApAQCAtNDM4MSw3ICs0MzgyLDcgQEAgU291cFNlc3Npb24qIGV3
a192aWV3X3NvdXBfc2Vzc2lvbl9nZXQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpCiB7CiAg
ICAgRVdLX1ZJRVdfU0RfR0VUX09SX1JFVFVSTihld2tWaWV3LCBzbWFydERhdGEsIDApOwogICAg
IEVXS19WSUVXX1BSSVZfR0VUX09SX1JFVFVSTihzbWFydERhdGEsIHByaXYsIDApOwotICAgIHJl
dHVybiBwcml2LT5zb3VwU2Vzc2lvbjsKKyAgICByZXR1cm4gcHJpdi0+c3RvcmFnZVNlc3Npb24t
PnNvdXBTZXNzaW9uKCk7CiB9CiAKIHZvaWQgZXdrX3ZpZXdfc291cF9zZXNzaW9uX3NldChFdmFz
X09iamVjdCogZXdrVmlldywgU291cFNlc3Npb24qIHNlc3Npb24pCkBAIC00MzkzLDcgKzQzOTQs
NyBAQCB2b2lkIGV3a192aWV3X3NvdXBfc2Vzc2lvbl9zZXQoRXZhc19PYmplY3QqIGV3a1ZpZXcs
IFNvdXBTZXNzaW9uKiBzZXNzaW9uKQogICAgICAgICAgICAgImEgU291cFNlc3Npb25TeW5jIHdh
cyBwcm92aWRlZC4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAgICBwcml2LT5zb3VwU2Vz
c2lvbiA9IHNlc3Npb247CisgICAgcHJpdi0+c3RvcmFnZVNlc3Npb24tPnNldFNvdXBTZXNzaW9u
KHNlc3Npb24pOwogfQogCiBFaW5hX0Jvb2wgZXdrX3ZpZXdfc2V0dGluZ19lbmFibGVfeHNzX2F1
ZGl0b3JfZ2V0KGNvbnN0IEV2YXNfT2JqZWN0KiBld2tWaWV3KQpAQCAtNDg1MSw0ICs0ODUyLDEx
IEBAIFBsYXRmb3JtUGFnZUNsaWVudCBjb3JlUGFnZUNsaWVudChFdmFzX09iamVjdCogZXdrVmll
dykKICAgICByZXR1cm4gcHJpdi0+cGFnZUNsaWVudC5nZXQoKTsKIH0KIAorV2ViQ29yZTo6TmV0
d29ya1N0b3JhZ2VTZXNzaW9uKiBzdG9yYWdlU2Vzc2lvbihjb25zdCBFdmFzX09iamVjdCogZXdr
VmlldykKK3sKKyAgICBFV0tfVklFV19TRF9HRVRfT1JfUkVUVVJOKGV3a1ZpZXcsIHNtYXJ0RGF0
YSwgMCk7CisgICAgRVdLX1ZJRVdfUFJJVl9HRVRfT1JfUkVUVVJOKHNtYXJ0RGF0YSwgcHJpdiwg
MCk7CisgICAgcmV0dXJuIHByaXYtPnN0b3JhZ2VTZXNzaW9uLmdldCgpOworfQorCiB9IC8vIG5h
bWVzcGFjZSBFV0tQcml2YXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdr
X3ZpZXdfcHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3ByaXZhdGUu
aAppbmRleCA1ZGM0YzBiYmYyMmMzYWIzNmQwOTRjNDkxOGVjNzIwYjJkOWE5OGZkLi5iYWQyYmRj
MTc4ZmQxOTgwODI3MjBmMDc4M2RiZmU4OTliZWZlOWM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX3ZpZXdfcHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3
ay9ld2tfdmlld19wcml2YXRlLmgKQEAgLTIzLDYgKzIzLDcgQEAKICNkZWZpbmUgZXdrX3ZpZXdf
cHJpdmF0ZV9oCiAKICNpbmNsdWRlICJGcmFtZS5oIgorI2luY2x1ZGUgIk5ldHdvcmtTdG9yYWdl
U2Vzc2lvbi5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIKICNpbmNs
dWRlICJld2tfcGFpbnRfY29udGV4dF9wcml2YXRlLmgiCkBAIC0xNzQsNiArMTc1LDcgQEAgdm9p
ZCBld2tfdmlld19mdWxsc2NyZWVuX2V4aXQoY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpOwog
bmFtZXNwYWNlIEVXS1ByaXZhdGUgewogV2ViQ29yZTo6UGFnZSAqY29yZVBhZ2UoY29uc3QgRXZh
c19PYmplY3QgKmV3a1ZpZXcpOwogUGxhdGZvcm1QYWdlQ2xpZW50IGNvcmVQYWdlQ2xpZW50KEV2
YXNfT2JqZWN0KiBld2tWaWV3KTsKK1dlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiogc3Rv
cmFnZVNlc3Npb24oY29uc3QgRXZhc19PYmplY3QqIGV3a1ZpZXcpOwogfSAvLyBuYW1lc3BhY2Ug
RVdLUHJpdmF0ZQogCiAjZW5kaWYgLy8gZXdrX3ZpZXdfcHJpdmF0ZV9oCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0R3Rr
LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0Nv
bnRleHRHdGsuY3BwCmluZGV4IDFjMTVhODQ2MjUzMGQyNmZmYjQ0NjkxZDQ1ZDE3NTZlM2ZkZmU4
NGQuLmZhZTEzN2VhYzcyNDkyMTc0M2Y5NTkzNjRlOGViMTVjOWMzYzdkM2QgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2luZ0NvbnRleHRH
dGsuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29y
a2luZ0NvbnRleHRHdGsuY3BwCkBAIC0yMSwxNiArMjEsMTYgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrLmgiCiAKKyNpbmNsdWRlICJO
ZXR3b3JrU3RvcmFnZVNlc3Npb24uaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgotI2lu
Y2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKIAotU291cFNlc3Npb24qIEZyYW1lTmV0d29ya2luZ0NvbnRleHRH
dGs6OnNvdXBTZXNzaW9uKCkgY29uc3QKK05ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgRnJhbWVOZXR3
b3JraW5nQ29udGV4dEd0azo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAogewotICAgIHJldHVybiBS
ZXNvdXJjZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsKKyAgICByZXR1cm4gTmV0d29ya1N0b3Jh
Z2VTZXNzaW9uOjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsKIH0KIAogdWludDY0X3QgRnJhbWVO
ZXR3b3JraW5nQ29udGV4dEd0azo6aW5pdGlhdGluZ1BhZ2VJRCgpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdDb250ZXh0
R3RrLmggYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZU5ldHdvcmtpbmdD
b250ZXh0R3RrLmgKaW5kZXggY2FkYTE5YjljOTUyZjRmZDYzMTUwZjg2MDk5YTBlNjZlMDc1YzI2
My4uNjQyZGZiMWI0NDhhYjViM2ExNjJjZDFmZGY3YmI1NzI4MTJlNmVjOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRnJhbWVOZXR3b3JraW5nQ29udGV4dEd0
ay5oCisrKyBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTmV0d29ya2lu
Z0NvbnRleHRHdGsuaApAQCAtMzIsMTAgKzMyLDExIEBAIHB1YmxpYzoKICAgICB9CiAKICAgICBX
ZWJDb3JlOjpGcmFtZSogY29yZUZyYW1lKCkgY29uc3QgeyByZXR1cm4gZnJhbWUoKTsgfQotICAg
IHZpcnR1YWwgU291cFNlc3Npb24qIHNvdXBTZXNzaW9uKCkgY29uc3Q7CiAgICAgdmlydHVhbCB1
aW50NjRfdCBpbml0aWF0aW5nUGFnZUlEKCkgY29uc3Q7CiAKIHByaXZhdGU6CisgICAgdmlydHVh
bCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHN0b3JhZ2VTZXNzaW9uKCkgY29uc3Q7
CisKICAgICBGcmFtZU5ldHdvcmtpbmdDb250ZXh0R3RrKFdlYkNvcmU6OkZyYW1lKiBmcmFtZSkK
ICAgICAgICAgOiBXZWJDb3JlOjpGcmFtZU5ldHdvcmtpbmdDb250ZXh0KGZyYW1lKQogICAgIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291
cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0LmNwcAppbmRl
eCA2ZTdiNTkzYmMyMTgyN2IxZTY1YjdlZmU4YzcyMWMzNTcxNThmYjg1Li5iNDAyOWRjYWYxMTUy
MWIwZmNjNTM0YzRhNDVlZjNmODUzYzg5OGE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9zb3VwL1dl
YkZyYW1lTmV0d29ya2luZ0NvbnRleHQuY3BwCkBAIC0yOCw3ICsyOCw2IEBACiAKICNpbmNsdWRl
ICJXZWJGcmFtZS5oIgogI2luY2x1ZGUgIldlYlBhZ2UuaCIKLSNpbmNsdWRlIDxXZWJDb3JlL1Jl
c291cmNlSGFuZGxlLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCkBAIC00Miw5ICs0
MSw5IEBAIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OldlYkZyYW1lTmV0d29ya2luZ0NvbnRl
eHQoV2ViRnJhbWUqIGZyYW1lKQogICAgICAgICBtX2luaXRpYXRpbmdQYWdlSUQgPSBwYWdlLT5w
YWdlSUQoKTsKIH0KIAotU291cFNlc3Npb24qIFdlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQ6OnNv
dXBTZXNzaW9uKCkgY29uc3QKK05ldHdvcmtTdG9yYWdlU2Vzc2lvbiYgV2ViRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dDo6c3RvcmFnZVNlc3Npb24oKSBjb25zdAogewotICAgIHJldHVybiBSZXNvdXJj
ZUhhbmRsZTo6ZGVmYXVsdFNlc3Npb24oKTsKKyAgICByZXR1cm4gTmV0d29ya1N0b3JhZ2VTZXNz
aW9uOjpkZWZhdWx0U3RvcmFnZVNlc3Npb24oKTsKIH0KIAogdWludDY0X3QgV2ViRnJhbWVOZXR3
b3JraW5nQ29udGV4dDo6aW5pdGlhdGluZ1BhZ2VJRCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L3NvdXAvV2ViRnJhbWVOZXR3b3Jr
aW5nQ29udGV4dC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9z
b3VwL1dlYkZyYW1lTmV0d29ya2luZ0NvbnRleHQuaAppbmRleCBhMDZhNjkyNTIzMmY2ZmE5ZjU5
YmEzMmJkZGVmODRmYzIyNTcwM2IyLi5jYTIyYjJjNDM5Zjk0MzEzNmFjODdiNWI5YTBkYmFiNmQy
M2EwN2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L3NvdXAvV2ViRnJhbWVOZXR3b3JraW5nQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvc291cC9XZWJGcmFtZU5ldHdvcmtpbmdDb250ZXh0
LmgKQEAgLTQ0LDcgKzQ0LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXZWJGcmFtZU5ldHdv
cmtpbmdDb250ZXh0KFdlYkZyYW1lKik7CiAKLSAgICB2aXJ0dWFsIFNvdXBTZXNzaW9uKiBzb3Vw
U2Vzc2lvbigpIGNvbnN0OworICAgIHZpcnR1YWwgV2ViQ29yZTo6TmV0d29ya1N0b3JhZ2VTZXNz
aW9uJiBzdG9yYWdlU2Vzc2lvbigpIGNvbnN0OwogICAgIHZpcnR1YWwgdWludDY0X3QgaW5pdGlh
dGluZ1BhZ2VJRCgpIGNvbnN0OwogCiAgICAgdWludDY0X3QgbV9pbml0aWF0aW5nUGFnZUlEOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>