<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>339082</bug_id>
          
          <creation_ts>2014-09-14 21:55:08 +0000</creation_ts>
          <short_desc>Allow a simpler way to place a photo in full-screen using overlay [patch]</short_desc>
          <delta_ts>2022-01-31 11:02:30 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>digikam</product>
          <component>Usability-Overlay</component>
          <version>4.13.0</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>wishlist</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Luca Carlon">carlon.luca</reporter>
          <assigned_to name="Digikam Developers">digikam-bugs-null</assigned_to>
          <cc>alexander.fieroch</cc>
    
    <cc>caulier.gilles</cc>
    
    <cc>metzpinguin</cc>
    
    <cc>timetre</cc>
    
    <cc>yan</cc>
          
          <cf_commitlink>http://commits.kde.org/digikam/e65663863acf06671adc3e719d6f75ce3fbb4fa9</cf_commitlink>
          <cf_versionfixedin>4.14.0</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1471201</commentid>
    <comment_count>0</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2014-09-14 21:55:08 +0000</bug_when>
    <thetext>While working with digikam I noticed a few times people (including me) simply looking for a quick way to look for a photo (in an album) and then open it in fullscreen. Then simply moving to the next or the previous when ready. Pretty simple.

In the current implementation (3.5.0) I see that it is possible to do this by opening a slideshow from selection (of the target photo), but this won&apos;t allow the user to move to the other photos in the same album.
Or, by opening a slideshow for the entire album, which instead opens the first photo in the album (not the one I selected). Also it then moves automatically. I don&apos;t think this is the same.
Possible &quot;solution&quot; is to modify the settings to start from the current image and to make the delay very large. This does what I think is the simplest usage. But it requires to tweak the settings and a large delay makes the other slideshows not automatic anymore.

Also, when a photo is opened in preview, double click on it does not go to fullscreen. It seems to me a little unnatural.

After consulting on IRC, something different came up: without any modification of the settings, double clicking on a photo in preview mode opens the photo in fullscreen and simply stays there as long as the user wants. Using the arrows then the rest of the album can be browsed. The escape button goes back to preview, and then again to thumbnails.
This kind of behavior does not influence the existing slideshows.

This feels a little more natural to me. Anyone else who agree by any chance?

Reproducible: Always</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471204</commentid>
    <comment_count>1</comment_count>
      <attachid>88703</attachid>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2014-09-14 21:57:43 +0000</bug_when>
    <thetext>Created attachment 88703
Patch that adds a new &quot;fullscreen mode&quot; and binds it the the double click in the preview.

This patch adds the new &quot;fullscreen mode&quot; and also considers it some kind of &quot;manual slideshow&quot;. On IRC this came up to be inappropriate as not to be considered an actual slideshow. So that part may be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1471209</commentid>
    <comment_count>2</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2014-09-14 22:02:40 +0000</bug_when>
    <thetext>I have to say the patch does not completely satisfy me but... you guys may help improving it...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1474627</commentid>
    <comment_count>3</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2014-10-05 09:02:50 +0000</bug_when>
    <thetext>Luca,

With current implementation from git/master, a lots of changes have been done to SlideShow.

You patch cannot be applied and tested. Can you update it and adapt your code to new implementation ?

Thanks in advance

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1475858</commentid>
    <comment_count>4</comment_count>
    <who name="Alexander Fieroch">alexander.fieroch</who>
    <bug_when>2014-10-12 17:30:17 +0000</bug_when>
    <thetext>Luca,

I agree with you. Have a look at

https://bugs.kde.org/show_bug.cgi?id=280133</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1482304</commentid>
    <comment_count>5</comment_count>
      <attachid>89690</attachid>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2014-11-23 01:50:24 +0000</bug_when>
    <thetext>Created attachment 89690
Patch that applies to 81a53fe to implement fullscreen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484631</commentid>
    <comment_count>6</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2014-12-08 23:20:03 +0000</bug_when>
    <thetext>Can someone review this patch before new modifications make it impossible to apply again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1484646</commentid>
    <comment_count>7</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2014-12-09 05:43:05 +0000</bug_when>
    <thetext>Please sync the patch with current implementation from git/master.

Branching code to port to KF5 will be done after 4.6.0 release (https://techbase.kde.org/Projects/Digikam/CodingSprint2014#KDE_Framework_Port)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517464</commentid>
    <comment_count>8</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-05-10 08:05:12 +0000</bug_when>
    <thetext>Luca,

Any change to have this patch updated with last implementation from git/master ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517506</commentid>
    <comment_count>9</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-05-10 09:14:31 +0000</bug_when>
    <thetext>A third implementation of the same feature?! Impossible to apply again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1517508</commentid>
    <comment_count>10</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-05-10 09:18:19 +0000</bug_when>
    <thetext>Luca,

I don&apos;t understand what you mean exactly (:=))... ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1519036</commentid>
    <comment_count>11</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-05-15 21:53:44 +0000</bug_when>
    <thetext>Luca, no response ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537663</commentid>
    <comment_count>12</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-18 09:33:36 +0000</bug_when>
    <thetext>I already wrote this patch two times. Where would you like this applied? git master?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537669</commentid>
    <comment_count>13</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-18 09:52:09 +0000</bug_when>
    <thetext>yes git/master...

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537886</commentid>
    <comment_count>14</comment_count>
      <attachid>94106</attachid>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-19 00:15:36 +0000</bug_when>
    <thetext>Created attachment 94106
Patch that applies to 274d73d.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537887</commentid>
    <comment_count>15</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-19 00:16:17 +0000</bug_when>
    <thetext>Could you please have a look at the new patch? It seems to work as expected for me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1538705</commentid>
    <comment_count>16</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-22 09:49:48 +0000</bug_when>
    <thetext>Any comment on this patch? Should I change something?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539551</commentid>
    <comment_count>17</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2015-08-25 20:08:30 +0000</bug_when>
    <thetext>The idea for a quick full screen mode I like that. Only I would not like to lose the left mouse button click, to return to the icon view. Instead of double click, I would for a overlay button in the preview or an additional entry in the slideshow menu. We&apos;ll see what Gilles says.

Improvements to the patch:

- Slideshow-&gt;With All Sub-Albums is not working (builder-&gt;run() is missing)
- Unused variable delay
- Remove qDebug

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539552</commentid>
    <comment_count>18</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-25 20:17:13 +0000</bug_when>
    <thetext>The ide</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539553</commentid>
    <comment_count>19</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-25 20:18:59 +0000</bug_when>
    <thetext>The idea to use an overlay is fine for me.

This want mean to support this kind of display mode switch over icon view and thumbbar ? If yes, i&apos;m agree...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539587</commentid>
    <comment_count>20</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-25 22:38:58 +0000</bug_when>
    <thetext>Mmh... ok, I can probably do that. But... am I the only one who feels more natural that double click &quot;opens&quot; to fullscreen?
On a desktop computer I typically see that double clicks (or single clicks) &quot;open&quot; the target, while the escape button or whatever else &quot;close&quot; or &quot;go back&quot;. So from the icon view I click and I &quot;open&quot; the image in the preview, when I click (or better double click) the preview I &quot;open&quot; the image to fullscreen... while escape, the button in the toolbar and whatever else &quot;go back&quot; to preview and again to the icon view.
By having a look around i see iPhoto actually does what you proposed, while gwenview does more or less what I said.
So, if you confirm you want an overlay button I can try to modify and fix the patch according to the behaviour you requested.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539623</commentid>
    <comment_count>21</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-26 07:52:20 +0000</bug_when>
    <thetext>overlay button -&gt; yes, confirmed...

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1539989</commentid>
    <comment_count>22</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-27 21:27:53 +0000</bug_when>
    <thetext>Another note : All icon view overlay are optional and can be turned on/of to Setup/Album View tab from Config dialog.

Your new overlay must be configurable.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540435</commentid>
    <comment_count>23</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-30 12:47:20 +0000</bug_when>
    <thetext>Hello,
sorry, I have a doubt about the decision. Maik said &quot;[...] I would for a overlay button in the preview [...]&quot; but then Gilles said &quot;All icon view overlay are optional [...]&quot;. So, where is this overlay button supposed to be placed? In the icon view (which is marked as thumbnails in the toolbar button) or in the preview view (marked as preview image in the toolbar)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540460</commentid>
    <comment_count>24</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-30 15:13:17 +0000</bug_when>
    <thetext>The overlay is over each icon-view item, as for ex the GPS indicator overlay, which can be enable or disable into Album-view setup page.

This has nothing to see with toolbar.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540729</commentid>
    <comment_count>25</comment_count>
      <attachid>94311</attachid>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-08-31 21:15:55 +0000</bug_when>
    <thetext>Created attachment 94311
Result.

Before I go on with the implementation, is this the result you expect? Of course I need a proper icon, maybe I can use the one used in fullscreen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1540730</commentid>
    <comment_count>26</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-08-31 21:19:46 +0000</bug_when>
    <thetext>yes it&apos;s the right way...

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542111</commentid>
    <comment_count>27</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-09-05 23:52:06 +0000</bug_when>
    <thetext>What icon should I use for the overlay?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542139</commentid>
    <comment_count>28</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-09-06 05:40:18 +0000</bug_when>
    <thetext>The same icon that one used with Slideshow button from main toolbar.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542173</commentid>
    <comment_count>29</comment_count>
      <attachid>94425</attachid>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-09-06 11:54:33 +0000</bug_when>
    <thetext>Created attachment 94425
Patch that applies to 19da552.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542174</commentid>
    <comment_count>30</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2015-09-06 12:00:57 +0000</bug_when>
    <thetext>Can someone review this patch? It includes new setup to show/hide the overlay, the overlay itself in icon view, the new &quot;slide show&quot; mode and a similar button in preview.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542175</commentid>
    <comment_count>31</comment_count>
      <attachid>94426</attachid>
    <who name="">caulier.gilles</who>
    <bug_when>2015-09-06 12:49:17 +0000</bug_when>
    <thetext>Created attachment 94426
Full Screen Overlay patch 2

I review patch and fixed some details about overlay icon size which follow thumbnails size, since we have integrated changes from bug #261568.

Maik, please try this patch. If all is fine for you, let&apos;s go to apply it to git/master

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542218</commentid>
    <comment_count>32</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2015-09-06 16:51:52 +0000</bug_when>
    <thetext>I have made still polishes. I find the full screen icon is not suitable for round overlay buttons. The corners of the icon are over. Possibly the &quot;media-playback-start&quot; button?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542232</commentid>
    <comment_count>33</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-09-06 18:39:54 +0000</bug_when>
    <thetext>I faced the same problem when i test the patch.

I don&apos;t find a right icon (rounded) from Oxygen sets... 

And yes, perhaps &quot;media-playback-start&quot; button is fine. As i can see, Gwenview use it with a similar action from menu.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542264</commentid>
    <comment_count>34</comment_count>
      <attachid>94438</attachid>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2015-09-06 20:46:27 +0000</bug_when>
    <thetext>Created attachment 94438
Full Screen Overlay patch 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542266</commentid>
    <comment_count>35</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2015-09-06 20:52:40 +0000</bug_when>
    <thetext>Git commit e65663863acf06671adc3e719d6f75ce3fbb4fa9 by Maik Qualmann.
Committed on 06/09/2015 at 20:47.
Pushed by mqualmann into branch &apos;master&apos;.

apply patch #94438 from Luca Carlon to allow a simpler way to place a photo in full-screen
FIXED-IN: 4.14.0

M  +1    -0    CMakeLists.txt
M  +2    -1    NEWS
M  +17   -0    app/items/digikamimageview.cpp
M  +2    -0    app/items/digikamimageview.h
M  +27   -0    app/items/digikamimageview_p.cpp
M  +3    -0    app/items/digikamimageview_p.h
A  +122  -0    app/items/overlays/imagefsoverlay.cpp     [License: GPL (v2+)]
A  +87   -0    app/items/overlays/imagefsoverlay.h     [License: GPL (v2+)]
M  +2    -0    app/settings/applicationsettings.cpp
M  +3    -0    app/settings/applicationsettings.h
M  +10   -0    app/settings/applicationsettings_iconview.cpp
M  +3    -0    app/settings/applicationsettings_p.cpp
M  +2    -0    app/settings/applicationsettings_p.h
M  +25   -5    app/utils/slideshowbuilder.cpp
M  +12   -0    app/utils/slideshowbuilder.h
M  +33   -2    app/views/digikamview.cpp
M  +2    -0    app/views/digikamview.h
M  +9    -0    app/views/imagepreviewview.cpp
M  +1    -0    app/views/imagepreviewview.h
M  +3    -0    app/views/stackedview.cpp
M  +1    -0    app/views/stackedview.h
M  +10   -1    utilities/setup/setupalbumview.cpp
M  +8    -0    utilities/slideshow/slideshowsettings.h
M  +7    -4    utilities/slideshow/slidetoolbar.cpp

http://commits.kde.org/digikam/e65663863acf06671adc3e719d6f75ce3fbb4fa9</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1542611</commentid>
    <comment_count>36</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-09-08 08:50:28 +0000</bug_when>
    <thetext>Git commit 6d9bf9ffc869424075f108bfad57ca5ed17a0310 by Gilles Caulier.
Committed on 08/09/2015 at 08:49.
Pushed by cgilles into branch &apos;frameworks&apos;.

backport commit #e65663863acf06671adc3e719d6f75ce3fbb4fa9 from git/mùaster to frameworks branch

M  +1    -0    app/CMakeLists.txt
M  +17   -0    app/items/digikamimageview.cpp
M  +2    -0    app/items/digikamimageview.h
M  +27   -0    app/items/digikamimageview_p.cpp
M  +3    -0    app/items/digikamimageview_p.h
A  +125  -0    app/items/overlays/imagefsoverlay.cpp     [License: GPL (v2+)]
A  +85   -0    app/items/overlays/imagefsoverlay.h     [License: GPL (v2+)]
M  +25   -5    app/utils/slideshowbuilder.cpp
M  +18   -2    app/utils/slideshowbuilder.h
M  +34   -3    app/views/digikamview.cpp
M  +2    -0    app/views/digikamview.h
M  +13   -2    app/views/imagepreviewview.cpp
M  +1    -0    app/views/imagepreviewview.h
M  +3    -0    app/views/stackedview.cpp
M  +1    -0    app/views/stackedview.h
M  +2    -0    libs/settings/applicationsettings.cpp
M  +4    -1    libs/settings/applicationsettings.h
M  +10   -0    libs/settings/applicationsettings_iconview.cpp
M  +3    -0    libs/settings/applicationsettings_p.cpp
M  +2    -0    libs/settings/applicationsettings_p.h
M  +10   -1    utilities/setup/setupalbumview.cpp
M  +8    -0    utilities/slideshow/slideshowsettings.h
M  +5    -2    utilities/slideshow/slidetoolbar.cpp

http://commits.kde.org/digikam/6d9bf9ffc869424075f108bfad57ca5ed17a0310</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1543377</commentid>
    <comment_count>37</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2015-09-11 16:54:00 +0000</bug_when>
    <thetext>Git commit d17b3cfa756af28278d61ba9756aed418ec57b38 by Maik Qualmann.
Committed on 11/09/2015 at 16:52.
Pushed by mqualmann into branch &apos;master&apos;.

implements full-screen slideshow from the current image in the Light Table preview

M  +6    -0    utilities/lighttable/lighttableview.cpp
M  +3    -0    utilities/lighttable/lighttableview.h
M  +52   -56   utilities/lighttable/lighttablewindow.cpp
M  +7    -3    utilities/lighttable/lighttablewindow.h
M  +0    -2    utilities/lighttable/lighttablewindow_p.h

http://commits.kde.org/digikam/d17b3cfa756af28278d61ba9756aed418ec57b38</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1544156</commentid>
    <comment_count>38</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2015-09-15 10:50:46 +0000</bug_when>
    <thetext>Git commit 3b5960fbd54723aee595f8abe437957c91001dd3 by Gilles Caulier.
Committed on 15/09/2015 at 10:49.
Pushed by cgilles into branch &apos;frameworks&apos;.

backport commit #d17b3cfa756af28278d61ba9756aed418ec57b38 from git/master to frameworks branch

M  +8    -1    utilities/lighttable/lighttableview.cpp
M  +3    -0    utilities/lighttable/lighttableview.h
M  +52   -56   utilities/lighttable/lighttablewindow.cpp
M  +7    -3    utilities/lighttable/lighttablewindow.h
M  +0    -2    utilities/lighttable/lighttablewindow_p.h

http://commits.kde.org/digikam/3b5960fbd54723aee595f8abe437957c91001dd3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1588182</commentid>
    <comment_count>39</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2016-04-13 06:39:31 +0000</bug_when>
    <thetext>*** Bug 361689 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592733</commentid>
    <comment_count>40</comment_count>
    <who name="">yan</who>
    <bug_when>2016-05-05 08:09:03 +0000</bug_when>
    <thetext>Is there a way to have that effect (full screen overlay) when double clicking on an image (instead of clicking on the icon)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1592734</commentid>
    <comment_count>41</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2016-05-05 08:12:59 +0000</bug_when>
    <thetext>No. The icon is dedicated for FS mode.

Double click on thumbnail open Editor or preview mode. The user can see the main interface visible in opposite of FS mode.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695081</commentid>
    <comment_count>42</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2017-08-17 11:18:05 +0000</bug_when>
    <thetext>It seems to me the current behaviour is once again that fullscreen button starts a slideshow instead of simply showing the photo. Is this intended? I personally think showing the image in fullscreen should be totally different from showing a slideshow. Those are totally different actions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695497</commentid>
    <comment_count>43</comment_count>
    <who name="">yan</who>
    <bug_when>2017-08-19 16:24:28 +0000</bug_when>
    <thetext>I totally agree with Luca Carlon. Since one of the last updates a slide show is started automatically, which is something different. It&apos;s actually quite annoying to always have to set it to pause. It would be nice to at least have a konfiguration option to decide whether a slide show should be started or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695503</commentid>
    <comment_count>44</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2017-08-19 17:00:00 +0000</bug_when>
    <thetext>In any case however, opening an image to fullscreen should be a simple and immediate action, it cannot require to click on a small button, then going down and clicking on another small button within a few seconds.

I propose again this concept: my personal opinion is that double clicking the image in preview should open the image to fullscreen. This is what most environments have been doing for years: double clicking &quot;opens&quot; something. Esc button &quot;closes&quot; something. My opinion is that it would feel more natural: double clicking from thumbnail opens the image in preview, double clicking shows fullscreen from preview, ESC goes back to preview, ESC again goes back to thumbnails. Slideshow can remain an overlay button.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695762</commentid>
    <comment_count>45</comment_count>
    <who name="Alexander Fieroch">alexander.fieroch</who>
    <bug_when>2017-08-21 05:47:48 +0000</bug_when>
    <thetext>I totally agree with Luca Carlon. Digikam needs a simple and immediate action to open images in fullscreen (no slideshow!). His concept using a double click and ESC is simple and easy and it is used in many other media players/viewers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696069</commentid>
    <comment_count>46</comment_count>
    <who name="Christoph Feck">cfeck</who>
    <bug_when>2017-08-22 11:19:54 +0000</bug_when>
    <thetext>If this is a regression, I suggest to report it separately.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696070</commentid>
    <comment_count>47</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2017-08-22 11:22:07 +0000</bug_when>
    <thetext>It&apos;s not a regression. It have been always implemented like this since a while...

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698929</commentid>
    <comment_count>48</comment_count>
    <who name="">yan</who>
    <bug_when>2017-09-04 18:39:26 +0000</bug_when>
    <thetext>What is described in comment #44 seems fine, but please please please maintain a way to easily get from thumbnail to full screen. It&apos;s what I use all the time and having to go to preview first and from there to full screen and the same way back would be a pain.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698930</commentid>
    <comment_count>49</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2017-09-04 18:50:29 +0000</bug_when>
    <thetext>Where is the problem. Here where in digiKAm you can switch in Full Screen by a keyboard shortcut : SHIFT+CTRL+F.

Same shortcut to go out from full screen.

This will work in previe mode or in thumbnail mode, or in map mode or in table view mode... etc. Bref, it&apos;s universal. We don&apos;t need to bloat the icn view with more overlay. Please let&apos;s the thumbnail visible : the photo contents is more important than a way to change the GUI.

Learn the shortcuts, and you will see that digiKam has already a lots of features for you. That all...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698934</commentid>
    <comment_count>50</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2017-09-04 19:14:01 +0000</bug_when>
    <thetext>I think he means a full screen mode only for the image. And yes, I am the solution with the slideshow also not happy. I plan to implement a full screen mode to replace slideshow as full screen view.

- no overlays over the image view
- scroll wheel of the mouse changes the images
- for 1:1 viewing or zooming, remember the last position to compare the images by scrolling before and back.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1698947</commentid>
    <comment_count>51</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2017-09-04 19:50:40 +0000</bug_when>
    <thetext>Maik, my original patch was doing this. It might be lost on the way. Except I left the overlays on the bottom and the was no zoom I think. The rest was more or less like this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719051</commentid>
    <comment_count>52</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2017-12-30 11:25:35 +0000</bug_when>
    <thetext>More than 3 years later, again no way to simply put the image to fullscreen without having a complete slideshow right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1719057</commentid>
    <comment_count>53</comment_count>
    <who name="Luca Carlon">carlon.luca</who>
    <bug_when>2017-12-30 12:04:45 +0000</bug_when>
    <thetext>This is marked as resolved, shouldn&apos;t it be opened again?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88703</attachid>
            <date>2014-09-14 21:57:43 +0000</date>
            <delta_ts>2014-11-23 01:50:24 +0000</delta_ts>
            <desc>Patch that adds a new &quot;fullscreen mode&quot; and binds it the the double click in the preview.</desc>
            <filename>fullscreen.patch</filename>
            <type>text/plain</type>
            <size>9238</size>
            <attacher name="Luca Carlon">carlon.luca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2FwcC9tYWluL2RpZ2lrYW1hcHAuY3BwIGIvYXBwL21haW4vZGlnaWthbWFw
cC5jcHAKaW5kZXggM2Q0YjU2OC4uNzI0YzczNiAxMDA2NDQKLS0tIGEvYXBwL21haW4vZGlnaWth
bWFwcC5jcHAKKysrIGIvYXBwL21haW4vZGlnaWthbWFwcC5jcHAKQEAgLTEyOTAsNiArMTI5MCwx
MiBAQCB2b2lkIERpZ2lrYW1BcHA6OnNldHVwQWN0aW9ucygpCiAgICAgYWN0aW9uQ29sbGVjdGlv
bigpLT5hZGRBY3Rpb24oInNsaWRlc2hvd19xbWwiLCBkLT5zbGlkZVNob3dRbWxBY3Rpb24pOwog
ICAgIGQtPnNsaWRlU2hvd0FjdGlvbi0+YWRkQWN0aW9uKGQtPnNsaWRlU2hvd1FtbEFjdGlvbik7
CiAjZW5kaWYgLy8gVVNFX1BSRVNFTlRBVElPTl9NT0RFCisgICAgCisgICAgZC0+c2xpZGVTaG93
TWFudWFsRnJvbUN1cnJlbnRBY3Rpb24gPSBuZXcgS0FjdGlvbihpMThuKCJNYW51YWwgZnJvbSBD
dXJyZW50IiksIHRoaXMpOworICAgIGNvbm5lY3QoZC0+c2xpZGVTaG93TWFudWFsRnJvbUN1cnJl
bnRBY3Rpb24sIFNJR05BTCh0cmlnZ2VyZWQoKSksCisgICAgICAgICAgICBkLT52aWV3LCBTTE9U
KHNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpKSk7CisgICAgYWN0aW9uQ29sbGVjdGlv
bigpLT5hZGRBY3Rpb24oInNsaWRlc2hvd19tYW51YWxfZnJvbV9jdXJyZW50IiwgZC0+c2xpZGVT
aG93TWFudWFsRnJvbUN1cnJlbnRBY3Rpb24pOworICAgIGQtPnNsaWRlU2hvd0FjdGlvbi0+YWRk
QWN0aW9uKGQtPnNsaWRlU2hvd01hbnVhbEZyb21DdXJyZW50QWN0aW9uKTsKIAogICAgIC8vIC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
CiAKZGlmZiAtLWdpdCBhL2FwcC9tYWluL2RpZ2lrYW1hcHBfcC5oIGIvYXBwL21haW4vZGlnaWth
bWFwcF9wLmgKaW5kZXggYzA4MjBlMy4uMzg5YTg4ZiAxMDA2NDQKLS0tIGEvYXBwL21haW4vZGln
aWthbWFwcF9wLmgKKysrIGIvYXBwL21haW4vZGlnaWthbWFwcF9wLmgKQEAgLTI5Nyw2ICsyOTcs
NyBAQCBwdWJsaWM6CiAgICAgS0FjdGlvbiogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2xp
ZGVTaG93QWxsQWN0aW9uOwogICAgIEtBY3Rpb24qICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNsaWRlU2hvd1NlbGVjdGlvbkFjdGlvbjsKICAgICBLQWN0aW9uKiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBzbGlkZVNob3dSZWN1cnNpdmVBY3Rpb247CisgICAgS0FjdGlvbiogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2xpZGVTaG93TWFudWFsRnJvbUN1cnJlbnRBY3Rpb247CiAg
ICAgS0FjdGlvbiogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnFtQWN0aW9uOwogICAgIEtB
Y3Rpb24qICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW50ZW5hbmNlQWN0aW9uOwogICAg
IEtBY3Rpb24qICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNsaWRlU2hvd1FtbEFjdGlvbjsK
ZGlmZiAtLWdpdCBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmNwcCBiL2FwcC91dGlscy9z
bGlkZXNob3didWlsZGVyLmNwcAppbmRleCBjMjEwMTg1Li40NWYzODRiIDEwMDY0NAotLS0gYS9h
cHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5jcHAKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuY3BwCkBAIC00OCwxMyArNDgsMTkgQEAgcHVibGljOgogCiAgICAgUHJpdmF0ZSgpIDoK
ICAgICAgICAgY2FuY2VsKGZhbHNlKSwKLSAgICAgICAgYWxidW0oMCkKKyAgICAgICAgYWxidW0o
MCksCisgICAgICAgIG92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudChmYWxzZSksCisgICAgICAgIG92
ZXJyaWRlRGVsYXkoZmFsc2UpCiAgICAgewogICAgIH0KIAogICAgIGJvb2wgICAgICAgICAgY2Fu
Y2VsOwogICAgIEltYWdlSW5mb0xpc3QgaW5mb0xpc3Q7CiAgICAgQWxidW0qICAgICAgICBhbGJ1
bTsKKyAgICBib29sICAgICAgICAgIG92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudDsKKyAgICBib29s
ICAgICAgICAgIHN0YXJ0RnJvbUN1cnJlbnQ7CisgICAgYm9vbCAgICAgICAgICBvdmVycmlkZURl
bGF5OworICAgIGludCAgICAgICAgICAgZGVsYXk7CiB9OwogICAgIAogU2xpZGVTaG93QnVpbGRl
cjo6U2xpZGVTaG93QnVpbGRlcihjb25zdCBJbWFnZUluZm9MaXN0JiBpbmZvTGlzdCkKQEAgLTY0
LDggKzcwLDYgQEAgU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihjb25zdCBJbWFn
ZUluZm9MaXN0JiBpbmZvTGlzdCkKICAgICBkLT5pbmZvTGlzdCA9IGluZm9MaXN0OwogCiAgICAg
UHJvZ3Jlc3NNYW5hZ2VyOjphZGRQcm9ncmVzc0l0ZW0odGhpcyk7Ci0KLSAgICBRVGltZXI6OnNp
bmdsZVNob3QoNTAwLCB0aGlzLCBTTE9UKHNsb3RSdW4oKSkpOwogfQogCiBTbGlkZVNob3dCdWls
ZGVyOjpTbGlkZVNob3dCdWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSkKQEAgLTc1LDggKzc5LDYg
QEAgU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29uc3QgYWxidW0p
CiAgICAgZC0+YWxidW0gPSBhbGJ1bTsKIAogICAgIFByb2dyZXNzTWFuYWdlcjo6YWRkUHJvZ3Jl
c3NJdGVtKHRoaXMpOwotCi0gICAgUVRpbWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xPVChz
bG90UnVuKCkpKTsKIH0KIAogU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIoKQpA
QCAtODQsNiArODYsMjMgQEAgU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIoKQog
ICAgIGRlbGV0ZSBkOwogfQogCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldE92ZXJyaWRlU3Rh
cnRGcm9tQ3VycmVudChib29sIHN0YXJ0RnJvbUN1cnJlbnQpCit7CisgICAgZC0+b3ZlcnJpZGVT
dGFydEZyb21DdXJyZW50ID0gdHJ1ZTsKKyAgICBkLT5zdGFydEZyb21DdXJyZW50ID0gc3RhcnRG
cm9tQ3VycmVudDsKK30KKwordm9pZCBTbGlkZVNob3dCdWlsZGVyOjpzZXRPdmVycmlkZURlbGF5
KGludCBkZWxheSkKK3sKKyAgICBkLT5vdmVycmlkZURlbGF5ID0gdHJ1ZTsKKyAgICBkLT5kZWxh
eSA9IGRlbGF5OworfQorCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnJ1bigpCit7CisgICAgUVRp
bWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xPVChzbG90UnVuKCkpKTsKK30KKwogdm9pZCBT
bGlkZVNob3dCdWlsZGVyOjpzbG90UnVuKCkKIHsKICAgICBjb25uZWN0KHRoaXMsIFNJR05BTChw
cm9ncmVzc0l0ZW1DYW5jZWxlZChQcm9ncmVzc0l0ZW0qKSksCkBAIC0xMjUsNiArMTQ0LDE1IEBA
IHZvaWQgU2xpZGVTaG93QnVpbGRlcjo6c2xvdFBhcnNlSW1hZ2VJbmZvTGlzdChjb25zdCBJbWFn
ZUluZm9MaXN0JiBsaXN0KQogICAgIFNsaWRlU2hvd1NldHRpbmdzIHNldHRpbmdzOwogICAgIHNl
dHRpbmdzLnJlYWRGcm9tQ29uZmlnKCk7CiAgICAgc2V0dGluZ3MudXNlRnVsbFNpemVQcmV2aWV3
cyA9IEFwcGxpY2F0aW9uU2V0dGluZ3M6Omluc3RhbmNlKCktPmdldFByZXZpZXdMb2FkRnVsbElt
YWdlU2l6ZSgpOworICAgIGlmIChkLT5vdmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQpCisgICAgewor
ICAgICAgICBzZXR0aW5ncy5zdGFydFdpdGhDdXJyZW50ID0gZC0+c3RhcnRGcm9tQ3VycmVudDsK
KyAgICB9CisgICAgCisgICAgaWYgKGQtPm92ZXJyaWRlRGVsYXkpCisgICAgeworICAgICAgICBz
ZXR0aW5ncy5kZWxheSA9IGQtPmRlbGF5OworICAgIH0KIAogICAgIGZvciAoSW1hZ2VJbmZvTGlz
dDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBsaXN0LmNvbnN0QmVnaW4oKTsKICAgICAgICAgICFkLT5j
YW5jZWwgJiYgKGl0ICE9IGxpc3QuY29uc3RFbmQoKSkgOyArK2l0KQpkaWZmIC0tZ2l0IGEvYXBw
L3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuaCBiL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmgK
aW5kZXggNGNjMzQ2OC4uM2FkNGYwZiAxMDA2NDQKLS0tIGEvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuaAorKysgYi9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5oCkBAIC00OSw2ICs0OSwx
MSBAQCBwdWJsaWM6CiAgICAgLyoqIENvbnRydWN0b3IgdG8gd29yayBvbiByZWN1cnNpdmUgbW9k
ZSBmcm9tIGFsYnVtICovCiAgICAgZXhwbGljaXQgU2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29u
c3QgYWxidW0pOwogICAgIH5TbGlkZVNob3dCdWlsZGVyKCk7CisgICAgCisgICAgdm9pZCBzZXRP
dmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQoYm9vbCBzdGFydEZyb21DdXJyZW50KTsKKyAgICB2b2lk
IHNldE92ZXJyaWRlRGVsYXkoaW50IGRlbGF5KTsKKyAgICAKKyAgICB2b2lkIHJ1bigpOwogCiBR
X1NJR05BTFM6CiAKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAgYi9hcHAv
dmlld3MvZGlnaWthbXZpZXcuY3BwCmluZGV4IDgwYjliZjcuLjE4ZjlhYmEgMTAwNjQ0Ci0tLSBh
L2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmNw
cApAQCAtNTc1LDYgKzU3NSw5IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNldHVwQ29ubmVjdGlvbnMo
KQogICAgIGNvbm5lY3QoZC0+c3RhY2tlZHZpZXcsIFNJR05BTChzaWduYWxTbGlkZVNob3coKSks
CiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dBbGwoKSkpOwogCisgICAgY29u
bmVjdChkLT5zdGFja2VkdmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSksCisg
ICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpKSk7
CisKICAgICBjb25uZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsWm9vbUZhY3RvckNo
YW5nZWQoZG91YmxlKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3Rab29tRmFjdG9yQ2hh
bmdlZChkb3VibGUpKSk7CiAKQEAgLTIwNDEsMTUgKzIwNDQsMzEgQEAgdm9pZCBEaWdpa2FtVmll
dzo6c2xvdFNsaWRlU2hvd1JlY3Vyc2l2ZSgpCiAKICAgICAgICAgY29ubmVjdChidWlsZGVyLCBT
SUdOQUwoc2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKICAgICAgICAgICAgICAg
ICB0aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dCdWlsZGVyQ29tcGxldGUoU2xpZGVTaG93U2V0dGlu
Z3MpKSk7CisgICAgICAgIAorICAgICAgICBidWlsZGVyLT5ydW4oKTsKICAgICB9CiB9CiAKK3Zv
aWQgRGlnaWthbVZpZXc6OnNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpCit7CisgICAg
U2xpZGVTaG93QnVpbGRlciogY29uc3QgYnVpbGRlciA9IG5ldyBTbGlkZVNob3dCdWlsZGVyKGFs
bEluZm8oKSk7CisgICAgYnVpbGRlci0+c2V0T3ZlcnJpZGVTdGFydEZyb21DdXJyZW50KHRydWUp
OworICAgIGJ1aWxkZXItPnNldE92ZXJyaWRlRGVsYXkoLTEpOworCisgICAgY29ubmVjdChidWls
ZGVyLCBTSUdOQUwoc2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKKyAgICAgICAg
ICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShTbGlkZVNob3dTZXR0
aW5ncykpKTsKKyAgICAKKyAgICBidWlsZGVyLT5ydW4oKTsKK30KKwogdm9pZCBEaWdpa2FtVmll
dzo6c2xpZGVTaG93KGNvbnN0IEltYWdlSW5mb0xpc3QmIGluZm9MaXN0KQogewogICAgIFNsaWRl
U2hvd0J1aWxkZXIqIGNvbnN0IGJ1aWxkZXIgPSBuZXcgU2xpZGVTaG93QnVpbGRlcihpbmZvTGlz
dCk7CiAKICAgICBjb25uZWN0KGJ1aWxkZXIsIFNJR05BTChzaWduYWxDb21wbGV0ZShTbGlkZVNo
b3dTZXR0aW5ncykpLAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93QnVpbGRl
ckNvbXBsZXRlKFNsaWRlU2hvd1NldHRpbmdzKSkpOworICAgIAorICAgIGJ1aWxkZXItPnJ1bigp
OwogfQogCiB2b2lkIERpZ2lrYW1WaWV3OjpzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKGNv
bnN0IFNsaWRlU2hvd1NldHRpbmdzJiBzZXR0aW5ncykKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9k
aWdpa2Ftdmlldy5oIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKaW5kZXggMWU3MDZlMy4uNDJk
YThhZiAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKKysrIGIvYXBwL3ZpZXdz
L2RpZ2lrYW12aWV3LmgKQEAgLTE0MSw2ICsxNDEsNyBAQCBwdWJsaWMgUV9TTE9UUzoKICAgICB2
b2lkIHNsb3RTbGlkZVNob3dBbGwoKTsKICAgICB2b2lkIHNsb3RTbGlkZVNob3dTZWxlY3Rpb24o
KTsKICAgICB2b2lkIHNsb3RTbGlkZVNob3dSZWN1cnNpdmUoKTsKKyAgICB2b2lkIHNsb3RTbGlk
ZVNob3dNYW51YWxGcm9tQ3VycmVudCgpOwogCiAgICAgLy8gQWxidW0gYWN0aW9uIHNsb3RzCiAg
ICAgdm9pZCBzbG90UmVmcmVzaCgpOwpkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2ltYWdlcHJldmll
d3ZpZXcuY3BwIGIvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwCmluZGV4IDQ4NDI4ZDgu
LjViMjBlZDUgMTAwNjQ0Ci0tLSBhL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcAorKysg
Yi9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5jcHAKQEAgLTIwOCw3ICsyMDgsNyBAQCBJbWFn
ZVByZXZpZXdWaWV3OjpJbWFnZVByZXZpZXdWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCwgTW9k
ZSBtb2RlKQogICAgICAgICAgICAgdGhpcywgU0lHTkFMKHNpZ25hbFByZXZJdGVtKCkpKTsKIAog
ICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKGxlZnRCdXR0b25Eb3VibGVDbGlja2VkKCkpLAotICAg
ICAgICAgICAgdGhpcywgU0lHTkFMKHNpZ25hbEVzY2FwZVByZXZpZXcoKSkpOworICAgICAgICAg
ICAgdGhpcywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSkpOwogCiAgICAgY29ubmVj
dChUaGVtZU1hbmFnZXI6Omluc3RhbmNlKCksIFNJR05BTChzaWduYWxUaGVtZUNoYW5nZWQoKSks
CiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RUaGVtZUNoYW5nZWQoKSkpOwpkaWZmIC0tZ2l0
IGEvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuaCBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2
aWV3LmgKaW5kZXggZmE0MzdhMy4uZTI1ZjRjYiAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2ltYWdl
cHJldmlld3ZpZXcuaAorKysgYi9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oCkBAIC03Nyw2
ICs3Nyw3IEBAIFFfU0lHTkFMUzoKICAgICB2b2lkIHNpZ25hbFByZXZpZXdMb2FkZWQoYm9vbCBz
dWNjZXNzKTsKICAgICB2b2lkIHNpZ25hbEVzY2FwZVByZXZpZXcoKTsKICAgICB2b2lkIHNpZ25h
bFNsaWRlU2hvdygpOworICAgIHZvaWQgc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpOwogICAgIHZv
aWQgc2lnbmFsSW5zZXJ0MkxpZ2h0VGFibGUoKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJRdWV1
ZU1ncigpOwogICAgIHZvaWQgc2lnbmFsRmluZFNpbWlsYXIoKTsKZGlmZiAtLWdpdCBhL2FwcC92
aWV3cy9zdGFja2Vkdmlldy5jcHAgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCmluZGV4IGE1
YmEyYzIuLmU3NWNmNjcgMTAwNjQ0Ci0tLSBhL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAKKysr
IGIvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmNwcApAQCAtMTY5LDYgKzE2OSw5IEBAIFN0YWNrZWRW
aWV3OjpTdGFja2VkVmlldyhRV2lkZ2V0KiBwYXJlbnQpCiAgICAgY29ubmVjdChkLT5pbWFnZVBy
ZXZpZXdWaWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93KCkpLAogICAgICAgICAgICAgdGhpcywg
U0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSk7CiAKKyAgICBjb25uZWN0KGQtPmltYWdlUHJldmll
d1ZpZXcsIFNJR05BTChzaWduYWxTbGlkZVNob3dDdXJyZW50KCkpLAorICAgICAgICAgICAgdGhp
cywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSkpOworCiAgICAgY29ubmVjdChkLT5p
bWFnZVByZXZpZXdWaWV3LT5sYXlvdXQoKSwgU0lHTkFMKHpvb21GYWN0b3JDaGFuZ2VkKGRvdWJs
ZSkpLAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90Wm9vbUZhY3RvckNoYW5nZWQoZG91Ymxl
KSkpOwogCmRpZmYgLS1naXQgYS9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuaCBiL2FwcC92aWV3cy9z
dGFja2Vkdmlldy5oCmluZGV4IGFlNmY0MDAuLjNhYjQyZWIgMTAwNjQ0Ci0tLSBhL2FwcC92aWV3
cy9zdGFja2Vkdmlldy5oCisrKyBiL2FwcC92aWV3cy9zdGFja2Vkdmlldy5oCkBAIC0xMjcsNiAr
MTI3LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFsVmlld01vZGVDaGFuZ2VkKCk7CiAg
ICAgdm9pZCBzaWduYWxFc2NhcGVQcmV2aWV3KCk7CiAgICAgdm9pZCBzaWduYWxTbGlkZVNob3co
KTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKTsKICAgICB2b2lkIHNpZ25hbFpv
b21GYWN0b3JDaGFuZ2VkKGRvdWJsZSk7CiAgICAgdm9pZCBzaWduYWxJbnNlcnQyTGlnaHRUYWJs
ZSgpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MlF1ZXVlTWdyKCk7CmRpZmYgLS1naXQgYS91dGls
aXRpZXMvc2xpZGVzaG93L3NsaWRlc2hvdy5jcHAgYi91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRl
c2hvdy5jcHAKaW5kZXggOTdmMTk3Mi4uODM4OGEyMSAxMDA2NDQKLS0tIGEvdXRpbGl0aWVzL3Ns
aWRlc2hvdy9zbGlkZXNob3cuY3BwCisrKyBiL3V0aWxpdGllcy9zbGlkZXNob3cvc2xpZGVzaG93
LmNwcApAQCAtMzY2LDggKzM2NiwxMCBAQCB2b2lkIFNsaWRlU2hvdzo6c2xvdEdvdEltYWdlUHJl
dmlldyhjb25zdCBMb2FkaW5nRGVzY3JpcHRpb24mIGRlc2MsIGNvbnN0IERJbWcmCiAgICAgewog
ICAgICAgICBpZiAoIWQtPnBhdXNlKQogICAgICAgICB7Ci0gICAgICAgICAgICBkLT50aW1lci0+
c2V0U2luZ2xlU2hvdCh0cnVlKTsKLSAgICAgICAgICAgIGQtPnRpbWVyLT5zdGFydChkLT5zZXR0
aW5ncy5kZWxheSAqIDEwMDApOworICAgICAgICAgICAgaWYgKGQtPnNldHRpbmdzLmRlbGF5ID49
IDApIHsKKyAgICAgICAgICAgICAgICBkLT50aW1lci0+c2V0U2luZ2xlU2hvdCh0cnVlKTsKKyAg
ICAgICAgICAgICAgICBkLT50aW1lci0+c3RhcnQoZC0+c2V0dGluZ3MuZGVsYXkgKiAxMDAwKTsK
KyAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIHByZWxvYWROZXh0SW1hZ2UoKTsK
QEAgLTc4Nyw3ICs3ODksMTAgQEAgdm9pZCBTbGlkZVNob3c6OnNsb3RQYXVzZSgpCiAKIHZvaWQg
U2xpZGVTaG93OjpzbG90UGxheSgpCiB7Ci0gICAgZC0+dGltZXItPnN0YXJ0KCk7CisgICAgaWYg
KGQtPnNldHRpbmdzLmRlbGF5ID49IDApCisgICAgeworICAgICAgICBkLT50aW1lci0+c3RhcnQo
KTsKKyAgICB9CiAgICAgZC0+dG9vbEJhci0+aGlkZSgpOwogICAgIGQtPnBhdXNlID0gZmFsc2U7
CiB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>89690</attachid>
            <date>2014-11-23 01:50:24 +0000</date>
            <delta_ts>2015-08-19 00:15:36 +0000</delta_ts>
            <desc>Patch that applies to 81a53fe to implement fullscreen.</desc>
            <filename>fullscreen.patch</filename>
            <type>text/plain</type>
            <size>9422</size>
            <attacher name="Luca Carlon">carlon.luca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmNwcCBiL2FwcC91dGlscy9z
bGlkZXNob3didWlsZGVyLmNwcAppbmRleCA2YWUxMDBlLi5kZjJjYmM3IDEwMDY0NAotLS0gYS9h
cHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5jcHAKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuY3BwCkBAIC00OSwxMyArNDksMTkgQEAgcHVibGljOgogCiAgICAgUHJpdmF0ZSgpIDoK
ICAgICAgICAgY2FuY2VsKGZhbHNlKSwKLSAgICAgICAgYWxidW0oMCkKKyAgICAgICAgYWxidW0o
MCksCisgICAgICAgIG92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudChmYWxzZSksCisgICAgICAgIGF1
dG9QbGF5RW5hYmxlZCh0cnVlKQogICAgIHsKICAgICB9CiAKICAgICBib29sICAgICAgICAgIGNh
bmNlbDsKICAgICBJbWFnZUluZm9MaXN0IGluZm9MaXN0OwogICAgIEFsYnVtKiAgICAgICAgYWxi
dW07CisgICAgYm9vbCAgICAgICAgICBvdmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQ7CisgICAgYm9v
bCAgICAgICAgICBzdGFydEZyb21DdXJyZW50OworICAgIGJvb2wgICAgICAgICAgYXV0b1BsYXlF
bmFibGVkOworICAgIGludCAgICAgICAgICAgZGVsYXk7CiB9OwogCiBTbGlkZVNob3dCdWlsZGVy
OjpTbGlkZVNob3dCdWlsZGVyKGNvbnN0IEltYWdlSW5mb0xpc3QmIGluZm9MaXN0KQpAQCAtNjUs
OCArNzEsNiBAQCBTbGlkZVNob3dCdWlsZGVyOjpTbGlkZVNob3dCdWlsZGVyKGNvbnN0IEltYWdl
SW5mb0xpc3QmIGluZm9MaXN0KQogICAgIGQtPmluZm9MaXN0ID0gaW5mb0xpc3Q7CiAKICAgICBQ
cm9ncmVzc01hbmFnZXI6OmFkZFByb2dyZXNzSXRlbSh0aGlzKTsKLQotICAgIFFUaW1lcjo6c2lu
Z2xlU2hvdCg1MDAsIHRoaXMsIFNMT1Qoc2xvdFJ1bigpKSk7CiB9CiAKIFNsaWRlU2hvd0J1aWxk
ZXI6OlNsaWRlU2hvd0J1aWxkZXIoQWxidW0qIGNvbnN0IGFsYnVtKQpAQCAtNzYsOCArODAsNiBA
QCBTbGlkZVNob3dCdWlsZGVyOjpTbGlkZVNob3dCdWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSkK
ICAgICBkLT5hbGJ1bSA9IGFsYnVtOwogCiAgICAgUHJvZ3Jlc3NNYW5hZ2VyOjphZGRQcm9ncmVz
c0l0ZW0odGhpcyk7Ci0KLSAgICBRVGltZXI6OnNpbmdsZVNob3QoNTAwLCB0aGlzLCBTTE9UKHNs
b3RSdW4oKSkpOwogfQogCiBTbGlkZVNob3dCdWlsZGVyOjp+U2xpZGVTaG93QnVpbGRlcigpCkBA
IC04NSw2ICs4NywyMiBAQCBTbGlkZVNob3dCdWlsZGVyOjp+U2xpZGVTaG93QnVpbGRlcigpCiAg
ICAgZGVsZXRlIGQ7CiB9CiAKK3ZvaWQgU2xpZGVTaG93QnVpbGRlcjo6c2V0T3ZlcnJpZGVTdGFy
dEZyb21DdXJyZW50KGJvb2wgc3RhcnRGcm9tQ3VycmVudCkKK3sKKyAgICBkLT5vdmVycmlkZVN0
YXJ0RnJvbUN1cnJlbnQgPSB0cnVlOworICAgIGQtPnN0YXJ0RnJvbUN1cnJlbnQgPSBzdGFydEZy
b21DdXJyZW50OworfQorCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldEF1dG9QbGF5RW5hYmxl
ZChib29sIGVuYWJsZSkKK3sKKyAgICBkLT5hdXRvUGxheUVuYWJsZWQgPSBlbmFibGU7Cit9CisK
K3ZvaWQgU2xpZGVTaG93QnVpbGRlcjo6cnVuKCkKK3sKKyAgICBRVGltZXI6OnNpbmdsZVNob3Qo
NTAwLCB0aGlzLCBTTE9UKHNsb3RSdW4oKSkpOworfQorCiB2b2lkIFNsaWRlU2hvd0J1aWxkZXI6
OnNsb3RSdW4oKQogewogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKHByb2dyZXNzSXRlbUNhbmNl
bGVkKFByb2dyZXNzSXRlbSopKSwKQEAgLTEyNiw2ICsxNDQsOSBAQCB2b2lkIFNsaWRlU2hvd0J1
aWxkZXI6OnNsb3RQYXJzZUltYWdlSW5mb0xpc3QoY29uc3QgSW1hZ2VJbmZvTGlzdCYgbGlzdCkK
ICAgICBTbGlkZVNob3dTZXR0aW5ncyBzZXR0aW5nczsKICAgICBzZXR0aW5ncy5yZWFkRnJvbUNv
bmZpZygpOwogICAgIHNldHRpbmdzLnVzZUZ1bGxTaXplUHJldmlld3MgPSBBcHBsaWNhdGlvblNl
dHRpbmdzOjppbnN0YW5jZSgpLT5nZXRQcmV2aWV3TG9hZEZ1bGxJbWFnZVNpemUoKTsKKyAgICBp
ZiAoZC0+b3ZlcnJpZGVTdGFydEZyb21DdXJyZW50KQorICAgICAgICBzZXR0aW5ncy5zdGFydFdp
dGhDdXJyZW50ID0gZC0+c3RhcnRGcm9tQ3VycmVudDsKKyAgICBzZXR0aW5ncy5hdXRvUGxheUVu
YWJsZWQgPSBkLT5hdXRvUGxheUVuYWJsZWQ7CiAKICAgICBmb3IgKEltYWdlSW5mb0xpc3Q6OmNv
bnN0X2l0ZXJhdG9yIGl0ID0gbGlzdC5jb25zdEJlZ2luKCk7CiAgICAgICAgICAhZC0+Y2FuY2Vs
ICYmIChpdCAhPSBsaXN0LmNvbnN0RW5kKCkpIDsgKytpdCkKZGlmZiAtLWdpdCBhL2FwcC91dGls
cy9zbGlkZXNob3didWlsZGVyLmggYi9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5oCmluZGV4
IDRjYzM0NjguLmU4ZGZhODEgMTAwNjQ0Ci0tLSBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVy
LmgKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuaApAQCAtNDksNiArNDksMTAgQEAg
cHVibGljOgogICAgIC8qKiBDb250cnVjdG9yIHRvIHdvcmsgb24gcmVjdXJzaXZlIG1vZGUgZnJv
bSBhbGJ1bSAqLwogICAgIGV4cGxpY2l0IFNsaWRlU2hvd0J1aWxkZXIoQWxidW0qIGNvbnN0IGFs
YnVtKTsKICAgICB+U2xpZGVTaG93QnVpbGRlcigpOworICAgIAorICAgIHZvaWQgc2V0T3ZlcnJp
ZGVTdGFydEZyb21DdXJyZW50KGJvb2wgc3RhcnRGcm9tQ3VycmVudCk7CisgICAgdm9pZCBzZXRB
dXRvUGxheUVuYWJsZWQoYm9vbCBlbmFibGUpOworICAgIHZvaWQgcnVuKCk7CiAKIFFfU0lHTkFM
UzoKIApkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmNwcCBiL2FwcC92aWV3cy9k
aWdpa2Ftdmlldy5jcHAKaW5kZXggODVjZjU5YS4uZDlmYjcyOCAxMDA2NDQKLS0tIGEvYXBwL3Zp
ZXdzL2RpZ2lrYW12aWV3LmNwcAorKysgYi9hcHAvdmlld3MvZGlnaWthbXZpZXcuY3BwCkBAIC01
NzUsNiArNTc1LDkgQEAgdm9pZCBEaWdpa2FtVmlldzo6c2V0dXBDb25uZWN0aW9ucygpCiAKICAg
ICBjb25uZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93KCkpLAogICAg
ICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93QWxsKCkpKTsKKyAgICAKKyAgICBjb25u
ZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSwKKyAg
ICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd01hbnVhbEZyb21DdXJyZW50KCkpKTsK
IAogICAgIGNvbm5lY3QoZC0+c3RhY2tlZHZpZXcsIFNJR05BTChzaWduYWxab29tRmFjdG9yQ2hh
bmdlZChkb3VibGUpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFpvb21GYWN0b3JDaGFu
Z2VkKGRvdWJsZSkpKTsKQEAgLTIwNDUsMTIgKzIwNDgsMjYgQEAgdm9pZCBEaWdpa2FtVmlldzo6
c2xvdFNsaWRlU2hvd1JlY3Vyc2l2ZSgpCiAgICAgfQogfQogCit2b2lkIERpZ2lrYW1WaWV3Ojpz
bG90U2xpZGVTaG93TWFudWFsRnJvbUN1cnJlbnQoKQoreworICAgIFNsaWRlU2hvd0J1aWxkZXIq
IGNvbnN0IGJ1aWxkZXIgPSBuZXcgU2xpZGVTaG93QnVpbGRlcihhbGxJbmZvKCkpOworICAgIGJ1
aWxkZXItPnNldE92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudCh0cnVlKTsKKyAgICBidWlsZGVyLT5z
ZXRBdXRvUGxheUVuYWJsZWQoZmFsc2UpOworCisgICAgY29ubmVjdChidWlsZGVyLCBTSUdOQUwo
c2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKKyAgICAgICAgICAgIHRoaXMsIFNM
T1Qoc2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpKTsKKyAg
ICAKKyAgICBidWlsZGVyLT5ydW4oKTsKK30KKwogdm9pZCBEaWdpa2FtVmlldzo6c2xpZGVTaG93
KGNvbnN0IEltYWdlSW5mb0xpc3QmIGluZm9MaXN0KQogewogICAgIFNsaWRlU2hvd0J1aWxkZXIq
IGNvbnN0IGJ1aWxkZXIgPSBuZXcgU2xpZGVTaG93QnVpbGRlcihpbmZvTGlzdCk7CiAKICAgICBj
b25uZWN0KGJ1aWxkZXIsIFNJR05BTChzaWduYWxDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykp
LAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKFNs
aWRlU2hvd1NldHRpbmdzKSkpOworICAgIAorICAgIGJ1aWxkZXItPnJ1bigpOwogfQogCiB2b2lk
IERpZ2lrYW1WaWV3OjpzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKGNvbnN0IFNsaWRlU2hv
d1NldHRpbmdzJiBzZXR0aW5ncykKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5o
IGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKaW5kZXggNzJlZDc3Ny4uZGYzMzdlYyAxMDA2NDQK
LS0tIGEvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3
LmgKQEAgLTE0MSw2ICsxNDEsNyBAQCBwdWJsaWMgUV9TTE9UUzoKICAgICB2b2lkIHNsb3RTbGlk
ZVNob3dBbGwoKTsKICAgICB2b2lkIHNsb3RTbGlkZVNob3dTZWxlY3Rpb24oKTsKICAgICB2b2lk
IHNsb3RTbGlkZVNob3dSZWN1cnNpdmUoKTsKKyAgICB2b2lkIHNsb3RTbGlkZVNob3dNYW51YWxG
cm9tQ3VycmVudCgpOwogCiAgICAgLy8gQWxidW0gYWN0aW9uIHNsb3RzCiAgICAgdm9pZCBzbG90
UmVmcmVzaCgpOwpkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwIGIv
YXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwCmluZGV4IDM1ZTg3ZDguLjM5ZGExY2YgMTAw
NjQ0Ci0tLSBhL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcAorKysgYi9hcHAvdmlld3Mv
aW1hZ2VwcmV2aWV3dmlldy5jcHAKQEAgLTIwNyw4ICsyMDcsMTEgQEAgSW1hZ2VQcmV2aWV3Vmll
dzo6SW1hZ2VQcmV2aWV3VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQsIE1vZGUgbW9kZSkKICAg
ICBjb25uZWN0KHRoaXMsIFNJR05BTCh0b1ByZXZpb3VzSW1hZ2UoKSksCiAgICAgICAgICAgICB0
aGlzLCBTSUdOQUwoc2lnbmFsUHJldkl0ZW0oKSkpOwogCi0gICAgY29ubmVjdCh0aGlzLCBTSUdO
QUwoYWN0aXZhdGVkKCkpLAotICAgICAgICAgICAgdGhpcywgU0lHTkFMKHNpZ25hbEVzY2FwZVBy
ZXZpZXcoKSkpOworICAgIC8vY29ubmVjdCh0aGlzLCBTSUdOQUwoYWN0aXZhdGVkKCkpLAorICAg
IC8vICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsRXNjYXBlUHJldmlldygpKSk7CisgICAgCisg
ICAgY29ubmVjdCh0aGlzLCBTSUdOQUwobGVmdEJ1dHRvbkRvdWJsZUNsaWNrZWQoKSksCisgICAg
ICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSk7CiAKICAgICBj
b25uZWN0KFRoZW1lTWFuYWdlcjo6aW5zdGFuY2UoKSwgU0lHTkFMKHNpZ25hbFRoZW1lQ2hhbmdl
ZCgpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFRoZW1lQ2hhbmdlZCgpKSk7CmRpZmYg
LS1naXQgYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oIGIvYXBwL3ZpZXdzL2ltYWdlcHJl
dmlld3ZpZXcuaAppbmRleCBmYTQzN2EzLi44MjEzNTliIDEwMDY0NAotLS0gYS9hcHAvdmlld3Mv
aW1hZ2VwcmV2aWV3dmlldy5oCisrKyBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmgKQEAg
LTc2LDYgKzc2LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFsRWRpdEl0ZW0oKTsKICAg
ICB2b2lkIHNpZ25hbFByZXZpZXdMb2FkZWQoYm9vbCBzdWNjZXNzKTsKICAgICB2b2lkIHNpZ25h
bEVzY2FwZVByZXZpZXcoKTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKTsKICAg
ICB2b2lkIHNpZ25hbFNsaWRlU2hvdygpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MkxpZ2h0VGFi
bGUoKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJRdWV1ZU1ncigpOwpkaWZmIC0tZ2l0IGEvYXBw
L3ZpZXdzL3N0YWNrZWR2aWV3LmNwcCBiL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAKaW5kZXgg
YTViYTJjMi4uNGU1YmY4ZSAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmNwcAor
KysgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCkBAIC0xNjgsNiArMTY4LDkgQEAgU3RhY2tl
ZFZpZXc6OlN0YWNrZWRWaWV3KFFXaWRnZXQqIHBhcmVudCkKIAogICAgIGNvbm5lY3QoZC0+aW1h
Z2VQcmV2aWV3VmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSwKICAgICAgICAgICAgIHRo
aXMsIFNJR05BTChzaWduYWxTbGlkZVNob3coKSkpOworICAgIAorICAgIGNvbm5lY3QoZC0+aW1h
Z2VQcmV2aWV3VmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSksCisgICAgICAg
ICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSk7CiAKICAgICBjb25u
ZWN0KGQtPmltYWdlUHJldmlld1ZpZXctPmxheW91dCgpLCBTSUdOQUwoem9vbUZhY3RvckNoYW5n
ZWQoZG91YmxlKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3Rab29tRmFjdG9yQ2hhbmdl
ZChkb3VibGUpKSk7CmRpZmYgLS1naXQgYS9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuaCBiL2FwcC92
aWV3cy9zdGFja2Vkdmlldy5oCmluZGV4IGFlNmY0MDAuLjNhYjQyZWIgMTAwNjQ0Ci0tLSBhL2Fw
cC92aWV3cy9zdGFja2Vkdmlldy5oCisrKyBiL2FwcC92aWV3cy9zdGFja2Vkdmlldy5oCkBAIC0x
MjcsNiArMTI3LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFsVmlld01vZGVDaGFuZ2Vk
KCk7CiAgICAgdm9pZCBzaWduYWxFc2NhcGVQcmV2aWV3KCk7CiAgICAgdm9pZCBzaWduYWxTbGlk
ZVNob3coKTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKTsKICAgICB2b2lkIHNp
Z25hbFpvb21GYWN0b3JDaGFuZ2VkKGRvdWJsZSk7CiAgICAgdm9pZCBzaWduYWxJbnNlcnQyTGln
aHRUYWJsZSgpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MlF1ZXVlTWdyKCk7CmRpZmYgLS1naXQg
YS9saWJzL2RhdGFiYXNlL2NvbGxlY3Rpb25zY2FubmVyLmNwcCBiL2xpYnMvZGF0YWJhc2UvY29s
bGVjdGlvbnNjYW5uZXIuY3BwCmluZGV4IGNlMmM5MjMuLjA4ZGM0MjMgMTAwNjQ0Ci0tLSBhL2xp
YnMvZGF0YWJhc2UvY29sbGVjdGlvbnNjYW5uZXIuY3BwCisrKyBiL2xpYnMvZGF0YWJhc2UvY29s
bGVjdGlvbnNjYW5uZXIuY3BwCkBAIC0xMjA1LDYgKzEyMDUsNyBAQCB2b2lkIENvbGxlY3Rpb25T
Y2FubmVyOjpzY2FuRmlsZU5vcm1hbChjb25zdCBRRmlsZUluZm8mIGZpLCBjb25zdCBJdGVtU2Nh
bkluZm8mCiAKIHFsb25nbG9uZyBDb2xsZWN0aW9uU2Nhbm5lcjo6c2Nhbk5ld0ZpbGUoY29uc3Qg
UUZpbGVJbmZvJiBpbmZvLCBpbnQgYWxidW1JZCkKIHsKKyAgICBxRGVidWcoIlNjYW5uaW5nICVz
LiIsIHFQcmludGFibGUoaW5mby5hYnNvbHV0ZUZpbGVQYXRoKCkpKTsKICAgICBpZiAoZC0+Y2hl
Y2tEZWZlcnJlZChpbmZvKSkKICAgICB7CiAgICAgICAgIHJldHVybiAtMTsKZGlmZiAtLWdpdCBh
L3V0aWxpdGllcy9zbGlkZXNob3cvc2xpZGVzaG93c2V0dGluZ3MuaCBiL3V0aWxpdGllcy9zbGlk
ZXNob3cvc2xpZGVzaG93c2V0dGluZ3MuaAppbmRleCA3NTgwMzVhLi5hMDNlNWVkIDEwMDY0NAot
LS0gYS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmgKKysrIGIvdXRpbGl0
aWVzL3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5ncy5oCkBAIC0xNTgsNiArMTU4LDEwIEBAIHB1
YmxpYzoKICAgICAvKiogRGVsYXkgaW4gc2Vjb25kcwogICAgICAqLwogICAgIGludCAgICAgICAg
ICAgICAgICAgICAgICAgICAgZGVsYXk7CisgICAgCisgICAgLyoqIFdoZXRoZXIgdG8gZW5hYmxl
IHRoZSBhdXRvLW1vdmUgZmVhdHVyZS4KKyAgICAgKi8KKyAgICBib29sICAgICAgICAgICAgICAg
ICAgICAgICAgIGF1dG9QbGF5RW5hYmxlZDsKIAogICAgIC8qKiBTY3JlZW4gdG8gdXNlIGluIGNh
c2Ugb2YgbXVsdGktbW9uaXRvciBjb21wdXRlci4KICAgICAgKi8KZGlmZiAtLWdpdCBhL3V0aWxp
dGllcy9zbGlkZXNob3cvc2xpZGV0b29sYmFyLmNwcCBiL3V0aWxpdGllcy9zbGlkZXNob3cvc2xp
ZGV0b29sYmFyLmNwcAppbmRleCBiNDBjNGNhLi4yZTg5MmM4IDEwMDY0NAotLS0gYS91dGlsaXRp
ZXMvc2xpZGVzaG93L3NsaWRldG9vbGJhci5jcHAKKysrIGIvdXRpbGl0aWVzL3NsaWRlc2hvdy9z
bGlkZXRvb2xiYXIuY3BwCkBAIC04NCwxMiArODQsMTUgQEAgU2xpZGVUb29sQmFyOjpTbGlkZVRv
b2xCYXIoY29uc3QgU2xpZGVTaG93U2V0dGluZ3MmIHNldHRpbmdzLCBRV2lkZ2V0KiBjb25zdCBw
YXIKICAgICBkLT5zdG9wQnRuID0gbmV3IFFUb29sQnV0dG9uKHRoaXMpOwogCiAgICAgZC0+cGxh
eUJ0bi0+c2V0Q2hlY2thYmxlKHRydWUpOworICAgIGQtPnBsYXlCdG4tPnNldENoZWNrZWQoIXNl
dHRpbmdzLmF1dG9QbGF5RW5hYmxlZCk7CisgICAgCiAgICAgZC0+cGxheUJ0bi0+c2V0Rm9jdXNQ
b2xpY3koUXQ6Ok5vRm9jdXMpOwogICAgIGQtPnByZXZCdG4tPnNldEZvY3VzUG9saWN5KFF0OjpO
b0ZvY3VzKTsKICAgICBkLT5uZXh0QnRuLT5zZXRGb2N1c1BvbGljeShRdDo6Tm9Gb2N1cyk7CiAg
ICAgZC0+c3RvcEJ0bi0+c2V0Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMpOwogCi0gICAgZC0+cGxh
eUJ0bi0+c2V0SWNvbihkLT5sb2FkZXItPmxvYWRJY29uKCJtZWRpYS1wbGF5YmFjay1wYXVzZSIs
IEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOworICAgIFFTdHJpbmcgaWNvblN0
cmluZyA9IHNldHRpbmdzLmF1dG9QbGF5RW5hYmxlZCA/ICJtZWRpYS1wbGF5YmFjay1wYXVzZSIg
OiAibWVkaWEtcGxheWJhY2stc3RhcnQiOworICAgIGQtPnBsYXlCdG4tPnNldEljb24oZC0+bG9h
ZGVyLT5sb2FkSWNvbihpY29uU3RyaW5nLCBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNp
emUpKTsKICAgICBkLT5wcmV2QnRuLT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlh
LXNraXAtYmFja3dhcmQiLCAgS0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7CiAg
ICAgZC0+bmV4dEJ0bi0+c2V0SWNvbihkLT5sb2FkZXItPmxvYWRJY29uKCJtZWRpYS1za2lwLWZv
cndhcmQiLCAgIEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwogICAgIGQtPnN0
b3BCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtcGxheWJhY2stc3RvcCIs
ICBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKQEAgLTIwMyw2ICsyMDYsNyBA
QCB2b2lkIFNsaWRlVG9vbEJhcjo6c2xvdE5leFByZXZDbGlja2VkKCkKIHsKICAgICBpZiAoIWQt
PnBsYXlCdG4tPmlzQ2hlY2tlZCgpKQogICAgIHsKKyAgICAgICAgcURlYnVnKCJDaGVja2luZyBw
bGF5QnRuIik7CiAgICAgICAgIGQtPnBsYXlCdG4tPnNldENoZWNrZWQodHJ1ZSk7CiAgICAgICAg
IGQtPnBsYXlCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtcGxheWJhY2st
c3RhcnQiLCBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKICAgICAgICAgZW1p
dCBzaWduYWxQYXVzZSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94106</attachid>
            <date>2015-08-19 00:15:36 +0000</date>
            <delta_ts>2015-09-06 11:54:33 +0000</delta_ts>
            <desc>Patch that applies to 274d73d.</desc>
            <filename>fullscreen_20150819.patch</filename>
            <type>text/plain</type>
            <size>9651</size>
            <attacher name="Luca Carlon">carlon.luca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmNwcCBiL2FwcC91dGlscy9z
bGlkZXNob3didWlsZGVyLmNwcAppbmRleCA2ZDE5ZDdlLi4yYzZiYzk2IDEwMDY0NAotLS0gYS9h
cHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5jcHAKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuY3BwCkBAIC00OSwxMyArNDksMTkgQEAgcHVibGljOgogCiAgICAgUHJpdmF0ZSgpIDoK
ICAgICAgICAgY2FuY2VsKGZhbHNlKSwKLSAgICAgICAgYWxidW0oMCkKKyAgICAgICAgYWxidW0o
MCksCisgICAgICAgIG92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudChmYWxzZSksCisgICAgICAgIGF1
dG9QbGF5RW5hYmxlZCh0cnVlKQogICAgIHsKICAgICB9CiAKICAgICBib29sICAgICAgICAgIGNh
bmNlbDsKICAgICBJbWFnZUluZm9MaXN0IGluZm9MaXN0OwogICAgIEFsYnVtKiAgICAgICAgYWxi
dW07CisgICAgYm9vbCAgICAgICAgICBvdmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQ7CisgICAgYm9v
bCAgICAgICAgICBzdGFydEZyb21DdXJyZW50OworICAgIGJvb2wgICAgICAgICAgYXV0b1BsYXlF
bmFibGVkOworICAgIGludCAgICAgICAgICAgZGVsYXk7CiB9OwogCiBTbGlkZVNob3dCdWlsZGVy
OjpTbGlkZVNob3dCdWlsZGVyKGNvbnN0IEltYWdlSW5mb0xpc3QmIGluZm9MaXN0KQpAQCAtNjUs
OCArNzEsNiBAQCBTbGlkZVNob3dCdWlsZGVyOjpTbGlkZVNob3dCdWlsZGVyKGNvbnN0IEltYWdl
SW5mb0xpc3QmIGluZm9MaXN0KQogICAgIGQtPmluZm9MaXN0ID0gaW5mb0xpc3Q7CiAKICAgICBQ
cm9ncmVzc01hbmFnZXI6OmFkZFByb2dyZXNzSXRlbSh0aGlzKTsKLQotICAgIFFUaW1lcjo6c2lu
Z2xlU2hvdCg1MDAsIHRoaXMsIFNMT1Qoc2xvdFJ1bigpKSk7CiB9CiAKIFNsaWRlU2hvd0J1aWxk
ZXI6OlNsaWRlU2hvd0J1aWxkZXIoQWxidW0qIGNvbnN0IGFsYnVtKQpAQCAtNzYsOCArODAsNiBA
QCBTbGlkZVNob3dCdWlsZGVyOjpTbGlkZVNob3dCdWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSkK
ICAgICBkLT5hbGJ1bSA9IGFsYnVtOwogCiAgICAgUHJvZ3Jlc3NNYW5hZ2VyOjphZGRQcm9ncmVz
c0l0ZW0odGhpcyk7Ci0KLSAgICBRVGltZXI6OnNpbmdsZVNob3QoNTAwLCB0aGlzLCBTTE9UKHNs
b3RSdW4oKSkpOwogfQogCiBTbGlkZVNob3dCdWlsZGVyOjp+U2xpZGVTaG93QnVpbGRlcigpCkBA
IC04NSw2ICs4NywyMiBAQCBTbGlkZVNob3dCdWlsZGVyOjp+U2xpZGVTaG93QnVpbGRlcigpCiAg
ICAgZGVsZXRlIGQ7CiB9CiAKK3ZvaWQgU2xpZGVTaG93QnVpbGRlcjo6c2V0T3ZlcnJpZGVTdGFy
dEZyb21DdXJyZW50KGJvb2wgc3RhcnRGcm9tQ3VycmVudCkKK3sKKyAgICBkLT5vdmVycmlkZVN0
YXJ0RnJvbUN1cnJlbnQgPSB0cnVlOworICAgIGQtPnN0YXJ0RnJvbUN1cnJlbnQgPSBzdGFydEZy
b21DdXJyZW50OworfQorCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldEF1dG9QbGF5RW5hYmxl
ZChib29sIGVuYWJsZSkKK3sKKyAgICBkLT5hdXRvUGxheUVuYWJsZWQgPSBlbmFibGU7Cit9CisK
K3ZvaWQgU2xpZGVTaG93QnVpbGRlcjo6cnVuKCkKK3sKKyAgICBRVGltZXI6OnNpbmdsZVNob3Qo
NTAwLCB0aGlzLCBTTE9UKHNsb3RSdW4oKSkpOworfQorCiB2b2lkIFNsaWRlU2hvd0J1aWxkZXI6
OnNsb3RSdW4oKQogewogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKHByb2dyZXNzSXRlbUNhbmNl
bGVkKFByb2dyZXNzSXRlbSopKSwKQEAgLTEyNiw2ICsxNDQsOSBAQCB2b2lkIFNsaWRlU2hvd0J1
aWxkZXI6OnNsb3RQYXJzZUltYWdlSW5mb0xpc3QoY29uc3QgSW1hZ2VJbmZvTGlzdCYgbGlzdCkK
ICAgICBTbGlkZVNob3dTZXR0aW5ncyBzZXR0aW5nczsKICAgICBzZXR0aW5ncy5yZWFkRnJvbUNv
bmZpZygpOwogICAgIHNldHRpbmdzLnByZXZpZXdTZXR0aW5ncyA9IEFwcGxpY2F0aW9uU2V0dGlu
Z3M6Omluc3RhbmNlKCktPmdldFByZXZpZXdTZXR0aW5ncygpOworICAgIGlmIChkLT5vdmVycmlk
ZVN0YXJ0RnJvbUN1cnJlbnQpCisgICAgICAgIHNldHRpbmdzLnN0YXJ0V2l0aEN1cnJlbnQgPSBk
LT5zdGFydEZyb21DdXJyZW50OworICAgIHNldHRpbmdzLmF1dG9QbGF5RW5hYmxlZCA9IGQtPmF1
dG9QbGF5RW5hYmxlZDsKIAogICAgIGZvciAoSW1hZ2VJbmZvTGlzdDo6Y29uc3RfaXRlcmF0b3Ig
aXQgPSBsaXN0LmNvbnN0QmVnaW4oKTsKICAgICAgICAgICFkLT5jYW5jZWwgJiYgKGl0ICE9IGxp
c3QuY29uc3RFbmQoKSkgOyArK2l0KQpkaWZmIC0tZ2l0IGEvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuaCBiL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmgKaW5kZXggNGNjMzQ2OC4uNjNl
N2VjZCAxMDA2NDQKLS0tIGEvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuaAorKysgYi9hcHAv
dXRpbHMvc2xpZGVzaG93YnVpbGRlci5oCkBAIC00OSw2ICs0OSwxOCBAQCBwdWJsaWM6CiAgICAg
LyoqIENvbnRydWN0b3IgdG8gd29yayBvbiByZWN1cnNpdmUgbW9kZSBmcm9tIGFsYnVtICovCiAg
ICAgZXhwbGljaXQgU2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29uc3QgYWxidW0pOwogICAgIH5T
bGlkZVNob3dCdWlsZGVyKCk7CisgICAgCisgICAgLyoqCisgICAgICAqIFRoZSBidWlsZGVyIGNy
ZWF0ZXMgdGhlIHNsaWRlc2hvdyBieSByZWFkaW5nIHRoZSBpbnRlcm5hbCBzZXR1cC4gVGhlc2Ug
ZnVuY3Rpb25zIHBlcm1pdAorICAgICAgKiB0byBvdmVycmlkZSB0aGUgc2V0dXAuCisgICAgICAq
CisgICAgICAqIEBicmllZiBzZXRPdmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQKKyAgICAgICogQHBh
cmFtIHN0YXJ0RnJvbUN1cnJlbnQKKyAgICAgICovCisgICAgdm9pZCBzZXRPdmVycmlkZVN0YXJ0
RnJvbUN1cnJlbnQoYm9vbCBzdGFydEZyb21DdXJyZW50KTsKKyAgICB2b2lkIHNldEF1dG9QbGF5
RW5hYmxlZChib29sIGVuYWJsZSk7CisKKyAgICB2b2lkIHJ1bigpOwogCiBRX1NJR05BTFM6CiAK
ZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAgYi9hcHAvdmlld3MvZGlnaWth
bXZpZXcuY3BwCmluZGV4IDRmZTI5ZTYuLjk1MDA3YzEgMTAwNjQ0Ci0tLSBhL2FwcC92aWV3cy9k
aWdpa2Ftdmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmNwcApAQCAtNTk2LDYg
KzU5Niw5IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNldHVwQ29ubmVjdGlvbnMoKQogCiAgICAgY29u
bmVjdChkLT5zdGFja2VkdmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSwKICAgICAgICAg
ICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0FsbCgpKSk7CisgICAgCisgICAgY29ubmVjdChk
LT5zdGFja2VkdmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSksCisgICAgICAg
ICAgICB0aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpKSk7CiAKICAg
ICBjb25uZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsWm9vbUZhY3RvckNoYW5nZWQo
ZG91YmxlKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3Rab29tRmFjdG9yQ2hhbmdlZChk
b3VibGUpKSk7CkBAIC0yMDg1LDEyICsyMDg4LDI2IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNsb3RT
bGlkZVNob3dSZWN1cnNpdmUoKQogICAgIH0KIH0KIAordm9pZCBEaWdpa2FtVmlldzo6c2xvdFNs
aWRlU2hvd01hbnVhbEZyb21DdXJyZW50KCkKK3sKKyAgICBTbGlkZVNob3dCdWlsZGVyKiBjb25z
dCBidWlsZGVyID0gbmV3IFNsaWRlU2hvd0J1aWxkZXIoYWxsSW5mbygpKTsKKyAgICBidWlsZGVy
LT5zZXRPdmVycmlkZVN0YXJ0RnJvbUN1cnJlbnQodHJ1ZSk7CisgICAgYnVpbGRlci0+c2V0QXV0
b1BsYXlFbmFibGVkKGZhbHNlKTsKKworICAgIGNvbm5lY3QoYnVpbGRlciwgU0lHTkFMKHNpZ25h
bENvbXBsZXRlKFNsaWRlU2hvd1NldHRpbmdzKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHNs
b3RTbGlkZVNob3dCdWlsZGVyQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSk7CisgICAgCisg
ICAgYnVpbGRlci0+cnVuKCk7Cit9CisKIHZvaWQgRGlnaWthbVZpZXc6OnNsaWRlU2hvdyhjb25z
dCBJbWFnZUluZm9MaXN0JiBpbmZvTGlzdCkKIHsKICAgICBTbGlkZVNob3dCdWlsZGVyKiBjb25z
dCBidWlsZGVyID0gbmV3IFNsaWRlU2hvd0J1aWxkZXIoaW5mb0xpc3QpOwogCiAgICAgY29ubmVj
dChidWlsZGVyLCBTSUdOQUwoc2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKICAg
ICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShTbGlkZVNo
b3dTZXR0aW5ncykpKTsKKyAgICAKKyAgICBidWlsZGVyLT5ydW4oKTsKIH0KIAogdm9pZCBEaWdp
a2FtVmlldzo6c2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShjb25zdCBTbGlkZVNob3dTZXR0
aW5ncyYgc2V0dGluZ3MpCmRpZmYgLS1naXQgYS9hcHAvdmlld3MvZGlnaWthbXZpZXcuaCBiL2Fw
cC92aWV3cy9kaWdpa2Ftdmlldy5oCmluZGV4IDIzYzkyMjYuLjM5Zjg4YmEgMTAwNjQ0Ci0tLSBh
L2FwcC92aWV3cy9kaWdpa2Ftdmlldy5oCisrKyBiL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5oCkBA
IC0xNDEsNiArMTQxLDcgQEAgcHVibGljIFFfU0xPVFM6CiAgICAgdm9pZCBzbG90U2xpZGVTaG93
QWxsKCk7CiAgICAgdm9pZCBzbG90U2xpZGVTaG93U2VsZWN0aW9uKCk7CiAgICAgdm9pZCBzbG90
U2xpZGVTaG93UmVjdXJzaXZlKCk7CisgICAgdm9pZCBzbG90U2xpZGVTaG93TWFudWFsRnJvbUN1
cnJlbnQoKTsKIAogICAgIC8vIEFsYnVtIGFjdGlvbiBzbG90cwogICAgIHZvaWQgc2xvdFJlZnJl
c2goKTsKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcCBiL2FwcC92
aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcAppbmRleCAwOTc4N2UzLi5lNGYzODA2IDEwMDY0NAot
LS0gYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2ltYWdl
cHJldmlld3ZpZXcuY3BwCkBAIC0yMjcsOCArMjI3LDExIEBAIEltYWdlUHJldmlld1ZpZXc6Oklt
YWdlUHJldmlld1ZpZXcoUVdpZGdldCogY29uc3QgcGFyZW50LCBNb2RlIG1vZGUpCiAgICAgY29u
bmVjdCh0aGlzLCBTSUdOQUwodG9QcmV2aW91c0ltYWdlKCkpLAogICAgICAgICAgICAgdGhpcywg
U0lHTkFMKHNpZ25hbFByZXZJdGVtKCkpKTsKIAotICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKGFj
dGl2YXRlZCgpKSwKLSAgICAgICAgICAgIHRoaXMsIFNJR05BTChzaWduYWxFc2NhcGVQcmV2aWV3
KCkpKTsKKyAgICAvL2Nvbm5lY3QodGhpcywgU0lHTkFMKGFjdGl2YXRlZCgpKSwKKyAgICAvLyAg
ICAgICAgdGhpcywgU0lHTkFMKHNpZ25hbEVzY2FwZVByZXZpZXcoKSkpOworICAgIAorICAgIGNv
bm5lY3QodGhpcywgU0lHTkFMKGxlZnRCdXR0b25Eb3VibGVDbGlja2VkKCkpLAorICAgICAgICAg
ICAgdGhpcywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSkpOwogCiAgICAgY29ubmVj
dChUaGVtZU1hbmFnZXI6Omluc3RhbmNlKCksIFNJR05BTChzaWduYWxUaGVtZUNoYW5nZWQoKSks
CiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RUaGVtZUNoYW5nZWQoKSkpOwpkaWZmIC0tZ2l0
IGEvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuaCBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2
aWV3LmgKaW5kZXggZjM1N2Y3NC4uZTJlZDE2NiAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2ltYWdl
cHJldmlld3ZpZXcuaAorKysgYi9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oCkBAIC03Niw2
ICs3Niw3IEBAIFFfU0lHTkFMUzoKICAgICB2b2lkIHNpZ25hbEVkaXRJdGVtKCk7CiAgICAgdm9p
ZCBzaWduYWxQcmV2aWV3TG9hZGVkKGJvb2wgc3VjY2Vzcyk7CiAgICAgdm9pZCBzaWduYWxFc2Nh
cGVQcmV2aWV3KCk7CisgICAgdm9pZCBzaWduYWxTbGlkZVNob3dDdXJyZW50KCk7CiAgICAgdm9p
ZCBzaWduYWxTbGlkZVNob3coKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJMaWdodFRhYmxlKCk7
CiAgICAgdm9pZCBzaWduYWxJbnNlcnQyUXVldWVNZ3IoKTsKZGlmZiAtLWdpdCBhL2FwcC92aWV3
cy9zdGFja2Vkdmlldy5jcHAgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCmluZGV4IDdjMmY3
NjguLmJlMzc1YmEgMTAwNjQ0Ci0tLSBhL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAKKysrIGIv
YXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmNwcApAQCAtMTc5LDYgKzE3OSw5IEBAIFN0YWNrZWRWaWV3
OjpTdGFja2VkVmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQpCiAKICAgICBjb25uZWN0KGQtPmlt
YWdlUHJldmlld1ZpZXcsIFNJR05BTChzaWduYWxTbGlkZVNob3coKSksCiAgICAgICAgICAgICB0
aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93KCkpKTsKKyAgICAKKyAgICBjb25uZWN0KGQtPmlt
YWdlUHJldmlld1ZpZXcsIFNJR05BTChzaWduYWxTbGlkZVNob3dDdXJyZW50KCkpLAorICAgICAg
ICAgICAgdGhpcywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSkpOwogCiAgICAgY29u
bmVjdChkLT5pbWFnZVByZXZpZXdWaWV3LT5sYXlvdXQoKSwgU0lHTkFMKHpvb21GYWN0b3JDaGFu
Z2VkKGRvdWJsZSkpLAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90Wm9vbUZhY3RvckNoYW5n
ZWQoZG91YmxlKSkpOwpkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmggYi9hcHAv
dmlld3Mvc3RhY2tlZHZpZXcuaAppbmRleCBlMWI3NjVmLi5kNDE4ZTQwIDEwMDY0NAotLS0gYS9h
cHAvdmlld3Mvc3RhY2tlZHZpZXcuaAorKysgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuaApAQCAt
MTMzLDYgKzEzMyw3IEBAIFFfU0lHTkFMUzoKICAgICB2b2lkIHNpZ25hbFZpZXdNb2RlQ2hhbmdl
ZCgpOwogICAgIHZvaWQgc2lnbmFsRXNjYXBlUHJldmlldygpOwogICAgIHZvaWQgc2lnbmFsU2xp
ZGVTaG93KCk7CisgICAgdm9pZCBzaWduYWxTbGlkZVNob3dDdXJyZW50KCk7CiAgICAgdm9pZCBz
aWduYWxab29tRmFjdG9yQ2hhbmdlZChkb3VibGUpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0Mkxp
Z2h0VGFibGUoKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJRdWV1ZU1ncigpOwpkaWZmIC0tZ2l0
IGEvbGlicy9kYXRhYmFzZS9jb2xsZWN0aW9uc2Nhbm5lci5jcHAgYi9saWJzL2RhdGFiYXNlL2Nv
bGxlY3Rpb25zY2FubmVyLmNwcAppbmRleCA1MTIyMzg4Li5hZmIxNjZiIDEwMDY0NAotLS0gYS9s
aWJzL2RhdGFiYXNlL2NvbGxlY3Rpb25zY2FubmVyLmNwcAorKysgYi9saWJzL2RhdGFiYXNlL2Nv
bGxlY3Rpb25zY2FubmVyLmNwcApAQCAtMTIxMyw2ICsxMjEzLDcgQEAgdm9pZCBDb2xsZWN0aW9u
U2Nhbm5lcjo6c2NhbkZpbGVOb3JtYWwoY29uc3QgUUZpbGVJbmZvJiBmaSwgY29uc3QgSXRlbVNj
YW5JbmZvJgogCiBxbG9uZ2xvbmcgQ29sbGVjdGlvblNjYW5uZXI6OnNjYW5OZXdGaWxlKGNvbnN0
IFFGaWxlSW5mbyYgaW5mbywgaW50IGFsYnVtSWQpCiB7CisgICAgcURlYnVnKCJTY2FubmluZyAl
cy4iLCBxUHJpbnRhYmxlKGluZm8uYWJzb2x1dGVGaWxlUGF0aCgpKSk7CiAgICAgaWYgKGQtPmNo
ZWNrRGVmZXJyZWQoaW5mbykpCiAgICAgewogICAgICAgICByZXR1cm4gLTE7CmRpZmYgLS1naXQg
YS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmggYi91dGlsaXRpZXMvc2xp
ZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmgKaW5kZXggOGE0YzY4YS4uM2UyZDhiZSAxMDA2NDQK
LS0tIGEvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5ncy5oCisrKyBiL3V0aWxp
dGllcy9zbGlkZXNob3cvc2xpZGVzaG93c2V0dGluZ3MuaApAQCAtMTU5LDYgKzE1OSwxMCBAQCBw
dWJsaWM6CiAgICAgLyoqIERlbGF5IGluIHNlY29uZHMKICAgICAgKi8KICAgICBpbnQgICAgICAg
ICAgICAgICAgICAgICAgICAgIGRlbGF5OworICAgIAorICAgIC8qKiBXaGV0aGVyIHRvIGVuYWJs
ZSB0aGUgYXV0by1tb3ZlIGZlYXR1cmUuCisgICAgICovCisgICAgYm9vbCAgICAgICAgICAgICAg
ICAgICAgICAgICBhdXRvUGxheUVuYWJsZWQ7CiAKICAgICAvKiogU2NyZWVuIHRvIHVzZSBpbiBj
YXNlIG9mIG11bHRpLW1vbml0b3IgY29tcHV0ZXIuCiAgICAgICovCmRpZmYgLS1naXQgYS91dGls
aXRpZXMvc2xpZGVzaG93L3NsaWRldG9vbGJhci5jcHAgYi91dGlsaXRpZXMvc2xpZGVzaG93L3Ns
aWRldG9vbGJhci5jcHAKaW5kZXggOTlkZDIzYy4uNmJhM2Y0NyAxMDA2NDQKLS0tIGEvdXRpbGl0
aWVzL3NsaWRlc2hvdy9zbGlkZXRvb2xiYXIuY3BwCisrKyBiL3V0aWxpdGllcy9zbGlkZXNob3cv
c2xpZGV0b29sYmFyLmNwcApAQCAtODgsMTIgKzg4LDE1IEBAIFNsaWRlVG9vbEJhcjo6U2xpZGVU
b29sQmFyKGNvbnN0IFNsaWRlU2hvd1NldHRpbmdzJiBzZXR0aW5ncywgUVdpZGdldCogY29uc3Qg
cGFyCiAgICAgZC0+c3RvcEJ0biA9IG5ldyBRVG9vbEJ1dHRvbih0aGlzKTsKIAogICAgIGQtPnBs
YXlCdG4tPnNldENoZWNrYWJsZSh0cnVlKTsKKyAgICBkLT5wbGF5QnRuLT5zZXRDaGVja2VkKCFz
ZXR0aW5ncy5hdXRvUGxheUVuYWJsZWQpOworICAgIAogICAgIGQtPnBsYXlCdG4tPnNldEZvY3Vz
UG9saWN5KFF0OjpOb0ZvY3VzKTsKICAgICBkLT5wcmV2QnRuLT5zZXRGb2N1c1BvbGljeShRdDo6
Tm9Gb2N1cyk7CiAgICAgZC0+bmV4dEJ0bi0+c2V0Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMpOwog
ICAgIGQtPnN0b3BCdG4tPnNldEZvY3VzUG9saWN5KFF0OjpOb0ZvY3VzKTsKIAotICAgIGQtPnBs
YXlCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtcGxheWJhY2stcGF1c2Ui
LCBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKKyAgICBRU3RyaW5nIGljb25T
dHJpbmcgPSBzZXR0aW5ncy5hdXRvUGxheUVuYWJsZWQgPyAibWVkaWEtcGxheWJhY2stcGF1c2Ui
IDogIm1lZGlhLXBsYXliYWNrLXN0YXJ0IjsKKyAgICBkLT5wbGF5QnRuLT5zZXRJY29uKGQtPmxv
YWRlci0+bG9hZEljb24oaWNvblN0cmluZywgS0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25T
aXplKSk7CiAgICAgZC0+cHJldkJ0bi0+c2V0SWNvbihkLT5sb2FkZXItPmxvYWRJY29uKCJtZWRp
YS1za2lwLWJhY2t3YXJkIiwgIEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwog
ICAgIGQtPm5leHRCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtc2tpcC1m
b3J3YXJkIiwgICBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKICAgICBkLT5z
dG9wQnRuLT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlhLXBsYXliYWNrLXN0b3Ai
LCAgS0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7CkBAIC0yMDcsNiArMjEwLDcg
QEAgdm9pZCBTbGlkZVRvb2xCYXI6OnNsb3ROZXhQcmV2Q2xpY2tlZCgpCiB7CiAgICAgaWYgKCFk
LT5wbGF5QnRuLT5pc0NoZWNrZWQoKSkKICAgICB7CisgICAgICAgIHFEZWJ1ZygiQ2hlY2tpbmcg
cGxheUJ0biIpOwogICAgICAgICBkLT5wbGF5QnRuLT5zZXRDaGVja2VkKHRydWUpOwogICAgICAg
ICBkLT5wbGF5QnRuLT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlhLXBsYXliYWNr
LXN0YXJ0IiwgS0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7CiAgICAgICAgIGVt
aXQgc2lnbmFsUGF1c2UoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>94311</attachid>
            <date>2015-08-31 21:15:55 +0000</date>
            <delta_ts>2015-09-06 12:49:17 +0000</delta_ts>
            <desc>Result.</desc>
            <filename>sample.png</filename>
            <type>image/png</type>
            <size>37665</size>
            <attacher name="Luca Carlon">carlon.luca</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAKcAAAECCAIAAAAU0lBSAAAACXBIWXMAAA7EAAAO6wGHNzZ2AAAg
AElEQVR4nOy9eZBkx3kn9n2Z+e66q+/ume7pOTD34CAAkgBEgJeWukiuVtfaluxQaG2H17Ysa8OO
WNty2HKEQ1p7j9jVhiPMFXWTsijeAC+AOIkbg7nv6eme6buru45358v8/Mer6mMwABoEGKSE+aa6
p6pe5suX+cvv/t5rTBceh9v0PiP2476A2/RjoNuovx9JrL+bm1/hl37lx3gpt+lHR2rvF0eG+9Y/
bvD6bcj/HtNN4N6W8O9Huo36+5Fuo/5+JPH2TQAuL5QWgwHXq7teAQDCwA/9xlBhafdQ+0d8eT9y
urxYXvQH3ELNdQsAEAR+FDSGvO1O7Z12f5fDrRMBItA76rKZcD1Ks/j0x954OEz4ybnd4+O76xXr
pkONZjI9ffnoyFXXUj/08D9GevupjV51zTed2jvt/i6Hyykyxtq1T5XdwZBYI6GTq42d6uIh9aJL
nbed7+BPbYTj3gr1MOFnlo4ePrCTMwQAaAMsIQDAAEEJAEBpOnn22pGh0297uT9pFCb89NLRI72p
nZ+hRMKx3bjeQGk6de7a4cFbT+2m7jm9foU8C/aO4Ru7v8vhcrrhfdyqfajPYnMxvbxGiqAlCQAE
pA+oR3fr02895c2ov5VePzm3uwt5B/TXmH4JKQVKQb+E+msIHeAMjx6YODk3+dbj/QTSybndmzHb
PQIvndevX96QmZzhkf0TJ+d2b6c7ABy/RK9dpMkRvGX3dzkcACyUfn5o8AGb4XcW9Lfn9WpMrYRA
A2jItPkUfuYqu3P7039T1K8slMbHd3ch/3OO9xD7OOFBwoPEPk7sYVLfRugA5zi+c8/VxeL2h/yx
05XFcndqAC9foOUmffFJEBz/9Lv68uwmJDiO79z9xqlt7p7TpRv0Z99VDOGvnqCVFrx6kTZ3f5fD
AUAgxkrVuzqSnlnSs0EX7JteK8VPRXxgmyvwpqgvBAO5BtLfZ/gLmn6A0N6YJ5SAfZL0UwwAamVr
wR/c5ng/CbTgD9QrVicEALh7L9ZL+NkHcf8O3L8DxwchUxtm0i2nlnfP3xOA0jAxBPt2sAPj+NkH
sVaCu/YgAPhRt/u7HA4AzqnDX57RzyzohYBA3eK104YDJWO58DPbXIE3Rd316gAAbQCXcJTYT5P+
9hbgsQRoAPmACI5X2+Z4PwnkFmoAcGWOAIAzYAzmVujMNf2f/QMEgP/wmPrCEzpH4pZTy7sDAAH8
5ffUf3hMIeJvfgpPTdHCKjAExiA/f979XQ4HAIuwhxMtR0Qa3vgCgruqTBNwa3ibK/AWqBcAAJYQ
RwAAoHQL4GGEYBk3Gv8dodxrunPPxkTGB/E3fpoBwJ98hz58iO0cwHUk3ji1vHsO+eQIu/8A++Nv
KUT8jU/ijk0iNjfWXK/wLocDgB3FypCNtxTsoEFoIIJMgcG25YfDO4vS3BJ4+uG9xh8jHb9MYbzx
0TQAAP7kO/TBA3h4Fz5wGHcOwDoSb6Qc8j2j7EMH8egkrgNvblp2P4KTV+k9Ge6VxawV04AFHxli
9/XhqIOgaf0lFU21daZJ6u1O/01RDwMfAGCAaG7Tt1uBpzmEgU2N/45QEPh37UHX3vhGZrSOQf7N
hw+xRpvOz9AbpxYE/rlp6kR4/4Fu4xz4z39LZZvcroIDRycxDPx3ORwAlKi5ElBRoMOhZuGRGj4w
yJkGUN3XySX93Jw+Obu0zRV4c9T9BgBACSAE2Bw46gFPMwASsABEEAWr2xzvJ4GioAEAz5zaYI2l
JgLAwYkuBkTwt8/owxNs/w5849SioHFwHPeNwZef3TjD4V0IiMvNDXZ99jTlK/MuhwOAnfwiaRjz
INPdlyPgvkE2XkQBXe2+GtKgPrvNFXhT1IcKS41mAgDsEVLfQdoKPN6v1aMcH9YA0GgmQ4XFbY73
k0BD3lKjmTx0hAHA9SXQGkb74JE78UtPk6YuBrUSPHwn3nJqefeP3sXKHubAa4K/eUp/4h42XEet
4cYyAcCDh7vd3+VwAHDIeFlQOu+TVLD+sjhOlNio15X2pk4OmK9ucwXeVP/vHmq/MHW5UjrIi8h/
mvRTDAyAEYJcsEvg/7HCAihFMzOXPrjr7SOCPzm0MTWGjAEgAMDuEUSkv31aI2KthI/ciW82tfXu
H70LH38NvvyszhTef4CN93wuxhBgy8q8m+EAwGOdB+3Hnl35tCvIM7ccmlnTQABED5W+4WC4zRXg
//Pv/kb+Lpj+05uO1dzWqSlroK/MbMR9BEMEGYJBeIDYYUITlKKT564dGb5oir9jNl3Na52esvrr
5XIBsWebVovoWJBpePgYKkUn3nxq6913j+LiKhzeheuQI0LRhZu6v8vhAKDGlwvYeHV1YqBoEHQt
uWZESx0yMHmk+LVd5oW3nnJh/DfW379d9iXlJ+cmx3fuqZUt3Gq5N5rJzMylIyNT3t/R7EvKT87t
Ht+5+4eb2jvt/i6H655EF87jZzNzRAjRjlRjdXHCunzQedVhb8/l282+rNPVxeKCP+h4tfVMaxSs
DhUWJwf/Lgn2W9K7nNo77f5jXMl3jPpt+ntA28253aa/r3Qb9fcj3Ub9/Ui3UX8/0m3U3490G/X3
I91G/f1It1F/P9Jt1N+PdBv19yPdRv39SLdRfz/SbdTfj3Qb9fcjvVUFdaagE8Kb1uvepp9IYghF
FwR/qzZvinqmYGYJVpqgtl1lfZt+Eogz6KvAzoG3Av5NUe+EsNKEqQWI0x/Jxd2mHxHZJgBAtQDV
N7/j9E1R1wRKQ5zC//S5H8Gl3aYfGf3+b4LSb6OXt3Vn1H/yubz+kgCAgAAAAYEoL/pDANp039Om
97T1I9yqDRBphsgQ81MhEENyLVF3Rc1jNU+stGFqLWwlJDNCRERAACBtIFgGrznQXxCeJUBnDOHr
f/HvNJFUWmkQDDgi5dS9mI3RCYAhIkI+OufIGeMcBWPrNylzjozhb/7Tf5akWZZRppQiiBVfbIaB
xHZCYZwmqdIAmhjhhmmMCNgjAMBN9ZEExJB1J4sI+eNGEJExTUSkOUetCQC5zrKwPXX65WuvfHfp
yqvVAp8c76tU68i4IbhMonazZRtwx97B4T7Ls7KHP/Fzu+/9J9sBdFuody+aenj3vkQAAsC36Hkr
IqLNq4DIsPsfMkQEEBwZYwgomFBKZJAJUgWmDc8A0gSQaBZlDICYEJpBrNHQYDEmGCAAQzQ4RyQO
hECAANDdVV38EQAwvwxEYAwYAmcoOHAEhgQAWpMmSjMkYDMLgVRKWDYyM0rSZhiFGfqxilOtiWkk
onw5Nq1Mvoe3TLMLPwEhMupu8d6agAatGQIxRsh41lm7MXXj7IsXX3kc45XBqnv/sZ2ObTOGSNpv
t9NUmqZZLJdGR2qf+JmPHD4wefKlJxZn3qY4ep22iToA0ZY5rP8m3W3Q46E3tNo4tHn+W87fa6OI
EEGgIMRQwWqcJRkGaWYJqBZsS3DT4IrgRjOONCjSkUwMzk0pTEGOwQ0ODIGAiIABARAAISB2f4Co
94LudkNExpAzFBwFQ8Zy0QW5LFNEmnTDjxQzKM0UUidIOlEaacqkRuREgMiA5fPucsQmgJG6Oy8H
G7vrwzDfdkAEmHMOCqTQb7Wun5Nr166dOb42d1VAumewUqnstkyDMQRNaRw3V9csS9RrFeQG44Zd
rI/uOmAVPNtxL527tD3Q3xGv3wrMN0K4mejtGtx0TiJCQE2UZkrKLEqhYCpgQpiWbRmuJUyDJ5kG
CoGAI2NIidSrSkqltBa1og1MICkC0kRA9M9/+7c+fN9dn/uLv/nGt5/8rV//5Y/91Act00xTudZq
nzp38auPPXFjbp4zFJztntjxmZ/9xP69exzHbnf8K1MzX/jKo9dnFxDAct1OygJJYRwHUZJmWgEC
csbF+i29uGmhukKwx+/5AejKAMzlOQEgA9CaASAySoJwaer4U49ePv18gfmDfeVDk5ViwRNCEJCU
MvCDLEkF5+VKkXM0TMstlrgwgHFuOG6xDkZxzW9tZ6lhm6gzhkDYZeUentAVnl20YCvHd9cC199s
3ioAW56ahTe1z3SXRyWRJm2aGrQOksgyDcZRZipSwBjjCBwpA0gUpJFKFUnNkkxzJKVJadq4FAJE
qFVKlmnO3JhbbqyN7xj5+E996MH77v7tf/77zVbrzsN3/O4//c+F4FEUX5+dLxS8e+48/Mdf/JrU
mGlaDVTDD0NJikATA8Y5AhHofAWoN7vur+4/6vIwIuSPCes9zoCISCNDgRpBkr92/dxrl44/tzxz
tmJnd+/u6+/baXAuONNaR1EYBD5HdB3bLrmMISIKQ6AomLYDCFLpJFUALAP707/yG7/9+49tB9B3
zOvvVIvfit7CGNhQjpqIiKJMSy01aaWJp7lcJADGObMEdwwWSRVLpbWOkzTkIJXWSJnSKleTvYtG
Urkyeuxb3/nGN7/tFor/6g9/f3ho4J5jh5/6wQu/9eu/JgR/5vmX/vQLX/IjGaW6XCnPLTUImNS0
0EljSRoQIBfmrLf9qae+8aYprNumiF3EkQAAGEOl0eUZJe3l6QsXXn9++uyrIm2OD5b2HB4ueKZh
CACIw6ix5pPWjuvUqhVDMCG4aZpM8NyGkIozbgBSJmVrramzwaGhHY3VtW0CsD3Uu6u3sYbQM47e
ArfNDL254U0if+s5tnzI+UQREXBCyCBfO8w1MkcyOWhFwMk0uGtwS6DSWufiHRFynQoQtVcvnXy5
vfpZAFiZnb525mW3UCQlASCL/N1jI/VaVWn9+S98NYhVrFiY0epcIyPQpDVBkAEg7zExEKACxoCw
d/71q+2ajthV8oSYx7wZEtOpiUqHrcbs3IUrJy6feC5pzQ9WrPv3Dnpuv2UKIq0y2VxtyDR2HKdW
LgjDYFyYlmGZBuNME2pArSFTmhDTVIaBH/rtL/75n59+eXRy58joxNh20IR3wus5g/Yk+fpu78r2
txEBNxkGt9QCOa0f6kpGAAIkQOoaxtSTBcAQLIEmN5TmHMlAzXqKhyEiKH95Nuq0AKC1PC+bi6gz
APi1/+gff/KnP7nnjjuq1Vrg+9/86784cOxuAGi22ourHUmYKvjYg/d+/IF7nn751Jceewp1JrIE
hKURc+GhCLbwcn7ZkNt12PVkcxcBGAfFQUESzF86MXX6hbAxvTZ7veziHcOV+p5drmszxFRKv9NK
kpgzVvJsu1rQmmSWIfJKtYSMARABITHSyDhLomB1tSkV5TZgwXN3TQzt3zeRJtsNqL0jCd+VzL2f
7iN03qTTTWL8h3DxNu+mrofLgPV2HCJowUBwQAKtSWugrr0MKktvXD4TLVyVcQgAqDVn3Que3LN3
ZGzH8uLid7/12F99/nNrSzc6jWEAKBcLaZq0lUmAo0P9H7zzwPT1WX95Olhdmnr2b/p27OvfuQft
UgIGMSSg3Ddn65Pa4qshASgmDNC6eePyyedmzh9PV64NFrG/ZO862F+vlC2DI0CcRL7f4Zxbllkq
lAVDlWXNteba2loQhfX+gb6hYUBGOld3mGUqify1RkNrzbktDNsQvH949OixOwH10tLCNtd12xIe
e5wOmyaKW+TzVoGPW8X1tiCnrS03lHzPMSIAzDcA5l6W1hoznftHyBCQIaksaq0sTp1zBN+9ezcA
rKwsZTLNT/8H//vv/T//9t90oiRKM8fg1Urx0vkzzdXVSq32X/7az//Bn35TI2YyBQB/ZTa4/rpr
8ZHk9eFgYfGlJ40d99PAYaM0SHncADY4nhB019rN3XE0GKTLM0/9xR8Wkxt7Bsq1YyOmKTKtU5kx
psKgo7LMMES9WhJCMMH9dnNheWlt1Q/9WIEhzEKVlQBNRVJriOPU96NUKtTKMoQCcotVLhxhGsAt
jY7jleYXT21nkWG7NvyGW9kFYd023iQHqLsxelhvFvt6kwv3Vu4c5XyyEe5Yf3OTO8AYMi4yAq20
1hoRARkAV8AO7hr5v//sX589e7ZUKk1OToZh+PwzTxGA7gJFBa8AjJsibUfhcqvjFTr//t/8i//x
9/6Pz37m5x568IPT0zODg4MAYJs4MVrrq5f+0Wc+dPTOOxtrne9857lrJ1827vxPZWkYtEDMfQ3o
BuWIKzQxbduWSMEwQF47+WRZL33g6KQQPJVp4LejOJFKFV2r6NrC8LgQlm0bpkUECwsL5y5el+ZI
X/9k38C4Uegzzawdy8TvJIkEQMMQpZKDpBEoVdqwHJnpKGwvLtL84vVdExOG2O4t5dvldQQkBMCu
Db1Js/eAhA2vZQuOb1D8N0G+RULc3J/yUKXgnEhvOMeIyJjUOpAkGHImNEBGIDOdptnM1NRLL718
6NBBz3VfP/7av/qD/3NlZSVTWT6uwXmapqR1vVzctWP4zNWZleWVr3/pry9cOPff/M7/sG//obvu
ujMMw3Pnzp46cSIKU98IluZXgt3JyODwr/7Szz766KOv/eBfmH3HKnsfCUpjmgnsxdgMTUtXX7v0
jX83ee8jgx/6xTCWSEIAhP5qksS27Za8QrHgJVIWC7ZjcWEYXAhADkwoTdX+gWp/x9j5cKHcZ1CE
mS/DTkupcsEuFBzGABknQK0ypTLpy6jTdl234FnVSnlgaKfrVhnztoMmbBd1zmGT5L0J1nV1dks9
T5vc85u4/CYXII9WvvH6DIamaSRSQi+onvdVAKlCYJxxRjpDlRUEi1vLT7z8zONf//8AtMOx5FnM
MMMkMRn8r//sv/69/+6/aEXJCmpRNcuW6Tjo2VwlYafd/M6jj545ccLgaBhWkqbExEq7XXDNYnng
gYc+fPXi8euX02Mf/Minf+mXP/aJ1Reef/nFU3+prb7K+FEqj1+dumKbojq6n2I/aC7FN85c+9bK
uVPHTX/aofhqygeH+6uVWrFkoOEkqbItZMgyLZARMkbAEYEbtus5Hi4VVccxqFgUhmEYhi04Q2QA
KCVFsUwSpbIMwSyXSwXPQpBZpuJEMWG9mQB9I23vuXQsj8nSzcATAWy2uTcdugWtx6220CaVcLOg
QARgLEPIkoQx5IxpDevmgiLMCFRGUme2AMc2XQ6rS3Mq9bXKhGCebVsCm2Eo03RgoIpMtwztV22j
Al7dRMNNV+K9qWEmivNMh9BuzFfq/cViUWkFwnAdx3ascrV/ZPfdA2O7z554+vWXfzA4sLNvaOST
n/rYvR8Mzp679NLL3+t0sqVzF61iBfd8YGUpjFqNqyefLZXsQ/VKZXw0itPrs7NJsrx/v3joIdMs
TkZxdWUpuXI5WGowlYksozhO/DBJkmxy94TnubZlmAYXgiHjSqNMpZSplClpzTnzXI7AMi2A8TwY
kCRpkihC3jfQvy00t2/D52Isx22DRxGJNHSjUPneeJMzbHEAADbF9fENWnyd8lBUN10GoPPUWa9d
N7zOABkBInCupN9cWVQqAwBTcM8RQSplkhQ827R1fSAdrKRXI9kmEquG3RftGcbKsCFDi1J3ZFQu
rXRm5lZ80l6lHiXSNA3bdS3bsd2yNLzD934qaC/NXD777NPPlYrlid37jh7Zd+jA7nOnz1a99OLU
0vPf+1Ig9aG91YF6zbWtTGuZxASq3OeMjYcHdq2N8ipbvYpQnNw7tH9f3/efWn351UacmIwJYRh1
r2KahmGYDFBrkhnFUSKlRETBmefaPPdDNCmlQIHqrivTmqIwJk2V+nafHrw9aw43odJb9jxpCcCR
NplyW+R2L+3RkxPdPGf32PrJb1W718tarY+Yow7rEiM/NwOByJA0QJLB/NXLkd8CBM6YKyCSWasT
lj3bLhQ1j4OgNVDAu+puowGBkn0tNKmNJcMd7dN6tEq1SmPRdqbPXVyJZOa4Rc8rImMEQKS57YFh
Fxg7sNfft2/PNx574qt/9LlCqbBzbAdnnJipSbtCjg5URodrqFXYWUsUmMiVwcpFuKNf9k135r4S
UbHqjZftekd5M3tr5qVilnqDXBiMcUTUSmWpTNOUiADRNA3HLSAigiat8rXLoxcclFY5H3GlVBAE
RFSpv6e8zrbYYgS93EIPwC2KnRDXkb9VnK4X49mEL205ePNbXN8Debitl7bO/+WJFiKGOjt76niW
xAggODMMc6UVOIYoeg6ZQoMcGnSrxUSniZzFviHPbgTosDTJ0AukbNvOcKF/cILJOJYXbwSFUo1I
K6XCwF9evN43PMGQz88ufun//feF6sBSu1Wr19daraeffQGBBUGUpJlgKgvbiwtxybNLnlPS9rWV
lWU1f9c+s9BJXz+hlpZK3oTtCXck8PritcKReGdf31JQSDOdpDJNU62VIbjj2IwxQARkmrqxAWSg
lAYAQmIMNSEoygNSQOD7gcpSp1DZHujvRMJvZuN1GbvVAt8cw9lczrHJ9kboxlVhi4u39cSw+VMv
t5F3ZYiA63uimz9HIoQ0PPnCU1wYrumUHJYkMTLzwFj9nn0julYCmLlv7+r9u8v6hvraxba/EO7u
R2/S3Xsf232fEzTYt77wyic+8YlyvW/mbO13/rcXo7RV7xt1atUP3T0xdfGE314ulvt83//qt18C
DUOD9t0ffGjn+KjjuoGfxMl8c2ERERGMWrVgCmNldTVu6mXW2rkLCnpVBs4rl8LC0drRTz+y595P
XXzusSf++InxrBa41WbYBEDTMouezTggcoK8VhGpG4vSXb5CJNKMgdbdKFEPFeh0OqQzFFufRffm
tF0J31XMWzQzwEaAdAtQRD1Eel/eMqW+HvDbwuO9Hpsabpylx+XdfvlOz9fjxsUznbkpx+AMWRTF
nThzLXuw4g1WCk3SS7Pqu6+2zppUaCvqULFaaiSFpcuslLJRCozBbPbyVPuOU47h1PucTz28D/vv
OXnxWsrM0bGdBw/u1yRXVmcvXLwWYiGLWvtLRdcxhGPV6lXXVUmS+p02afIcu1IuxoleC9NQpOM7
s8M7VS2jbAmNvtq+nfWBWrGvVjLv2bN4fGcjVOB5xZLH8+AS5UlYToSpTJJUpjLTgLVaFbUk0owx
yDkPdT5nRETGAcgPIqVJ3SIrcmvaFuq8t8zrlhet/+rGZqmXVcL1oVlvJ96SNpvr621oU1hmvVFv
t0FXl/eyWOtKhCFynZx5+WmeRUzwJMsoU4h8wIZqwYilXF4NWVC7cXXhOotH7xg69mB1ZKAkXA+x
UpmJlj//mvugMA0XMZu/NM1EuWgnr5w+YdfGvWLNLQ8JtxZHrdm5haWl+Y9+9IH5mWuOR1IhU4DA
ucBCoVCpluIwYlyYlq0AYpu55c6xPerAiAjnndeuBCavozYs7k49/+jJkyfQ9A8de/D1hcRhXCkC
YopYmmq/3VlaWFxZXllbWw3jpFTte+SRn+J8Q1j24h/EckVKAAhhnC6vBmPF6nbQhHdQS7MVp01s
unHoJoW9tdXNbvwm369rrN2U0F2XBj21AAy7YfZNxyDXf40rly688pxposxUlkkEbpvmUMlwBMwv
NRYWE9cqz3BWGRkY2uFNDsrRft8sueXh4mW7FF7tc8+kD925f+bC7PLUarUaXJrGmflwoLDTTNM0
9s+ePHHxykXLMfr6S17RntjR31haXWsnGK4IYQEKYOh6rsoylQEhayVtaTUfmFD9hWR+WZ8+BcuB
VXWSTrLA4fKNU5e+/ZUX941hfWLMtfqVxliBQkxTmr4+f+H0+aW5Rb8TIHKldRwB6Dw42tv1gAyQ
5Z5Lj1ZW155/6fixdLtP7n4HNvzNtDXZus6u0JW4uT3/Fuk4XD8JbDLZeufOzTdY3w1dd4Aof0P5
fmGMGOg4ePWJr2d+Q5icVFRxrTiVlsCBWtlxvEvTV9c6mI4Pp5Wyw6WMwrMXYqSSf21tVJpGte+b
tnhoxLl3rHjJVxxbjTCtjRzYgaQsUal4WlOSSsHNtYavtBIGr9aKrmt0OnFjtdNotGSmwzCIozRO
tMpYJ5AnV+Y+tDPus9Mbi3xmWrQWWMEtxYl/9fLV9kV/xx0fHxm7Uu2jupmNVZKsOPzihWYzFdww
ZAbXrl2nRAExIuDAlMyIsJfty037bv4+l/eCCwKtNKysts+dv7wdNOGHQP0mzl23y3pIb5job1s+
tRHeubngDrpKK58rEOtNdV1+sHwjMOQ6Xbx4+tKrT7pCyzixGIz1V6cXFk3UfeVCkshri2tGcaho
WCXX0WnTEvULU8uTk/1hJ3jl+y/dee9BXeXX4vTBkb1uk8uZ6WdORNPy8sToRLFachyj3jdw6OCu
dmeFC4oTGQTxYquTpNoyeL1eMEwexpoAGyur7U5QKZQKDva7zUErXriBT5/w1payybrneRmowGT2
6681v3Xhmy9cVw/cMV4/sKfWfLHY12J6ANABxsu1fsN0lUzSNDUMwRGyNMtkZpjrAazuQmHXztOM
M6VBa0wySNV2g3PvwJqDTexIPS7XABt7YLOjlteBbrEDNqKzuClTC5tqUTY5aeuH8hAMMdZ1IAlR
g2IMucqCxvL5F5889+Q3qLPITTPVqlCwlJIasGTzStE5MzXPMlngiYyC/sFRN45Hdw1fXel4g6Ne
uexfWRk/sOcRp7105tXjjz9+fmppcdVeE+6JqYbXJwuMIyJp7RSqE7v3X7p4JlPkuA43zDjJQj/o
BHEqtWnZ5Uq50y5xxpgG0mqHE8cRnL1SuDadMmI39JrIWJ8jR8cnX7rSurKqD+6aGB+or1256tao
xVkMBYFaA1iWVfC8IJIgBGfdkozAD+xCiaHKGZ2IEBmizrmMNBIBoiatMrlN0Let13Fdh3YhB435
hsCtYdlN22LTGehWX0JPo7N1F6Q7BOUarCfeGYDuyTREBIqTzvLc1EvfWTn3HAD6C1cM04iSxBBY
KbpB0CFkfWXPb63MrzULFjgYJUFjpH/sjol6yQzSlHQa7xorcdlxLToyKaaaaqzfboT2s2cCzQo7
S16t7BKAJk2kAc3hkZ1XLp1BhoDAGAihHVdwYSeJIjT9wDcMIQSXUcIRRq2w0eFPhhkAACAASURB
VITLM0Gcilqt2O4sdRKz6niNphwY6j8cNx/+2Y889Au/KMKLp176disxMyU0CCBmmobjOBE2Bc/D
kggEURgDVhEVAGha54ruQitFgAhIUmZZ9t7yOuvK1h4HAkBe3tAz4noR1032XdeT7qFOPS2wgf16
6AU3QvS9kpneF91SZkQAzRB01G5cPXvp5SfS5aslBw7u6r9ybT5NYsMwSSvLsf04TVJZc8yBAm8H
kQzaAx43DOKOxZFdm149/XojbKn2hRtuZeeZE4uW+cIdR3aODtkCw0Bli76u1+0D+4aMQjHPeWit
iYAhYwgyTs6fvaZJu57XaPmVsuc4NhOWZZqloos6DSHzCgZrGo2GanUwU9TqdDxmSIVcmNM3Fq1S
lZvs4qs/OHz3USdZUsZAnChAzogQiTFuWyZjTDDGETWAJorC8CbXJi/TyUtsAQgZQ9JaK5Vl7yXq
68Bs+oqQet8S0kZOHHoR926uhqCbJ2NdQ33D1O9u3HX1sdmk6xnqCIAMEBXzm0uXTp59/jvR0rWh
qruj30aum83OjRtznBtZllmGcG07Dv2S6+4brgx41I7AM3TVQ6KoINpG5py/uoiJOlgfrhf32/b+
g/tka/lMZ95oLs4NjY0tNtrCsEzLdFyRGqYLCASZUlprxpjBWOxH333syY4f1Op1s9w/NlqdmBiu
VD3LsixLSEv4LUXAOJpIUgMgwySVWRb3G1aapE7B6PhBpT642Gr/0b/+lyPDfXvuOia1RiBEQFBc
GLZtQ881z+vp4yimblX9lgBnNxqKiMiANGkl5XZF/LYjsrcAvcfhN1fUdK8LYZOV1qsz7EXTNnZH
7+se/Axzo4EQOUCBgrTTvnzihfMvPanbS+MD5fJ4NctkHHcM0/CDtN2ODNPstFum4K21tXrBHq8X
dw2WXErPz16rOdhXZGkqd+4Q0qJLpiUEGSZx36d04cMPj7eb8eqN5Y7PkuVCO5Z79lSIMEMWpFkF
kQCV0kDAAJUGQM7RSIIkMOPiUNnxyjLTuZ41DMEQCUiTcMy6ba0IFgtuZooUslYim75iTIPpPX/u
BnmjY2P9BaPWSrQmQlC5QGPMsmwbeqmpXKUGQbAuMwl6uY0c7K6o54hAWuclQO8d6gx7QGwBbD11
3svLQI7devK0J667fvZ603XRQESsqwq6fA+4Xmqv5s6ennnhK9OXzldM2j1atyqVJA4DPysUvWqt
atrOa6eOAzOSNAFEqbSFWPLMoQF396Fdr712drXVHunHogvo4UhN3v2R+186PRU2g5AHoZo2Kiah
7rSbC0145Xxi96m1yDYtkaSEbinNb3wBkloDQmNl5eLFq/MLawyZa9rVSi3TOpWqsdrq+HEah5CF
BjeISAOTUT1od2QSqSzJZ+YnaqFNsYwMkUwtyzVN564v7J7t27FrWPSy2EQECK7rKk2M9xZX6ziK
NGnes6KgW9WCDBjLGY94l1/Ydp9BsV0b/qbAXM7fWwK0AOtxug3rfGPfdDcEYK4ZuuFHrXSeQMzn
0UvKIRExyNLOipM0hx1pCIyCJljCcYw4Vp1OZ2hkiBlmx48QWZrEruuEQeAUveJA5ZO/+A8+/cs/
8/MN83/5r/5JoX2ZSJYKIvFbJtJwX+Xc4tpyR51ptIwTzd27rOVlcXKKraod2YqKM5RZZDkFcDwd
xpo0AJHW7bVGHIWDQ4N+qCzBTUClSCbJ9Rvz+/eN1ut9Mon81vLK4pLSRBozY+zK1fMsIYtBvWwK
xtJExVq3IvXI/RMDVLzWMUyB9951yBCctNqc3bAcZz3vkHNQFMeZVNzEXlUhQ0RCYoy0Stvtlswo
y5JMqaWl7f5lr3ei13uplk2Qd8X1BpffOqq+IdXXFTYgERATjDbSaJstO0ZoH/jwR6aTNXbqe63V
eW5YQyODSsmr16bjRO87cCiKpdZKykgriWBxhlKnZqWQOEacrI1M3P2b/+3v/M0f/vd+qjvL6dyq
XvnaU0mQIGmlleG4dxyyhve40cX+csNuKtkOolKhGPqB51qBKURItslBZ2kcLi4v7d09ceLki7VK
seyYCUMURqFQ0CrxPM91ncVWy7IcLowkJUValSuDY5O2uKYtLJRQE3Q6KCPpmK7U6d69k8fGDoPy
TYFaZ6BzBccAkCGZXo46ASARacA4TkgBoAEAuckmZSbTNI7CVtsHZlq2zZlyHbPct92/lvsOIrLQ
Ndd7Mpu2HF83y2nLrQHrqHd/rzN03rqXhQPo+W+sZ9QhMkI2+fF/WHPT6TMveRYWisU0TcrVGgt0
J4wZ45zzOA4BKJMSEIIkyjhba/rh8iJLX7v72J6TH77v6ce/L8ATWFi+usQgfuCuyp37rQ98QI0c
SM0+OWFUEja8+O3zccwYUbVSFByQMdAZaqUok2liWQ4T9vT0rEDuGMzmKJER6ZXl1XanXi5V4jh1
LGTCkAoyIDRgYPeOJJjj/caKw0NidiEr+vLg5P5yf60wtlcKx9A+gs5zpZTfIQoMSFmOjUiZ0igA
OBdMIGDQ8WPJZSrTJMmkBADOkCFYpmXYrus5DFMAIQzrvUS9F5vbFB96w+8N4OEWzL4Rr13n9R7o
6wF12PQpV3aAwJGBaUlixESYKJXpick9rluybEEASqs0TZAxrZXUCsp2k8UFCBef/kKbkuFDH9j5
wIB7aWefMocco2LGA4WkUpCVUmAFVnx9NF6xObBDY6ryc3sef3amFXkMMU4VYyyVOopSx0SZZXHs
x4lfrZeSIESGRBCHcbrWSuK03YpwlBuGOT1zXSaxQAANCVBUd9b2jTbstGMhGsaI5dakMT6wBzXd
iBrlos27JbvQK0nJ6/3JMphRsEzDKBRcr+A5jm259lpziZvcNAzTND3XYywPUZOUJBU3TJs0ZQqz
9D2vkd1qx90a+9wgucnax56yhw290Ltlvae81j33vE0vuwag28tL169cXV1ZhbJnW06lXAcgpbIk
lYYpbMckINIaABQot+4Fem3+zMvn/SsPf3zSHN/Pvvfl3Sw8OsaYjuI0q1StalkXCyYzzKStWCS1
FbmFdLRP/sNP3/nqWXbh7EUlDMaQkCFyYXDG+PjOHU8/9YMbs43JHQPIGBE111qtxpplGidPXmw1
20ePHL50eWZ0ZBhMsSqz8/7iounH45ZC00aFoNo8me+vXrCtYT++YqZ7TXIz1KSJKA/oyTTzw7DV
DuMwOnL3kSRNNGW1atnzbMu2hBDIOWe96hYirZXWGjlkmUozpZTKMkyz9zT7wrekX3ocTwC9qqYu
6r102E3UTaltSsaso56/3xzJ1YwTckMnLG5duXjhylOPlY1m2RN99YplGnEcCUNYpikERwZ9fbWp
qWsAiMIhgw093DfbPv3lH8z+7kNDVsXmwdW55YmFxbOjTrrs604kH+krOk7mFjyy+8OFtqJ2qaKl
XUlK9w0f/aVB99WX5MUZnvU7wrM8AgVgE5FlOosLa3Nza+MjQ1xwAF30rHr/0OTkjuGBkiEEoCBu
Ss6smvNcsrTsh9ximjJhcK9YNC1bk44om7PjBackGK66WLccf24l7ag0lmmaKCURkXFeLFi1iocM
GUfBOQCw3JUFIA35PTBaZ1mms4w6ndAPUyE6UmZpClIuv5eob825EeTKe10yb+F+2txuXUBsCi5t
wns9OoO9pz0AGKibi9ePf/+rc2d+YKAq2k5xdDTotBHAsk3TNFl3zxMiRVEoBGeMC9ReH+zaYXTO
Ahl4fVk/+v2V4PHH58uf+sDP/rrIWheffsXUYYdqojphTOyxhh5ZfuaLkhkwNl7um6yO3A/2jv7C
64eHVpeHb4wNTFU/lLYefVD6VhgGU1emnnzy+ctXL48N1bUmhmSZTBgcQQqRCWEcP3469qN20GH9
1M46iMiYkyUylXHMhGmVPMezGE+U9Ex/gMv9+nqfh1FJL0emcJ1CweWc9Z54wbTWABpZtwxcZqS0
1kpnGSVJFscyTbMkSZIklVK6rssQGZBgWmxXrf9wOTcE3BKM2aik2GzGbXHrtorxTahv+IOIwJAh
kGmaCTHTsgs6MDi4nmM5tlfwhDA6nXB+dq5SLg6PDRLhhz90fxiEK8trMo53lfUjA1qfg6UsO3l+
ZX7RBQ9r9xekWyQ+2nfQ4Sqa+OiHdx7bh+5oZpTrd/KWH+w4dJfl1gEcIG6p9IGB4AOHWyYEatn5
v2bWwiCs2uzlV17O0s7YUHVmesYolkSlCoBKacsExxFxnNiOcdc9R7CMp5JzAiQKE4Wp01RnqUxC
laUmq5SIVcKIq9U7nal4Nbk6ldQYDFX3BnI0ST0ArrTW3RvvtVIUxTLLQEqdJDJNUikldNMTDJAD
CsvipmlLKbVOhDBM07DtTX/3+d2jviUH2ns8Ddvks23+fVOvHrRdZ7Nnn6/vi03bIr9ZDbHa1/fQ
pz5z6nGpF88XihXLNvNtp4EtL6+98uKrx44cGtkxBITVirdvz0QaBo3ELwBzlsOxTHeUDjOxtJKo
RFU0rLRTzkFnSobBlZnlvcfutUWFgxWDc2P2cn1kst8dIp0iJtHyDfXC0uDp4oK2X7+CMrZL1bJX
Ln/6s7+wb3L4wvnXG62g1U5qg9W1dnTicsN1PNLgeu6RIwfm52eD9MZRb9U2Y8uzLBfjoJOE/koi
gkAUIxxK1KCDZlnPrcVPNlqx4hWdfnjo/N5hbzZgcSKSTCdpFidJmqRpmslMcy4YMmSMMWG7FmdI
RJnSBCC44JwDQZqmruvYto29Jzq9Z6jnep22VsrlcL4Z6rhFeW/Cf53XN2Q+rHsA3WwLskKlNjwy
tupfdzyXs3zmHBELxaJlu6blIAqtSSvNUA8OFKRshe2kca1VBSxybPlpWwFTAYEEMAzBDK5U6l87
e3LlrkOje4vcKNYHhy6ce23qyulK1VXRqsGW2wuvXFyq+5fLq2ifvrTiHvFMy5SZShL/6N37V1en
NAPLtSvVIl5f7Lx25eL5c/sPjGcaTWHFnZWK3b5zUugUFUrTU9I2U0MmypxZDFqLM2aGkW1kNfOC
r6eUwVyzBazeCPYN+GYQ3FiklioBAmMcmTAs23KYlJIhCkMILhjjyIUwbNsygLRWSqk0k1LKJE1T
rTWifq9jc90na8AmgdzFdsMMuwly7D5b6ubGCD1JtelIrzJqvXcYhTNXrqSrq5pY3bSBEBlHZH39
/f/oV3/l7rvuGhkZXF5aeuGF57WCWrUwMHBHc+nG4rS/o2QM8nSWG51IujzVYWtgtH748B1nDHWl
NRutzJ5/9fn6QM0t9RdrtY988ufDKAyWLz3/t/+SyfaNNb5s720apSiFOREMR1GSxs215uf/5IuT
E0OBn8YpMUTOYWioWip5Y2P9/X1lqQSCUEknay/Ovt4II92RzFdzMwvReD/bUXPS+YbqsKbGYq3W
Xy5lPmKWqCyLSzTVUs88+9Jv/czPVorRM1OW4Ay5AGScccs0Lcs0BCcArXWWqTSVceSHHUmUMQTG
kHNm2cKxPdMyGcpbmtI/POoI68ZWD5cN2hKN60bTEd/QDG/m9bxBr5x2s5InAoOzguvEXsFxHU2o
NbPt4uEjhw8cODAwOOhYjm05QDqT6tXnXyy6rmmBzQb9xlxnMaw3FGPGCkJdkj998UYwd+dA52NH
SzBL4apanb++tjwnLEeImukNWh4uPPsY78zeaNtXouGOsoK07XfiVhjwxSXTNL2Cd+HS3MLiaiYD
mcalUoFzhgxs20FArQmRI3DT8ZRfC1ZHpZRSm8icxsLVEnnQpMCXidQEOpRJAMbEniOmSEPdnDeW
UXVIpxb4e0fdqWRYadJEUmVaqUymgR8prUhrRBRCmAZ3POTcyb2ePG2dJCkgGoaB+TM93kPUOXaR
76KM6671JrwBII+s9fIr0E2Q54EZIgANXeWD+VNe8kDkuuPe6wYIYPJCsciigmWbhObOXXvvve9D
uyZ29tUrJkfTNAkZQ9y7946CoKDZioQ2Lcbs/qWZrOoHIzyuWtyheObqy6tX5GV4YvCB/VZnxrQn
dZaFYagzYmgCuqB12Jpbib3XZsV82NEqRM41YJpkoIE0KKVtx01kqhVjZsmPIQ8YCG4026Gx0AIW
ciZkGqsMLWZZkMQkBbG7dtVYFnVaQSfKUiDHptEdtb0P/fzwHfcxl9XL2ee//yfXVl/yHJidW46s
gc5aQyoNDLjBDc5cm3FmMGYxlv/ZdkDIn72AqudBKU1csEzRrXIi7xp1xhDXVThuRGIIaD0Lm7dY
FwjUS9gQAgdgABpQQf48n9w0yB/YApwhkM4BJ2Q6/58zyzaVbaNpu17/5M7RcrlQLFhR2LGsKgBo
DYxhtVIpO4a/mnaagXCMuOCIocGEr43KcKyvbI56o33uq8enZOwbasFUy6Y3qW3LNCzODIaWApZB
0tH85DwtxWVhmGSA1sAZt0ynUCgUikXTtur9fQYnRFJESSqTOIrisFBwhCkSybIs4SxNkzhuxzpR
O0xmI+ksSVXQDqSfKLOAlaool3DnbqsyPppyXI3aGbN+6aFf/crK6Qcm7aun5pLSWKFkmIIjE8SE
VpmSSZalmQIhDMGEECLnPk3E8lBu/ggUBqCAAAnYG+8Ifleob47SbC6DWVfsudO1Yen1UM9LK/Kg
MREJAGSglSIAmcSGYQiSKu7sHBwyDDPMspW2j6YtNSED0opzoayhzK63/Wjm2tSOkYFqtea4BUSm
CQig02kkccwZFhwniiM/TYkDVd1OueIVcffC2q57Ji9dXZtbmk1T9Eou1Mo4UAGLK4v5FAXZ2qx/
9Vx9aLEy4mjPETZwyrIsTmKlkzgJLdcy0BQCSMVZlmQKgLhrm55rNlYSZLpcLqVJItM0CnXLT6SC
Ic+oumJ+sRMEiR9DimrfQVcXUi1E/4hneJUb7esvzp4q2sYvfuChyYnhOw75VlY9u9pvkbAFRQk0
1oJWswUqz5xqAEAGtmNUykXXtUArAGDIdH4nFGiGCISMca23+3jv7VdL5lnvrsLGLdh3tXZ+C2NX
5QDorulGPE8s6EymSWd5fu7iiXBxWgfNumc6xfJK2+cHD7vFcsysp145NXn0npE9B1SWaSU54yGr
BxFbuXbWSlc+/vBDpuUAEwiMAyiCqYtnwsBnQAYCCAMAZZpkSscOp3n/SEd4Xzl1YLh2fmkuRA9G
9bPLF9ko/mBmxYkfT1zdFmsMyRzn5U8OznxjMV1LUKs89Ok4lldwuWCOa7uuZXFGikkp0zSNUx1F
WZJEBDpJE4a6UHAZY4tLjZYszDZXBsxgbc0PZLaW4MQ4YzVxoqlK5dL9blWQVXb6FKjVuP38mRcm
+l0VtVG7QJqDanXk0kpHaq4UrCwvrzVW4iQShlmt9g8M9scxFDw9OFDQOs0LldaVrSYNyDbFTd4L
1AUQR50hBwBEEghMpSXXCDVPVF6fyxl2C2YJSOSftNIAqZJXTh1funJh/tqlhZmrYafFGUMggwMD
pZEnSj/+vadsy/Asq9NqXXz26+Mj9YNjQ4IPSasYL5xNw85z3/36ffcctSwzt2cxr52N/Se/+RVQ
iSlYllFeLG2YFoBut4Ilg714sDJZMwYGR5786tT3nrj0sU8Mn0uWv3SjA1CaKOzywJqi1dFitcbK
6ZG4GBullz0RAgKXkizL8DzHdlzSWmsiBj3vySRIswxsizRmfTVDpsS5JdOoXnPXVuW1Jq8UVZhk
89Loq8u9dw88vRSukHeoaorCKDKzatV+bv/P+aGv9VrBvKC1HWau1MwP5VorNE3n+pWp6auXQKdl
z84Sf2J8z2BlYOo6KrFwz5HBUrGVyuGpG32GFZccn2OakCYGRDyvqHzPUFcyLYvYdWzIUh2HKo6y
9kq9bEIrMBPZjiS3CvbgWOpVtDC5IUjLyPcbi/NTJ18+/fwT7XZLZVmWKa3IMIw0k4iUKmJAyJhU
GKaif3Dsp++894E7jmaZ/MvH/vZ7x6/vPloZBZi99MqJ4ydVEp06/vr83Nyuvfu01oBSK/W9r/31
1LkToDNNiAQcUWsNWufh3aVMPX3x2nHXO1kpruih8PXZWrnz8XuqctX/xqrfP1lOwuxgaXSnMTZm
DJGbntl11u8E4nVBRAzz50wpyzKYMJAxQlTEkgSbTdVqhlEYNdcSMFBn2nFsAl4omH1Vm+loOS2p
yTvuHjsxstbZswenTL7M7B1FeaDkknlMk6GCZf/cqypes+v9Tce8YtTWolKqKEw0NwvXZ65duXje
c3Cwr+ZK2l0f2z+8q4+xYwf7l+yyV5WtBb/kTqehNz3Ljk2M9LE11WlkHDRniO+phP/W5//IY9H9
9x4ZHKiAVuViWZSFpsQ0FSNZRUmqQYurplZBombXgjMXr0xdm5aZzKRUmSSCSq2eSRVHsePYcRIJ
zkgp2zJIkVZZSYqjhbGHRg4Ni1JxsPKbv/iP/+3ffi6TM6tRfOPaRReBuAg6ned/8PzO8QlhCJ0m
p46/8qU//9Ms05lGUErkagXz2+ERiSxQCoxF6azFvMGstm//1eONz0j20Q+Wtd9cktJfXj1Y2zvE
Cn1YFqkolkzan75w9rU4ZsgUQO5vsHXvRWuIArk4v3Li9dfTJDWcSrFWW24E9bplWQwBOGOGwZEp
w4Y7JrIxEifTvleX5I4S3dPnVWr3aF3vXHp95tSTMoyKFS/wm6VheypMmSgkEoVht9fWpq9fBx1n
3FtrEab2rkrNvsICpUVtsXpwzvEGFpM2GuW6N7f06molOzbUVy0UijM60EwCvuWf/XinqE9fOD6+
Y+zI4UM7xgauTV8fH9+dpkkmEycOOWpG1G42L1+6cvLUqZXV9vSNhTTTjAnHtisDg6nSqcxs1+GM
rTVW+vrqKstSmWSpHBkeMjiXaVIM3QfGDtidmKjDTHuyOnhsctfxxnPTU1cvz/oMMNOKG+La1NRf
/cWf7d01vjI78+1vfHm52QiZiUjO/8/ed4dZVtRp/yqddM/NncOEnp48TCIzqCCYEUnmvOiuaXV1
XXDV1UW+NSuiIgYEEyZAgkSRnJ2BYXLs7pnO3bdvvvekSt8ft2eYwODozgo6vM957lO3zq+qzjnv
qToV3wJhSQFKKK0QwgohpJSBIptImrEtwQ3b9dPZ1aOD1T+OvkUb55y94g/lWheZPU/NdqtxE8m4
Jdsp5/H+8vyhNU91A0KACDQaH426iQYpdKlYf/D+h8vFAsWIOoEZiyuwqp6g1ADAlFJKqQKYgmhd
COMiVY3UQjeYlYolzLnlQnL4sd/V8nmgKhZLU2qE9bzy0j63lGYaWwirWq1UrdVmtKWrNTHfmD3f
STmWGSGZnxy0okg1jzQZIQms0XU1FfN7LYfmq1OVutUW62gmA6amR3Ylc/us3hmzZrS2dcSTiUw2
bG5pQwiUEuVSYWRw90MPPrRt67btO3Z6QSQ1am3taIrFASGDGabt1IPAK+TzhWI6mRwdHetoa2/t
7Boc3J1t73AcBySWwJen2ud3dcSF0vVqOKmZmakVigPDzA+aCkGZIEUxaCF+/OOriQqzMSOTyYBB
a6btaaQ1GAhcpB0pqdKAFAAQGRETsmkCPXGvHMQKFYJRrRKLSpX1G3JnnF47sX1e/x0jaEutPsOI
kgHLZJu7W1rnJ13WvLO/lC/EGwrBGAFCWCkNBAmhtmzZUSqWGSEYpBRRtVotlSsdsTapQCrA1MTE
RAgzIw9hdZajnaQZhKQk3Z2jfmnwficMEtgwsQU8qE0W6tViNSi39CyuSgKIAIJarT6jd0FHlpVy
1aTvqqmKX1YBFZXSuA+EhLFYNFUstQxuj9y020VsNxEfDEIQRO8erHWZ1coRHV+PJdLpTMYwbSnB
YKZWsq9/53333bv2ySd3bt9hMAsT6sazmRabS51KZw3D8rx6re5FGoVCasBRGGqluju7Y3Ys9IOR
oZGYEzNMU3Kl/XD75kecHVtCqWMajumZVSvQSnU8P1IYmZjEzI4nmWUojRSV2qUuoeCBFswOgXGt
NQKOiQDMI+FIqaQAydOGjJkk0ZosYa/VQUuqNDWRU9p8SFMAHE7u7kwlh254OJFwZ7xiSedbFuC5
XdS1arX1be1s0SLnoYdlo4cJ7RkZ0BoJofv6dwEmpsUo4hxRSkm5XOzqapcKADONCMKYYj4nyf3Q
iIlq/0htc4VMSBypmm1CzDaT1DARMbwiqVVkFLAKzSiiNaamiSCSEtxsS7wlYyfl5NMDNlHRRM4X
1SovByHgzekpj/hVI5aNzZ0/rzYGT+zuS87vpW3NlcmxyPfIke2Hz6YSrmNapokRKKl+cs01t976
+yiKKDUSiWxXVzcmhBqWwnhqqlD3wjBSpmFoqNfrHrOdltbWjo5WhslYMBJ3XULwsStXciVHxqds
t1lFcvPOHf1cSUrOPeX4wsj27U/2+045jWujUR1pwqiVaLXj6Vh+eNJOpAPQAccCMzTdY4A1gggR
hIiIAggDC8lYjPDAG6unsRmaOdL0xPAJRZFHZCuWoY5Ko8V0Zku2KroDH27ZOB7W2t4d8fkxQihW
bSt7Ox69bw2gaR1LDUhJCLUKI+X73PPDdDLmGCzUjFDGKFZKAcIKECDMCDIZGs/lVczsaXe32+nR
yKtrLKUoBFHk11CkbWKlEXKIZBZuTyV9aihBTGZwrZqbW8ByooArCS2tnUhXRLkSeUUzFdOaqFG0
acRDbnl2ErbsWB16mWyyiflecctOZSjJsOGwI8k60tKxLEapVy/HE/HXnfX6LVu2lStePQibUulU
OhFFgVAQhhwQBpheflMuFolpIcqsVFzJiGAUBj5CgECZpjE0OPT4k9tf8po3LTt55rwlywuTU6N9
2+TC3vrkRLI0OZco1ZF46etef/Ndv6eUJjoMrhXNJn1qAibKl41JPHu0wJHUIDARnBucExM7DCmB
hdHGIj/WX5hZEmmhg7hpAq9pvLUvZHxgsizjJEhQ1lFK7f7VvT3vW2V0gdKrXQAAIABJREFUzScF
N3poQ7eAHYhRwxZSgUJhKMLQC3w/EU9OTpURxm7CNgRWiFqGiQEIoVoRjBAmJIz0uE53M25pLiVI
wAoQIowy8GseAwAR5pWc0ppSVClOuVMFGhmE1QnGju0oFOlQAmCplMiYLN3mCib8oD7kxzw+N9kV
X7E4zBeJP2XqIi+KWqHelEpHTJfTTiKVOJKs7xrom9XRMjg4yCOvo7NbSt3U3FL1xrkWXsBTgPzA
DyNZ8yJCWb1WTiaTSkoE2jIMyzIxRlJojFEmkyEYKyU1aIRpz9ylsUSzHY/NXzGPUSb8eu+MNsf3
d//2ZrJmNXaiqDvZ3GsJGQH1FCfMZkoAVkpNr56aZl1pQBhJgsMoYkIaNqEgJKL5SdRsxe2RnSSK
ABMd07Uk3Si5N6kVgsDScQ3KD9TY1Cw6279JRMsjsWFN69qJrtFa0auYZNxyHERZGIWGiTDSbjxG
DaYQsh2HcKgBRgA84pwLEfEwFEGkPU4dIZ2KBg42trOEWlJZtoVdnNcsPzkVSYEIYg7TFLssa9IY
Qww3ZKgwZhZVQlX8qJyq+KauGF4s5YhBzUN3dHiqq31Gx+KTrahSfPpxywwqZdXUPaNpRlehPl5T
1fphL2o9LNbXPb12eKDvlptuaGrKzOmdm0xldg+N5abyQCimBAAFfiAlKC4sw8KAYo4bhD4lVCnF
GMMIIVAAYFqWApBKa4BkPIndptldzZZJ447ZnE5gSCKCwG3uPP9s5RI+sekXt//YsAlCiCJsGAop
LjTmIUEaNaZv4kYPPtIYIaqwxyUombIRAmkyJxybUqCKlTqXUoIanSVrF3RKLQem7Fo6nHK5/cTE
CZPVk0amepz05G8fb+4P7fF85EOvF8WIYZh2Mp21YrFMJmlatF4tW7bZO2dGPGYRw0KAwpooVXzL
qXIBYVD1varn+yHXqoBbCzpCzG1hS2PpltbWZCqOY2Z9Ln9685YNO3cUoypOYOSYtuFYts2kKQFp
hIqV/Hi+WM/liWathgIzLOliPo9anZbkCbNKcXfSBLsymRWjzVZd8shobwkh0lTPWrKwORsbG958
JFlHAJVqtVarDo2OP71xGwAihJimZVsWQaAlZ5gSijkWBJASkhAslGwM8vu+j0FgpMIwVFJpQAhj
JTWPRKB4Nmm2tyWlgqoXOLbJa54UItnZvOB979p80y/RpjsoNiIeMIQZ0cyGCFDkaVAIEQRKoj0r
XglGWICSkmKUsgnSQiud4IH260UlBCF1Q4930929IRdl2pOsZiT0GuPzW55aZ8FdO7um8p0K2Xxj
FEkn5s5sadX1Usi5H4Rca8sxpWaEmU2tTbGYrbSizAAFBEeZppZMusmyzJLkIfgWs5sTyQX5oD7F
h1KZXcMEpWhz3Iq5TkbHMJILlq06PtP1yNDWbTBeIZEdQ0hViQoB4/XDu7ZP9QlSUztZKpZMWDXb
UkHAd9TLHadkM7X+aielrWapuDmji0qPIx2MDQ3aiRk5XozFXhprzk6NjR1J1jFCGGOlJGjAGAsh
GuP81Uoll8tJwdOpZDKZtm2HWE5bZxtmyE27bW0tgFW56tsmi8LAsWylgDESeD7GuFCu1sFY+9ST
XWedHrONeMzEoLHJtmzZmsmkF86f87LTX3PPE1fn8nmqszMTcxziNKVSzCBb+/q2joxpBEJogWko
qGLaYEp7HAkRi1OEJGCmpDa0H/KgCZAHqK+VjHQx4dDaaKQj7bSqsbFCx8zsaLwYjRlz19faQ6wL
eUinohmd+LzTU7/+XdwKk3GKmeE6jtCgQVcrfq0wRSlKJl1DI6SAh7ValWzbMrZ79+5isWAwlozH
47M6n0rg8XzZtJMuAhjY3Zya7zqZ/ORkzavN75yRdohZiT82uTWWpAmCaEQe+NPqHaOjrenmel5y
N5Zoa14+d97UYJ+rQjTpD+WCmU1tnaP5ES8Sx0jNsmObpvRkNFwOgBebiVvdtrl9oj+RAYBpdQGt
D9SB2nf0/bBYV1JozBpLz/dOzsIYKQWYYEBG1Q+9MIcJ8Xk0b15vlda3RH2KQbZum5O2bZqUEkKI
Al0oFwcHts+cOTvd1JZkTd1dHaFXoyRjm8Q0mFLguontO4YwNTu7sqtOPO/mW66lUSbBsg6DhGnY
Bj1t5YpU3H1oxw5AoBAF6jJHgypbkktPiLKcGo+6XFt3ZKoWJn40hrWJdXGR/WQ3xxiZ2AqKKh6z
ZS105qgCD8nben5R3U6H4EzhmctPDN/8iodTfSJZxzTNGHORcqOqUEEoQlHJg+AtzU3plOP7YT0E
y8STE6Pr12/0gzAMAgAoFstNtsFZvFbnPveU5J1NsVq1mptAPAgYwqXJXGtb+7ndHWUdKK40wVt3
9Y8EpZPOWNXCU+tXrx6cqlUjOn9pG+PjxRya4bTEq8ak9lJN2bkmwfnEgBi2U+nCrtIkZvVCJRGr
ouFtardoR0d0TSujBEBPr3FsSOEgpJUE0AajQRhijLWWUqrxifFyrUpsnM/vipvYj2WaOxaBk0bA
izWf+xFoMjQ0zqiN4j3plNPV1ZXNphmlGGEeiXrdmzl79sBwbjJXpkiYmNTzrDI5njZiXe0pQDGg
WGvZ3pwyx1jk8VAlA9zGvBFGpBbKBJTJJnqXzFm0bB5zaahUbWT0pieeenieP/dtnfXq1LFinjBE
PohO0DMU2thJkx5CLStj6893rq66d9b9hckNzAg2Z+t8pmBjuLVc7ywUI62qraka0XM7WzVohLVj
mporl0XSr9cq5WqlIpSelo3AOJiqoIyDNHAeaYVMim3LYAa1DNe2TEaRE0/MbOv4YGfHtbfdEFlg
Y/2qJYtbnJT0wo7WpkT3vL6pcPVobMbMl9S3/NH0zJ5Fc3i95FfzXk0ta7V6Yt0bx8fGexapmJhL
WVL62g+KfuSJIzr6QghWSiGMpFQIAUYAWhJMMEKgJQaFYc/QrgavUrEis8Vozhi4Je7OjIu+IAh5
VK9WeBTW65VcLu9Ybkt8Ua5QiHiEMUghOOeCi2QyCYQsWzx7YvdAYWRk59Y1RNjHLpuTTjgIySgK
bIsRQgxMZlnuuOZF1pF2SxRxLjSRItOUOvutZy9c0l2rlwzg8bSbWDXHWdn9g8Hfz29e0lOpnuoc
OzwxMMTHV0Zurm4vEL2tuGOG3UG67R3+7upiZ5NF8saWGg97E+3NAzws7t4UhlVAXq0cYMSlwgQZ
FGyD2MzsajKRgcfGIpheUQwYAAPysNWabUHluhKCIO3GzGw66SZsx6KBVzdMI56Mp5LJ5fHOjR09
xd2j7YTFOIfJQe2HM02p7BqOiaFCval79uBEzaZk3Yb1KZssntU6ODy8a4datGDWse1tpfywGTMz
DEHk67S1I6rG8RGdGa2VAtAY4wbjaHruusaUggZKiG1bnu9LNS2EycPAdOx4MjOvd968hfOmdkW5
wYGdOzdi6XnVSujVAMByYnaM7d69q2dmsx9G6WQ88H1KMGgxszlGCgJj9NLjjnvysSIhZFHvrOLk
oIlEwiLt2cSOretNpS2DZdPlhMzFMaoSO0J6ztwuX1QLxdGko9tbM8hyNKiXn7BIdKpYGG3d9ZTT
0t8FEx1dopWvX9bkJSqby8MxJ9ZyLHN3D9eUnSnaYaB4Uy0Z30kLo8WC54NJMTMQQvlSteaH1LBN
gxRrEULYjcUs10onUo5peKFABFGEkFJmPOY4dtx1pvJ5z1NSKIJwIh6Px8xcFBgmaWlpAoJczDpQ
4uHH7mxx3BnNCc2r6VgM4cgmpKvH9TOwefUjtWK5jDSIsDnltKVj6VRCA3Ae1uuimivvGBg9ccmc
5iY7BKhTVfKP6C5+hGAAjXFDyXJaeURKiQAwwQhp2zKVFEEY4sb0ClBSSsD0+AWzrFhISyMLWmKV
1vTkuOfVKjNS8RSjIvSPXbVcy9DzuevYSmtCiRDcYixUYFhmU8rRUUtbc1PSguLQjvkzWhYsO6Y5
kx3v29rVYq3p34EZy7IxWg91BPF4jMcdX9bz+bG4VTeSSjZbSDuVQrErYZ2YtYvltfNW+QuOQYWK
J0u0ubPsgOlm/GWzCLKHtu40npiQs+uzQwZxSOQ2lke2jOZLYYRUitGkaeVLJT8Mp8VfBAkDzkzm
R1U74JiQhb1zqvV6bmpKcG4wy7KogbXFsMFQEEU7+gayMVyv5F2HmSbp7OwlBEspB/t23nvHA9Wi
72BrS//w8Yu7m5IOD32LgR0LkklvhBeUDENNtYKSJ7b0j56yYk4maUkF/UOTuwYneRikXOKyiGGL
MqPs+QDPLEE6YIrFvpW7w5tVQbAQotH3pAEYo1opQghCqLH6qFIuY4wZpQghhLGUSio1PDayef3j
q45tn+tUO1qbJtIMRxmb+zObbGaIXGHisYcfbW5p27Rt14zO7BkvPcG1mUYoXyzyKGiZNS8qDQ7u
GNm6aUs+Y9g9nZVqFJXrT63dkHRY3DVsB9XykkwWIEBBKJRXb0rELKpt27QpQjykCBACg2K/WknY
E5mOoFavYQymycZK6XTETSZlxNPJKILqics7du2o6IHR+MwWXea778/vnvJqPHJts+wFNc9nlCAl
sVYW0ZRoP+QEMUDAw1BrFTNYW6aroynjh6GSghIIa0UkQ6R4EAblSjVfqmklYhaZPauDEMwMpiPV
99Sa0thwczZVLBY1D2Lx+RP5QtyC7o6UkjJu1LqaaTbjTtbAdlKZZIIRMVkoT4wMZltahia9KIwc
E1qzZkeKCuJs7C/XjSM6W1IpZRhGYwGmVBIAEUowJhhjKQVCiDGmlKSYCqU0AKE0FouB4E/1j7Rl
VS1fnntMW663u72ZkwXN7QkRavO+/vpg38DQyJSZyHg+Z8ZGxKvNCXb88kWORWzLsdLtt97zp11D
w4V6qliJHl3f13rv6qSWC3pnGu1GEtkjudrMFtd1wUjhcs2LvKBKiR9EaTeOJeH1qkUtgoUKPYHG
7FjEQ+zXEtu24bUPGSNjrmsrILUlS5Ag1WS6tnKJpqAKpdK2TZNTI14tlJrgqheElJhYz25vLhYC
23EY0RgrjhVR3LIshIEihhCWYUgBGYyapomV9L0SBc6w8mVUqta37hrpyKbiFjYJymTcprYuqmS6
Vnv1ykVrdw+XeWjbBtKiUOMGpemMU6t6lqWOWz7jzicHCiGizAy4sinlzG3CuOrDZL4Ss4yWtJmK
s47WeMAVCQstMftIst7gm3NOCAatG2JojTJfStBaTSvkYEQQFkJqrYLA5xEfMpJPD0WYm+MTZV3L
N5EwleSOqSqCRPXC7r5JiQ3TTQ1sQZufjmcsNbc9HgxvNolMJ2OJ1hl3Pr5RUWrYsYl6lC+WZRi1
xOyJQKf7wpFioATWUjS1Jm2C4yYteKJU9QZ2Dc9r0UoE9ZrXNUdayUS1VHY76xhQUGp+8C7rgccs
GSbHRm3Fq26ciiCYvaAt1ezW6/iPvx/LV83dI2T7KJIKIqUkjyKM0tl4U9IV9bJi2KKaMYMgANAU
OMMUtDCYVfcjijEiBtHKNUzLUoiAVCIM/Wrd2z08XshNpmzqUplKm61ds718aXLnQNKlrgXxuNnW
kiUUeVxVvdAwLReRWMxMd2YX9nZuHd1VLAqEdGiT2d0t7a6zbXTCMqhFZHPCMFAUc4gRydmt8ZJ/
ROfNNZroDdU5QgilhDGWTKaKxaLWWkrZECrSShJMgCClNEGII1ST5MEBhCO+PdfXScbnthulMh4I
0faR0afW5fI1j0cRgEYg4gZpWdITz3bv2jBqMGsXoVPVxwS2mluTqZQ7mSsQYoDJhst1BZPHzcpM
lX3CjFK5SLuzrmMwoq1EvFgLpqpy+26/Vsx1t2S9aJKYecPQnU4Yc2aMDaduu3OsUKul3HouX2Uo
bJKZRx+Ou9ZMUM6Prrpte79NzXjV46EIhZACJJIi5sRa07GEjcsMNFUxkzGDyEgKLizDdB2DR5GU
AYEIA/PqdUqoJ5CTcB0huWPWHMsQikdhzIn3zO6MJdO5fP2W2++rlH0aKepHVsJNVoqLF3UlUnZT
1tN+watFhomCQGMZnbRy3m0P7BDaApCezx2DjVfzUb2eYBAKvzOT0VHNJM1+6CdsXqz4sPeL/r/v
pcEYA+hGnc4waBhGQohEIoFxQ8N4z9YsWiENlGCNASFNMGDgg6NFkHy0gDM9ZKwiH900OlyzPKEr
QYhBYUoUQgajrRl3RleLYeCAQ4mj/oHJHWO+67qZtOtYtK2tTaJCEHA3nqj7tfXjXAg1s9ltTjlc
KELJ3HTTQD56evNAcya9e4InzaaRcT5VKlCDWgyA9pji5IGh4e3Da1PJWMwxRgsFhyE1VS6VyZO/
WrO1Avdv5olk2sK6HnKuQGqltDYxtilJuiZWIcWKMDAwMAK2gZljmwZTKtIyVEKZlCqkDKydWKzu
1UwlXdemFDFGB0dzUqqRXDlQdCDvm45tMMM0TUwch6sFne0nHr9sTk+L4JyZCRJVKrUgyVh+wg8m
6kvmr1gwK756exkhpDHKFaZadF1ybjLc3Oz2dDa5po+1mpwsWBjxxo6dezaY/9+yTgiRUlJKlZKN
ybiMsXw+34jIMk0pJexVJtKaMaPhQxBgHXIpQo3XDot6vVr2WBBFkvu4sYxH61gs1p42lve0pBwr
V+a5mtoyNFGKiFaQdQxGCAZIOFZsVufkVGEqXzFYnCNCXXcwVxSaxA0jI30j0Ts2ODyzpaW9vdmJ
0UihnFdRQrgpB1dk372j3WseGMkV/XqR6mh7sVAIZA50ayYds+iGMfTw4DiPJRAiURQJKaSUjWl4
lBkKkMROKVLVCAPnLO0mTQbK9ALPIiSIpIi4AmQa2PN8AyGDKDAwEmHStdMOcx1zdHTMcexKEI1W
amBZLTGH8ygIfI1QjkdKBCetem2q3SUGTnb1oLDGqwXJQyiWVCnc+vSac161rH/43lwVEQJQr9SB
W44jZTS7sylhqYRrj4xXN6wfmzkzPaPliOrSUErDMGx8vDmPGg2PRh2+8YCUUoQQxgyEkBBCSEEI
YYi2tzULVe8bGCLU3p2LQEgtI6QVRloC0hqwUinHysZjtmXnPLx6ezVX5Yxox5BaSkZMpDVSgDE3
GZnVkUnG7f7B0aJXR8SMUWuiIvP18gaQ9+7cmM8Xjj92WcKC3MTIaKFeiaClpXlgYLJUqVpObHNu
3KGgsJOrhkEYUmZKBbRcV9IclGQY4TQjDGQ1CISUSglKGUYaY8ylGsvXRBT6deEY1PJ5W8KgoGyT
2Fhpoj1GechNijlWUimkQ5Nq2yQxqh3HYASlE7avjVCCX/MpJgA6jEKMkR/IbTsG1qz1t/ePv+zk
xa942ULXQJgZViJLuaZcs+qu0sTu3qUvS9nGeNF3427KJJgY5UolqNV0aEmPlwSbqNFdhWgoqDW0
JffKghyAvyavNwbQKKVhGBiGEYbRnpYbBoBGm01KiREyTZNzjjEBhLVCSOvI8zCRjGgQorEIRikl
hADQmJFyrdKetUqBXrtlc96nChkx03RMGkWNGoNqbHLR2PIkm7JMo6N/aGpksuQp7mC9tDvNtBF4
1VTMHB8e0W1ZZbgFr1j2+chUXmsdj7upuGNK3tXW3pRt5VEY1Ivlar3iBfUgNGxnrFhBiDi2w6WU
SoNSFGECSGPChQwAhianQh5ppRyKNTGYQaNQECxsTCyDOZpGYWhiTWOs6nMlRcxijoEtqpmO0q7F
sK5FAkBHnA8Oj4ZRNuY4hmkYBps1c6aQasoPrr1tza6x6htf0YOVN3tOLyWEEYkgaoob4I2ddfqC
6u2bW9MOaCkVzhdrRAe5SqWztYliNDw8AaY9mAv4kdWRFUIoJaWERqmslGKMIgQNXQ2CkQKMMQKp
pRQmMhGA4DweT6ST2bHRSmtTVimEQASeUIo3lHS0VqZlMYZntqQTljGaqw7mKthMmAwZ1MQgBQ8p
JRoUIrQxjDQ9112IWrkoecAQ9LS0nHdcT2GqXAzjO0anEpn0UC6/e2w84NoTmnMNWKt6zaV60eJ5
7S3ZHbvGlenGiWHYHsqPj+ZKE6W6F8mYGzMtq16rgtagNMEYaYUx5kJSSrXSXGkEKNSkIqA6VkFK
S+mHHHdlWUO812RATYoQrvrSYZZJpIEimzFmE9cxCiH3fJ9QHETRyOg4oYZpmgalhGBCYGZX59bt
A09t6Fu1rKU7A7Vyzky6lqHjMYSTlKLyea9Z2TlzztonNiEe5qthPRCOYQyMh24s5KI+WYVkOhuh
sFqv7cnWzzbm9pey3vhUa60QQlIqQighWArJTIYbWRwjhJBhGEJgrbVpmlHEZ8yY8fGPf9QPebFQ
KhYKpVJ5eGhoZ9/ONWueHB0bZcygzJAyqgdR2aMjxZoCBEoQzBgjlKAwDDWgTCpGCMKApZSGZRWK
pZHR8UqlwoD0dLbZBpF+xWWytbnFSSRH62J8aooYVq1alApiDtMADKH2trZka0esa+Zx808c3Lnr
6ccfjtnUsV3T4gUvMk2zKZPlURRFEQAQghFCezW5NYCQSmuNMEYYR1JpqYWQCFCuGkrJDWYojjSm
mALB0rWJFtw0kWshRgQl0mA0kmE6naZ+BFpbpkEpE0I01oLZJrMM0pRJTkxM9g1V5nZ1EIoBacMk
8bhNuUVMGnPgVWcev3j+3D/cdlf/+E4OuMxxpQLl7WVCSK7kpxK8vaUj6VoA/XtVuf+3tTnOOaW0
sbuc1lpJSTAmhGitCSGNsw3WDcMQQmCMMSY9s3vm9MxuaBdpUKBBSRUE0RVXfv/yy78DGHMhldSj
U6WxfEkCAQDQgjFsWaZW3PPqGgCBJhgIJmHEB3aP7BocqQehUqqntbm3rXl8csKNWZpGQRQVKvXJ
ShRKyLSkR/L5pYsXrjp5ecJN3nbb7cedvOrkl55W53rDuk0bt2yZyOUZRa7NEDGkClOu6/ueFEJK
CY19JzCSQjU+K1prpae3fW50WlBmhiFnGIdA8oGWdd8E2VSP2lKUYO3arFzn6bjjmMg0qcKaaEUR
qQWhVto0jEYTt6E/YVmGwZDgYUdbtpAvPPr0wMtP7LJdlxgIa0kYBUpYzBFaJF3Us7DrtexVOyfK
w4XRYi1UhI1XOcUoZlkaWfW69wyve6rx/yvWhZCMMcaY1tq2bc45ACIECyEYow3KlVJhGFJKG3V5
x3FWrFiBMZ2+CsAaAIEaHhm4/777EUKiMVajNVdaahCKK6UoQvV6VemMFDKMeLbJ9rx6PJaSCnJT
xe07B7gEQCgZc5K2UZic9H2PYGLZ5tBYZWP/2FAlUFp6Y2OAoKdn1psuOJ9hPHtW9+zeOREyvJK3
cMmSpnTqwfvvf/SB+yOVkpgiTAihhUKeMQZ7tDwbgm5IIaVUQzxFN5aMI6SU0gBcCkao1NiXmnPB
tR4r1GN2ApQWPJScm0YylXIxUkYskUq4U+u3F7yAWjE3HmOUGIyxRle2EhgZANpkNJlM9O2a2L57
qr0tWY98k/Aw4MR0WSxtuCmuJDV1S3u6s3vGlt3VpAkVPwg8Lx5zm9IphiEMQzQtJHPk2utCCIwR
54IQQSlTStm25fu+UooQrDUQQpSSlm1JKep1r6une97ceYJz3w/K5fLo6Oj27dsfe+zxP/7xnql8
gTIGSiOtpZKglUZESS2UBNCBkp7naSWV0rZteJ4nZGpoeHhgcCTkChAiWmVjtg7rESJhxEvlWoxC
rV4XShbLlVQ6JVTUlG2+9/5H5s3pOX7l/Lm93fGkMTaRNwBzITQPNca+Rqee9Kr+vnW1IBJCBpEw
bIdHIQKNEcKghBAIIylFQxxLK40xUtObA2shIjCpaqy1VKAByoEq+MhUyLGYY+m6H3THOy0bG6bL
LBMbRowwgUgYRUoiSjDBhsGIwYgUIvIVgKYEpFT3PrpjTrtDlK+imkF1Np1gTpOZaKLMQVIp7mug
xXKNS1Aako7dls1gyaOQP/vGp4fA4c2qYDQIAsdxKNWNGaphFCplNRTEMSaNUl0DRFGICdagpqby
n/v8fxfyhVxuSitdqVbLpXIYRZxzhLGUjV6QvevdkdIAgLQGKWUQhEJECGHTZOViYXQst2twJBJa
ak1BpxNuwmQZQ3tCk6ixuQyhFLemnf7RyWI+n8hmPvzhf+vbOTSnd7FpgBOzbdvWghcGh57+07rc
ZHFn/9DyY09d+ZJXr924mpimHwSEUiFlGHFKMMVI72VdyEbPY2P3Toyx1pqIiPNIKKsxPVcjJBUO
JMpXIhvCuM0syxQaE8ZSmYTUJBQiksowbYMZGDQoEUUho5QRhE2TMYIRWKYFoLmQA6O1gLOYafse
5qBsFYsp00CWAmNibHxibHz1Uxu9SCipGcEJNwkyCr26RoQQtndfLa1B6X33zgSAPQqmh886xogQ
qjWi1AgCr7FLRWPrYz2t5q6VVoRiIQXSmBCWy+cfeGS1ElIIbluWVkprEEIoAIbxNOV7puPJ6Teg
oUUNUcR5FGIECEi56pXKHpdKa421ittOR1NTnKreZmdgslgQkZYSG0YiZhkFjyEMdqK7a5Ebbzvz
lce0ZplJywLIZKm2rW9061Mbh3bsDLHxite9oW3uqqlSRcoQtAyjkDIWhlHEI6WIphgjEFKqSAsl
OedKKa2U4BxjrKQ0DKMh4SmFaIwuglJC4Urd85Ufj1mdbkJo6UeyVvcRtTlXQRCC0MxBtmnYjtN4
170gFELatmOYrDpVnsgVpda5QvHOx3acetxioo2OTMZ0jFpdyanKruG+P9zz5NOb+3eNlDnXFGPb
MAnSgR9oKTEhQqnpMv1I9c0BKEKIENIwmGEwhMA0jWkh+z3RSSlYQzeAC8swR0cmItVYmkJCLtCe
zR0bKiuNyhEhpBFcKtWQutdaA2DOOecSIT2Vy4ehEFJLpbWWBEFrNg08opRkbVJPxUeL1VKl5nmB
Bmr4qtltPvENbzvmhNM4hMOjE8WiSieZVxvfsW3bmkceLk1OGlZ+wQNMAAAgAElEQVRq2+hE1JQ7
saO2Y9MaXi/6oa9BIwQRj6RUSkkARgiSWkshlVac8+n9VLRGGEshbMdpkB5GkZRKAWCklSZBJBTo
qi99rg2CvYA3s1TIgTKzs7MzkNrnolarVUpRzIk5ji2E8LygUvMMwyiWyqWar4D6Eb39wcGBocLp
J85pbmkJBIDgxcrkmjU77nlwy2C+3hCFcUwDI+TV6hQr06AaaaWmp081crlScIByRWNz37+Adc45
IaaUAACEkIhzyzQbH7mGMgXBpKEeSRBWgi+ZP4uX8rtzvpIBAVBaI60QoMb0+EYuRwCNGKSUWk0L
UDVkd8IwisIAlBwfHxdSa0Qaa5scx0nEE4WJcddMDZf8yWpU5/qmDTmu9ektXama8a43vZ0sOyXb
lgnq1cBX+VqpWPNVGBSKvGPG4vaZy7xQ7px6aNNTD4+PDnqFMYoiKSLLccNICCEa5ZaUsqGZ1HhM
QgghZENqBRPCo8aiBymFEByD1hgQw2AqFbdYSzKWcHDMIFqLej2oVHzTSTHDSiaTcWIQw0Sg6tVy
sVCYnJwkGGutgyBSWgLCCDGEkNaac96/a9IycbapfVZb3DYIYLR8xYqH1gzumtwOAAgT0zRC3wtl
lIzZCKFn5Pefo4TXz7COovF7Gq6JB8/Y1yhfge1DsH0YPvvjw3kxXsQLBZ9+B8zpgN4OSMf3828+
5ca97kPmdYyAYLAM+H8X/t9d4Z/BgX3J+iCnPtBM6/3O6n1s9nZXaQCtDtlf/fcOSkArEAr4/v2z
UfTMeqhDsh53oCkFML0X+POA5+bj2Wore9qp+wTfW6/Re+o4jUqP1iAkqIMatf8AIBgcGwgCL9zP
3/OCve5Dsk4JzGiBtHvg5+FvhufoRm78P4BdgD2Xuk8NtpGtpz9yGoQCpUBIiARwAQ21gX8wYASO
dSDlAMCq9b3u56rNUXLgt+FviedgfV+m9/rs21xR+hlPpabzdIPjiEMQTZ+SCuThLhz4u4EEKD+b
ZoXMPzNv+jBbbi84HLxvoD7gr97vVWhQzgUEEdQDCCIo1aDqQ8Th4h/8w5Xyfw4vUNb/0s/tvrn/
gFJB72m/SgWRgCCCIIKpMlQ8uOjbGwEAok1H6Kr/bvACZf0AHFy8H9JS7+fQ+xPPBYQc6gFUPbjo
2xsOri0cJfj7YP05cHD+hoOyfoP1RgkvJARRo7KjAACZy/YLGK77W1z0842/S9YPv/zXB1TrFCgN
UsLnr9EQHUiwDp8+SnL/3yXrRwb7vzs6WPsP2Hg/BI5i1vfdhCx46ijJ5Q28yDro4MmGm5dKz+v1
/O1wtLOugzVHVS5v4Ghn/ejEi6wfjXiR9aMRL7J+NOLoZf3w98H6x8PRy/qLef2oxFHTE3cwjmLW
X8zrRyVeZP1oxIusH414kfWjES+yfjTiQNZp8i9YDPx3jRdZPxrxIutHI46WMu3ZoA84yqXSa057
7c4dOxt/c5OT57z63IPN/gGOo5j1Z9ZJPHNEPPrv/7ykVq3usxbyWcz+3o8XS/j9fEzTfPXrXvmN
L1/2+f/32b2ekxO5f/vQJ6KIz5o987++8OlkKvmf//7Z/r7+MIyOPX5FsVDaub0v25y99Mv/3dXd
qbW+6vvX3Hv3fRjjCz/w3pefedovfvLLkeGRiz/7H3/Tm3tOHMV5/dlLP3j7u95SKpb+eNc9e14L
3dySvfa6n17/+191z+i6/fd3AOi+nf3f/eHlv7352oG+XWe88vRb/nDDyatOvO5X1wPo++65f2Js
/BfXXXPZFV+74ltXhmFw8qknvuq1r3jeS/V9jxfz+oFAGC76zMc//uGLLv3y5xtmY6Njl3/9u+Nj
E57nv+S0VXufnWGwxccsVEoB6OUrjvnddTcD6DVPPLlu7fp/evs/A4DWOjeRm9M7+zmSe17wIusH
++j2jrbz33TO97/7o8bfH33vx8edsPKNbz3vpht+P7hraK8ZgGaMScEBGpvWCAAtpXzz2y+44C3n
PmdCzzNeiCX82f9lnf25w92kCgDO+2/rvEv+AvuvXdfYsfrZS/iG4/w3v6FcrjT+Rpw7MQdAE4wP
MNvfDQD6uBNW3HbLHYV8AUCXSiUA3d83sG7t+ue9VN/3eMGxPlmEsQIZL5DJ4mHbF8lEgeQOz75U
hVKtcdfPxTrG6KOf+EBDSfad73nL9b+58c3nvOuXP/9ttilzMNP75GZ95itPO/Vlp3zwwo+d+9q3
/PCKHwPoRx96/M7b/vC8M73vcUg1oucL3/odszreiAD8kes+dt60lMq+ReTeJlUDl9/IrPbzQWt/
9HcfOYfvXbC+V5dAaRACuISIQ9WDn95NuX3i7259WPu3/U1v7IWEF9x3/Rd34z/de47W+sQzbvjY
eX/e/pf34EfvOlspfeqrb/rIOX/e/u416AufOQ4A9n+Xji68gFjf0A+/uQ9WLpvX3prVWq9cNu+/
rt7wptPgmJ5D2l/3AKw4Zm5ba1YptWLp3Et+svH8l8GiWc9uv30IbnoE5s7pTicbuitHL+vPfwn/
0SvMvlG2fkdt+eLOY5cvvPIb/wkADb3KD33yy08+veXpTSNL57o97fzyD4cA8LErzL5RtmFnbdmi
jpXLFn7nqxfBHsHCj178tafWbV2/ZXTJnNjsdvGV94VSwaeuMvrH2JaB+sK5rfPmzPzw+988mSu+
/V8u1d4tz8v9vhDw/Of1B9aqD7//nDX/8d6DT33v659qOC792jXfu+q3DfeDT6sPXviGJ/793dN6
pvvYX/7lT2oNWusvf+vnP7zmhobnoxv0e97+6lvff0EY8nK1Vq35e8yP3rz+/Nfh113Ft6276Z8+
/PlDGbzvXz+/bd3Na380XbN76od8+/qb3//RSw5l/6FPXLpjw+8f/e60/f3f4n2b7vzkZ795kOHh
1ni/dOm37r7r/iNekf4/ivbvqQ5/3QPs8hudHU/9rvF3r8DxvGPP/+i53gUvfUYXsVE5v+FB9u2b
nC1/+m3Dblq5XetjTn7Lh17vn3MqP6AOf9Mj9Md32jf8/CvVmr+nhL/xgGuoVmtvu+ADhBAlVU/v
zLe8/dyTTjkWAPp37s5kU6l08sje8v9RtIeD5z+vN/DGl/EVvcFVP791X8+rfn7bijnBG/ehfC/O
fylf3htcfe3t+3r+5Jd3LOsJz33Js9i/7iSxaGZ40+0P7/U5eChKKhmF/Mbbf3LDbde87Z3nff3L
Vzz0wOMa9OzeGcl04oiPfP0fRXs4x/P/Xd+L/jG2ctk8ABgcntBaz+hqXbls7g+vogAH6SQCAMDA
GFuxdC4ADA1PKK27O1uWHzP3qmsOaT+Uo2+fOwMApgoNvb1Dfdc1pfj4k5b/84fe+dOrf3Pqy074
4iWXn3DSijNf9dJPf/KL/X27wzBaedzSUrG8c/tAtil96Zcv7uxur1Zq3/jylVu39CVT8Ys/85Ge
3pk/u/q3d9x6bxTxpubMpz77r7PnzNi0YdvXv/Q93w+WLl/06c9/bG+0uwaGLvvqD4YHRxcsmvvv
n/pgJpt6/NEnv3vZ1VEYMYO97wNvP/3MVQeEvfjjl552xqrXnPXyv+5Rv1DyOgCs31FbuXTez35z
22lnXXj669/3s9/cvnLpvHXb64ey37CztuKYub+47vYzz/mXV577gWuvu2P5Mb0bdhzSftsub8Hc
GX+47/EvfPUHAHCIb94z/stWLOrfuVtwvtezb+eu7/zgf35z0w929Q+e8cpTb77rJyetOva3v74F
QF/1g2tXHLvk1zde+c73XHDF5dcA6OGhsQv/5a033HrVq15z2lXf/wWA/u2vbn77u8/79Y3f/+R/
fnBvWlqrSz779Tec96rrb71q/sI53/raDwB0IV9cvnLxb2/54SVf/OTlX/+hEOKAsOdc8OplKxb9
1d/1F0pe39APyxd3XviRz4WldY9929caPvmjHz7w0J+WL+7c0D+y5KAm+8YBWLao458/dklYWv/Q
Zb7ScPGPr37w4TVLF3ZsGhg9uMm+bRAWzm299Ks/8ErbL313BADPltf1vv56WlBdH3DWMOiiJfOU
lAB6+cpFv7vuDgC95ol1T61ef+P1dyi9t7t+OtSJJy//3XW3A+jjT1x+7U9/J6V8+StW7TWYGM9V
K7WXv2IVAFzwlted/7r3aaX2ptU7b5ZhGsVC8YCwJ6869hC3cFh4obC+vh92DEy+67TJN75p+qv8
9ffXrnvwiZvugPUDcDDrG/ph567cO16WO/+CafuvXFi74cHVv/8DbNz1LB01WwZh13D+1cvzJ50q
pqblZ/4M6+vWbp49ZwZl5OCSgBlUSAGgKSFyz1DbJV+8qHferH2imj4Mk3HOAfRZbzhjydJ51/70
xhuvv+PKq760x0AdkLQGte/1mKYRRdEBYRvbOf3VeKGw/vYz4WXLeFfzfp5vfCk/eSF0NT8LP289
A16ylHc179cnf95L+AkLoKNpP88GzjkVVs4VMQtqz+hlH5J1wcWTazb86Mpr//Xj792/2If93c84
jjth6a+vvfniz36QElqr1eMJ9+BQ1Wp91uyuiz/zwfPO+ue9A3qtrU2uG7v37odPP/OU639963En
LG3soXRQ2Nq+Ybdu6Zs1u7OtveVQz/O58UJhHQAOoPw5PJ/jVGfTIUu9tgxUvX3+H/RqYIRMk539
qn8yDDZzVtenP/eRFccunjbTe+yna8F7HDDt/pcPve1bX//xW875MMLoPe9741lnn/FMqD0Bv/+d
nz/28JOGyV5z1umpVLxhgBB8/tJ/+8ZXfvidy66ZN7/nok9/YDr+fa/woLA3XnfHaWec/JrXHfrp
PCdeKO31A3AAI3r/U/uebbjVszHyrGNutQCmSvChb2lV/9X//X28QPECyut/c/yVVaF/ABxuyw2z
VGrFdzvOnug8t9J82v0suXTPGZRc8j8db5jqOKecWnkFwmyfQCix+Aud5/n7xtP80ru73qgbR8uZ
a6YjN9LZk6/rPM9rP2s41vMv+6T4nY6zxzvPLTe/7L79U7y04+zx9rOnkiu+vTdFs/m05tMf6jh7
suXM1U7XBYdxT3+7HtAX2nG4eZ3G52IWn3r4LC281IrvZE765cRdSwAgNvufYr0fzj/8eiVqTafe
Kv2R6pYvAoDZdGpiyf9jyaWA9qttIiNd+NM7/eHrAQD27DWVWv5tGuuZuHs5Sy7LnvRLXtkY5h7Z
k+LrtfCSy7+dOfEXE39YCgCx2e+Nzflg/pFzJK81rbpZeCO1rV/BRnP25OtL6y/yhq43W16RPu6q
sLSJV7Yc4l7m72H9KMXh5vWosLrwp3dHhdW8sqk+8CMWnw8IA4A750O1nd8Npx7ipbXVrV9y53y4
YU/dXn/oN8XV7zkwPSMr/TEtAy0DraKGj9395tKGi0V1uz98nT9yszvnQ3tSfM+zpNjzwVrf98Kp
h0X56eq2r7g9HwQAllyMiO3t/oXiFW/kBsUr1J1zqHshVhsAPO8Z7nk8/pq+OavtNcHE3Y2cSpOL
eWH13jeD2B2YpQCgvusntb4rG7zu98TN5tisd8fnfYImFk6/H/F5CLNnIimuZonFz5biH/ekuIgX
1uxJcQ2x2zFLRcUnZTiZXH45Npvicz+meDmYuOdQ1x/mHvh7ZP3239//za9e/fywHl/wKbPljOKT
HwAAROMIm0pMby6jRAUAsHno5gTCpbUf4aV1RvaU1lesi816LwBgswkA9kaieeWAGOILPmW2vLz4
1AcPnWKTFtXy+k863W9uOeOJxJL/qW3/Fqj96hPPBvWsx/jYxJkvfc/aJzcdyuCvOD73n5eHYbCv
T7VaPfvVHzj/rI+85byPX/yJr/Xt3P2sAX/+k5s2btjWcJ+0aum5F5x5RK7nL6vDJxZ/ITb7vbkH
TpfeIABoUdUqxLTRIwGYJgBAhblDhteqvusnDac77+PJ5ZfVd/1EhVMAgKmreBkAEEvsG0Ni8SWx
2e+dfOCM50xxirrzUiuuyD3w8qi4zu48L7ny+7w+FEzc/Zx3o5/V96Yb7pk7d+aN1/9xxbELDuOR
HBaeXL1JPdPPCgCglIpCfsudV2it77j1oc9cdNmvbvg6Qgf2uG3d3Dd33oxGwEwmkckkDnXZfxH+
AtbduR+Nzb4wd9+poj6w11OUN7HMcf7ozQBgZI6X/qjih6W3zYtPYZZE1BXV7Vpxlj4unLwHAIz0
8byyaf8UX7J/iptZ5lh/9BYAMDLHSX9M8ZIz60JR28lLTwOAN3KDNeMdVusZfwXrgot7737829//
9Acu/EI+X8pmk6Vi5ZL/unJ0JGdZxo9/fumTqzd9+5vXhmHkOPa73vv6M191MgD07Ry67Ks/m5oq
zumd8enPvT/m2oO7xy772s92D4zOntP1jW//BwD80zs+gxD66mX/3tXduk/qGiF45atP/uZXf1oo
lJWU//bhr0QhnzW747Nf+EAy6QLA1750jWmy97zvHMHF5k39n/zUe2o171tf//naJ7c2NaU+9sl3
Llrcc+1Pbx0enrj4M4e7zebhso6NbPKYL+Ufe6MMxhCxAECrCLSq9X0vuewbwfidWtTjCz5V67vi
OSJh6ZWYutIbxFZ7csn/RPlHtahqAH/oN8mlXy48/jaWWmp3vmHy/tP2pPjF/GNvOjDF/isTx3w1
GL9L8Xp8/kXVvisBQJQ3skX/ZbW9Jpx6mKZWGOnj6rv/XCfMwd22AA8/+NSChbPb2rIveenKu257
+G3vfO29f/xTZ1frZd+5KIo4JTg/VVpx7MJPXvzuocHxT/zr12bN7uyd2/2lL1z1qc9e2Du3+4rL
f/W76+5+x7vP+u/PfO9t73ztma88KWxsHgdw9c8vtW3zmXT3/Cql7rz9kUw2mUq6GKNf/PpLCKNv
f/Pa22958K3veA1o+I9PveekU5YCwO23PtQI8qMrr4+7zvU3fePpp7dd8tnv/exX/3PSKUurlfqz
3tGz4nBZNzLHIeI0nfrMHPLC42/1hn5dH7iaunOaVt0CiHqDv6ht+9pzRMKSxyQWfY7Y3SqcDCf+
WN7wnw3/0tMfTR/7o9ZXrlNRsbj2X6OpR/ZJ8VaA6ak1hcff5g3/pj5wDYn1NJ1yowbiDf2yvv2b
ABBM3FVZf1Fy2Tex1Sa84dqO/9/edYdFcbTxd/f6cXBUQXpVUaMiYBewxy4qaoy9a4oxxagxaqJJ
1NiC0dhLULFgwRosNLsCghBAkSIdrsD1src73x8Hx0lJkNg+4ffMw8POvvNO+d3Ud2dmq6rw5L/l
qZ4yuhZ1d+DgHgCo/6BuoVuOTZ46tFNnz5PH/joWdmnYyL5MJt0wIHJytg3s55vwIM3MjFuQX7Ju
zW4AILSEj593WZlIKpUPHNwdALHYDEO1fjFGRBC68aO/VCrVFhZmP2/8jEbDiosEoVuOlpaKlEp1
38CudQJWRf3wftr6TV9gOPh0bWthYfosK79DR4+GclQvGsu6ujSq8FS9dh4kSV0hSV3RQKi/ik7X
7EVS5h1W5h2uK0ZpK0R3a6+rqEujCk9VDTZfzA2SpK6UpFbtNDb8vuU5e2TZewwrsgCA4UwMZ2AU
YAAYBhhCGB0AVEaF+AKkEkXiw/TMjNwdoccBoLJS9izruaeX8679K8+diZ4zfc3vu5YZ0gAAGI5R
FEWSOhaLefDID4ZeuaRYgGOYsX4cxxCiarHOYNAjIjcVFwk+W7Be/3vau+u0X7f24ycOijwT8/x5
KQDC6guovzHcyBM1nu+q9LyU9P8XTNuvaj08v/XwPLuhWXZD0m0HJdsExRnN42vPZ27GJ/bs1en0
+U0Rkb9GRP46YlTf6GsPFAol39xkxuxRnl5OmRm5AEgsqtQRhEhYcTMuyce3rZ2dlbmF6bkzMQhR
arVao9bY2VmxOaxrUXcBkEajBUAWlmZ5OUUkSWq1WqMYAQDZO1hPnTF884Y/EaIIguCasAEQXr2h
ztLSLDenCACpVGpDQP9uHc5G3EAU9SgpQyyWeno65uYUpiQ/afzM7X1eh5emrax4vLKW9UXXsKU1
9kbC8FF9Df5B/XzX/3TIwanV/t3nGEy6m7tDt+4dYmMScrKLJk9YAQDjJwz0bu8KAGvWzd+26dif
By+wmMx1GxZ5ejmt+nHub1vCd4SeNDfnHTyyZtrM4WtW7qIQ+v6HOZ27tDGKHQHA6ODAi+fj42MT
p0wftvHnw38euIjTsBGj+gKgMeOCfvh+T8SJ6xM+GmTGN9EHmbsweMvGI+NGfW1pxV/141wWm3Hn
VkphYXnnLl6NLJlmbHOT72pCwi5fvJ3+d+7X305pQth3B+9zXf83NG3iW6tP/b9EC+svh2Ejeg0b
0auF9f9f1GaOVHi/lXS8ebSw3hzxPs/c/hmoDt52il4jEpKfLP9xT4VEpn9svqzXN5F9HxBxPtbc
bRjTboBt2zEDg7+Mu5MCAFeu39u884RSWTVtbWH9fWNdKlMqVZpZHw/7dO7Yp9kFY6asEIhq28Na
+vX3EyM/7D18UA8mk/79z/vTMqoslp36zuKwmTMnD2up6+9bXdejtEx0PzH90tW7AODYuuorlc/m
jvXp5LUh9FhLXX8/sfDrLQBAp9OWLZ7s5eGo95w7bcSgfP+o6IctrL+f+Pbzyf0DurZv62prY2Hs
z2YzoKVff1/Rw79Dvz4+Db1tYb05ovna3EjZxlqRUkq/15KZdw/NuK6/14tx/4xmzHozbuFbWK8B
zrn/VtLx5tHCenNEy9pcE51YJF21IqwxkgkPnn6zZH+TI0IU9fPak/Vrfph1Mjy+CTpbWH/BfbZw
V8TJW4bHigrZiCE/Ps8rqyupUmvzcssbU8RxsWkBQR21WmJQ0PdZT4sM/vfuZI4b/cu/BqcQFRud
Wu+rkmJxcbG4hfWXQj3FUSGWnwy/pdUS+sfjR+M1GkJSqWig+OpXYuxIkrx7J7NvgHdFhQwAwg7F
GF4dOnBDLlNVnzP2z+4fIvr3NNR1Lf36C6ioVPQNaH/9avKwEb4ymSo2Jq1HzzaVlQoAtOePq9HX
UzEcmzYjaOjwmo0psdFpp07c2fLbTK1Wt/nXyCeZxXw+d+nyYHcPWwB4lJTj4mJjbsHNzChq5+1Q
UCAsyBc4OVsnJmRzuUxLK1OpTMnnc2/dzNi3+5pSqQ0M6jB/0WA6nVZZofh1/dnMjCKbVvqDZhFC
aP/eGzHXU3EaNmvOgH4DPjCweDQsvqhQtHR5cN0c1YuWul7jNBotBtjkKX3ORNwDQFcuJfUf8IFd
a3OJRA6AZs8bcPz0l6E7Z+/eGWU4CDAt9fnhgzFrf57EYtP3773u09Ut/NSSKdMDdm6/otcZH5sW
2K8DAJJKFWZ87tjxPc6evgeAzkTcmzCpt6kpW1IpLyur2LrpwtqfPzpyfHFBgTDy7AMAtHf3VUdn
64hz36z6MUSf2tjotLLSij/DP9/y24yd2//SaAxnA6AePb0Gf9i5pa43BrXrukym4vFYzi7W1jam
SYnZly8mbtg8NeryI5lMpecp6sojhECt1srkKgAkkShWrQjfEjrD0ooHgBIePktKyD535j5FVW1e
IUnqzu0nM2b3A0AyqYrHYw0e0mnG1N+Hj/QtLhJ17+l18sRtmUyVkV7o09XVydkKAEYH+587fX9c
SPekxJxNW6djONja8vVUJT58lpKcN2fGDgBAgATlEgOLHp629eaoITRj1uuszSlkKg6HCQiNCfbf
vOG8p1dr21ZmbA5TKlHm5ZafPX1/9775PB47ZOxmRFGAENeE1b69Y9jhuJWrxmMYkCS15qdJnl52
Bv3JSbnOztaWFiaAkEKu5nCYLBY9qF+HVSvCx4X0wABx2EylQo1e3OWq/0vDcR2hMz6ujiSpiZN6
jQvpYUjwo6TcejPyr2hp4WucUqXRb0Ht3t2Tz+eOGuMLgDhshkKhJrQEnYazWDQMQ1h1WAadtuL7
YLlMfexIPADy9XM/EX6bIHSIomRSJQCKi00PCPKuUq7UsFh0ADRiVFcMxwYN6QSA2ByGUqHp4uPy
KCm3IF+g1RKRZx926+4JgPy7eRwPv60jdNWfcaKufm6XLiaJxTIApB9gMhi4XK4GQLk5ZY9T8lpa
+MagdhVRq7QsFgMAYTjs3KM/AQCx2XSlUuPpZefr7z5l0nYmi87mMOn0qvOBaTRs+XejZ8/c3b2H
5/wFA7ZtvTIpZBuOYTNmBQ4d7nPn9pMZMwP0kmq1ls1mACAHB4sj4Z/qlXPYDIVSbWfHX7xk6HfL
jqtU2j4B7UYH+wGgOfP7b9/210cTfqOQvgFHAwd2LMgXfjJ/v1ar69HT65tlI3193U4cuxMfl16Q
LyoqEnfq7NzInDdjm5tkJbxOJCXmhh2+uTV02muNpWloqeuvC3GxGQGB7V53LE3Du9uv4wwz+9EC
jMZpfBCboFiWde9Gi7/04sZLuSVffRg8zu91x9I096ZZx2hc697n7UeLbQJv4ExLAGBa9bQdlGQ/
WtRqwP3qUx8BANj2o9Rl1xGp4jgEtx6W13pEoYnLdP0rE/fZdh9m2A7JNPWuaaVpHEcax0kjugsA
dBO3VoNTmVY9DKrshqTb9Ltp3fcyg99F7/lWLlx5R9ybZp3ntZgiKosjrQhJmpn3SgDAMHpF4vzi
SCuNINasQ819XRzH8arCCIzGMe+6Q3hreHl0b36njTjLhsZxMGv3XfmN7uU3/LjOUxjmVefLchyC
VcWRgCgTl+lWfS5geM3JKDjDVJG7TxDTV3hzGCFJrvZ++3WuudR1juNYec5uAKTI3ctxHA8AGuFN
rfghABCVj3GGWTVPZizrPuqSK6xW/XWSNEL6N6l8rhHEc1qPwBl8AIrSKZFOjnRSQyfFcRynLjoL
AITksSAmgFTlGyLFGPz6zkN7y0V/NOxOXp6gWbBO4ziRygIA0CnyaBx7/dGwAIDR2KZtvlRk6+/h
AXbrkZryG4hU0rhOOlWB3lOnzKNxnAhpukZ0zybwuoX/QY77eQMAABKjSURBVK0kRX/GHI3tQOO6
aES3AUBb+YjSil+IFaObuM+37h3JdjC6v7e+xk+rIXbtiA4Z8/vID7fOn33oeZ7wZZvPNSvPatRE
YyQf3s+RS1VvpY1/J8bwGM6w6nFSXX5Df1ohAHCcxiufH2tAmEXjOKqLI3GOE9tuKM6yoTQCjmNV
815vEEVWaGVmKOJ14bn/JBUXQGUiAACgupKbNl6RStS/75pia2uWky2wseHVK/YPSEzIq3WM5L/h
5fS/Erxp1klVAY3rRCrz6SaupKpIz5O5z++kViR5/K1eBqObsqz7iu99DACksoDuUHUhN53rqi65
xLYfQWmEsqdbAQBnWnIcQxTZOzmO46Rpq/85aqIiGZVdZZh1BKif9eKiyju3so8en8s35wAgdw9r
ADh5/EHk2WStVjd1es+Ro7sc2Hcz5kYmjmMz5/Tp17+doFy2ZPFxQku6uFp9t2oEn88BgDkzDmIY
rN803sHBopY8RaFdO2NjozM5HKZCoQFAKcn5WzdfO/jnrDqnib5GvGnWVYVneO7zxcI7Jm5zlYUR
AMC08GPZBJRd7WyggWM/UlMeg0glAGjKoy389jLMOlA6OcsmoOLRQoZ5V7qJC0bjACJpHAdKI6Bx
7GlcN43oVkOR0ngehDQXZ5jh5r66kv3V3rVZf5ZV5uxswTdnG7/KyRbMnN1r4OD2iEKxMZllpZLD
R2eJRYpPFhzt1dvD2oYXdnQ2hmPbt924cunxpMndAGDfoekcDgMAYqJry8fFPn36pPTw0dkIoc8X
hQMgVzerqdN7YNgbrfFvmnX5s1Cr7uH2Y8RExSP9yYKsVkE0rrPdsBy9QOllD45jiDL/uP4RkarK
pE+t+14GjC55vJTSCNWlV5k2/W0HpwDQ1KVXVEVnTDwWqovPN9S8A2AWXbYitqdKWVGecbT6mHCo
yzoCBC+eDqj3xjAAQBgOiQl5KSmFc2ceBgCEQCCQ4ji2fVt0WalUqST6BHhWh9UPmuqRf5T0fPCQ
9hwOHQB4piwAxOezBwx804s5b5p1pFMIb48y9pE92SR7ssnwiNF5LJtA0f2ao71URWeURWeMg0ge
L5M8rj7mEQHXYVzl37WvaBbGDUBVJYmEt0bpV2Tlxnc81SloNzergnyxXKbmmbLqJhwASJKaMNF3
XEhXg+/aNZd8/V3Gh3Q9fy7l+XMxADI+RrKuPI5jOpJ8Meq30K+/c2tzHPuRGkEs0jV48WYt0Dj2
NJ6nRnjz5aOqPZ9xdrHw7+aycX2UUCgDQEWFFTKZyljS19f58qU0sVgBgCSVSgCkJUgTLkNPtl7S
wpKblyskSVKr1dWV9+/mcul8qv7jHEAIAEmlqpgbmW945vZOjOGNocwPV+a/xJ1bpKq49JJTkypM
PWGWLh+0d/ftebOOEgRp04q3dNkgo8KCAQPb5OeLP10QrtWS3Xu6fvPtoI+n+m9afy3s8H0cx4aP
7AiApk7r9sPqS4hCK1cPrSsf1M+rsKBi0bxwgiC5XCbPlJmbIzh86F5Q/zZvcjTXfG1uusrPXn8+
3lG8c3X9DeItdKjvCN65fr0FbwDNtq5TtXuR5oTmyjrStbTwzRDkK7y463W4/XvvHglL+O96RCLZ
xvU3/tPNXu8RyIbqemmJbNqU4xs3De/iY9801UfCknx87Dt0tPt30YYRH5ez7ucP5846WVYm1y8G
dO/hvPy7/i+rR6nQZmaU18psc2UdNch6ZOTfnl5W586mdfFp3TTdmRnlnp5W/6UHeZYlYrJoTs58
ANjw6zDv9q2q3zRBZ816gwHNlHXUQF3X6ajoG89Ct49cOP+cWKSwtOKKRcqlX1+WyTQ0Gt6vv8es
OX40Gp6TLd665ZZIqPDwtFq2IsjEhHnyxOPIs+laLTl1mg8A2vxrPItFmz7Tt7JSLRYr5y/oDgDj
xoQdOBxCUei75VFikZLOoIUdnZibU1sVAMTHZQcEuNVa1dcjL69i25ZbhYWSdu1svvw6wNKSo1QS
ob/dTkooYjJp23eOTkst/WPnPVJH9ertsnhJH4OSlOSSrVtuHTwcgmHNul+vZ6ny9q28du1sbO14
fQJco6KeAiC1miAI6kTE5L0HxmZklF84nwGA1v8S88WSXsdOTGrd2vTs6TQAlJMtmjnb99SZySNH
twOAr77pcyR84qDBte0xAEil1MplmuOnPgo7GoJh9agCQHFxuQFBVax/tzxqwrijE8YdTUosQgit
/eHG6DHep05/3LatzW9bbwGgfXsesFn08JOT9h8ab2HB7tXb+djxSUfCJ2ZmCjLSywzxurqZT53m
g2Hv5IrsG0IDLfz1a1n9B3gAoP793beH3v1ocifDD8LEhDF2XPvLl5726u1UkC/5aW0MAGgJsmtX
e70q/Z4Yo4VVY76RkWe1EQ+D8nJZXVXZz8QMOu7iot/eBj/9MsjQwpeVymRSTb/+7gBoXEiHkLHH
EKIe3C/4ZcMQGg2j0TAAlJRYdPhgklJFVIhVQqGCx2Pq4+XzWQMGuut1NlfW62vhpVJNYkJxZobg
jx33AaCyUv0sS8jlMgCgilcMoyhEkhSLRd9/aGwDBOtvnK/6n8GgaTW6WqwbgtSrKi4uJyDI1VjM
EBxVWZNrPBFCFEIYXiOzYX38LxsGe3lZrf0hpvrmN6iV2ZYWvsbdupnXo6fjqTOTTp6eePL0xOEj
2sRE5wAgtVonlaoJQnf50hMfHzs7OxO+OTvyXDpCSK0mNBqilh5LS05urhgAqVRaZ2ezR0kl+s9m
AOBF1lG9quLj8gICXGpJ6p2tnQmPx4yJzkYInT6V5utnj+PQtat9xMlUnY4kSVKnIwktacKlQ5UZ
EDEYuEKpRYiSStUx0dl6Pc2Y9TrfEMbG5AYGuhoeA4NcY6JzEQUqFbH400sfTThpzmeNCfbGAFav
CYqNzh0fHD5r+pmCfEmVzQeqzD6jx7S7+tez8cHh589l+vi07uJjN+3j0yFjj1tachh03Fiyrqqc
ZyIcx1xdzWusTEYpxAC+Xx145nT6+ODwv/8uX/xFD0Bo7jxfmUw7acLJjydF5OdVLFjk//WXUVM+
ishIF/B4TFtbrqeH5R87HuTmiA8fTEYUAoSaqc1t4aYsUrq2MSkpLpItX3b9cFhjj4H4jzh44BGO
Y9NndHmtsbzKfp3jNMHSb7/+GnXx/SkaQazeH2fZWPc6SzfzprSiypSv1MUXquLmeVgHXK94MFUj
vAUY3bzzr1znjxEiFdm7JHW+jQEAplVPC5/tOMeZkD0TP5yhkz2tyQbX1dx/H85y0FamVCTMIwkp
zrLld/0DYzvrVOWChE8JSQ5guGm7pUxmR6KsDIBEL3Z1DUEv1kjh/474uOcrVwe87uheZQuPM/iy
p1tKLjqWXHQ0UA4AlEYgTpxbHGlVmbzEvPNWvaeJ22zrgGs129gQSUgzSy65lF/35bX5gm5az433
GEavSFpYfL6VRhhn1n618Su+zzbV86NlUd6kqsi03TcAYOa9XCuILb/upyo8pd9kw7EbSmO1Ej+Y
Ks/a2tDMra6zd+AdChvdSOH/7g4cHuXubv66Y3m1rFvU3n5QDZ00AwBwphWprNqSQlQml1/3J5V5
1SJIkbMbkSpSVUxphDjDjMHv1Hp4Hs7g40wru6FZNK6z0S6ZVMMuGT2Y5r7q0igAUBWeZLXqDwAY
01Lf6pDqEv1eC4xpTpEKAERpxdXWl2bqXunMDaeben1u4jpDnr1TkbPX+A1GN7Ub+gRnWgnjqkYP
2orEenVwnCZQhERbkQCIUjwP43faiNE48iebDT8XjMY29fpCmrHOOBQhf8K2HSjP+xMQhTOsAECe
FWrR7QjGcWPYDBQ8mAcA6uKL9PajzNot08jYDa3NNRO8yrouy/i55KJjRdJCs/ar2LaDjF8hnazk
gr3o9mirXmdqVVNjsGyC+B9sEN8N0X/mLEtfx7IJpJu2kedU7YTCcIZV9+NqQbSq+LxxwMqkTznO
k20HPTL33UVqBQBA49jrFHk62RMAxLIJAgCMaQ4IaSsfAalqfAv/Fl3Cw+KlX994JapmTrtQXCx7
PXUdAAC0onvKghNMq17qsmu1XqlL/yI15XSz9lrRvboB6aZtLbuHCW+N0Cly9T76jXA0jj2N66jf
HWfeZTupFUkeL68VVifLFN78ECEw+2AjoggAMPVeIX44R1ORphbe5fe8XPlkp4nLDHHxOXVplExy
FVBw3boukWhCxp41MdEvy8DkKR1CJtQzvHhjiI/LDwh0+jtNsD00oaxUwTNlzp3XJSDQqQmqlnzl
b2vLLSmRnTqR+fkXfq+SdbppW508C2dYsGwCZZkbDP440wrDGaS6lGnZjca218mf1RvcvPMmSeoK
ojKlxsd3lyTlG5zdysJnp/D2SKaFH8umb+lVn3obZwxncJ2ncRzGlkf3AQBEyBm8NpqKNDrXjdII
AQCRcjrXFQD0u2LrU4IYDPzs+bHGPk0qiVcAkkT37hbPmvPBV0tiPp7Svv8Al4oKNUWhpiWpU2cb
AJBJNU+eiF5tXccs/Q8w+B9QOrky96CqMAIALHsc15TH6KTpFt3+xJkWpDJf/GCanoO6YNn0Y1j4
8T/4BQBkWTsISSoAUhVHAmBctznsVoMY5p1oXGe7oVn6Y5lKr7TFua7WAddKLznzPD/jeX6uFt4S
xg8kNaUAUJnyBb/zNhPvVTqNRJj0FQAocvbhristux8jygUN2NeR0V8AgAvns+/fK173c9/HKYI9
u1NCfx9w7GjG5YvZhI6yt+d98qlPm7aWCEHY4bS//sql0fDJH3sPHeaOENq2JfH+/WI6Df9+dS8M
g9+2Je74YxAArP3hTlA/574Bjmt/uJORLiJ01PoNgRgG27YmCoVKDw+LZSu66xub5EelLi5m5uYs
lZIwNWUAIAsL/d4MlJNdWUv+u2XxuXkSQkt5t7f6dnl3ExPGxQvZx46mY4CFTGw7Jthr8sQLob8P
BEC5OZKpky+8QtZReXTt00FoLGudPEsjvFl62a3eMOU3ak5PKzrLq9GFAADUJRerNN/oDgDq8muy
p5uNV2n0+gFA/my7/Nl241c6SZowbqBhlQYAKEIiS/lGrgZJJcCkmHq+m0OIIKiJ46tGDHv2DR4x
wj0m+nnUlZyIU0+Xf9cDx6CwQDp7zgcDBrrcvlW0ZvXtg4eG3r1T/PBB6b79Q5QK3eLPo728LHAc
S30sCD8+AiGgKJSTI6nJEgL9+lFGuui37f1tbLgIoQXzri1d1s3Dw3znjuSzp59OmdoeAOLjCgIC
HQGhmbM6rvvxbmCQU8iEtk5OpgCw4Zf7teRzcyWh2wdYWbPX/nD38sXskAltD+xP3bNnsLUNR6sl
a9b4ANzc+Tt2Dnyd1heMjrNaaZuyK6WxYFh0VRWealLQ+us6g4GfODXC2OfLr3znzbkWPNbL3d3M
KAjq3cf+z8N/5+ZUPnxYMuRDVy6XzuXSAwIdHz4oGRPsiWGwPTRp9BhPFxezF5sQwwirykYnECgL
CmQ/rbsHAARB+fi0AkAkie7eKZ4+owMAGjTYxdfP9vKlnCWLoxcu6vJBJ+u68nrNGAZ+3ewy0kUA
qFs3u02bHk6Y0Karr+2LUcNrGc0ZlZjOeKfq64Di2XaEmrZnpFEtPADk5kjs7LiPU8opijJsa6qi
DQcKUYDAuEABEIdD+2P3gOgbBSuW3VywqLOjI0+rqXdvGwLQW/Bo+w8MNja7pSSXOzubWVqy9JKW
lqwpU72dnU2PhGW079CrrrxBG4uJEwQFgJYt909IKDt48O/790sWLuqsF8Ax0FvhXrf15Q2MhpoU
Bap35mZQWOXkcu2+vakbfu3r4MA7HZGl9ywvVyKEUh8LREK1u7uZr3+rqL/ylEqtUKiMjyv087PV
anUIoQ+Huowa7ZGcVG5nyy0XKPPyJACo2vRZw5OdHYdvzoqMfFZtdtMBoPi4gr4BerM9SkkuV6sJ
hKjCQhnXhFGvfK1kAyC5TOvn1+qTTzolJtR8WGFhySovU6pURIt93RiIIKjg0VVmgo4drZycTYcO
c7WxYc9b0PGThTGDhzgBwLVrz8+czjI1Yy7/zo/NpvXr5/g8Tzp75jUaDf9ocluvNvycbMmK5Xdw
HDPjM5cu9eVwaYsWdVr+7S2djmJz6MFjPYx5wjBYtbpb6G/JR/7MYLJoP67t4e7Ov3OnZNoMbwCk
1ZIRp7LS0kQA4OZutviLLnXlPT3NDdqqsoGoxZ/HKhQEm03T69F7W1mx+/V3nDYl6v/P5kYz8bDq
E1XxcLpGeFsvyeB3MGm3imnZTXT3I43oXvWACUy8vmA5TqEoUpy6TlZwwdjmtmD9OVJxqAkJW/9L
or9/qwEDmzJpbiSSkgRHwjK3bO37+qL4Hz2EOEoBFt6JAAAAAElFTkSuQmCC
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94425</attachid>
            <date>2015-09-06 11:54:33 +0000</date>
            <delta_ts>2015-09-06 12:49:17 +0000</delta_ts>
            <desc>Patch that applies to 19da552.</desc>
            <filename>fullscreen_20150904.patch</filename>
            <type>text/plain</type>
            <size>30949</size>
            <attacher name="Luca Carlon">carlon.luca</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IGNkMjIwOTIuLmFhYmQ4
YTEgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtMSwzICsxLDQg
QEAKK0NNYWtlTGlzdHMudHh0LnVzZXIKICoua2F0ZS1zd3AKIHRlc3RzL2RhdGFiYXNlcy8qLyou
ZGIKICoua2RlNApkaWZmIC0tZ2l0IGEvQ01ha2VMaXN0cy50eHQgYi9DTWFrZUxpc3RzLnR4dApp
bmRleCBhMzkxN2Y1Li4yZjI1Y2MyIDEwMDY0NAotLS0gYS9DTWFrZUxpc3RzLnR4dAorKysgYi9D
TWFrZUxpc3RzLnR4dApAQCAtMTMwOCw2ICsxMzA4LDcgQEAgaWYoRElHSUtBTV9DQU5fQkVfQ09N
UElMRUQpCiAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRlbXMvb3Zl
cmxheXMvZ3JvdXBpbmRpY2F0b3JvdmVybGF5LmNwcAogICAgICAgICAke0NNQUtFX0NVUlJFTlRf
U09VUkNFX0RJUn0vYXBwL2l0ZW1zL292ZXJsYXlzL2ltYWdlcmF0aW5nb3ZlcmxheS5jcHAKICAg
ICAgICAgJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L2FwcC9pdGVtcy9vdmVybGF5cy9pbWFn
ZXJvdGF0aW9ub3ZlcmxheS5jcHAKKwkke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vYXBwL2l0
ZW1zL292ZXJsYXlzL2ltYWdlZnNvdmVybGF5LmNwcAogICAgICAgICAke0NNQUtFX0NVUlJFTlRf
U09VUkNFX0RJUn0vYXBwL2l0ZW1zL292ZXJsYXlzL2ltYWdlY29vcmRpbmF0ZXNvdmVybGF5LmNw
cAogICAgICAgICAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vYXBwL2l0ZW1zL292ZXJsYXlz
L2ltYWdlc2VsZWN0aW9ub3ZlcmxheS5jcHAKIApkaWZmIC0tZ2l0IGEvYXBwL2l0ZW1zL2RpZ2lr
YW1pbWFnZXZpZXcuY3BwIGIvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcuY3BwCmluZGV4IDg3
ZTgzYzYuLjgxYzVhZjggMTAwNjQ0Ci0tLSBhL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmNw
cAorKysgYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlldy5jcHAKQEAgLTcxLDYgKzcxLDcgQEAK
ICNpbmNsdWRlICJpbWFnZWFsYnVtbW9kZWwuaCIKICNpbmNsdWRlICJpbWFnZWRyYWdkcm9wLmgi
CiAjaW5jbHVkZSAiaW1hZ2VyYXRpbmdvdmVybGF5LmgiCisjaW5jbHVkZSAiaW1hZ2Vmc292ZXJs
YXkuaCIKICNpbmNsdWRlICJpbWFnZWNvb3JkaW5hdGVzb3ZlcmxheS5oIgogI2luY2x1ZGUgInRh
Z3NsaW5lZWRpdG92ZXJsYXkuaCIKICNpbmNsdWRlICJpbWFnZXZpZXd1dGlsaXRpZXMuaCIKQEAg
LTEzNiw2ICsxMzcsNyBAQCBEaWdpa2FtSW1hZ2VWaWV3OjpEaWdpa2FtSW1hZ2VWaWV3KFFXaWRn
ZXQqIGNvbnN0IHBhcmVudCkKICAgICAvLyByb3RhdGlvbiBvdmVybGF5cwogICAgIGQtPnJvdGF0
ZUxlZnRPdmVybGF5ICA9IEltYWdlUm90YXRlT3ZlcmxheTo6bGVmdCh0aGlzKTsKICAgICBkLT5y
b3RhdGVSaWdodE92ZXJsYXkgPSBJbWFnZVJvdGF0ZU92ZXJsYXk6OnJpZ2h0KHRoaXMpOworICAg
IGQtPmZ1bGxzY3JlZW5PdmVybGF5ICA9IEltYWdlRnNPdmVybGF5OjppbnN0YW5jZSh0aGlzKTsK
ICAgICBkLT51cGRhdGVPdmVybGF5cygpOwogCiAgICAgLy8gcmF0aW5nIG92ZXJsYXkKQEAgLTcx
Myw2ICs3MTUsMTggQEAgdm9pZCBEaWdpa2FtSW1hZ2VWaWV3OjpzbG90Um90YXRlUmlnaHQoY29u
c3QgUUxpc3Q8UU1vZGVsSW5kZXg+JiBpbmRleGVzKQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgS0V4aXYySWZhY2U6OlJvdGF0aW9uTWF0cml4OjpSb3RhdGU5MCk7
CiB9CiAKK3ZvaWQgRGlnaWthbUltYWdlVmlldzo6c2xvdEZ1bGxzY3JlZW4oY29uc3QgUUxpc3Q8
UU1vZGVsSW5kZXg+JiBpbmRleGVzKQoreworICAgUUxpc3Q8SW1hZ2VJbmZvPiBpbmZvcyA9IGlt
YWdlRmlsdGVyTW9kZWwoKS0+aW1hZ2VJbmZvcyhpbmRleGVzKTsKKyAgIGlmIChpbmZvcy5pc0Vt
cHR5KCkpCisgICAgICByZXR1cm47CisKKyAgIC8vIEp1c3QgZnVsbHNjcmVlbiB0aGUgZmlyc3Qu
CisgICBjb25zdCBJbWFnZUluZm8mIGluZm8gPSBpbmZvcy5hdCgwKTsKKworICAgZW1pdCBmdWxs
c2NyZWVuUmVxdWVzdGVkKGluZm8pOworfQorCiB2b2lkIERpZ2lrYW1JbWFnZVZpZXc6OnNsb3RJ
bml0UHJvZ3Jlc3NJbmRpY2F0b3IoKQogewogI2lmZGVmIEhBVkVfS0ZBQ0UKZGlmZiAtLWdpdCBh
L2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmggYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmll
dy5oCmluZGV4IDhmMTM0ODAuLmZjZDJmNzQgMTAwNjQ0Ci0tLSBhL2FwcC9pdGVtcy9kaWdpa2Ft
aW1hZ2V2aWV3LmgKKysrIGIvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcuaApAQCAtODYsNiAr
ODYsNyBAQCBwdWJsaWMgUV9TTE9UUzoKIFFfU0lHTkFMUzoKIAogICAgIHZvaWQgcHJldmlld1Jl
cXVlc3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOworICAgIHZvaWQgZnVsbHNjcmVlblJlcXVl
c3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOwogICAgIHZvaWQgZ290b0FsYnVtQW5kSW1hZ2VS
ZXF1ZXN0ZWQoY29uc3QgSW1hZ2VJbmZvJiBpbmZvKTsKICAgICB2b2lkIGdvdG9UYWdBbmRJbWFn
ZVJlcXVlc3RlZChpbnQgdGFnSWQpOwogICAgIHZvaWQgZ290b0RhdGVBbmRJbWFnZVJlcXVlc3Rl
ZChjb25zdCBJbWFnZUluZm8mIGluZm8pOwpAQCAtMTEwLDYgKzExMSw3IEBAIHByaXZhdGUgUV9T
TE9UUzoKIAogICAgIHZvaWQgc2xvdFJvdGF0ZUxlZnQoY29uc3QgUUxpc3Q8UU1vZGVsSW5kZXg+
Jik7CiAgICAgdm9pZCBzbG90Um90YXRlUmlnaHQoY29uc3QgUUxpc3Q8UU1vZGVsSW5kZXg+Jik7
CisgICAgdm9pZCBzbG90RnVsbHNjcmVlbihjb25zdCBRTGlzdDxRTW9kZWxJbmRleD4mKTsKICAg
ICB2b2lkIHNsb3RJbml0UHJvZ3Jlc3NJbmRpY2F0b3IoKTsKIAogcHJpdmF0ZToKZGlmZiAtLWdp
dCBhL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3X3AuY3BwIGIvYXBwL2l0ZW1zL2RpZ2lrYW1p
bWFnZXZpZXdfcC5jcHAKaW5kZXggY2JmZTc3Zi4uOTJiMGNhYiAxMDA2NDQKLS0tIGEvYXBwL2l0
ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5jcHAKKysrIGIvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZp
ZXdfcC5jcHAKQEAgLTM5LDExICszOSwxMyBAQCBuYW1lc3BhY2UgRGlnaWthbQogCiBEaWdpa2Ft
SW1hZ2VWaWV3OjpQcml2YXRlOjpQcml2YXRlKERpZ2lrYW1JbWFnZVZpZXcqIGNvbnN0IHFxKQog
ICAgIDogb3ZlcmxheXNBY3RpdmUoZmFsc2UpLAorICAgICAgZnVsbHNjcmVlbkFjdGl2ZShmYWxz
ZSksCiAgICAgICBxX3B0cihxcSkKIHsKICAgICB1dGlsaXRpZXMgICAgICAgICAgPSAwOwogICAg
IHJvdGF0ZUxlZnRPdmVybGF5ICA9IDA7CiAgICAgcm90YXRlUmlnaHRPdmVybGF5ID0gMDsKKyAg
ICBmdWxsc2NyZWVuT3ZlcmxheSAgPSAwOwogICAgIG5vcm1hbERlbGVnYXRlICAgICA9IDA7CiAg
ICAgZmFjZURlbGVnYXRlICAgICAgID0gMDsKICAgICBmYWNlTW9kZSAgICAgICAgICAgPSBmYWxz
ZTsKQEAgLTkxLDYgKzkzLDMxIEBAIHZvaWQgRGlnaWthbUltYWdlVmlldzo6UHJpdmF0ZTo6dXBk
YXRlT3ZlcmxheXMoKQogICAgICAgICAgICAgb3ZlcmxheXNBY3RpdmUgPSB0cnVlOwogICAgICAg
ICB9CiAgICAgfQorCisgICAgaWYgKGZ1bGxzY3JlZW5BY3RpdmUpCisgICAgeworICAgICAgICBp
ZiAoIXNldHRpbmdzLT5nZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSkKKyAgICAgICAgeworICAgICAg
ICAgICAgZGlzY29ubmVjdChmdWxsc2NyZWVuT3ZlcmxheSwgU0lHTkFMKHNpZ25hbFJvdGF0ZShR
TGlzdDxRTW9kZWxJbmRleD4pKSwKKyAgICAgICAgICAgICAgICAgICAgICAgcSwgU0xPVChzbG90
RnVsbHNjcmVlbihRTGlzdDxRTW9kZWxJbmRleD4pKSk7CisKKyAgICAgICAgICAgIHEtPnJlbW92
ZU92ZXJsYXkoZnVsbHNjcmVlbk92ZXJsYXkpOworCisgICAgICAgICAgICBmdWxsc2NyZWVuQWN0
aXZlID0gZmFsc2U7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAg
aWYgKHNldHRpbmdzLT5nZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSkKKyAgICAgICAgeworICAgICAg
ICAgICAgZnVsbHNjcmVlbkFjdGl2ZSA9IHRydWU7CisKKyAgICAgICAgICAgIHEtPmFkZE92ZXJs
YXkoZnVsbHNjcmVlbk92ZXJsYXksIG5vcm1hbERlbGVnYXRlKTsKKworICAgICAgICAgICAgY29u
bmVjdChmdWxsc2NyZWVuT3ZlcmxheSwgU0lHTkFMKHNpZ25hbEZ1bGxzY3JlZW4oUUxpc3Q8UU1v
ZGVsSW5kZXg+KSksCisgICAgICAgICAgICAgICAgICAgIHEsIFNMT1Qoc2xvdEZ1bGxzY3JlZW4o
UUxpc3Q8UU1vZGVsSW5kZXg+KSkpOworICAgICAgICB9CisgICAgfQogfQogCiB9IC8vIG5hbWVz
cGFjZSBEaWdpa2FtCmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlld19wLmgg
Yi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlld19wLmgKaW5kZXggNTBmNjliOC4uNjZjYjZmYiAx
MDA2NDQKLS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5oCisrKyBiL2FwcC9pdGVt
cy9kaWdpa2FtaW1hZ2V2aWV3X3AuaApAQCAtMzYsNiArMzYsNyBAQAogI2luY2x1ZGUgImRpZ2lr
YW1pbWFnZXZpZXcuaCIKICNpbmNsdWRlICJkaWdpa2FtaW1hZ2VkZWxlZ2F0ZS5oIgogI2luY2x1
ZGUgImltYWdlcm90YXRpb25vdmVybGF5LmgiCisjaW5jbHVkZSAiaW1hZ2Vmc292ZXJsYXkuaCIK
ICNpbmNsdWRlICJhcHBsaWNhdGlvbnNldHRpbmdzLmgiCiAKICNpZmRlZiBIQVZFX0tGQUNFCkBA
IC03Myw5ICs3NCwxMSBAQCBwdWJsaWM6CiAgICAgRGlnaWthbUltYWdlRmFjZURlbGVnYXRlKiBm
YWNlRGVsZWdhdGU7CiAKICAgICBib29sICAgICAgICAgICAgICAgICAgICAgIG92ZXJsYXlzQWN0
aXZlOworICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgZnVsbHNjcmVlbkFjdGl2ZTsKIAog
ICAgIEltYWdlUm90YXRlT3ZlcmxheSogICAgICAgcm90YXRlTGVmdE92ZXJsYXk7CiAgICAgSW1h
Z2VSb3RhdGVPdmVybGF5KiAgICAgICByb3RhdGVSaWdodE92ZXJsYXk7CisgICAgSW1hZ2VGc092
ZXJsYXkqICAgICAgICAgICBmdWxsc2NyZWVuT3ZlcmxheTsKIAogICAgIGJvb2wgICAgICAgICAg
ICAgICAgICAgICAgZmFjZU1vZGU7CiAKZGlmZiAtLWdpdCBhL2FwcC9pdGVtcy9vdmVybGF5cy9p
bWFnZWZzb3ZlcmxheS5jcHAgYi9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuY3Bw
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ1Zjg3YjkKLS0tIC9kZXYvbnVs
bAorKysgYi9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuY3BwCkBAIC0wLDAgKzEs
MTIwIEBACisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KKyAqCisgKiBUaGlzIGZpbGUgaXMgYSBwYXJ0IG9mIGRpZ2lLYW0gcHJv
amVjdAorICogaHR0cDovL3d3dy5kaWdpa2FtLm9yZworICoKKyAqIERhdGUgICAgICAgIDogMjAx
NS0wOC0zMAorICogRGVzY3JpcHRpb24gOiBmdWxsc2NyZWVuIG92ZXJsYXkKKyAqCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTUgYnkgTHVjYSBDYXJsb24gPGNhcmxvbiBkb3QgbHVjYSBhdCBnbWFpbCBk
b3QgY29tPgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJl
ZGlzdHJpYnV0ZSBpdAorICogYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhl
IEdOVSBHZW5lcmFsCisgKiBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUg
U29mdHdhcmUgRm91bmRhdGlvbjsKKyAqIGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9w
dGlvbikKKyAqIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0
cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhP
VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAq
IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl
ZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisg
KgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09ICovCisKKyNpbmNsdWRlICJpbWFnZWZzb3ZlcmxheS5oIgorCisvLyBLREUgaW5j
bHVkZXMKKworI2luY2x1ZGUgPGtpY29ubG9hZGVyLmg+CisjaW5jbHVkZSA8a2xvY2FsZS5oPgor
CisvLyBMb2NhbCBpbmNsdWRlcworCisjaW5jbHVkZSAiaW1hZ2VjYXRlZ29yaXplZHZpZXcuaCIK
KyNpbmNsdWRlICJpbWFnZWluZm8uaCIKKyNpbmNsdWRlICJpbWFnZW1vZGVsLmgiCisjaW5jbHVk
ZSAiaXRlbXZpZXdob3ZlcmJ1dHRvbi5oIgorCituYW1lc3BhY2UgRGlnaWthbQoreworCitJbWFn
ZUZzT3ZlcmxheUJ1dHRvbjo6SW1hZ2VGc092ZXJsYXlCdXR0b24oUUFic3RyYWN0SXRlbVZpZXcq
IGNvbnN0IHBhcmVudFZpZXcpCisgICAgOiBJdGVtVmlld0hvdmVyQnV0dG9uKHBhcmVudFZpZXcp
Cit7Cit9CisKK1FTaXplIEltYWdlRnNPdmVybGF5QnV0dG9uOjpzaXplSGludCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIFFTaXplKDE2LCAxNik7Cit9CisKK1FQaXhtYXAgSW1hZ2VGc092ZXJsYXlC
dXR0b246Omljb24oKQoreworICAgIHJldHVybiBLSWNvbkxvYWRlcjo6Z2xvYmFsKCktPmxvYWRJ
Y29uKAorICAgICAgICAgICAgICJ2aWV3LWZ1bGxzY3JlZW4iLCBLSWNvbkxvYWRlcjo6Tm9Hcm91
cCwgS0ljb25Mb2FkZXI6OlNpemVTbWFsbCk7Cit9CisKK3ZvaWQgSW1hZ2VGc092ZXJsYXlCdXR0
b246OnVwZGF0ZVRvb2xUaXAoKQoreworICAgIHNldFRvb2xUaXAoaTE4bmMoIkBpbmZvOnRvb2x0
aXAiLCAiU2hvdyBGdWxsc2NyZWVuIikpOworfQorCisvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitJbWFnZUZz
T3ZlcmxheTo6SW1hZ2VGc092ZXJsYXkoUU9iamVjdCogY29uc3QgcGFyZW50KQorICAgIDogSG92
ZXJCdXR0b25EZWxlZ2F0ZU92ZXJsYXkocGFyZW50KQoreworfQorCit2b2lkIEltYWdlRnNPdmVy
bGF5OjpzZXRBY3RpdmUoYm9vbCBhY3RpdmUpCit7CisgICAgSG92ZXJCdXR0b25EZWxlZ2F0ZU92
ZXJsYXk6OnNldEFjdGl2ZShhY3RpdmUpOworCisgICAgaWYgKGFjdGl2ZSkKKyAgICB7CisgICAg
ICAgIGNvbm5lY3QoYnV0dG9uKCksIFNJR05BTChjbGlja2VkKGJvb2wpKSwKKyAgICAgICAgICAg
ICAgICB0aGlzLCBTTE9UKHNsb3RDbGlja2VkKCkpKTsKKyAgICB9CisKKyAgICAvLyBpZiAhYWN0
aXZlLCBidXR0b24oKSBpcyBkZWxldGVkCit9CisKK0l0ZW1WaWV3SG92ZXJCdXR0b24qIEltYWdl
RnNPdmVybGF5OjpjcmVhdGVCdXR0b24oKQoreworICAgIHJldHVybiBuZXcgSW1hZ2VGc092ZXJs
YXlCdXR0b24odmlldygpKTsKK30KKwordm9pZCBJbWFnZUZzT3ZlcmxheTo6dXBkYXRlQnV0dG9u
KGNvbnN0IFFNb2RlbEluZGV4JiBpbmRleCkKK3sKKyAgICBjb25zdCBRUmVjdCByZWN0ID0gbV92
aWV3LT52aXN1YWxSZWN0KGluZGV4KTsKKyAgICBjb25zdCBpbnQgZ2FwICAgID0gNTsKKyAgICBj
b25zdCBpbnQgeCAgICAgID0gcmVjdC5yaWdodCgpIC0gMypnYXAgLSBLSWNvbkxvYWRlcjo6U2l6
ZVNtYWxsKjQgLSAyOworICAgIGNvbnN0IGludCB5ICAgICAgPSByZWN0LnRvcCgpICsgZ2FwOwor
ICAgIGJ1dHRvbigpLT5tb3ZlKFFQb2ludCh4LCB5KSk7Cit9CisKK3ZvaWQgSW1hZ2VGc092ZXJs
YXk6OnNsb3RDbGlja2VkKCkKK3sKKyAgICBRTW9kZWxJbmRleCBpbmRleCA9IGJ1dHRvbigpLT5p
bmRleCgpOworCisgICAgaWYgKGluZGV4LmlzVmFsaWQoKSkKKyAgICAgICAgZW1pdCBzaWduYWxG
dWxsc2NyZWVuKGFmZmVjdGVkSW5kZXhlcyhpbmRleCkpOworfQorCitib29sIEltYWdlRnNPdmVy
bGF5OjpjaGVja0luZGV4KGNvbnN0IFFNb2RlbEluZGV4JiBpbmRleCkgY29uc3QKK3sKKyAgICBJ
bWFnZUluZm8gaW5mbyA9IEltYWdlTW9kZWw6OnJldHJpZXZlSW1hZ2VJbmZvKGluZGV4KTsKKyAg
ICByZXR1cm4gKGluZm8uY2F0ZWdvcnkoKSA9PSBEYXRhYmFzZUl0ZW06OkltYWdlKTsKK30KKwor
dm9pZCBJbWFnZUZzT3ZlcmxheTo6d2lkZ2V0RW50ZXJFdmVudCgpCit7CisgICAgd2lkZ2V0RW50
ZXJOb3RpZnlNdWx0aXBsZShidXR0b24oKS0+aW5kZXgoKSk7Cit9CisKK3ZvaWQgSW1hZ2VGc092
ZXJsYXk6OndpZGdldExlYXZlRXZlbnQoKQoreworICAgIHdpZGdldExlYXZlTm90aWZ5TXVsdGlw
bGUoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgRGlnaWthbQpkaWZmIC0tZ2l0IGEvYXBwL2l0ZW1z
L292ZXJsYXlzL2ltYWdlZnNvdmVybGF5LmggYi9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292
ZXJsYXkuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZjMzNmFhCi0tLSAv
ZGV2L251bGwKKysrIGIvYXBwL2l0ZW1zL292ZXJsYXlzL2ltYWdlZnNvdmVybGF5LmgKQEAgLTAs
MCArMSw4NyBAQAorLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09CisgKgorICogVGhpcyBmaWxlIGlzIGEgcGFydCBvZiBkaWdpS2Ft
IHByb2plY3QKKyAqIGh0dHA6Ly93d3cuZGlnaWthbS5vcmcKKyAqCisgKiBEYXRlICAgICAgICA6
IDIwMTUtMDgtMzAKKyAqIERlc2NyaXB0aW9uIDogZnVsbHNjcmVlbiBvdmVybGF5CisgKgorICog
Q29weXJpZ2h0IChDKSAyMDE1IGJ5IEx1Y2EgQ2FybG9uIDxjYXJsb24gZG90IGx1Y2EgYXQgZ21h
aWwgZG90IGNvbT4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNh
biByZWRpc3RyaWJ1dGUgaXQKKyAqIGFuZC9vciBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m
IHRoZSBHTlUgR2VuZXJhbAorICogUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBG
cmVlIFNvZnR3YXJlIEZvdW5kYXRpb247CisgKiBlaXRoZXIgdmVyc2lvbiAyLCBvciAoYXQgeW91
ciBvcHRpb24pCisgKiBhbnkgbGF0ZXIgdmVyc2lvbi4KKyAqCisgKiBUaGlzIHByb2dyYW0gaXMg
ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAqIGJ1dCBX
SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m
CisgKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu
ICBTZWUgdGhlCisgKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz
LgorICoKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PSAqLworCisjaWZuZGVmIElNQUdFRlNPVkVSTEFZX0gKKyNkZWZpbmUgSU1B
R0VGU09WRVJMQVlfSAorCisvLyBRdCBpbmNsdWRlcworCisjaW5jbHVkZSA8UUFic3RyYWN0QnV0
dG9uPgorI2luY2x1ZGUgPFFBYnN0cmFjdEl0ZW1WaWV3PgorCisvLyBMb2NhbCBpbmNsdWRlcwor
CisjaW5jbHVkZSAiaXRlbXZpZXdob3ZlcmJ1dHRvbi5oIgorI2luY2x1ZGUgImltYWdlZGVsZWdh
dGVvdmVybGF5LmgiCisKK25hbWVzcGFjZSBEaWdpa2FtCit7CisKK2NsYXNzIEltYWdlRnNPdmVy
bGF5QnV0dG9uIDogcHVibGljIEl0ZW1WaWV3SG92ZXJCdXR0b24KK3sKK3B1YmxpYzoKKworICAg
IEltYWdlRnNPdmVybGF5QnV0dG9uKFFBYnN0cmFjdEl0ZW1WaWV3KiBjb25zdCBwYXJlbnRWaWV3
KTsKKyAgICB2aXJ0dWFsIFFTaXplIHNpemVIaW50KCkgY29uc3Q7CisKK3Byb3RlY3RlZDoKKwor
ICAgIHZpcnR1YWwgUVBpeG1hcCBpY29uKCk7CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVRvb2xU
aXAoKTsKK307CisKKy8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK2NsYXNzIEltYWdlRnNPdmVybGF5IDogcHVi
bGljIEhvdmVyQnV0dG9uRGVsZWdhdGVPdmVybGF5Cit7CisgICAgUV9PQkpFQ1QKKworcHVibGlj
OgorCisgICAgSW1hZ2VGc092ZXJsYXkoUU9iamVjdCogY29uc3QgcGFyZW50KTsKKyAgICB2aXJ0
dWFsIHZvaWQgc2V0QWN0aXZlKGJvb2wgYWN0aXZlKTsKKworICAgIHN0YXRpYyBJbWFnZUZzT3Zl
cmxheSogaW5zdGFuY2UoUU9iamVjdCogcGFyZW50KSB7CisgICAgICAgcmV0dXJuIG5ldyBJbWFn
ZUZzT3ZlcmxheShwYXJlbnQpOworICAgIH0KKworUV9TSUdOQUxTOgorCisgICAgdm9pZCBzaWdu
YWxGdWxsc2NyZWVuKGNvbnN0IFFMaXN0PFFNb2RlbEluZGV4PiYgaW5kZXhlcyk7CisKK3Byb3Rl
Y3RlZDoKKworICAgIHZpcnR1YWwgSXRlbVZpZXdIb3ZlckJ1dHRvbiogY3JlYXRlQnV0dG9uKCk7
CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUJ1dHRvbihjb25zdCBRTW9kZWxJbmRleCYgaW5kZXgp
OworICAgIHZpcnR1YWwgYm9vbCBjaGVja0luZGV4KGNvbnN0IFFNb2RlbEluZGV4JiBpbmRleCkg
Y29uc3Q7CisgICAgdmlydHVhbCB2b2lkIHdpZGdldEVudGVyRXZlbnQoKTsKKyAgICB2aXJ0dWFs
IHZvaWQgd2lkZ2V0TGVhdmVFdmVudCgpOworCitwcml2YXRlIFFfU0xPVFM6CisKKyAgICB2b2lk
IHNsb3RDbGlja2VkKCk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBEaWdpa2FtCisKKyNlbmRpZiAv
KiBJTUFHRUZTT1ZFUkxBWV9IICovCmRpZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRp
b25zZXR0aW5ncy5jcHAgYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5jcHAKaW5k
ZXggNzBlNDdhYy4uYmMyMTRlOSAxMDA2NDQKLS0tIGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9u
c2V0dGluZ3MuY3BwCisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzLmNwcApA
QCAtMTU1LDYgKzE1NSw3IEBAIHZvaWQgQXBwbGljYXRpb25TZXR0aW5nczo6cmVhZFNldHRpbmdz
KCkKICAgICBkLT5pY29uU2hvd0NvbW1lbnRzICAgICAgICAgICAgICAgICA9IGdyb3VwLnJlYWRF
bnRyeShkLT5jb25maWdJY29uU2hvd0NvbW1lbnRzRW50cnksICAgICAgICAgICAgIHRydWUpOwog
ICAgIGQtPmljb25TaG93VGFncyAgICAgICAgICAgICAgICAgICAgID0gZ3JvdXAucmVhZEVudHJ5
KGQtPmNvbmZpZ0ljb25TaG93VGFnc0VudHJ5LCAgICAgICAgICAgICAgICAgdHJ1ZSk7CiAgICAg
ZC0+aWNvblNob3dPdmVybGF5cyAgICAgICAgICAgICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+
Y29uZmlnSWNvblNob3dPdmVybGF5c0VudHJ5LCAgICAgICAgICAgICB0cnVlKTsKKyAgICBkLT5p
Y29uU2hvd0Z1bGxzY3JlZW4gICAgICAgICAgICAgICA9IGdyb3VwLnJlYWRFbnRyeShkLT5jb25m
aWdJY29uU2hvd0Z1bGxzY3JlZW5FbnRyeSwgICAgICAgICAgIHRydWUpOwogICAgIGQtPmljb25T
aG93UmF0aW5nICAgICAgICAgICAgICAgICAgID0gZ3JvdXAucmVhZEVudHJ5KGQtPmNvbmZpZ0lj
b25TaG93UmF0aW5nRW50cnksICAgICAgICAgICAgICAgdHJ1ZSk7CiAgICAgZC0+aWNvblNob3dJ
bWFnZUZvcm1hdCAgICAgICAgICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNo
b3dJbWFnZUZvcm1hdEVudHJ5LCAgICAgICAgICBmYWxzZSk7CiAgICAgZC0+aWNvblNob3dDb29y
ZGluYXRlcyAgICAgICAgICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNob3dD
b29yZGluYXRlc0VudHJ5LCAgICAgICAgICBmYWxzZSk7CkBAIC0yOTgsNiArMjk5LDcgQEAgdm9p
ZCBBcHBsaWNhdGlvblNldHRpbmdzOjpzYXZlU2V0dGluZ3MoKQogICAgIGdyb3VwLndyaXRlRW50
cnkoZC0+Y29uZmlnSWNvblNob3dDb21tZW50c0VudHJ5LCAgICAgICAgICAgICAgICAgICBkLT5p
Y29uU2hvd0NvbW1lbnRzKTsKICAgICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93
VGFnc0VudHJ5LCAgICAgICAgICAgICAgICAgICAgICAgZC0+aWNvblNob3dUYWdzKTsKICAgICBn
cm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93T3ZlcmxheXNFbnRyeSwgICAgICAgICAg
ICAgICAgICAgZC0+aWNvblNob3dPdmVybGF5cyk7CisgICAgZ3JvdXAud3JpdGVFbnRyeShkLT5j
b25maWdJY29uU2hvd0Z1bGxzY3JlZW5FbnRyeSwgICAgICAgICAgICAgICAgIGQtPmljb25TaG93
RnVsbHNjcmVlbik7CiAgICAgZ3JvdXAud3JpdGVFbnRyeShkLT5jb25maWdJY29uU2hvd1JhdGlu
Z0VudHJ5LCAgICAgICAgICAgICAgICAgICAgIGQtPmljb25TaG93UmF0aW5nKTsKICAgICBncm91
cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93SW1hZ2VGb3JtYXRFbnRyeSwgICAgICAgICAg
ICAgICAgZC0+aWNvblNob3dJbWFnZUZvcm1hdCk7CiAgICAgZ3JvdXAud3JpdGVFbnRyeShkLT5j
b25maWdJY29uU2hvd0Nvb3JkaW5hdGVzRW50cnksICAgICAgICAgICAgICAgIGQtPmljb25TaG93
Q29vcmRpbmF0ZXMpOwpkaWZmIC0tZ2l0IGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGlu
Z3MuaCBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzLmgKaW5kZXggNDkwYTI0NS4u
MjNjNDk2MiAxMDA2NDQKLS0tIGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3MuaAor
KysgYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5oCkBAIC0yMzcsNiArMjM3LDkg
QEAgcHVibGljOgogICAgICAqLwogICAgIHZvaWQgc2V0SWNvblNob3dPdmVybGF5cyhib29sIHZh
bCk7CiAKKyAgICB2b2lkIHNldEljb25TaG93RnVsbHNjcmVlbihib29sIHZhbCk7CisgICAgYm9v
bCBnZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSBjb25zdDsKKwogICAgIC8qKgogICAgICAqIERldGVy
bWluZXMgd2hldGhlciB0aGUgb3ZlcmxheSBidXR0b25zIHNob3VsZCBiZSBkaXNwbGF5ZWQgb24g
dGhlIGljb25zLgogICAgICAqLwpkaWZmIC0tZ2l0IGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9u
c2V0dGluZ3NfaWNvbnZpZXcuY3BwIGIvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3Nf
aWNvbnZpZXcuY3BwCmluZGV4IGEzZmJlNGIuLjRiOGI0N2YgMTAwNjQ0Ci0tLSBhL2FwcC9zZXR0
aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX2ljb252aWV3LmNwcAorKysgYi9hcHAvc2V0dGluZ3Mv
YXBwbGljYXRpb25zZXR0aW5nc19pY29udmlldy5jcHAKQEAgLTIyOCw2ICsyMjgsMTYgQEAgdm9p
ZCBBcHBsaWNhdGlvblNldHRpbmdzOjpzZXRJY29uU2hvd092ZXJsYXlzKGJvb2wgdmFsKQogICAg
IGQtPmljb25TaG93T3ZlcmxheXMgPSB2YWw7CiB9CiAKK3ZvaWQgQXBwbGljYXRpb25TZXR0aW5n
czo6c2V0SWNvblNob3dGdWxsc2NyZWVuKGJvb2wgdmFsKQoreworICAgZC0+aWNvblNob3dGdWxs
c2NyZWVuID0gdmFsOworfQorCitib29sIEFwcGxpY2F0aW9uU2V0dGluZ3M6OmdldEljb25TaG93
RnVsbHNjcmVlbigpIGNvbnN0Cit7CisgICByZXR1cm4gZC0+aWNvblNob3dGdWxsc2NyZWVuOwor
fQorCiBib29sIEFwcGxpY2F0aW9uU2V0dGluZ3M6OmdldEljb25TaG93T3ZlcmxheXMoKSBjb25z
dAogewogICAgIHJldHVybiBkLT5pY29uU2hvd092ZXJsYXlzOwpkaWZmIC0tZ2l0IGEvYXBwL3Nl
dHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3NfcC5jcHAgYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRp
b25zZXR0aW5nc19wLmNwcAppbmRleCA5NjA0MDI4Li45MmQyZWQ0IDEwMDY0NAotLS0gYS9hcHAv
c2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19wLmNwcAorKysgYi9hcHAvc2V0dGluZ3MvYXBw
bGljYXRpb25zZXR0aW5nc19wLmNwcApAQCAtODEsNiArODEsNyBAQCBjb25zdCBRU3RyaW5nIEFw
cGxpY2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6OmNvbmZpZ0ljb25TaG93SW1hZ2VGb3JtYXRFbnRy
eSgiSWNvbgogY29uc3QgUVN0cmluZyBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpjb25m
aWdJY29uU2hvd0Nvb3JkaW5hdGVzRW50cnkoIkljb24gU2hvdyBDb29yZGluYXRlcyIpOwogY29u
c3QgUVN0cmluZyBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpjb25maWdJY29uU2hvd0Fz
cGVjdFJhdGlvRW50cnkoIkljb24gU2hvdyBBc3BlY3QgUmF0aW8iKTsKIGNvbnN0IFFTdHJpbmcg
QXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmlnSWNvblNob3dPdmVybGF5c0VudHJ5
KCJJY29uIFNob3cgT3ZlcmxheXMiKTsKK2NvbnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5n
czo6UHJpdmF0ZTo6Y29uZmlnSWNvblNob3dGdWxsc2NyZWVuRW50cnkoIkljb24gU2hvdyBGdWxs
c2NyZWVuIik7CiBjb25zdCBRU3RyaW5nIEFwcGxpY2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6OmNv
bmZpZ0ljb25WaWV3Rm9udEVudHJ5KCJJY29uVmlldyBGb250Iik7CiBjb25zdCBRU3RyaW5nIEFw
cGxpY2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6OmNvbmZpZ1Rvb2xUaXBzRm9udEVudHJ5KCJUb29s
VGlwcyBGb250Iik7CiBjb25zdCBRU3RyaW5nIEFwcGxpY2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6
OmNvbmZpZ1Nob3dUb29sVGlwc0VudHJ5KCJTaG93IFRvb2xUaXBzIik7CkBAIC0xNDgsNiArMTQ5
LDcgQEAgQXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6UHJpdmF0ZShBcHBsaWNhdGlvblNl
dHRpbmdzKiBjb25zdCBxKQogICAgICAgaWNvblNob3dSZXNvbHV0aW9uKGZhbHNlKSwKICAgICAg
IGljb25TaG93VGFncyhmYWxzZSksCiAgICAgICBpY29uU2hvd092ZXJsYXlzKGZhbHNlKSwKKyAg
ICAgIGljb25TaG93RnVsbHNjcmVlbihmYWxzZSksCiAgICAgICBpY29uU2hvd1JhdGluZyhmYWxz
ZSksCiAgICAgICBpY29uU2hvd0ltYWdlRm9ybWF0KGZhbHNlKSwKICAgICAgIGljb25TaG93Q29v
cmRpbmF0ZXMoZmFsc2UpLApAQCAtMjU3LDYgKzI1OSw3IEBAIHZvaWQgQXBwbGljYXRpb25TZXR0
aW5nczo6UHJpdmF0ZTo6aW5pdCgpCiAgICAgaWNvblNob3dBc3BlY3RSYXRpbyAgICAgICAgICAg
ICAgICAgPSBmYWxzZTsKICAgICBpY29uU2hvd1RhZ3MgICAgICAgICAgICAgICAgICAgICAgICA9
IHRydWU7CiAgICAgaWNvblNob3dPdmVybGF5cyAgICAgICAgICAgICAgICAgICAgPSB0cnVlOwor
ICAgIGljb25TaG93RnVsbHNjcmVlbiAgICAgICAgICAgICAgICAgID0gdHJ1ZTsKICAgICBpY29u
U2hvd1JhdGluZyAgICAgICAgICAgICAgICAgICAgICA9IHRydWU7CiAgICAgaWNvblNob3dJbWFn
ZUZvcm1hdCAgICAgICAgICAgICAgICAgPSBmYWxzZTsKICAgICBpY29uU2hvd0Nvb3JkaW5hdGVz
ICAgICAgICAgICAgICAgICA9IGZhbHNlOwpkaWZmIC0tZ2l0IGEvYXBwL3NldHRpbmdzL2FwcGxp
Y2F0aW9uc2V0dGluZ3NfcC5oIGIvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3NfcC5o
CmluZGV4IDk0MzQyOWEuLmQ4MTY2MzAgMTAwNjQ0Ci0tLSBhL2FwcC9zZXR0aW5ncy9hcHBsaWNh
dGlvbnNldHRpbmdzX3AuaAorKysgYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19w
LmgKQEAgLTczLDYgKzczLDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdCBRU3RyaW5nICAg
ICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93Q29tbWVudHNFbnRyeTsKICAgICBzdGF0
aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBjb25maWdJY29uU2hvd1RhZ3NF
bnRyeTsKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBjb25m
aWdJY29uU2hvd092ZXJsYXlzRW50cnk7CisgICAgc3RhdGljIGNvbnN0IFFTdHJpbmcgICAgICAg
ICAgICAgICAgICAgICAgY29uZmlnSWNvblNob3dGdWxsc2NyZWVuRW50cnk7CiAgICAgc3RhdGlj
IGNvbnN0IFFTdHJpbmcgICAgICAgICAgICAgICAgICAgICAgY29uZmlnSWNvblNob3dSYXRpbmdF
bnRyeTsKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBjb25m
aWdJY29uU2hvd0ltYWdlRm9ybWF0RW50cnk7CiAgICAgc3RhdGljIGNvbnN0IFFTdHJpbmcgICAg
ICAgICAgICAgICAgICAgICAgY29uZmlnSWNvblNob3dDb29yZGluYXRlc0VudHJ5OwpAQCAtMTQ5
LDYgKzE1MCw3IEBAIHB1YmxpYzoKICAgICBib29sICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpY29uU2hvd1Jlc29sdXRpb247CiAgICAgYm9vbCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaWNvblNob3dUYWdzOwogICAgIGJvb2wgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGljb25TaG93T3ZlcmxheXM7CisgICAgYm9vbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblNob3dGdWxsc2NyZWVuOwogICAg
IGJvb2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25TaG93UmF0aW5n
OwogICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25TaG93
SW1hZ2VGb3JtYXQ7CiAgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaWNvblNob3dDb29yZGluYXRlczsKZGlmZiAtLWdpdCBhL2FwcC91dGlscy9zbGlkZXNob3di
dWlsZGVyLmNwcCBiL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmNwcAppbmRleCA2ZDE5ZDdl
Li42MjQ0NmFiIDEwMDY0NAotLS0gYS9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5jcHAKKysr
IGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuY3BwCkBAIC00OSwxMyArNDksMTYgQEAgcHVi
bGljOgogCiAgICAgUHJpdmF0ZSgpIDoKICAgICAgICAgY2FuY2VsKGZhbHNlKSwKLSAgICAgICAg
YWxidW0oMCkKKyAgICAgICAgYWxidW0oMCksCisgICAgICAgIGF1dG9QbGF5RW5hYmxlZCh0cnVl
KQogICAgIHsKICAgICB9CiAKICAgICBib29sICAgICAgICAgIGNhbmNlbDsKICAgICBJbWFnZUlu
Zm9MaXN0IGluZm9MaXN0OwogICAgIEFsYnVtKiAgICAgICAgYWxidW07CisgICAgYm9vbCAgICAg
ICAgICBhdXRvUGxheUVuYWJsZWQ7CisgICAgS1VybCAgICAgICAgICBzdGFydEZyb207IC8vIE92
ZXJyaWRlcyB0aGUgc3RhcnRGcm9tQ3VycmVudCBmbGFnIHJlYWQgZnJvbSBzZXR0aW5ncy4KIH07
CiAKIFNsaWRlU2hvd0J1aWxkZXI6OlNsaWRlU2hvd0J1aWxkZXIoY29uc3QgSW1hZ2VJbmZvTGlz
dCYgaW5mb0xpc3QpCkBAIC02NSw4ICs2OCw2IEBAIFNsaWRlU2hvd0J1aWxkZXI6OlNsaWRlU2hv
d0J1aWxkZXIoY29uc3QgSW1hZ2VJbmZvTGlzdCYgaW5mb0xpc3QpCiAgICAgZC0+aW5mb0xpc3Qg
PSBpbmZvTGlzdDsKIAogICAgIFByb2dyZXNzTWFuYWdlcjo6YWRkUHJvZ3Jlc3NJdGVtKHRoaXMp
OwotCi0gICAgUVRpbWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xPVChzbG90UnVuKCkpKTsK
IH0KIAogU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29uc3QgYWxi
dW0pCkBAIC03Niw4ICs3Nyw2IEBAIFNsaWRlU2hvd0J1aWxkZXI6OlNsaWRlU2hvd0J1aWxkZXIo
QWxidW0qIGNvbnN0IGFsYnVtKQogICAgIGQtPmFsYnVtID0gYWxidW07CiAKICAgICBQcm9ncmVz
c01hbmFnZXI6OmFkZFByb2dyZXNzSXRlbSh0aGlzKTsKLQotICAgIFFUaW1lcjo6c2luZ2xlU2hv
dCg1MDAsIHRoaXMsIFNMT1Qoc2xvdFJ1bigpKSk7CiB9CiAKIFNsaWRlU2hvd0J1aWxkZXI6On5T
bGlkZVNob3dCdWlsZGVyKCkKQEAgLTg1LDYgKzg0LDIxIEBAIFNsaWRlU2hvd0J1aWxkZXI6On5T
bGlkZVNob3dCdWlsZGVyKCkKICAgICBkZWxldGUgZDsKIH0KIAordm9pZCBTbGlkZVNob3dCdWls
ZGVyOjpzZXRPdmVycmlkZVN0YXJ0RnJvbShjb25zdCBJbWFnZUluZm8mIGluZm8pCit7CisgICBk
LT5zdGFydEZyb20gPSBpbmZvLmZpbGVVcmwoKTsKK30KKwordm9pZCBTbGlkZVNob3dCdWlsZGVy
OjpzZXRBdXRvUGxheUVuYWJsZWQoYm9vbCBlbmFibGUpCit7CisgICAgZC0+YXV0b1BsYXlFbmFi
bGVkID0gZW5hYmxlOworfQorCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnJ1bigpCit7CisgICAg
UVRpbWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xPVChzbG90UnVuKCkpKTsKK30KKwogdm9p
ZCBTbGlkZVNob3dCdWlsZGVyOjpzbG90UnVuKCkKIHsKICAgICBjb25uZWN0KHRoaXMsIFNJR05B
TChwcm9ncmVzc0l0ZW1DYW5jZWxlZChQcm9ncmVzc0l0ZW0qKSksCkBAIC0xMjYsNiArMTQwLDkg
QEAgdm9pZCBTbGlkZVNob3dCdWlsZGVyOjpzbG90UGFyc2VJbWFnZUluZm9MaXN0KGNvbnN0IElt
YWdlSW5mb0xpc3QmIGxpc3QpCiAgICAgU2xpZGVTaG93U2V0dGluZ3Mgc2V0dGluZ3M7CiAgICAg
c2V0dGluZ3MucmVhZEZyb21Db25maWcoKTsKICAgICBzZXR0aW5ncy5wcmV2aWV3U2V0dGluZ3Mg
PSBBcHBsaWNhdGlvblNldHRpbmdzOjppbnN0YW5jZSgpLT5nZXRQcmV2aWV3U2V0dGluZ3MoKTsK
KyAgICBpZiAoZC0+c3RhcnRGcm9tLmlzVmFsaWQoKSkKKyAgICAgICAgc2V0dGluZ3MuaW1hZ2VV
cmwgPSBkLT5zdGFydEZyb207CisgICAgc2V0dGluZ3MuYXV0b1BsYXlFbmFibGVkID0gZC0+YXV0
b1BsYXlFbmFibGVkOwogCiAgICAgZm9yIChJbWFnZUluZm9MaXN0Ojpjb25zdF9pdGVyYXRvciBp
dCA9IGxpc3QuY29uc3RCZWdpbigpOwogICAgICAgICAgIWQtPmNhbmNlbCAmJiAoaXQgIT0gbGlz
dC5jb25zdEVuZCgpKSA7ICsraXQpCmRpZmYgLS1naXQgYS9hcHAvdXRpbHMvc2xpZGVzaG93YnVp
bGRlci5oIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuaAppbmRleCA0Y2MzNDY4Li41N2Y0
MzQ3IDEwMDY0NAotLS0gYS9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5oCisrKyBiL2FwcC91
dGlscy9zbGlkZXNob3didWlsZGVyLmgKQEAgLTQ5LDYgKzQ5LDE4IEBAIHB1YmxpYzoKICAgICAv
KiogQ29udHJ1Y3RvciB0byB3b3JrIG9uIHJlY3Vyc2l2ZSBtb2RlIGZyb20gYWxidW0gKi8KICAg
ICBleHBsaWNpdCBTbGlkZVNob3dCdWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSk7CiAgICAgflNs
aWRlU2hvd0J1aWxkZXIoKTsKKyAgICAKKyAgICAvKioKKyAgICAgICogVGhlIGJ1aWxkZXIgY3Jl
YXRlcyB0aGUgc2xpZGVzaG93IGJ5IHJlYWRpbmcgdGhlIGludGVybmFsIHNldHVwLiBUaGVzZSBm
dW5jdGlvbnMgcGVybWl0CisgICAgICAqIHRvIG92ZXJyaWRlIHRoZSBzZXR1cC4KKyAgICAgICoK
KyAgICAgICogQGJyaWVmIHNldE92ZXJyaWRlU3RhcnRGcm9tQ3VycmVudAorICAgICAgKiBAcGFy
YW0gc3RhcnRGcm9tQ3VycmVudAorICAgICAgKi8KKyAgICB2b2lkIHNldE92ZXJyaWRlU3RhcnRG
cm9tKGNvbnN0IEltYWdlSW5mbyYgaW5mbyk7CisgICAgdm9pZCBzZXRBdXRvUGxheUVuYWJsZWQo
Ym9vbCBlbmFibGUpOworCisgICAgdm9pZCBydW4oKTsKIAogUV9TSUdOQUxTOgogCmRpZmYgLS1n
aXQgYS9hcHAvdmlld3MvZGlnaWthbXZpZXcuY3BwIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmNw
cAppbmRleCA0ZmUyOWU2Li40OTcwMWI1IDEwMDY0NAotLS0gYS9hcHAvdmlld3MvZGlnaWthbXZp
ZXcuY3BwCisrKyBiL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAKQEAgLTQ3OSw2ICs0NzksOSBA
QCB2b2lkIERpZ2lrYW1WaWV3OjpzZXR1cENvbm5lY3Rpb25zKCkKICAgICBjb25uZWN0KGQtPmlj
b25WaWV3LCBTSUdOQUwocHJldmlld1JlcXVlc3RlZChJbWFnZUluZm8pKSwKICAgICAgICAgICAg
IHRoaXMsIFNMT1Qoc2xvdFRvZ2dsZVByZXZpZXdNb2RlKEltYWdlSW5mbykpKTsKIAorICAgIGNv
bm5lY3QoZC0+aWNvblZpZXcsIFNJR05BTChmdWxsc2NyZWVuUmVxdWVzdGVkKEltYWdlSW5mbykp
LAorICAgICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93TWFudWFsRnJvbShJbWFnZUlu
Zm8pKSk7CisKICAgICBjb25uZWN0KGQtPmljb25WaWV3LCBTSUdOQUwoZ290b0FsYnVtQW5kSW1h
Z2VSZXF1ZXN0ZWQoSW1hZ2VJbmZvKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RHb3Rv
QWxidW1BbmRJdGVtKEltYWdlSW5mbykpKTsKIApAQCAtNTk2LDYgKzU5OSw5IEBAIHZvaWQgRGln
aWthbVZpZXc6OnNldHVwQ29ubmVjdGlvbnMoKQogCiAgICAgY29ubmVjdChkLT5zdGFja2Vkdmll
dywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xv
dFNsaWRlU2hvd0FsbCgpKSk7CisgICAgCisgICAgY29ubmVjdChkLT5zdGFja2VkdmlldywgU0lH
TkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHNs
b3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpKSk7CiAKICAgICBjb25uZWN0KGQtPnN0YWNr
ZWR2aWV3LCBTSUdOQUwoc2lnbmFsWm9vbUZhY3RvckNoYW5nZWQoZG91YmxlKSksCiAgICAgICAg
ICAgICB0aGlzLCBTTE9UKHNsb3Rab29tRmFjdG9yQ2hhbmdlZChkb3VibGUpKSk7CkBAIC0yMDgy
LDE1ICsyMDg4LDM2IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNsb3RTbGlkZVNob3dSZWN1cnNpdmUo
KQogCiAgICAgICAgIGNvbm5lY3QoYnVpbGRlciwgU0lHTkFMKHNpZ25hbENvbXBsZXRlKFNsaWRl
U2hvd1NldHRpbmdzKSksCiAgICAgICAgICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93
QnVpbGRlckNvbXBsZXRlKFNsaWRlU2hvd1NldHRpbmdzKSkpOworCisgICAgICAgIGJ1aWxkZXIt
PnJ1bigpOwogICAgIH0KIH0KIAordm9pZCBEaWdpa2FtVmlldzo6c2xvdFNsaWRlU2hvd01hbnVh
bEZyb21DdXJyZW50KCkKK3sKKyAgICBzbG90U2xpZGVTaG93TWFudWFsRnJvbShjdXJyZW50SW5m
bygpKTsKK30KKwordm9pZCBEaWdpa2FtVmlldzo6c2xvdFNsaWRlU2hvd01hbnVhbEZyb20oY29u
c3QgSW1hZ2VJbmZvJiBpbmZvKQoreworICAgU2xpZGVTaG93QnVpbGRlciogY29uc3QgYnVpbGRl
ciA9IG5ldyBTbGlkZVNob3dCdWlsZGVyKGFsbEluZm8oKSk7CisgICBidWlsZGVyLT5zZXRPdmVy
cmlkZVN0YXJ0RnJvbShpbmZvKTsKKyAgIGJ1aWxkZXItPnNldEF1dG9QbGF5RW5hYmxlZChmYWxz
ZSk7CisKKyAgIGNvbm5lY3QoYnVpbGRlciwgU0lHTkFMKHNpZ25hbENvbXBsZXRlKFNsaWRlU2hv
d1NldHRpbmdzKSksCisgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0J1aWxkZXJD
b21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpKTsKKworICAgYnVpbGRlci0+cnVuKCk7Cit9CisK
IHZvaWQgRGlnaWthbVZpZXc6OnNsaWRlU2hvdyhjb25zdCBJbWFnZUluZm9MaXN0JiBpbmZvTGlz
dCkKIHsKICAgICBTbGlkZVNob3dCdWlsZGVyKiBjb25zdCBidWlsZGVyID0gbmV3IFNsaWRlU2hv
d0J1aWxkZXIoaW5mb0xpc3QpOwogCiAgICAgY29ubmVjdChidWlsZGVyLCBTSUdOQUwoc2lnbmFs
Q29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xv
dFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpKTsKKyAgICAKKyAg
ICBidWlsZGVyLT5ydW4oKTsKIH0KIAogdm9pZCBEaWdpa2FtVmlldzo6c2xvdFNsaWRlU2hvd0J1
aWxkZXJDb21wbGV0ZShjb25zdCBTbGlkZVNob3dTZXR0aW5ncyYgc2V0dGluZ3MpCkBAIC0yMDk4
LDEwICsyMTI1LDEwIEBAIHZvaWQgRGlnaWthbVZpZXc6OnNsb3RTbGlkZVNob3dCdWlsZGVyQ29t
cGxldGUoY29uc3QgU2xpZGVTaG93U2V0dGluZ3MmIHNldHRpbmdzCiAgICAgU2xpZGVTaG93KiBj
b25zdCBzbGlkZSA9IG5ldyBTbGlkZVNob3coc2V0dGluZ3MpOwogICAgIFRhZ3NBY3Rpb25Nbmdy
OjpkZWZhdWx0TWFuYWdlcigpLT5yZWdpc3RlckFjdGlvbnNUb1dpZGdldChzbGlkZSk7CiAKLSAg
ICBpZiAoc2V0dGluZ3Muc3RhcnRXaXRoQ3VycmVudCkKLSAgICB7Ci0gICAgICAgIHNsaWRlLT5z
ZXRDdXJyZW50SXRlbShjdXJyZW50VXJsKCkpOwotICAgIH0KKyAgICBpZiAoc2V0dGluZ3MuaW1h
Z2VVcmwuaXNWYWxpZCgpKQorICAgICAgICBzbGlkZS0+c2V0Q3VycmVudEl0ZW0oc2V0dGluZ3Mu
aW1hZ2VVcmwpOworICAgIGVsc2UgaWYgKHNldHRpbmdzLnN0YXJ0V2l0aEN1cnJlbnQpCisgICAg
ICAgIHNsaWRlLT5zZXRDdXJyZW50SXRlbShjdXJyZW50SW5mbygpLmZpbGVVcmwoKSk7CiAKICAg
ICBjb25uZWN0KHNsaWRlLCBTSUdOQUwoc2lnbmFsUmF0aW5nQ2hhbmdlZChLVXJsLGludCkpLAog
ICAgICAgICAgICAgdGhpcywgU0xPVChzbG90UmF0aW5nQ2hhbmdlZChLVXJsLGludCkpKTsKZGlm
ZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5oIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3
LmgKaW5kZXggMjNjOTIyNi4uMmY3YmExOSAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2RpZ2lrYW12
aWV3LmgKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKQEAgLTE0MSw2ICsxNDEsOCBAQCBw
dWJsaWMgUV9TTE9UUzoKICAgICB2b2lkIHNsb3RTbGlkZVNob3dBbGwoKTsKICAgICB2b2lkIHNs
b3RTbGlkZVNob3dTZWxlY3Rpb24oKTsKICAgICB2b2lkIHNsb3RTbGlkZVNob3dSZWN1cnNpdmUo
KTsKKyAgICB2b2lkIHNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpOworICAgIHZvaWQg
c2xvdFNsaWRlU2hvd01hbnVhbEZyb20oY29uc3QgSW1hZ2VJbmZvJiBpbmZvKTsKIAogICAgIC8v
IEFsYnVtIGFjdGlvbiBzbG90cwogICAgIHZvaWQgc2xvdFJlZnJlc2goKTsKZGlmZiAtLWdpdCBh
L2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcCBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2
aWV3LmNwcAppbmRleCAwOTc4N2UzLi4zNGFiMzgwIDEwMDY0NAotLS0gYS9hcHAvdmlld3MvaW1h
Z2VwcmV2aWV3dmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwCkBA
IC0xMjksNiArMTI5LDggQEAgcHVibGljOgogICAgIFFBY3Rpb24qICAgICAgICAgICAgICAgYWRk
UGVyc29uQWN0aW9uOwogICAgIFFBY3Rpb24qICAgICAgICAgICAgICAgZm9yZ2V0RmFjZXNBY3Rp
b247CiAjZW5kaWYgLyogSEFWRV9LRkFDRSAqLworCisgICAgUUFjdGlvbiogICAgICAgICAgICAg
ICBmdWxsc2NyZWVuQWN0aW9uOwogfTsKIAogSW1hZ2VQcmV2aWV3Vmlldzo6SW1hZ2VQcmV2aWV3
VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQsIE1vZGUgbW9kZSkKQEAgLTE4MCw2ICsxODIsOCBA
QCBJbWFnZVByZXZpZXdWaWV3OjpJbWFnZVByZXZpZXdWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVu
dCwgTW9kZSBtb2RlKQogICAgIGQtPnBlb3BsZVRvZ2dsZUFjdGlvbi0+c2V0SWNvbihTbWFsbElj
b24oInVzZXItaWRlbnRpdHkiKSk7CiAjZW5kaWYgLyogSEFWRV9LRkFDRSAqLwogCisgICAgZC0+
ZnVsbHNjcmVlbkFjdGlvbiAgICA9IG5ldyBRQWN0aW9uKFNtYWxsSWNvbigidmlldy1mdWxsc2Ny
ZWVuIiksIGkxOG4oIlNob3cgRnVsbHNjcmVlbiIpLCB0aGlzKTsKKwogICAgIGQtPnRvb2xCYXIg
ICAgICAgICAgICAgPSBuZXcgUVRvb2xCYXIodGhpcyk7CiAKICAgICBpZiAobW9kZSA9PSBJY29u
Vmlld1ByZXZpZXcpCkBAIC0xOTYsNiArMjAwLDggQEAgSW1hZ2VQcmV2aWV3Vmlldzo6SW1hZ2VQ
cmV2aWV3VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQsIE1vZGUgbW9kZSkKICAgICBkLT50b29s
QmFyLT5hZGRBY3Rpb24oZC0+YWRkUGVyc29uQWN0aW9uKTsKICNlbmRpZiAvKiBIQVZFX0tGQUNF
ICovCiAKKyAgICBkLT50b29sQmFyLT5hZGRBY3Rpb24oZC0+ZnVsbHNjcmVlbkFjdGlvbik7CisK
ICAgICBjb25uZWN0KGQtPnByZXZBY3Rpb24sIFNJR05BTCh0cmlnZ2VyZWQoKSksCiAgICAgICAg
ICAgICB0aGlzLCBTSUdOQUwodG9QcmV2aW91c0ltYWdlKCkpKTsKIApAQCAtMjE5LDYgKzIyNSw5
IEBAIEltYWdlUHJldmlld1ZpZXc6OkltYWdlUHJldmlld1ZpZXcoUVdpZGdldCogY29uc3QgcGFy
ZW50LCBNb2RlIG1vZGUpCiAgICAgICAgICAgICBkLT5mYWNlR3JvdXAsIFNMT1QocmVqZWN0QWxs
KCkpKTsKICNlbmRpZiAvKiBIQVZFX0tGQUNFICovCiAKKyAgICBjb25uZWN0KGQtPmZ1bGxzY3Jl
ZW5BY3Rpb24sIFNJR05BTCh0cmlnZ2VyZWQoKSksCisgICAgICAgICAgICB0aGlzLCBTSUdOQUwo
c2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSk7CisKICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAogICAgIGNvbm5lY3Qo
dGhpcywgU0lHTkFMKHRvTmV4dEltYWdlKCkpLApkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2ltYWdl
cHJldmlld3ZpZXcuaCBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmgKaW5kZXggZjM1N2Y3
NC4uZTJlZDE2NiAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuaAorKysg
Yi9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oCkBAIC03Niw2ICs3Niw3IEBAIFFfU0lHTkFM
UzoKICAgICB2b2lkIHNpZ25hbEVkaXRJdGVtKCk7CiAgICAgdm9pZCBzaWduYWxQcmV2aWV3TG9h
ZGVkKGJvb2wgc3VjY2Vzcyk7CiAgICAgdm9pZCBzaWduYWxFc2NhcGVQcmV2aWV3KCk7CisgICAg
dm9pZCBzaWduYWxTbGlkZVNob3dDdXJyZW50KCk7CiAgICAgdm9pZCBzaWduYWxTbGlkZVNob3co
KTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJMaWdodFRhYmxlKCk7CiAgICAgdm9pZCBzaWduYWxJ
bnNlcnQyUXVldWVNZ3IoKTsKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAg
Yi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCmluZGV4IDdjMmY3NjguLmJlMzc1YmEgMTAwNjQ0
Ci0tLSBhL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL3N0YWNrZWR2
aWV3LmNwcApAQCAtMTc5LDYgKzE3OSw5IEBAIFN0YWNrZWRWaWV3OjpTdGFja2VkVmlldyhRV2lk
Z2V0KiBjb25zdCBwYXJlbnQpCiAKICAgICBjb25uZWN0KGQtPmltYWdlUHJldmlld1ZpZXcsIFNJ
R05BTChzaWduYWxTbGlkZVNob3coKSksCiAgICAgICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFs
U2xpZGVTaG93KCkpKTsKKyAgICAKKyAgICBjb25uZWN0KGQtPmltYWdlUHJldmlld1ZpZXcsIFNJ
R05BTChzaWduYWxTbGlkZVNob3dDdXJyZW50KCkpLAorICAgICAgICAgICAgdGhpcywgU0lHTkFM
KHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSkpOwogCiAgICAgY29ubmVjdChkLT5pbWFnZVByZXZp
ZXdWaWV3LT5sYXlvdXQoKSwgU0lHTkFMKHpvb21GYWN0b3JDaGFuZ2VkKGRvdWJsZSkpLAogICAg
ICAgICAgICAgdGhpcywgU0xPVChzbG90Wm9vbUZhY3RvckNoYW5nZWQoZG91YmxlKSkpOwpkaWZm
IC0tZ2l0IGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmggYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcu
aAppbmRleCBlMWI3NjVmLi5kNDE4ZTQwIDEwMDY0NAotLS0gYS9hcHAvdmlld3Mvc3RhY2tlZHZp
ZXcuaAorKysgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuaApAQCAtMTMzLDYgKzEzMyw3IEBAIFFf
U0lHTkFMUzoKICAgICB2b2lkIHNpZ25hbFZpZXdNb2RlQ2hhbmdlZCgpOwogICAgIHZvaWQgc2ln
bmFsRXNjYXBlUHJldmlldygpOwogICAgIHZvaWQgc2lnbmFsU2xpZGVTaG93KCk7CisgICAgdm9p
ZCBzaWduYWxTbGlkZVNob3dDdXJyZW50KCk7CiAgICAgdm9pZCBzaWduYWxab29tRmFjdG9yQ2hh
bmdlZChkb3VibGUpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MkxpZ2h0VGFibGUoKTsKICAgICB2
b2lkIHNpZ25hbEluc2VydDJRdWV1ZU1ncigpOwpkaWZmIC0tZ2l0IGEvdXRpbGl0aWVzL3NldHVw
L3NldHVwYWxidW12aWV3LmNwcCBiL3V0aWxpdGllcy9zZXR1cC9zZXR1cGFsYnVtdmlldy5jcHAK
aW5kZXggODhkNDlmOS4uMjI4M2IwMSAxMDA2NDQKLS0tIGEvdXRpbGl0aWVzL3NldHVwL3NldHVw
YWxidW12aWV3LmNwcAorKysgYi91dGlsaXRpZXMvc2V0dXAvc2V0dXBhbGJ1bXZpZXcuY3BwCkBA
IC03Myw2ICs3Myw3IEBAIHB1YmxpYzoKICAgICAgICAgaWNvblNob3dDb21tZW50c0JveCgwKSwK
ICAgICAgICAgaWNvblNob3dUYWdzQm94KDApLAogICAgICAgICBpY29uU2hvd092ZXJsYXlzQm94
KDApLAorICAgICAgICBpY29uU2hvd0Z1bGxzY3JlZW5Cb3goMCksCiAgICAgICAgIGljb25TaG93
UmF0aW5nQm94KDApLAogICAgICAgICBpY29uU2hvd0Zvcm1hdEJveCgwKSwKICAgICAgICAgaWNv
blNob3dDb29yZGluYXRlc0JveCgwKSwKQEAgLTEwNSw2ICsxMDYsNyBAQCBwdWJsaWM6CiAgICAg
UUNoZWNrQm94KiAgICAgICAgICBpY29uU2hvd0NvbW1lbnRzQm94OwogICAgIFFDaGVja0JveCog
ICAgICAgICAgaWNvblNob3dUYWdzQm94OwogICAgIFFDaGVja0JveCogICAgICAgICAgaWNvblNo
b3dPdmVybGF5c0JveDsKKyAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93RnVsbHNjcmVl
bkJveDsKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93UmF0aW5nQm94OwogICAgIFFD
aGVja0JveCogICAgICAgICAgaWNvblNob3dGb3JtYXRCb3g7CiAgICAgUUNoZWNrQm94KiAgICAg
ICAgICBpY29uU2hvd0Nvb3JkaW5hdGVzQm94OwpAQCAtMTg0LDYgKzE4NiwxMCBAQCBTZXR1cEFs
YnVtVmlldzo6U2V0dXBBbGJ1bVZpZXcoUVdpZGdldCogY29uc3QgcGFyZW50KQogICAgIGQtPmlj
b25TaG93T3ZlcmxheXNCb3gtPnNldFdoYXRzVGhpcyhpMThuKCJTZXQgdGhpcyBvcHRpb24gdG8g
c2hvdyBvdmVybGF5IGJ1dHRvbnMgb24gIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICJ0aGUgaW1hZ2UgdGh1bWJuYWlsIGZvciBpbWFnZSByb3RhdGlvbi4i
KSk7CiAKKyAgICBkLT5pY29uU2hvd0Z1bGxzY3JlZW5Cb3ggID0gbmV3IFFDaGVja0JveChpMThu
KCJTaG93IGZ1bGxzY3JlZW4gb3ZlcmxheSBidXR0b24iKSwgaWNvblZpZXdHcm91cCk7CisgICAg
ZC0+aWNvblNob3dGdWxsc2NyZWVuQm94LT5zZXRXaGF0c1RoaXMoaTE4bigiU2V0IHRoaXMgb3B0
aW9uIHRvIHNob3cgYW4gb3ZlcmxheSBidXR0b24gb24gdGhlICIKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpbWFnZSB0aHVtYm5haWwgdG8gb3BlbiBp
dCBpbiBmdWxsc2NyZWVuLiIpKTsKKwogICAgIGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3ggPSBu
ZXcgUUNoZWNrQm94KGkxOG4oIlNob3cgR2VvbG9jYXRpb24gSW5kaWNhdG9yIiksIGljb25WaWV3
R3JvdXApOwogICAgIGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3gtPnNldFdoYXRzVGhpcyhpMThu
KCJTZXQgdGhpcyBvcHRpb24gdG8gaW5kaWNhdGUgaWYgaW1hZ2UgaGFzIGdlb2xvY2F0aW9uIGlu
Zm9ybWF0aW9uLiIpKTsKIApAQCAtMjE3LDcgKzIyMyw4IEBAIFNldHVwQWxidW1WaWV3OjpTZXR1
cEFsYnVtVmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQpCiAgICAgZ3JpZC0+YWRkV2lkZ2V0KGQt
Pmljb25TaG93VGFnc0JveCwgICAgICAgICAgMiwgMSwgMSwgMSk7CiAgICAgZ3JpZC0+YWRkV2lk
Z2V0KGQtPmljb25TaG93UmF0aW5nQm94LCAgICAgICAgMywgMSwgMSwgMSk7CiAgICAgZ3JpZC0+
YWRkV2lkZ2V0KGQtPmljb25TaG93T3ZlcmxheXNCb3gsICAgICAgNCwgMSwgMSwgMSk7Ci0gICAg
Z3JpZC0+YWRkV2lkZ2V0KGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3gsICAgNSwgMSwgMSwgMSk7
CisgICAgZ3JpZC0+YWRkV2lkZ2V0KGQtPmljb25TaG93RnVsbHNjcmVlbkJveCwgICAgNSwgMSwg
MSwgMSk7CisgICAgZ3JpZC0+YWRkV2lkZ2V0KGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3gsICAg
NiwgMSwgMSwgMSk7CiAKICAgICBncmlkLT5hZGRXaWRnZXQobGVmdENsaWNrTGFiZWwsICAgICAg
ICAgICAgICA3LCAwLCAxLCAxKTsKICAgICBncmlkLT5hZGRXaWRnZXQoZC0+bGVmdENsaWNrQWN0
aW9uQ29tYm9Cb3gsICA3LCAxLCAxLCAxKTsKQEAgLTM0MCw2ICszNDcsNyBAQCB2b2lkIFNldHVw
QWxidW1WaWV3OjphcHBseVNldHRpbmdzKCkKICAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dUaXRs
ZShkLT5pY29uU2hvd1RpdGxlQm94LT5pc0NoZWNrZWQoKSk7CiAgICAgc2V0dGluZ3MtPnNldElj
b25TaG93Q29tbWVudHMoZC0+aWNvblNob3dDb21tZW50c0JveC0+aXNDaGVja2VkKCkpOwogICAg
IHNldHRpbmdzLT5zZXRJY29uU2hvd092ZXJsYXlzKGQtPmljb25TaG93T3ZlcmxheXNCb3gtPmlz
Q2hlY2tlZCgpKTsKKyAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dGdWxsc2NyZWVuKGQtPmljb25T
aG93RnVsbHNjcmVlbkJveC0+aXNDaGVja2VkKCkpOwogICAgIHNldHRpbmdzLT5zZXRJY29uU2hv
d0Nvb3JkaW5hdGVzKGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3gtPmlzQ2hlY2tlZCgpKTsKICAg
ICBzZXR0aW5ncy0+c2V0SWNvblNob3dSYXRpbmcoZC0+aWNvblNob3dSYXRpbmdCb3gtPmlzQ2hl
Y2tlZCgpKTsKICAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dJbWFnZUZvcm1hdChkLT5pY29uU2hv
d0Zvcm1hdEJveC0+aXNDaGVja2VkKCkpOwpAQCAtNDAyLDYgKzQxMCw3IEBAIHZvaWQgU2V0dXBB
bGJ1bVZpZXc6OnJlYWRTZXR0aW5ncygpCiAgICAgZC0+aWNvblNob3dUaXRsZUJveC0+c2V0Q2hl
Y2tlZChzZXR0aW5ncy0+Z2V0SWNvblNob3dUaXRsZSgpKTsKICAgICBkLT5pY29uU2hvd0NvbW1l
bnRzQm94LT5zZXRDaGVja2VkKHNldHRpbmdzLT5nZXRJY29uU2hvd0NvbW1lbnRzKCkpOwogICAg
IGQtPmljb25TaG93T3ZlcmxheXNCb3gtPnNldENoZWNrZWQoc2V0dGluZ3MtPmdldEljb25TaG93
T3ZlcmxheXMoKSk7CisgICAgZC0+aWNvblNob3dGdWxsc2NyZWVuQm94LT5zZXRDaGVja2VkKHNl
dHRpbmdzLT5nZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSk7CiAgICAgZC0+aWNvblNob3dDb29yZGlu
YXRlc0JveC0+c2V0Q2hlY2tlZChzZXR0aW5ncy0+Z2V0SWNvblNob3dDb29yZGluYXRlcygpKTsK
ICAgICBkLT5pY29uU2hvd1JhdGluZ0JveC0+c2V0Q2hlY2tlZChzZXR0aW5ncy0+Z2V0SWNvblNo
b3dSYXRpbmcoKSk7CiAgICAgZC0+aWNvblNob3dGb3JtYXRCb3gtPnNldENoZWNrZWQoc2V0dGlu
Z3MtPmdldEljb25TaG93SW1hZ2VGb3JtYXQoKSk7CmRpZmYgLS1naXQgYS91dGlsaXRpZXMvc2xp
ZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmggYi91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRlc2hv
d3NldHRpbmdzLmgKaW5kZXggOGE0YzY4YS4uNDUzZWVlNiAxMDA2NDQKLS0tIGEvdXRpbGl0aWVz
L3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5ncy5oCisrKyBiL3V0aWxpdGllcy9zbGlkZXNob3cv
c2xpZGVzaG93c2V0dGluZ3MuaApAQCAtMTU5LDYgKzE1OSwxMCBAQCBwdWJsaWM6CiAgICAgLyoq
IERlbGF5IGluIHNlY29uZHMKICAgICAgKi8KICAgICBpbnQgICAgICAgICAgICAgICAgICAgICAg
ICAgIGRlbGF5OworICAgIAorICAgIC8qKiBXaGV0aGVyIHRvIGVuYWJsZSB0aGUgYXV0by1tb3Zl
IGZlYXR1cmUuCisgICAgICovCisgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAgICBhdXRv
UGxheUVuYWJsZWQ7CiAKICAgICAvKiogU2NyZWVuIHRvIHVzZSBpbiBjYXNlIG9mIG11bHRpLW1v
bml0b3IgY29tcHV0ZXIuCiAgICAgICovCkBAIC0xODAsNiArMTg0LDEwIEBAIHB1YmxpYzoKICAg
ICAgKi8KICAgICBRTWFwPEtVcmwsIFNsaWRlUGljdHVyZUluZm8+IHBpY3RJbmZvTWFwOwogCisg
ICAgLyoqIFVSTCBvZiB0aGUgZmlyc3QgaW1hZ2UgdG8gc2hvdyBpZiByZXF1ZXN0ZWQKKyAgICAg
Ki8KKyAgICBLVXJsICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlVXJsOworCiBwcml2YXRl
OgogCiAgICAgc3RhdGljIGNvbnN0IFFTdHJpbmcgICAgICAgICBjb25maWdHcm91cE5hbWU7CmRp
ZmYgLS1naXQgYS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRldG9vbGJhci5jcHAgYi91dGlsaXRp
ZXMvc2xpZGVzaG93L3NsaWRldG9vbGJhci5jcHAKaW5kZXggOTlkZDIzYy4uYjdkMGFlMyAxMDA2
NDQKLS0tIGEvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXRvb2xiYXIuY3BwCisrKyBiL3V0aWxp
dGllcy9zbGlkZXNob3cvc2xpZGV0b29sYmFyLmNwcApAQCAtODgsMTIgKzg4LDE1IEBAIFNsaWRl
VG9vbEJhcjo6U2xpZGVUb29sQmFyKGNvbnN0IFNsaWRlU2hvd1NldHRpbmdzJiBzZXR0aW5ncywg
UVdpZGdldCogY29uc3QgcGFyCiAgICAgZC0+c3RvcEJ0biA9IG5ldyBRVG9vbEJ1dHRvbih0aGlz
KTsKIAogICAgIGQtPnBsYXlCdG4tPnNldENoZWNrYWJsZSh0cnVlKTsKKyAgICBkLT5wbGF5QnRu
LT5zZXRDaGVja2VkKCFzZXR0aW5ncy5hdXRvUGxheUVuYWJsZWQpOworICAgIAogICAgIGQtPnBs
YXlCdG4tPnNldEZvY3VzUG9saWN5KFF0OjpOb0ZvY3VzKTsKICAgICBkLT5wcmV2QnRuLT5zZXRG
b2N1c1BvbGljeShRdDo6Tm9Gb2N1cyk7CiAgICAgZC0+bmV4dEJ0bi0+c2V0Rm9jdXNQb2xpY3ko
UXQ6Ok5vRm9jdXMpOwogICAgIGQtPnN0b3BCdG4tPnNldEZvY3VzUG9saWN5KFF0OjpOb0ZvY3Vz
KTsKIAotICAgIGQtPnBsYXlCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEt
cGxheWJhY2stcGF1c2UiLCBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKKyAg
ICBRU3RyaW5nIGljb25TdHJpbmcgPSBzZXR0aW5ncy5hdXRvUGxheUVuYWJsZWQgPyAibWVkaWEt
cGxheWJhY2stcGF1c2UiIDogIm1lZGlhLXBsYXliYWNrLXN0YXJ0IjsKKyAgICBkLT5wbGF5QnRu
LT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oaWNvblN0cmluZywgS0ljb25Mb2FkZXI6OlRv
b2xiYXIsIGQtPmljb25TaXplKSk7CiAgICAgZC0+cHJldkJ0bi0+c2V0SWNvbihkLT5sb2FkZXIt
PmxvYWRJY29uKCJtZWRpYS1za2lwLWJhY2t3YXJkIiwgIEtJY29uTG9hZGVyOjpUb29sYmFyLCBk
LT5pY29uU2l6ZSkpOwogICAgIGQtPm5leHRCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNv
bigibWVkaWEtc2tpcC1mb3J3YXJkIiwgICBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNp
emUpKTsKICAgICBkLT5zdG9wQnRuLT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlh
LXBsYXliYWNrLXN0b3AiLCAgS0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94426</attachid>
            <date>2015-09-06 12:49:17 +0000</date>
            <delta_ts>2015-09-06 20:45:32 +0000</delta_ts>
            <desc>Full Screen Overlay patch 2</desc>
            <filename>fullscreen-overlay.patch</filename>
            <type>text/plain</type>
            <size>30915</size>
            <attacher>caulier.gilles</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IGNkMjIwOTIuLmFhYmQ4
YTEgMTAwNjQ0CmRpZmYgLS1naXQgYS9DTWFrZUxpc3RzLnR4dCBiL0NNYWtlTGlzdHMudHh0Cmlu
ZGV4IGNiYzYzNDAuLjVlMmM1ZTAgMTAwNjQ0Ci0tLSBhL0NNYWtlTGlzdHMudHh0CisrKyBiL0NN
YWtlTGlzdHMudHh0CkBAIC0xMzI4LDYgKzEzMjgsNyBAQCBpZihESUdJS0FNX0NBTl9CRV9DT01Q
SUxFRCkKICAgICAgICAgJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L2FwcC9pdGVtcy9vdmVy
bGF5cy9ncm91cGluZGljYXRvcm92ZXJsYXkuY3BwCiAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9T
T1VSQ0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2VyYXRpbmdvdmVybGF5LmNwcAogICAg
ICAgICAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vYXBwL2l0ZW1zL292ZXJsYXlzL2ltYWdl
cm90YXRpb25vdmVybGF5LmNwcAorCSR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRl
bXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuY3BwCiAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9T
T1VSQ0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vjb29yZGluYXRlc292ZXJsYXkuY3Bw
CiAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMv
aW1hZ2VzZWxlY3Rpb25vdmVybGF5LmNwcAogCmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvZGlnaWth
bWltYWdldmlldy5jcHAgYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlldy5jcHAKaW5kZXggODdl
ODNjNi4uODFjNWFmOCAxMDA2NDQKLS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcuY3Bw
CisrKyBiL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmNwcApAQCAtNzEsNiArNzEsNyBAQAog
I2luY2x1ZGUgImltYWdlYWxidW1tb2RlbC5oIgogI2luY2x1ZGUgImltYWdlZHJhZ2Ryb3AuaCIK
ICNpbmNsdWRlICJpbWFnZXJhdGluZ292ZXJsYXkuaCIKKyNpbmNsdWRlICJpbWFnZWZzb3Zlcmxh
eS5oIgogI2luY2x1ZGUgImltYWdlY29vcmRpbmF0ZXNvdmVybGF5LmgiCiAjaW5jbHVkZSAidGFn
c2xpbmVlZGl0b3ZlcmxheS5oIgogI2luY2x1ZGUgImltYWdldmlld3V0aWxpdGllcy5oIgpAQCAt
MTM2LDYgKzEzNyw3IEBAIERpZ2lrYW1JbWFnZVZpZXc6OkRpZ2lrYW1JbWFnZVZpZXcoUVdpZGdl
dCogY29uc3QgcGFyZW50KQogICAgIC8vIHJvdGF0aW9uIG92ZXJsYXlzCiAgICAgZC0+cm90YXRl
TGVmdE92ZXJsYXkgID0gSW1hZ2VSb3RhdGVPdmVybGF5OjpsZWZ0KHRoaXMpOwogICAgIGQtPnJv
dGF0ZVJpZ2h0T3ZlcmxheSA9IEltYWdlUm90YXRlT3ZlcmxheTo6cmlnaHQodGhpcyk7CisgICAg
ZC0+ZnVsbHNjcmVlbk92ZXJsYXkgID0gSW1hZ2VGc092ZXJsYXk6Omluc3RhbmNlKHRoaXMpOwog
ICAgIGQtPnVwZGF0ZU92ZXJsYXlzKCk7CiAKICAgICAvLyByYXRpbmcgb3ZlcmxheQpAQCAtNzEz
LDYgKzcxNSwxOCBAQCB2b2lkIERpZ2lrYW1JbWFnZVZpZXc6OnNsb3RSb3RhdGVSaWdodChjb25z
dCBRTGlzdDxRTW9kZWxJbmRleD4mIGluZGV4ZXMpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBLRXhpdjJJZmFjZTo6Um90YXRpb25NYXRyaXg6OlJvdGF0ZTkwKTsK
IH0KIAordm9pZCBEaWdpa2FtSW1hZ2VWaWV3OjpzbG90RnVsbHNjcmVlbihjb25zdCBRTGlzdDxR
TW9kZWxJbmRleD4mIGluZGV4ZXMpCit7CisgICBRTGlzdDxJbWFnZUluZm8+IGluZm9zID0gaW1h
Z2VGaWx0ZXJNb2RlbCgpLT5pbWFnZUluZm9zKGluZGV4ZXMpOworICAgaWYgKGluZm9zLmlzRW1w
dHkoKSkKKyAgICAgIHJldHVybjsKKworICAgLy8gSnVzdCBmdWxsc2NyZWVuIHRoZSBmaXJzdC4K
KyAgIGNvbnN0IEltYWdlSW5mbyYgaW5mbyA9IGluZm9zLmF0KDApOworCisgICBlbWl0IGZ1bGxz
Y3JlZW5SZXF1ZXN0ZWQoaW5mbyk7Cit9CisKIHZvaWQgRGlnaWthbUltYWdlVmlldzo6c2xvdElu
aXRQcm9ncmVzc0luZGljYXRvcigpCiB7CiAjaWZkZWYgSEFWRV9LRkFDRQpkaWZmIC0tZ2l0IGEv
YXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcuaCBiL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3
LmgKaW5kZXggOGYxMzQ4MC4uZmNkMmY3NCAxMDA2NDQKLS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1p
bWFnZXZpZXcuaAorKysgYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlldy5oCkBAIC04Niw2ICs4
Niw3IEBAIHB1YmxpYyBRX1NMT1RTOgogUV9TSUdOQUxTOgogCiAgICAgdm9pZCBwcmV2aWV3UmVx
dWVzdGVkKGNvbnN0IEltYWdlSW5mbyYgaW5mbyk7CisgICAgdm9pZCBmdWxsc2NyZWVuUmVxdWVz
dGVkKGNvbnN0IEltYWdlSW5mbyYgaW5mbyk7CiAgICAgdm9pZCBnb3RvQWxidW1BbmRJbWFnZVJl
cXVlc3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOwogICAgIHZvaWQgZ290b1RhZ0FuZEltYWdl
UmVxdWVzdGVkKGludCB0YWdJZCk7CiAgICAgdm9pZCBnb3RvRGF0ZUFuZEltYWdlUmVxdWVzdGVk
KGNvbnN0IEltYWdlSW5mbyYgaW5mbyk7CkBAIC0xMTAsNiArMTExLDcgQEAgcHJpdmF0ZSBRX1NM
T1RTOgogCiAgICAgdm9pZCBzbG90Um90YXRlTGVmdChjb25zdCBRTGlzdDxRTW9kZWxJbmRleD4m
KTsKICAgICB2b2lkIHNsb3RSb3RhdGVSaWdodChjb25zdCBRTGlzdDxRTW9kZWxJbmRleD4mKTsK
KyAgICB2b2lkIHNsb3RGdWxsc2NyZWVuKGNvbnN0IFFMaXN0PFFNb2RlbEluZGV4PiYpOwogICAg
IHZvaWQgc2xvdEluaXRQcm9ncmVzc0luZGljYXRvcigpOwogCiBwcml2YXRlOgpkaWZmIC0tZ2l0
IGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5jcHAgYi9hcHAvaXRlbXMvZGlnaWthbWlt
YWdldmlld19wLmNwcAppbmRleCBjYmZlNzdmLi45MmIwY2FiIDEwMDY0NAotLS0gYS9hcHAvaXRl
bXMvZGlnaWthbWltYWdldmlld19wLmNwcAorKysgYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmll
d19wLmNwcApAQCAtMzksMTEgKzM5LDEzIEBAIG5hbWVzcGFjZSBEaWdpa2FtCiAKIERpZ2lrYW1J
bWFnZVZpZXc6OlByaXZhdGU6OlByaXZhdGUoRGlnaWthbUltYWdlVmlldyogY29uc3QgcXEpCiAg
ICAgOiBvdmVybGF5c0FjdGl2ZShmYWxzZSksCisgICAgICBmdWxsc2NyZWVuQWN0aXZlKGZhbHNl
KSwKICAgICAgIHFfcHRyKHFxKQogewogICAgIHV0aWxpdGllcyAgICAgICAgICA9IDA7CiAgICAg
cm90YXRlTGVmdE92ZXJsYXkgID0gMDsKICAgICByb3RhdGVSaWdodE92ZXJsYXkgPSAwOworICAg
IGZ1bGxzY3JlZW5PdmVybGF5ICA9IDA7CiAgICAgbm9ybWFsRGVsZWdhdGUgICAgID0gMDsKICAg
ICBmYWNlRGVsZWdhdGUgICAgICAgPSAwOwogICAgIGZhY2VNb2RlICAgICAgICAgICA9IGZhbHNl
OwpAQCAtOTEsNiArOTMsMzEgQEAgdm9pZCBEaWdpa2FtSW1hZ2VWaWV3OjpQcml2YXRlOjp1cGRh
dGVPdmVybGF5cygpCiAgICAgICAgICAgICBvdmVybGF5c0FjdGl2ZSA9IHRydWU7CiAgICAgICAg
IH0KICAgICB9CisKKyAgICBpZiAoZnVsbHNjcmVlbkFjdGl2ZSkKKyAgICB7CisgICAgICAgIGlm
ICghc2V0dGluZ3MtPmdldEljb25TaG93RnVsbHNjcmVlbigpKQorICAgICAgICB7CisgICAgICAg
ICAgICBkaXNjb25uZWN0KGZ1bGxzY3JlZW5PdmVybGF5LCBTSUdOQUwoc2lnbmFsUm90YXRlKFFM
aXN0PFFNb2RlbEluZGV4PikpLAorICAgICAgICAgICAgICAgICAgICAgICBxLCBTTE9UKHNsb3RG
dWxsc2NyZWVuKFFMaXN0PFFNb2RlbEluZGV4PikpKTsKKworICAgICAgICAgICAgcS0+cmVtb3Zl
T3ZlcmxheShmdWxsc2NyZWVuT3ZlcmxheSk7CisKKyAgICAgICAgICAgIGZ1bGxzY3JlZW5BY3Rp
dmUgPSBmYWxzZTsKKyAgICAgICAgfQorICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAgICBp
ZiAoc2V0dGluZ3MtPmdldEljb25TaG93RnVsbHNjcmVlbigpKQorICAgICAgICB7CisgICAgICAg
ICAgICBmdWxsc2NyZWVuQWN0aXZlID0gdHJ1ZTsKKworICAgICAgICAgICAgcS0+YWRkT3Zlcmxh
eShmdWxsc2NyZWVuT3ZlcmxheSwgbm9ybWFsRGVsZWdhdGUpOworCisgICAgICAgICAgICBjb25u
ZWN0KGZ1bGxzY3JlZW5PdmVybGF5LCBTSUdOQUwoc2lnbmFsRnVsbHNjcmVlbihRTGlzdDxRTW9k
ZWxJbmRleD4pKSwKKyAgICAgICAgICAgICAgICAgICAgcSwgU0xPVChzbG90RnVsbHNjcmVlbihR
TGlzdDxRTW9kZWxJbmRleD4pKSk7CisgICAgICAgIH0KKyAgICB9CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIERpZ2lrYW0KZGlmZiAtLWdpdCBhL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3X3AuaCBi
L2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3X3AuaAppbmRleCA1MGY2OWI4Li42NmNiNmZiIDEw
MDY0NAotLS0gYS9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlld19wLmgKKysrIGIvYXBwL2l0ZW1z
L2RpZ2lrYW1pbWFnZXZpZXdfcC5oCkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSAiZGlnaWth
bWltYWdldmlldy5oIgogI2luY2x1ZGUgImRpZ2lrYW1pbWFnZWRlbGVnYXRlLmgiCiAjaW5jbHVk
ZSAiaW1hZ2Vyb3RhdGlvbm92ZXJsYXkuaCIKKyNpbmNsdWRlICJpbWFnZWZzb3ZlcmxheS5oIgog
I2luY2x1ZGUgImFwcGxpY2F0aW9uc2V0dGluZ3MuaCIKIAogI2lmZGVmIEhBVkVfS0ZBQ0UKQEAg
LTczLDkgKzc0LDExIEBAIHB1YmxpYzoKICAgICBEaWdpa2FtSW1hZ2VGYWNlRGVsZWdhdGUqIGZh
Y2VEZWxlZ2F0ZTsKIAogICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgb3ZlcmxheXNBY3Rp
dmU7CisgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICBmdWxsc2NyZWVuQWN0aXZlOwogCiAg
ICAgSW1hZ2VSb3RhdGVPdmVybGF5KiAgICAgICByb3RhdGVMZWZ0T3ZlcmxheTsKICAgICBJbWFn
ZVJvdGF0ZU92ZXJsYXkqICAgICAgIHJvdGF0ZVJpZ2h0T3ZlcmxheTsKKyAgICBJbWFnZUZzT3Zl
cmxheSogICAgICAgICAgIGZ1bGxzY3JlZW5PdmVybGF5OwogCiAgICAgYm9vbCAgICAgICAgICAg
ICAgICAgICAgICBmYWNlTW9kZTsKIApkaWZmIC0tZ2l0IGEvYXBwL2l0ZW1zL292ZXJsYXlzL2lt
YWdlZnNvdmVybGF5LmNwcCBiL2FwcC9pdGVtcy9vdmVybGF5cy9pbWFnZWZzb3ZlcmxheS5jcHAK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWY5MzY3YQotLS0gL2Rldi9udWxs
CisrKyBiL2FwcC9pdGVtcy9vdmVybGF5cy9pbWFnZWZzb3ZlcmxheS5jcHAKQEAgLTAsMCArMSwx
MjIgQEAKKy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQorICoKKyAqIFRoaXMgZmlsZSBpcyBhIHBhcnQgb2YgZGlnaUthbSBwcm9q
ZWN0CisgKiBodHRwOi8vd3d3LmRpZ2lrYW0ub3JnCisgKgorICogRGF0ZSAgICAgICAgOiAyMDE1
LTA4LTMwCisgKiBEZXNjcmlwdGlvbiA6IGZ1bGxzY3JlZW4gb3ZlcmxheQorICoKKyAqIENvcHly
aWdodCAoQykgMjAxNSBieSBMdWNhIENhcmxvbiA8Y2FybG9uIGRvdCBsdWNhIGF0IGdtYWlsIGRv
dCBjb20+CisgKgorICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVk
aXN0cmlidXRlIGl0CisgKiBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg
R05VIEdlbmVyYWwKKyAqIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBT
b2Z0d2FyZSBGb3VuZGF0aW9uOworICogZWl0aGVyIHZlcnNpb24gMiwgb3IgKGF0IHlvdXIgb3B0
aW9uKQorICogYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3Ry
aWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9V
VCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICog
TUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2Vl
IHRoZQorICogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAq
CisgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0gKi8KKworI2luY2x1ZGUgImltYWdlZnNvdmVybGF5Lm1vYyIKKworLy8gS0RFIGlu
Y2x1ZGVzCisKKyNpbmNsdWRlIDxraWNvbmxvYWRlci5oPgorI2luY2x1ZGUgPGtsb2NhbGUuaD4K
KworLy8gTG9jYWwgaW5jbHVkZXMKKworI2luY2x1ZGUgImltYWdlY2F0ZWdvcml6ZWR2aWV3Lmgi
CisjaW5jbHVkZSAiaW1hZ2VpbmZvLmgiCisjaW5jbHVkZSAiaW1hZ2Vtb2RlbC5oIgorI2luY2x1
ZGUgIml0ZW12aWV3aG92ZXJidXR0b24uaCIKKworbmFtZXNwYWNlIERpZ2lrYW0KK3sKKworSW1h
Z2VGc092ZXJsYXlCdXR0b246OkltYWdlRnNPdmVybGF5QnV0dG9uKFFBYnN0cmFjdEl0ZW1WaWV3
KiBjb25zdCBwYXJlbnRWaWV3KQorICAgIDogSXRlbVZpZXdIb3ZlckJ1dHRvbihwYXJlbnRWaWV3
KQoreworfQorCitRU2l6ZSBJbWFnZUZzT3ZlcmxheUJ1dHRvbjo6c2l6ZUhpbnQoKSBjb25zdAor
eworICAgIHJldHVybiBRU2l6ZSgzMiwgMzIpOworfQorCitRUGl4bWFwIEltYWdlRnNPdmVybGF5
QnV0dG9uOjppY29uKCkKK3sKKyAgICByZXR1cm4gS0ljb25Mb2FkZXI6Omdsb2JhbCgpLT5sb2Fk
SWNvbigKKyAgICAgICAgICAgICAidmlldy1mdWxsc2NyZWVuIiwgS0ljb25Mb2FkZXI6Ok5vR3Jv
dXAsIEtJY29uTG9hZGVyOjpTaXplU21hbGwpOworfQorCit2b2lkIEltYWdlRnNPdmVybGF5QnV0
dG9uOjp1cGRhdGVUb29sVGlwKCkKK3sKKyAgICBzZXRUb29sVGlwKGkxOG5jKCJAaW5mbzp0b29s
dGlwIiwgIlNob3cgRnVsbHNjcmVlbiIpKTsKK30KKworLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworSW1hZ2VG
c092ZXJsYXk6OkltYWdlRnNPdmVybGF5KFFPYmplY3QqIGNvbnN0IHBhcmVudCkKKyAgICA6IEhv
dmVyQnV0dG9uRGVsZWdhdGVPdmVybGF5KHBhcmVudCkKK3sKK30KKwordm9pZCBJbWFnZUZzT3Zl
cmxheTo6c2V0QWN0aXZlKGJvb2wgYWN0aXZlKQoreworICAgIEhvdmVyQnV0dG9uRGVsZWdhdGVP
dmVybGF5OjpzZXRBY3RpdmUoYWN0aXZlKTsKKworICAgIGlmIChhY3RpdmUpCisgICAgeworICAg
ICAgICBjb25uZWN0KGJ1dHRvbigpLCBTSUdOQUwoY2xpY2tlZChib29sKSksCisgICAgICAgICAg
ICAgICAgdGhpcywgU0xPVChzbG90Q2xpY2tlZCgpKSk7CisgICAgfQorCisgICAgLy8gaWYgIWFj
dGl2ZSwgYnV0dG9uKCkgaXMgZGVsZXRlZAorfQorCitJdGVtVmlld0hvdmVyQnV0dG9uKiBJbWFn
ZUZzT3ZlcmxheTo6Y3JlYXRlQnV0dG9uKCkKK3sKKyAgICByZXR1cm4gbmV3IEltYWdlRnNPdmVy
bGF5QnV0dG9uKHZpZXcoKSk7Cit9CisKK3ZvaWQgSW1hZ2VGc092ZXJsYXk6OnVwZGF0ZUJ1dHRv
bihjb25zdCBRTW9kZWxJbmRleCYgaW5kZXgpCit7CisgICAgY29uc3QgUVJlY3QgcmVjdCA9IG1f
dmlldy0+dmlzdWFsUmVjdChpbmRleCk7CisgICAgY29uc3QgaW50IHNpemUgICA9IHFCb3VuZCgx
NiwgcmVjdC53aWR0aCgpIC8gOCAtIDIsIDQ4KTsKKyAgICBjb25zdCBpbnQgZ2FwICAgID0gNTsK
KyAgICBjb25zdCBpbnQgeCAgICAgID0gcmVjdC5yaWdodCgpIC0gMypnYXAgLSBzaXplKjQgKyAy
OworICAgIGNvbnN0IGludCB5ICAgICAgPSByZWN0LnRvcCgpICsgZ2FwOworICAgIGJ1dHRvbigp
LT5yZXNpemUoc2l6ZSwgc2l6ZSk7CisgICAgYnV0dG9uKCktPm1vdmUoUVBvaW50KHgsIHkpKTsK
K30KKwordm9pZCBJbWFnZUZzT3ZlcmxheTo6c2xvdENsaWNrZWQoKQoreworICAgIFFNb2RlbElu
ZGV4IGluZGV4ID0gYnV0dG9uKCktPmluZGV4KCk7CisKKyAgICBpZiAoaW5kZXguaXNWYWxpZCgp
KQorICAgICAgICBlbWl0IHNpZ25hbEZ1bGxzY3JlZW4oYWZmZWN0ZWRJbmRleGVzKGluZGV4KSk7
Cit9CisKK2Jvb2wgSW1hZ2VGc092ZXJsYXk6OmNoZWNrSW5kZXgoY29uc3QgUU1vZGVsSW5kZXgm
IGluZGV4KSBjb25zdAoreworICAgIEltYWdlSW5mbyBpbmZvID0gSW1hZ2VNb2RlbDo6cmV0cmll
dmVJbWFnZUluZm8oaW5kZXgpOworICAgIHJldHVybiAoaW5mby5jYXRlZ29yeSgpID09IERhdGFi
YXNlSXRlbTo6SW1hZ2UpOworfQorCit2b2lkIEltYWdlRnNPdmVybGF5Ojp3aWRnZXRFbnRlckV2
ZW50KCkKK3sKKyAgICB3aWRnZXRFbnRlck5vdGlmeU11bHRpcGxlKGJ1dHRvbigpLT5pbmRleCgp
KTsKK30KKwordm9pZCBJbWFnZUZzT3ZlcmxheTo6d2lkZ2V0TGVhdmVFdmVudCgpCit7CisgICAg
d2lkZ2V0TGVhdmVOb3RpZnlNdWx0aXBsZSgpOworfQorCit9IC8vIG5hbWVzcGFjZSBEaWdpa2Ft
CmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuaCBiL2FwcC9p
dGVtcy9vdmVybGF5cy9pbWFnZWZzb3ZlcmxheS5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAuLjRmMzM2YWEKLS0tIC9kZXYvbnVsbAorKysgYi9hcHAvaXRlbXMvb3ZlcmxheXMv
aW1hZ2Vmc292ZXJsYXkuaApAQCAtMCwwICsxLDg3IEBACisvKiA9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqCisgKiBUaGlzIGZp
bGUgaXMgYSBwYXJ0IG9mIGRpZ2lLYW0gcHJvamVjdAorICogaHR0cDovL3d3dy5kaWdpa2FtLm9y
ZworICoKKyAqIERhdGUgICAgICAgIDogMjAxNS0wOC0zMAorICogRGVzY3JpcHRpb24gOiBmdWxs
c2NyZWVuIG92ZXJsYXkKKyAqCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgYnkgTHVjYSBDYXJsb24g
PGNhcmxvbiBkb3QgbHVjYSBhdCBnbWFpbCBkb3QgY29tPgorICoKKyAqIFRoaXMgcHJvZ3JhbSBp
cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdAorICogYW5kL29yIG1vZGlm
eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsCisgKiBQdWJsaWMgTGljZW5z
ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsKKyAqIGVpdGhl
ciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyAqIGFueSBsYXRlciB2ZXJzaW9uLgor
ICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp
bGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g
dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBM
aWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCisKKyNpZm5kZWYgSU1BR0VG
U09WRVJMQVlfSAorI2RlZmluZSBJTUFHRUZTT1ZFUkxBWV9ICisKKy8vIFF0IGluY2x1ZGVzCisK
KyNpbmNsdWRlIDxRQWJzdHJhY3RCdXR0b24+CisjaW5jbHVkZSA8UUFic3RyYWN0SXRlbVZpZXc+
CisKKy8vIExvY2FsIGluY2x1ZGVzCisKKyNpbmNsdWRlICJpdGVtdmlld2hvdmVyYnV0dG9uLmgi
CisjaW5jbHVkZSAiaW1hZ2VkZWxlZ2F0ZW92ZXJsYXkuaCIKKworbmFtZXNwYWNlIERpZ2lrYW0K
K3sKKworY2xhc3MgSW1hZ2VGc092ZXJsYXlCdXR0b24gOiBwdWJsaWMgSXRlbVZpZXdIb3ZlckJ1
dHRvbgoreworcHVibGljOgorCisgICAgSW1hZ2VGc092ZXJsYXlCdXR0b24oUUFic3RyYWN0SXRl
bVZpZXcqIGNvbnN0IHBhcmVudFZpZXcpOworICAgIHZpcnR1YWwgUVNpemUgc2l6ZUhpbnQoKSBj
b25zdDsKKworcHJvdGVjdGVkOgorCisgICAgdmlydHVhbCBRUGl4bWFwIGljb24oKTsKKyAgICB2
aXJ0dWFsIHZvaWQgdXBkYXRlVG9vbFRpcCgpOworfTsKKworLy8gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworY2xh
c3MgSW1hZ2VGc092ZXJsYXkgOiBwdWJsaWMgSG92ZXJCdXR0b25EZWxlZ2F0ZU92ZXJsYXkKK3sK
KyAgICBRX09CSkVDVAorCitwdWJsaWM6CisKKyAgICBJbWFnZUZzT3ZlcmxheShRT2JqZWN0KiBj
b25zdCBwYXJlbnQpOworICAgIHZpcnR1YWwgdm9pZCBzZXRBY3RpdmUoYm9vbCBhY3RpdmUpOwor
CisgICAgc3RhdGljIEltYWdlRnNPdmVybGF5KiBpbnN0YW5jZShRT2JqZWN0KiBwYXJlbnQpIHsK
KyAgICAgICByZXR1cm4gbmV3IEltYWdlRnNPdmVybGF5KHBhcmVudCk7CisgICAgfQorCitRX1NJ
R05BTFM6CisKKyAgICB2b2lkIHNpZ25hbEZ1bGxzY3JlZW4oY29uc3QgUUxpc3Q8UU1vZGVsSW5k
ZXg+JiBpbmRleGVzKTsKKworcHJvdGVjdGVkOgorCisgICAgdmlydHVhbCBJdGVtVmlld0hvdmVy
QnV0dG9uKiBjcmVhdGVCdXR0b24oKTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlQnV0dG9uKGNv
bnN0IFFNb2RlbEluZGV4JiBpbmRleCk7CisgICAgdmlydHVhbCBib29sIGNoZWNrSW5kZXgoY29u
c3QgUU1vZGVsSW5kZXgmIGluZGV4KSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgd2lkZ2V0RW50
ZXJFdmVudCgpOworICAgIHZpcnR1YWwgdm9pZCB3aWRnZXRMZWF2ZUV2ZW50KCk7CisKK3ByaXZh
dGUgUV9TTE9UUzoKKworICAgIHZvaWQgc2xvdENsaWNrZWQoKTsKK307CisKK30gLy8gbmFtZXNw
YWNlIERpZ2lrYW0KKworI2VuZGlmIC8qIElNQUdFRlNPVkVSTEFZX0ggKi8KZGlmZiAtLWdpdCBh
L2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzLmNwcCBiL2FwcC9zZXR0aW5ncy9hcHBs
aWNhdGlvbnNldHRpbmdzLmNwcAppbmRleCA3MGU0N2FjLi5iYzIxNGU5IDEwMDY0NAotLS0gYS9h
cHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5jcHAKKysrIGIvYXBwL3NldHRpbmdzL2Fw
cGxpY2F0aW9uc2V0dGluZ3MuY3BwCkBAIC0xNTUsNiArMTU1LDcgQEAgdm9pZCBBcHBsaWNhdGlv
blNldHRpbmdzOjpyZWFkU2V0dGluZ3MoKQogICAgIGQtPmljb25TaG93Q29tbWVudHMgICAgICAg
ICAgICAgICAgID0gZ3JvdXAucmVhZEVudHJ5KGQtPmNvbmZpZ0ljb25TaG93Q29tbWVudHNFbnRy
eSwgICAgICAgICAgICAgdHJ1ZSk7CiAgICAgZC0+aWNvblNob3dUYWdzICAgICAgICAgICAgICAg
ICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNob3dUYWdzRW50cnksICAgICAg
ICAgICAgICAgICB0cnVlKTsKICAgICBkLT5pY29uU2hvd092ZXJsYXlzICAgICAgICAgICAgICAg
ICA9IGdyb3VwLnJlYWRFbnRyeShkLT5jb25maWdJY29uU2hvd092ZXJsYXlzRW50cnksICAgICAg
ICAgICAgIHRydWUpOworICAgIGQtPmljb25TaG93RnVsbHNjcmVlbiAgICAgICAgICAgICAgID0g
Z3JvdXAucmVhZEVudHJ5KGQtPmNvbmZpZ0ljb25TaG93RnVsbHNjcmVlbkVudHJ5LCAgICAgICAg
ICAgdHJ1ZSk7CiAgICAgZC0+aWNvblNob3dSYXRpbmcgICAgICAgICAgICAgICAgICAgPSBncm91
cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNob3dSYXRpbmdFbnRyeSwgICAgICAgICAgICAgICB0
cnVlKTsKICAgICBkLT5pY29uU2hvd0ltYWdlRm9ybWF0ICAgICAgICAgICAgICA9IGdyb3VwLnJl
YWRFbnRyeShkLT5jb25maWdJY29uU2hvd0ltYWdlRm9ybWF0RW50cnksICAgICAgICAgIGZhbHNl
KTsKICAgICBkLT5pY29uU2hvd0Nvb3JkaW5hdGVzICAgICAgICAgICAgICA9IGdyb3VwLnJlYWRF
bnRyeShkLT5jb25maWdJY29uU2hvd0Nvb3JkaW5hdGVzRW50cnksICAgICAgICAgIGZhbHNlKTsK
QEAgLTI5OCw2ICsyOTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uU2V0dGluZ3M6OnNhdmVTZXR0aW5n
cygpCiAgICAgZ3JvdXAud3JpdGVFbnRyeShkLT5jb25maWdJY29uU2hvd0NvbW1lbnRzRW50cnks
ICAgICAgICAgICAgICAgICAgIGQtPmljb25TaG93Q29tbWVudHMpOwogICAgIGdyb3VwLndyaXRl
RW50cnkoZC0+Y29uZmlnSWNvblNob3dUYWdzRW50cnksICAgICAgICAgICAgICAgICAgICAgICBk
LT5pY29uU2hvd1RhZ3MpOwogICAgIGdyb3VwLndyaXRlRW50cnkoZC0+Y29uZmlnSWNvblNob3dP
dmVybGF5c0VudHJ5LCAgICAgICAgICAgICAgICAgICBkLT5pY29uU2hvd092ZXJsYXlzKTsKKyAg
ICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93RnVsbHNjcmVlbkVudHJ5LCAgICAg
ICAgICAgICAgICAgZC0+aWNvblNob3dGdWxsc2NyZWVuKTsKICAgICBncm91cC53cml0ZUVudHJ5
KGQtPmNvbmZpZ0ljb25TaG93UmF0aW5nRW50cnksICAgICAgICAgICAgICAgICAgICAgZC0+aWNv
blNob3dSYXRpbmcpOwogICAgIGdyb3VwLndyaXRlRW50cnkoZC0+Y29uZmlnSWNvblNob3dJbWFn
ZUZvcm1hdEVudHJ5LCAgICAgICAgICAgICAgICBkLT5pY29uU2hvd0ltYWdlRm9ybWF0KTsKICAg
ICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93Q29vcmRpbmF0ZXNFbnRyeSwgICAg
ICAgICAgICAgICAgZC0+aWNvblNob3dDb29yZGluYXRlcyk7CmRpZmYgLS1naXQgYS9hcHAvc2V0
dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5oIGIvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0
dGluZ3MuaAppbmRleCA0OTBhMjQ1Li4yM2M0OTYyIDEwMDY0NAotLS0gYS9hcHAvc2V0dGluZ3Mv
YXBwbGljYXRpb25zZXR0aW5ncy5oCisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRp
bmdzLmgKQEAgLTIzNyw2ICsyMzcsOSBAQCBwdWJsaWM6CiAgICAgICovCiAgICAgdm9pZCBzZXRJ
Y29uU2hvd092ZXJsYXlzKGJvb2wgdmFsKTsKIAorICAgIHZvaWQgc2V0SWNvblNob3dGdWxsc2Ny
ZWVuKGJvb2wgdmFsKTsKKyAgICBib29sIGdldEljb25TaG93RnVsbHNjcmVlbigpIGNvbnN0Owor
CiAgICAgLyoqCiAgICAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBvdmVybGF5IGJ1dHRvbnMg
c2hvdWxkIGJlIGRpc3BsYXllZCBvbiB0aGUgaWNvbnMuCiAgICAgICovCmRpZmYgLS1naXQgYS9h
cHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19pY29udmlldy5jcHAgYi9hcHAvc2V0dGlu
Z3MvYXBwbGljYXRpb25zZXR0aW5nc19pY29udmlldy5jcHAKaW5kZXggYTNmYmU0Yi4uNGI4YjQ3
ZiAxMDA2NDQKLS0tIGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3NfaWNvbnZpZXcu
Y3BwCisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX2ljb252aWV3LmNwcApA
QCAtMjI4LDYgKzIyOCwxNiBAQCB2b2lkIEFwcGxpY2F0aW9uU2V0dGluZ3M6OnNldEljb25TaG93
T3ZlcmxheXMoYm9vbCB2YWwpCiAgICAgZC0+aWNvblNob3dPdmVybGF5cyA9IHZhbDsKIH0KIAor
dm9pZCBBcHBsaWNhdGlvblNldHRpbmdzOjpzZXRJY29uU2hvd0Z1bGxzY3JlZW4oYm9vbCB2YWwp
Cit7CisgICBkLT5pY29uU2hvd0Z1bGxzY3JlZW4gPSB2YWw7Cit9CisKK2Jvb2wgQXBwbGljYXRp
b25TZXR0aW5nczo6Z2V0SWNvblNob3dGdWxsc2NyZWVuKCkgY29uc3QKK3sKKyAgIHJldHVybiBk
LT5pY29uU2hvd0Z1bGxzY3JlZW47Cit9CisKIGJvb2wgQXBwbGljYXRpb25TZXR0aW5nczo6Z2V0
SWNvblNob3dPdmVybGF5cygpIGNvbnN0CiB7CiAgICAgcmV0dXJuIGQtPmljb25TaG93T3Zlcmxh
eXM7CmRpZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19wLmNwcCBi
L2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuY3BwCmluZGV4IDk2MDQwMjguLjky
ZDJlZDQgMTAwNjQ0Ci0tLSBhL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuY3Bw
CisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuY3BwCkBAIC04MSw2ICs4
MSw3IEBAIGNvbnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmln
SWNvblNob3dJbWFnZUZvcm1hdEVudHJ5KCJJY29uCiBjb25zdCBRU3RyaW5nIEFwcGxpY2F0aW9u
U2V0dGluZ3M6OlByaXZhdGU6OmNvbmZpZ0ljb25TaG93Q29vcmRpbmF0ZXNFbnRyeSgiSWNvbiBT
aG93IENvb3JkaW5hdGVzIik7CiBjb25zdCBRU3RyaW5nIEFwcGxpY2F0aW9uU2V0dGluZ3M6OlBy
aXZhdGU6OmNvbmZpZ0ljb25TaG93QXNwZWN0UmF0aW9FbnRyeSgiSWNvbiBTaG93IEFzcGVjdCBS
YXRpbyIpOwogY29uc3QgUVN0cmluZyBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpjb25m
aWdJY29uU2hvd092ZXJsYXlzRW50cnkoIkljb24gU2hvdyBPdmVybGF5cyIpOworY29uc3QgUVN0
cmluZyBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpjb25maWdJY29uU2hvd0Z1bGxzY3Jl
ZW5FbnRyeSgiSWNvbiBTaG93IEZ1bGxzY3JlZW4iKTsKIGNvbnN0IFFTdHJpbmcgQXBwbGljYXRp
b25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmlnSWNvblZpZXdGb250RW50cnkoIkljb25WaWV3IEZv
bnQiKTsKIGNvbnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmln
VG9vbFRpcHNGb250RW50cnkoIlRvb2xUaXBzIEZvbnQiKTsKIGNvbnN0IFFTdHJpbmcgQXBwbGlj
YXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmlnU2hvd1Rvb2xUaXBzRW50cnkoIlNob3cgVG9v
bFRpcHMiKTsKQEAgLTE0OCw2ICsxNDksNyBAQCBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRl
OjpQcml2YXRlKEFwcGxpY2F0aW9uU2V0dGluZ3MqIGNvbnN0IHEpCiAgICAgICBpY29uU2hvd1Jl
c29sdXRpb24oZmFsc2UpLAogICAgICAgaWNvblNob3dUYWdzKGZhbHNlKSwKICAgICAgIGljb25T
aG93T3ZlcmxheXMoZmFsc2UpLAorICAgICAgaWNvblNob3dGdWxsc2NyZWVuKGZhbHNlKSwKICAg
ICAgIGljb25TaG93UmF0aW5nKGZhbHNlKSwKICAgICAgIGljb25TaG93SW1hZ2VGb3JtYXQoZmFs
c2UpLAogICAgICAgaWNvblNob3dDb29yZGluYXRlcyhmYWxzZSksCkBAIC0yNTcsNiArMjU5LDcg
QEAgdm9pZCBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjppbml0KCkKICAgICBpY29uU2hv
d0FzcGVjdFJhdGlvICAgICAgICAgICAgICAgICA9IGZhbHNlOwogICAgIGljb25TaG93VGFncyAg
ICAgICAgICAgICAgICAgICAgICAgID0gdHJ1ZTsKICAgICBpY29uU2hvd092ZXJsYXlzICAgICAg
ICAgICAgICAgICAgICA9IHRydWU7CisgICAgaWNvblNob3dGdWxsc2NyZWVuICAgICAgICAgICAg
ICAgICAgPSB0cnVlOwogICAgIGljb25TaG93UmF0aW5nICAgICAgICAgICAgICAgICAgICAgID0g
dHJ1ZTsKICAgICBpY29uU2hvd0ltYWdlRm9ybWF0ICAgICAgICAgICAgICAgICA9IGZhbHNlOwog
ICAgIGljb25TaG93Q29vcmRpbmF0ZXMgICAgICAgICAgICAgICAgID0gZmFsc2U7CmRpZmYgLS1n
aXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19wLmggYi9hcHAvc2V0dGluZ3Mv
YXBwbGljYXRpb25zZXR0aW5nc19wLmgKaW5kZXggOTQzNDI5YS4uZDgxNjYzMCAxMDA2NDQKLS0t
IGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3NfcC5oCisrKyBiL2FwcC9zZXR0aW5n
cy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuaApAQCAtNzMsNiArNzMsNyBAQCBwdWJsaWM6CiAgICAg
c3RhdGljIGNvbnN0IFFTdHJpbmcgICAgICAgICAgICAgICAgICAgICAgY29uZmlnSWNvblNob3dD
b21tZW50c0VudHJ5OwogICAgIHN0YXRpYyBjb25zdCBRU3RyaW5nICAgICAgICAgICAgICAgICAg
ICAgIGNvbmZpZ0ljb25TaG93VGFnc0VudHJ5OwogICAgIHN0YXRpYyBjb25zdCBRU3RyaW5nICAg
ICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93T3ZlcmxheXNFbnRyeTsKKyAgICBzdGF0
aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBjb25maWdJY29uU2hvd0Z1bGxz
Y3JlZW5FbnRyeTsKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAg
ICBjb25maWdJY29uU2hvd1JhdGluZ0VudHJ5OwogICAgIHN0YXRpYyBjb25zdCBRU3RyaW5nICAg
ICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93SW1hZ2VGb3JtYXRFbnRyeTsKICAgICBz
dGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBjb25maWdJY29uU2hvd0Nv
b3JkaW5hdGVzRW50cnk7CkBAIC0xNDksNiArMTUwLDcgQEAgcHVibGljOgogICAgIGJvb2wgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25TaG93UmVzb2x1dGlvbjsKICAg
ICBib29sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uU2hvd1RhZ3M7
CiAgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblNob3dP
dmVybGF5czsKKyAgICBib29sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
Y29uU2hvd0Z1bGxzY3JlZW47CiAgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaWNvblNob3dSYXRpbmc7CiAgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaWNvblNob3dJbWFnZUZvcm1hdDsKICAgICBib29sICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uU2hvd0Nvb3JkaW5hdGVzOwpkaWZmIC0tZ2l0
IGEvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuY3BwIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1
aWxkZXIuY3BwCmluZGV4IDZkMTlkN2UuLjYyNDQ2YWIgMTAwNjQ0Ci0tLSBhL2FwcC91dGlscy9z
bGlkZXNob3didWlsZGVyLmNwcAorKysgYi9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRlci5jcHAK
QEAgLTQ5LDEzICs0OSwxNiBAQCBwdWJsaWM6CiAKICAgICBQcml2YXRlKCkgOgogICAgICAgICBj
YW5jZWwoZmFsc2UpLAotICAgICAgICBhbGJ1bSgwKQorICAgICAgICBhbGJ1bSgwKSwKKyAgICAg
ICAgYXV0b1BsYXlFbmFibGVkKHRydWUpCiAgICAgewogICAgIH0KIAogICAgIGJvb2wgICAgICAg
ICAgY2FuY2VsOwogICAgIEltYWdlSW5mb0xpc3QgaW5mb0xpc3Q7CiAgICAgQWxidW0qICAgICAg
ICBhbGJ1bTsKKyAgICBib29sICAgICAgICAgIGF1dG9QbGF5RW5hYmxlZDsKKyAgICBLVXJsICAg
ICAgICAgIHN0YXJ0RnJvbTsgLy8gT3ZlcnJpZGVzIHRoZSBzdGFydEZyb21DdXJyZW50IGZsYWcg
cmVhZCBmcm9tIHNldHRpbmdzLgogfTsKIAogU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVp
bGRlcihjb25zdCBJbWFnZUluZm9MaXN0JiBpbmZvTGlzdCkKQEAgLTY1LDggKzY4LDYgQEAgU2xp
ZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihjb25zdCBJbWFnZUluZm9MaXN0JiBpbmZv
TGlzdCkKICAgICBkLT5pbmZvTGlzdCA9IGluZm9MaXN0OwogCiAgICAgUHJvZ3Jlc3NNYW5hZ2Vy
OjphZGRQcm9ncmVzc0l0ZW0odGhpcyk7Ci0KLSAgICBRVGltZXI6OnNpbmdsZVNob3QoNTAwLCB0
aGlzLCBTTE9UKHNsb3RSdW4oKSkpOwogfQogCiBTbGlkZVNob3dCdWlsZGVyOjpTbGlkZVNob3dC
dWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSkKQEAgLTc2LDggKzc3LDYgQEAgU2xpZGVTaG93QnVp
bGRlcjo6U2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29uc3QgYWxidW0pCiAgICAgZC0+YWxidW0g
PSBhbGJ1bTsKIAogICAgIFByb2dyZXNzTWFuYWdlcjo6YWRkUHJvZ3Jlc3NJdGVtKHRoaXMpOwot
Ci0gICAgUVRpbWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xPVChzbG90UnVuKCkpKTsKIH0K
IAogU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIoKQpAQCAtODUsNiArODQsMjEg
QEAgU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIoKQogICAgIGRlbGV0ZSBkOwog
fQogCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldE92ZXJyaWRlU3RhcnRGcm9tKGNvbnN0IElt
YWdlSW5mbyYgaW5mbykKK3sKKyAgIGQtPnN0YXJ0RnJvbSA9IGluZm8uZmlsZVVybCgpOworfQor
Cit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldEF1dG9QbGF5RW5hYmxlZChib29sIGVuYWJsZSkK
K3sKKyAgICBkLT5hdXRvUGxheUVuYWJsZWQgPSBlbmFibGU7Cit9CisKK3ZvaWQgU2xpZGVTaG93
QnVpbGRlcjo6cnVuKCkKK3sKKyAgICBRVGltZXI6OnNpbmdsZVNob3QoNTAwLCB0aGlzLCBTTE9U
KHNsb3RSdW4oKSkpOworfQorCiB2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNsb3RSdW4oKQogewog
ICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKHByb2dyZXNzSXRlbUNhbmNlbGVkKFByb2dyZXNzSXRl
bSopKSwKQEAgLTEyNiw2ICsxNDAsOSBAQCB2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNsb3RQYXJz
ZUltYWdlSW5mb0xpc3QoY29uc3QgSW1hZ2VJbmZvTGlzdCYgbGlzdCkKICAgICBTbGlkZVNob3dT
ZXR0aW5ncyBzZXR0aW5nczsKICAgICBzZXR0aW5ncy5yZWFkRnJvbUNvbmZpZygpOwogICAgIHNl
dHRpbmdzLnByZXZpZXdTZXR0aW5ncyA9IEFwcGxpY2F0aW9uU2V0dGluZ3M6Omluc3RhbmNlKCkt
PmdldFByZXZpZXdTZXR0aW5ncygpOworICAgIGlmIChkLT5zdGFydEZyb20uaXNWYWxpZCgpKQor
ICAgICAgICBzZXR0aW5ncy5pbWFnZVVybCA9IGQtPnN0YXJ0RnJvbTsKKyAgICBzZXR0aW5ncy5h
dXRvUGxheUVuYWJsZWQgPSBkLT5hdXRvUGxheUVuYWJsZWQ7CiAKICAgICBmb3IgKEltYWdlSW5m
b0xpc3Q6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbGlzdC5jb25zdEJlZ2luKCk7CiAgICAgICAgICAh
ZC0+Y2FuY2VsICYmIChpdCAhPSBsaXN0LmNvbnN0RW5kKCkpIDsgKytpdCkKZGlmZiAtLWdpdCBh
L2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmggYi9hcHAvdXRpbHMvc2xpZGVzaG93YnVpbGRl
ci5oCmluZGV4IDRjYzM0NjguLjU3ZjQzNDcgMTAwNjQ0Ci0tLSBhL2FwcC91dGlscy9zbGlkZXNo
b3didWlsZGVyLmgKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuaApAQCAtNDksNiAr
NDksMTggQEAgcHVibGljOgogICAgIC8qKiBDb250cnVjdG9yIHRvIHdvcmsgb24gcmVjdXJzaXZl
IG1vZGUgZnJvbSBhbGJ1bSAqLwogICAgIGV4cGxpY2l0IFNsaWRlU2hvd0J1aWxkZXIoQWxidW0q
IGNvbnN0IGFsYnVtKTsKICAgICB+U2xpZGVTaG93QnVpbGRlcigpOworICAgIAorICAgIC8qKgor
ICAgICAgKiBUaGUgYnVpbGRlciBjcmVhdGVzIHRoZSBzbGlkZXNob3cgYnkgcmVhZGluZyB0aGUg
aW50ZXJuYWwgc2V0dXAuIFRoZXNlIGZ1bmN0aW9ucyBwZXJtaXQKKyAgICAgICogdG8gb3ZlcnJp
ZGUgdGhlIHNldHVwLgorICAgICAgKgorICAgICAgKiBAYnJpZWYgc2V0T3ZlcnJpZGVTdGFydEZy
b21DdXJyZW50CisgICAgICAqIEBwYXJhbSBzdGFydEZyb21DdXJyZW50CisgICAgICAqLworICAg
IHZvaWQgc2V0T3ZlcnJpZGVTdGFydEZyb20oY29uc3QgSW1hZ2VJbmZvJiBpbmZvKTsKKyAgICB2
b2lkIHNldEF1dG9QbGF5RW5hYmxlZChib29sIGVuYWJsZSk7CisKKyAgICB2b2lkIHJ1bigpOwog
CiBRX1NJR05BTFM6CiAKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAgYi9h
cHAvdmlld3MvZGlnaWthbXZpZXcuY3BwCmluZGV4IDRmZTI5ZTYuLjQ5NzAxYjUgMTAwNjQ0Ci0t
LSBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3
LmNwcApAQCAtNDc5LDYgKzQ3OSw5IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNldHVwQ29ubmVjdGlv
bnMoKQogICAgIGNvbm5lY3QoZC0+aWNvblZpZXcsIFNJR05BTChwcmV2aWV3UmVxdWVzdGVkKElt
YWdlSW5mbykpLAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90VG9nZ2xlUHJldmlld01vZGUo
SW1hZ2VJbmZvKSkpOwogCisgICAgY29ubmVjdChkLT5pY29uVmlldywgU0lHTkFMKGZ1bGxzY3Jl
ZW5SZXF1ZXN0ZWQoSW1hZ2VJbmZvKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RTbGlk
ZVNob3dNYW51YWxGcm9tKEltYWdlSW5mbykpKTsKKwogICAgIGNvbm5lY3QoZC0+aWNvblZpZXcs
IFNJR05BTChnb3RvQWxidW1BbmRJbWFnZVJlcXVlc3RlZChJbWFnZUluZm8pKSwKICAgICAgICAg
ICAgIHRoaXMsIFNMT1Qoc2xvdEdvdG9BbGJ1bUFuZEl0ZW0oSW1hZ2VJbmZvKSkpOwogCkBAIC01
OTYsNiArNTk5LDkgQEAgdm9pZCBEaWdpa2FtVmlldzo6c2V0dXBDb25uZWN0aW9ucygpCiAKICAg
ICBjb25uZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93KCkpLAogICAg
ICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93QWxsKCkpKTsKKyAgICAKKyAgICBjb25u
ZWN0KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSwKKyAg
ICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd01hbnVhbEZyb21DdXJyZW50KCkpKTsK
IAogICAgIGNvbm5lY3QoZC0+c3RhY2tlZHZpZXcsIFNJR05BTChzaWduYWxab29tRmFjdG9yQ2hh
bmdlZChkb3VibGUpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFpvb21GYWN0b3JDaGFu
Z2VkKGRvdWJsZSkpKTsKQEAgLTIwODIsMTUgKzIwODgsMzYgQEAgdm9pZCBEaWdpa2FtVmlldzo6
c2xvdFNsaWRlU2hvd1JlY3Vyc2l2ZSgpCiAKICAgICAgICAgY29ubmVjdChidWlsZGVyLCBTSUdO
QUwoc2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKICAgICAgICAgICAgICAgICB0
aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dCdWlsZGVyQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3Mp
KSk7CisKKyAgICAgICAgYnVpbGRlci0+cnVuKCk7CiAgICAgfQogfQogCit2b2lkIERpZ2lrYW1W
aWV3OjpzbG90U2xpZGVTaG93TWFudWFsRnJvbUN1cnJlbnQoKQoreworICAgIHNsb3RTbGlkZVNo
b3dNYW51YWxGcm9tKGN1cnJlbnRJbmZvKCkpOworfQorCit2b2lkIERpZ2lrYW1WaWV3OjpzbG90
U2xpZGVTaG93TWFudWFsRnJvbShjb25zdCBJbWFnZUluZm8mIGluZm8pCit7CisgICBTbGlkZVNo
b3dCdWlsZGVyKiBjb25zdCBidWlsZGVyID0gbmV3IFNsaWRlU2hvd0J1aWxkZXIoYWxsSW5mbygp
KTsKKyAgIGJ1aWxkZXItPnNldE92ZXJyaWRlU3RhcnRGcm9tKGluZm8pOworICAgYnVpbGRlci0+
c2V0QXV0b1BsYXlFbmFibGVkKGZhbHNlKTsKKworICAgY29ubmVjdChidWlsZGVyLCBTSUdOQUwo
c2lnbmFsQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSwKKyAgICAgICAgICAgdGhpcywgU0xP
VChzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKFNsaWRlU2hvd1NldHRpbmdzKSkpOworCisg
ICBidWlsZGVyLT5ydW4oKTsKK30KKwogdm9pZCBEaWdpa2FtVmlldzo6c2xpZGVTaG93KGNvbnN0
IEltYWdlSW5mb0xpc3QmIGluZm9MaXN0KQogewogICAgIFNsaWRlU2hvd0J1aWxkZXIqIGNvbnN0
IGJ1aWxkZXIgPSBuZXcgU2xpZGVTaG93QnVpbGRlcihpbmZvTGlzdCk7CiAKICAgICBjb25uZWN0
KGJ1aWxkZXIsIFNJR05BTChzaWduYWxDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpLAogICAg
ICAgICAgICAgdGhpcywgU0xPVChzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKFNsaWRlU2hv
d1NldHRpbmdzKSkpOworICAgIAorICAgIGJ1aWxkZXItPnJ1bigpOwogfQogCiB2b2lkIERpZ2lr
YW1WaWV3OjpzbG90U2xpZGVTaG93QnVpbGRlckNvbXBsZXRlKGNvbnN0IFNsaWRlU2hvd1NldHRp
bmdzJiBzZXR0aW5ncykKQEAgLTIwOTgsMTAgKzIxMjUsMTAgQEAgdm9pZCBEaWdpa2FtVmlldzo6
c2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShjb25zdCBTbGlkZVNob3dTZXR0aW5ncyYgc2V0
dGluZ3MKICAgICBTbGlkZVNob3cqIGNvbnN0IHNsaWRlID0gbmV3IFNsaWRlU2hvdyhzZXR0aW5n
cyk7CiAgICAgVGFnc0FjdGlvbk1uZ3I6OmRlZmF1bHRNYW5hZ2VyKCktPnJlZ2lzdGVyQWN0aW9u
c1RvV2lkZ2V0KHNsaWRlKTsKIAotICAgIGlmIChzZXR0aW5ncy5zdGFydFdpdGhDdXJyZW50KQot
ICAgIHsKLSAgICAgICAgc2xpZGUtPnNldEN1cnJlbnRJdGVtKGN1cnJlbnRVcmwoKSk7Ci0gICAg
fQorICAgIGlmIChzZXR0aW5ncy5pbWFnZVVybC5pc1ZhbGlkKCkpCisgICAgICAgIHNsaWRlLT5z
ZXRDdXJyZW50SXRlbShzZXR0aW5ncy5pbWFnZVVybCk7CisgICAgZWxzZSBpZiAoc2V0dGluZ3Mu
c3RhcnRXaXRoQ3VycmVudCkKKyAgICAgICAgc2xpZGUtPnNldEN1cnJlbnRJdGVtKGN1cnJlbnRJ
bmZvKCkuZmlsZVVybCgpKTsKIAogICAgIGNvbm5lY3Qoc2xpZGUsIFNJR05BTChzaWduYWxSYXRp
bmdDaGFuZ2VkKEtVcmwsaW50KSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RSYXRpbmdD
aGFuZ2VkKEtVcmwsaW50KSkpOwpkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3Lmgg
Yi9hcHAvdmlld3MvZGlnaWthbXZpZXcuaAppbmRleCAyM2M5MjI2Li4yZjdiYTE5IDEwMDY0NAot
LS0gYS9hcHAvdmlld3MvZGlnaWthbXZpZXcuaAorKysgYi9hcHAvdmlld3MvZGlnaWthbXZpZXcu
aApAQCAtMTQxLDYgKzE0MSw4IEBAIHB1YmxpYyBRX1NMT1RTOgogICAgIHZvaWQgc2xvdFNsaWRl
U2hvd0FsbCgpOwogICAgIHZvaWQgc2xvdFNsaWRlU2hvd1NlbGVjdGlvbigpOwogICAgIHZvaWQg
c2xvdFNsaWRlU2hvd1JlY3Vyc2l2ZSgpOworICAgIHZvaWQgc2xvdFNsaWRlU2hvd01hbnVhbEZy
b21DdXJyZW50KCk7CisgICAgdm9pZCBzbG90U2xpZGVTaG93TWFudWFsRnJvbShjb25zdCBJbWFn
ZUluZm8mIGluZm8pOwogCiAgICAgLy8gQWxidW0gYWN0aW9uIHNsb3RzCiAgICAgdm9pZCBzbG90
UmVmcmVzaCgpOwpkaWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwIGIv
YXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwCmluZGV4IDA5Nzg3ZTMuLjM0YWIzODAgMTAw
NjQ0Ci0tLSBhL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcAorKysgYi9hcHAvdmlld3Mv
aW1hZ2VwcmV2aWV3dmlldy5jcHAKQEAgLTEyOSw2ICsxMjksOCBAQCBwdWJsaWM6CiAgICAgUUFj
dGlvbiogICAgICAgICAgICAgICBhZGRQZXJzb25BY3Rpb247CiAgICAgUUFjdGlvbiogICAgICAg
ICAgICAgICBmb3JnZXRGYWNlc0FjdGlvbjsKICNlbmRpZiAvKiBIQVZFX0tGQUNFICovCisKKyAg
ICBRQWN0aW9uKiAgICAgICAgICAgICAgIGZ1bGxzY3JlZW5BY3Rpb247CiB9OwogCiBJbWFnZVBy
ZXZpZXdWaWV3OjpJbWFnZVByZXZpZXdWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCwgTW9kZSBt
b2RlKQpAQCAtMTgwLDYgKzE4Miw4IEBAIEltYWdlUHJldmlld1ZpZXc6OkltYWdlUHJldmlld1Zp
ZXcoUVdpZGdldCogY29uc3QgcGFyZW50LCBNb2RlIG1vZGUpCiAgICAgZC0+cGVvcGxlVG9nZ2xl
QWN0aW9uLT5zZXRJY29uKFNtYWxsSWNvbigidXNlci1pZGVudGl0eSIpKTsKICNlbmRpZiAvKiBI
QVZFX0tGQUNFICovCiAKKyAgICBkLT5mdWxsc2NyZWVuQWN0aW9uICAgID0gbmV3IFFBY3Rpb24o
U21hbGxJY29uKCJ2aWV3LWZ1bGxzY3JlZW4iKSwgaTE4bigiU2hvdyBGdWxsc2NyZWVuIiksIHRo
aXMpOworCiAgICAgZC0+dG9vbEJhciAgICAgICAgICAgICA9IG5ldyBRVG9vbEJhcih0aGlzKTsK
IAogICAgIGlmIChtb2RlID09IEljb25WaWV3UHJldmlldykKQEAgLTE5Niw2ICsyMDAsOCBAQCBJ
bWFnZVByZXZpZXdWaWV3OjpJbWFnZVByZXZpZXdWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCwg
TW9kZSBtb2RlKQogICAgIGQtPnRvb2xCYXItPmFkZEFjdGlvbihkLT5hZGRQZXJzb25BY3Rpb24p
OwogI2VuZGlmIC8qIEhBVkVfS0ZBQ0UgKi8KIAorICAgIGQtPnRvb2xCYXItPmFkZEFjdGlvbihk
LT5mdWxsc2NyZWVuQWN0aW9uKTsKKwogICAgIGNvbm5lY3QoZC0+cHJldkFjdGlvbiwgU0lHTkFM
KHRyaWdnZXJlZCgpKSwKICAgICAgICAgICAgIHRoaXMsIFNJR05BTCh0b1ByZXZpb3VzSW1hZ2Uo
KSkpOwogCkBAIC0yMTksNiArMjI1LDkgQEAgSW1hZ2VQcmV2aWV3Vmlldzo6SW1hZ2VQcmV2aWV3
VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQsIE1vZGUgbW9kZSkKICAgICAgICAgICAgIGQtPmZh
Y2VHcm91cCwgU0xPVChyZWplY3RBbGwoKSkpOwogI2VuZGlmIC8qIEhBVkVfS0ZBQ0UgKi8KIAor
ICAgIGNvbm5lY3QoZC0+ZnVsbHNjcmVlbkFjdGlvbiwgU0lHTkFMKHRyaWdnZXJlZCgpKSwKKyAg
ICAgICAgICAgIHRoaXMsIFNJR05BTChzaWduYWxTbGlkZVNob3dDdXJyZW50KCkpKTsKKwogICAg
IC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQogCiAgICAgY29ubmVjdCh0aGlzLCBTSUdOQUwodG9OZXh0SW1hZ2UoKSksCmRpZmYg
LS1naXQgYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oIGIvYXBwL3ZpZXdzL2ltYWdlcHJl
dmlld3ZpZXcuaAppbmRleCBmMzU3Zjc0Li5lMmVkMTY2IDEwMDY0NAotLS0gYS9hcHAvdmlld3Mv
aW1hZ2VwcmV2aWV3dmlldy5oCisrKyBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmgKQEAg
LTc2LDYgKzc2LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFsRWRpdEl0ZW0oKTsKICAg
ICB2b2lkIHNpZ25hbFByZXZpZXdMb2FkZWQoYm9vbCBzdWNjZXNzKTsKICAgICB2b2lkIHNpZ25h
bEVzY2FwZVByZXZpZXcoKTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKTsKICAg
ICB2b2lkIHNpZ25hbFNsaWRlU2hvdygpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MkxpZ2h0VGFi
bGUoKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJRdWV1ZU1ncigpOwpkaWZmIC0tZ2l0IGEvYXBw
L3ZpZXdzL3N0YWNrZWR2aWV3LmNwcCBiL2FwcC92aWV3cy9zdGFja2Vkdmlldy5jcHAKaW5kZXgg
N2MyZjc2OC4uYmUzNzViYSAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmNwcAor
KysgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCkBAIC0xNzksNiArMTc5LDkgQEAgU3RhY2tl
ZFZpZXc6OlN0YWNrZWRWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCkKIAogICAgIGNvbm5lY3Qo
ZC0+aW1hZ2VQcmV2aWV3VmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSwKICAgICAgICAg
ICAgIHRoaXMsIFNJR05BTChzaWduYWxTbGlkZVNob3coKSkpOworICAgIAorICAgIGNvbm5lY3Qo
ZC0+aW1hZ2VQcmV2aWV3VmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKSksCisg
ICAgICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSk7CiAKICAg
ICBjb25uZWN0KGQtPmltYWdlUHJldmlld1ZpZXctPmxheW91dCgpLCBTSUdOQUwoem9vbUZhY3Rv
ckNoYW5nZWQoZG91YmxlKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3Rab29tRmFjdG9y
Q2hhbmdlZChkb3VibGUpKSk7CmRpZmYgLS1naXQgYS9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuaCBi
L2FwcC92aWV3cy9zdGFja2Vkdmlldy5oCmluZGV4IGUxYjc2NWYuLmQ0MThlNDAgMTAwNjQ0Ci0t
LSBhL2FwcC92aWV3cy9zdGFja2Vkdmlldy5oCisrKyBiL2FwcC92aWV3cy9zdGFja2Vkdmlldy5o
CkBAIC0xMzMsNiArMTMzLDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFsVmlld01vZGVD
aGFuZ2VkKCk7CiAgICAgdm9pZCBzaWduYWxFc2NhcGVQcmV2aWV3KCk7CiAgICAgdm9pZCBzaWdu
YWxTbGlkZVNob3coKTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hvd0N1cnJlbnQoKTsKICAgICB2
b2lkIHNpZ25hbFpvb21GYWN0b3JDaGFuZ2VkKGRvdWJsZSk7CiAgICAgdm9pZCBzaWduYWxJbnNl
cnQyTGlnaHRUYWJsZSgpOwogICAgIHZvaWQgc2lnbmFsSW5zZXJ0MlF1ZXVlTWdyKCk7CmRpZmYg
LS1naXQgYS91dGlsaXRpZXMvc2V0dXAvc2V0dXBhbGJ1bXZpZXcuY3BwIGIvdXRpbGl0aWVzL3Nl
dHVwL3NldHVwYWxidW12aWV3LmNwcAppbmRleCA4OGQ0OWY5Li4yMjgzYjAxIDEwMDY0NAotLS0g
YS91dGlsaXRpZXMvc2V0dXAvc2V0dXBhbGJ1bXZpZXcuY3BwCisrKyBiL3V0aWxpdGllcy9zZXR1
cC9zZXR1cGFsYnVtdmlldy5jcHAKQEAgLTczLDYgKzczLDcgQEAgcHVibGljOgogICAgICAgICBp
Y29uU2hvd0NvbW1lbnRzQm94KDApLAogICAgICAgICBpY29uU2hvd1RhZ3NCb3goMCksCiAgICAg
ICAgIGljb25TaG93T3ZlcmxheXNCb3goMCksCisgICAgICAgIGljb25TaG93RnVsbHNjcmVlbkJv
eCgwKSwKICAgICAgICAgaWNvblNob3dSYXRpbmdCb3goMCksCiAgICAgICAgIGljb25TaG93Rm9y
bWF0Qm94KDApLAogICAgICAgICBpY29uU2hvd0Nvb3JkaW5hdGVzQm94KDApLApAQCAtMTA1LDYg
KzEwNiw3IEBAIHB1YmxpYzoKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93Q29tbWVu
dHNCb3g7CiAgICAgUUNoZWNrQm94KiAgICAgICAgICBpY29uU2hvd1RhZ3NCb3g7CiAgICAgUUNo
ZWNrQm94KiAgICAgICAgICBpY29uU2hvd092ZXJsYXlzQm94OworICAgIFFDaGVja0JveCogICAg
ICAgICAgaWNvblNob3dGdWxsc2NyZWVuQm94OwogICAgIFFDaGVja0JveCogICAgICAgICAgaWNv
blNob3dSYXRpbmdCb3g7CiAgICAgUUNoZWNrQm94KiAgICAgICAgICBpY29uU2hvd0Zvcm1hdEJv
eDsKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93Q29vcmRpbmF0ZXNCb3g7CkBAIC0x
ODQsNiArMTg2LDEwIEBAIFNldHVwQWxidW1WaWV3OjpTZXR1cEFsYnVtVmlldyhRV2lkZ2V0KiBj
b25zdCBwYXJlbnQpCiAgICAgZC0+aWNvblNob3dPdmVybGF5c0JveC0+c2V0V2hhdHNUaGlzKGkx
OG4oIlNldCB0aGlzIG9wdGlvbiB0byBzaG93IG92ZXJsYXkgYnV0dG9ucyBvbiAiCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRoZSBpbWFnZSB0aHVtYm5h
aWwgZm9yIGltYWdlIHJvdGF0aW9uLiIpKTsKIAorICAgIGQtPmljb25TaG93RnVsbHNjcmVlbkJv
eCAgPSBuZXcgUUNoZWNrQm94KGkxOG4oIlNob3cgZnVsbHNjcmVlbiBvdmVybGF5IGJ1dHRvbiIp
LCBpY29uVmlld0dyb3VwKTsKKyAgICBkLT5pY29uU2hvd0Z1bGxzY3JlZW5Cb3gtPnNldFdoYXRz
VGhpcyhpMThuKCJTZXQgdGhpcyBvcHRpb24gdG8gc2hvdyBhbiBvdmVybGF5IGJ1dHRvbiBvbiB0
aGUgIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlt
YWdlIHRodW1ibmFpbCB0byBvcGVuIGl0IGluIGZ1bGxzY3JlZW4uIikpOworCiAgICAgZC0+aWNv
blNob3dDb29yZGluYXRlc0JveCA9IG5ldyBRQ2hlY2tCb3goaTE4bigiU2hvdyBHZW9sb2NhdGlv
biBJbmRpY2F0b3IiKSwgaWNvblZpZXdHcm91cCk7CiAgICAgZC0+aWNvblNob3dDb29yZGluYXRl
c0JveC0+c2V0V2hhdHNUaGlzKGkxOG4oIlNldCB0aGlzIG9wdGlvbiB0byBpbmRpY2F0ZSBpZiBp
bWFnZSBoYXMgZ2VvbG9jYXRpb24gaW5mb3JtYXRpb24uIikpOwogCkBAIC0yMTcsNyArMjIzLDgg
QEAgU2V0dXBBbGJ1bVZpZXc6OlNldHVwQWxidW1WaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCkK
ICAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNvblNob3dUYWdzQm94LCAgICAgICAgICAyLCAxLCAx
LCAxKTsKICAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNvblNob3dSYXRpbmdCb3gsICAgICAgICAz
LCAxLCAxLCAxKTsKICAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNvblNob3dPdmVybGF5c0JveCwg
ICAgICA0LCAxLCAxLCAxKTsKLSAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNvblNob3dDb29yZGlu
YXRlc0JveCwgICA1LCAxLCAxLCAxKTsKKyAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNvblNob3dG
dWxsc2NyZWVuQm94LCAgICA1LCAxLCAxLCAxKTsKKyAgICBncmlkLT5hZGRXaWRnZXQoZC0+aWNv
blNob3dDb29yZGluYXRlc0JveCwgICA2LCAxLCAxLCAxKTsKIAogICAgIGdyaWQtPmFkZFdpZGdl
dChsZWZ0Q2xpY2tMYWJlbCwgICAgICAgICAgICAgIDcsIDAsIDEsIDEpOwogICAgIGdyaWQtPmFk
ZFdpZGdldChkLT5sZWZ0Q2xpY2tBY3Rpb25Db21ib0JveCwgIDcsIDEsIDEsIDEpOwpAQCAtMzQw
LDYgKzM0Nyw3IEBAIHZvaWQgU2V0dXBBbGJ1bVZpZXc6OmFwcGx5U2V0dGluZ3MoKQogICAgIHNl
dHRpbmdzLT5zZXRJY29uU2hvd1RpdGxlKGQtPmljb25TaG93VGl0bGVCb3gtPmlzQ2hlY2tlZCgp
KTsKICAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dDb21tZW50cyhkLT5pY29uU2hvd0NvbW1lbnRz
Qm94LT5pc0NoZWNrZWQoKSk7CiAgICAgc2V0dGluZ3MtPnNldEljb25TaG93T3ZlcmxheXMoZC0+
aWNvblNob3dPdmVybGF5c0JveC0+aXNDaGVja2VkKCkpOworICAgIHNldHRpbmdzLT5zZXRJY29u
U2hvd0Z1bGxzY3JlZW4oZC0+aWNvblNob3dGdWxsc2NyZWVuQm94LT5pc0NoZWNrZWQoKSk7CiAg
ICAgc2V0dGluZ3MtPnNldEljb25TaG93Q29vcmRpbmF0ZXMoZC0+aWNvblNob3dDb29yZGluYXRl
c0JveC0+aXNDaGVja2VkKCkpOwogICAgIHNldHRpbmdzLT5zZXRJY29uU2hvd1JhdGluZyhkLT5p
Y29uU2hvd1JhdGluZ0JveC0+aXNDaGVja2VkKCkpOwogICAgIHNldHRpbmdzLT5zZXRJY29uU2hv
d0ltYWdlRm9ybWF0KGQtPmljb25TaG93Rm9ybWF0Qm94LT5pc0NoZWNrZWQoKSk7CkBAIC00MDIs
NiArNDEwLDcgQEAgdm9pZCBTZXR1cEFsYnVtVmlldzo6cmVhZFNldHRpbmdzKCkKICAgICBkLT5p
Y29uU2hvd1RpdGxlQm94LT5zZXRDaGVja2VkKHNldHRpbmdzLT5nZXRJY29uU2hvd1RpdGxlKCkp
OwogICAgIGQtPmljb25TaG93Q29tbWVudHNCb3gtPnNldENoZWNrZWQoc2V0dGluZ3MtPmdldElj
b25TaG93Q29tbWVudHMoKSk7CiAgICAgZC0+aWNvblNob3dPdmVybGF5c0JveC0+c2V0Q2hlY2tl
ZChzZXR0aW5ncy0+Z2V0SWNvblNob3dPdmVybGF5cygpKTsKKyAgICBkLT5pY29uU2hvd0Z1bGxz
Y3JlZW5Cb3gtPnNldENoZWNrZWQoc2V0dGluZ3MtPmdldEljb25TaG93RnVsbHNjcmVlbigpKTsK
ICAgICBkLT5pY29uU2hvd0Nvb3JkaW5hdGVzQm94LT5zZXRDaGVja2VkKHNldHRpbmdzLT5nZXRJ
Y29uU2hvd0Nvb3JkaW5hdGVzKCkpOwogICAgIGQtPmljb25TaG93UmF0aW5nQm94LT5zZXRDaGVj
a2VkKHNldHRpbmdzLT5nZXRJY29uU2hvd1JhdGluZygpKTsKICAgICBkLT5pY29uU2hvd0Zvcm1h
dEJveC0+c2V0Q2hlY2tlZChzZXR0aW5ncy0+Z2V0SWNvblNob3dJbWFnZUZvcm1hdCgpKTsKZGlm
ZiAtLWdpdCBhL3V0aWxpdGllcy9zbGlkZXNob3cvc2xpZGVzaG93c2V0dGluZ3MuaCBiL3V0aWxp
dGllcy9zbGlkZXNob3cvc2xpZGVzaG93c2V0dGluZ3MuaAppbmRleCA4YTRjNjhhLi40NTNlZWU2
IDEwMDY0NAotLS0gYS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmgKKysr
IGIvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5ncy5oCkBAIC0xNTksNiArMTU5
LDEwIEBAIHB1YmxpYzoKICAgICAvKiogRGVsYXkgaW4gc2Vjb25kcwogICAgICAqLwogICAgIGlu
dCAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk7CisgICAgCisgICAgLyoqIFdoZXRoZXIg
dG8gZW5hYmxlIHRoZSBhdXRvLW1vdmUgZmVhdHVyZS4KKyAgICAgKi8KKyAgICBib29sICAgICAg
ICAgICAgICAgICAgICAgICAgIGF1dG9QbGF5RW5hYmxlZDsKIAogICAgIC8qKiBTY3JlZW4gdG8g
dXNlIGluIGNhc2Ugb2YgbXVsdGktbW9uaXRvciBjb21wdXRlci4KICAgICAgKi8KQEAgLTE4MCw2
ICsxODQsMTAgQEAgcHVibGljOgogICAgICAqLwogICAgIFFNYXA8S1VybCwgU2xpZGVQaWN0dXJl
SW5mbz4gcGljdEluZm9NYXA7CiAKKyAgICAvKiogVVJMIG9mIHRoZSBmaXJzdCBpbWFnZSB0byBz
aG93IGlmIHJlcXVlc3RlZAorICAgICAqLworICAgIEtVcmwgICAgICAgICAgICAgICAgICAgICAg
ICAgaW1hZ2VVcmw7CisKIHByaXZhdGU6CiAKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAg
ICAgIGNvbmZpZ0dyb3VwTmFtZTsKZGlmZiAtLWdpdCBhL3V0aWxpdGllcy9zbGlkZXNob3cvc2xp
ZGV0b29sYmFyLmNwcCBiL3V0aWxpdGllcy9zbGlkZXNob3cvc2xpZGV0b29sYmFyLmNwcAppbmRl
eCA5OWRkMjNjLi5iN2QwYWUzIDEwMDY0NAotLS0gYS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRl
dG9vbGJhci5jcHAKKysrIGIvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXRvb2xiYXIuY3BwCkBA
IC04OCwxMiArODgsMTUgQEAgU2xpZGVUb29sQmFyOjpTbGlkZVRvb2xCYXIoY29uc3QgU2xpZGVT
aG93U2V0dGluZ3MmIHNldHRpbmdzLCBRV2lkZ2V0KiBjb25zdCBwYXIKICAgICBkLT5zdG9wQnRu
ID0gbmV3IFFUb29sQnV0dG9uKHRoaXMpOwogCiAgICAgZC0+cGxheUJ0bi0+c2V0Q2hlY2thYmxl
KHRydWUpOworICAgIGQtPnBsYXlCdG4tPnNldENoZWNrZWQoIXNldHRpbmdzLmF1dG9QbGF5RW5h
YmxlZCk7CisgICAgCiAgICAgZC0+cGxheUJ0bi0+c2V0Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMp
OwogICAgIGQtPnByZXZCdG4tPnNldEZvY3VzUG9saWN5KFF0OjpOb0ZvY3VzKTsKICAgICBkLT5u
ZXh0QnRuLT5zZXRGb2N1c1BvbGljeShRdDo6Tm9Gb2N1cyk7CiAgICAgZC0+c3RvcEJ0bi0+c2V0
Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMpOwogCi0gICAgZC0+cGxheUJ0bi0+c2V0SWNvbihkLT5s
b2FkZXItPmxvYWRJY29uKCJtZWRpYS1wbGF5YmFjay1wYXVzZSIsIEtJY29uTG9hZGVyOjpUb29s
YmFyLCBkLT5pY29uU2l6ZSkpOworICAgIFFTdHJpbmcgaWNvblN0cmluZyA9IHNldHRpbmdzLmF1
dG9QbGF5RW5hYmxlZCA/ICJtZWRpYS1wbGF5YmFjay1wYXVzZSIgOiAibWVkaWEtcGxheWJhY2st
c3RhcnQiOworICAgIGQtPnBsYXlCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbihpY29u
U3RyaW5nLCBLSWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKICAgICBkLT5wcmV2
QnRuLT5zZXRJY29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlhLXNraXAtYmFja3dhcmQiLCAg
S0ljb25Mb2FkZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7CiAgICAgZC0+bmV4dEJ0bi0+c2V0
SWNvbihkLT5sb2FkZXItPmxvYWRJY29uKCJtZWRpYS1za2lwLWZvcndhcmQiLCAgIEtJY29uTG9h
ZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwogICAgIGQtPnN0b3BCdG4tPnNldEljb24oZC0+
bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtcGxheWJhY2stc3RvcCIsICBLSWNvbkxvYWRlcjo6VG9v
bGJhciwgZC0+aWNvblNpemUpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94438</attachid>
            <date>2015-09-06 20:46:27 +0000</date>
            <delta_ts>2015-09-06 20:46:27 +0000</delta_ts>
            <desc>Full Screen Overlay patch 3</desc>
            <filename>fullscreen-overlay.patch</filename>
            <type>text/plain</type>
            <size>31336</size>
            <attacher name="Maik Qualmann">metzpinguin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NNYWtlTGlzdHMudHh0IGIvQ01ha2VMaXN0cy50eHQKaW5kZXggY2JjNjM0
MC4uZTEyY2I1ZCAxMDA2NDQKLS0tIGEvQ01ha2VMaXN0cy50eHQKKysrIGIvQ01ha2VMaXN0cy50
eHQKQEAgLTEzMjgsNiArMTMyOCw3IEBAIGlmKERJR0lLQU1fQ0FOX0JFX0NPTVBJTEVEKQogICAg
ICAgICAke0NNQUtFX0NVUlJFTlRfU09VUkNFX0RJUn0vYXBwL2l0ZW1zL292ZXJsYXlzL2dyb3Vw
aW5kaWNhdG9yb3ZlcmxheS5jcHAKICAgICAgICAgJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9
L2FwcC9pdGVtcy9vdmVybGF5cy9pbWFnZXJhdGluZ292ZXJsYXkuY3BwCiAgICAgICAgICR7Q01B
S0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vyb3RhdGlvbm92
ZXJsYXkuY3BwCisgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRlbXMv
b3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuY3BwCiAgICAgICAgICR7Q01BS0VfQ1VSUkVOVF9TT1VS
Q0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vjb29yZGluYXRlc292ZXJsYXkuY3BwCiAg
ICAgICAgICR7Q01BS0VfQ1VSUkVOVF9TT1VSQ0VfRElSfS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1h
Z2VzZWxlY3Rpb25vdmVybGF5LmNwcAogCmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvZGlnaWthbWlt
YWdldmlldy5jcHAgYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlldy5jcHAKaW5kZXggODdlODNj
Ni4uYmMxNDJhNCAxMDA2NDQKLS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcuY3BwCisr
KyBiL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmNwcApAQCAtNzEsNiArNzEsNyBAQAogI2lu
Y2x1ZGUgImltYWdlYWxidW1tb2RlbC5oIgogI2luY2x1ZGUgImltYWdlZHJhZ2Ryb3AuaCIKICNp
bmNsdWRlICJpbWFnZXJhdGluZ292ZXJsYXkuaCIKKyNpbmNsdWRlICJpbWFnZWZzb3ZlcmxheS5o
IgogI2luY2x1ZGUgImltYWdlY29vcmRpbmF0ZXNvdmVybGF5LmgiCiAjaW5jbHVkZSAidGFnc2xp
bmVlZGl0b3ZlcmxheS5oIgogI2luY2x1ZGUgImltYWdldmlld3V0aWxpdGllcy5oIgpAQCAtMTM2
LDYgKzEzNyw3IEBAIERpZ2lrYW1JbWFnZVZpZXc6OkRpZ2lrYW1JbWFnZVZpZXcoUVdpZGdldCog
Y29uc3QgcGFyZW50KQogICAgIC8vIHJvdGF0aW9uIG92ZXJsYXlzCiAgICAgZC0+cm90YXRlTGVm
dE92ZXJsYXkgID0gSW1hZ2VSb3RhdGVPdmVybGF5OjpsZWZ0KHRoaXMpOwogICAgIGQtPnJvdGF0
ZVJpZ2h0T3ZlcmxheSA9IEltYWdlUm90YXRlT3ZlcmxheTo6cmlnaHQodGhpcyk7CisgICAgZC0+
ZnVsbHNjcmVlbk92ZXJsYXkgID0gSW1hZ2VGc092ZXJsYXk6Omluc3RhbmNlKHRoaXMpOwogICAg
IGQtPnVwZGF0ZU92ZXJsYXlzKCk7CiAKICAgICAvLyByYXRpbmcgb3ZlcmxheQpAQCAtNzEzLDYg
KzcxNSwyMSBAQCB2b2lkIERpZ2lrYW1JbWFnZVZpZXc6OnNsb3RSb3RhdGVSaWdodChjb25zdCBR
TGlzdDxRTW9kZWxJbmRleD4mIGluZGV4ZXMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBLRXhpdjJJZmFjZTo6Um90YXRpb25NYXRyaXg6OlJvdGF0ZTkwKTsKIH0K
IAordm9pZCBEaWdpa2FtSW1hZ2VWaWV3OjpzbG90RnVsbHNjcmVlbihjb25zdCBRTGlzdDxRTW9k
ZWxJbmRleD4mIGluZGV4ZXMpCit7CisgICBRTGlzdDxJbWFnZUluZm8+IGluZm9zID0gaW1hZ2VG
aWx0ZXJNb2RlbCgpLT5pbWFnZUluZm9zKGluZGV4ZXMpOworCisgICBpZiAoaW5mb3MuaXNFbXB0
eSgpKQorICAgeworICAgICAgICByZXR1cm47CisgICB9CisKKyAgIC8vIEp1c3QgZnVsbHNjcmVl
biB0aGUgZmlyc3QuCisgICBjb25zdCBJbWFnZUluZm8mIGluZm8gPSBpbmZvcy5hdCgwKTsKKwor
ICAgZW1pdCBmdWxsc2NyZWVuUmVxdWVzdGVkKGluZm8pOworfQorCiB2b2lkIERpZ2lrYW1JbWFn
ZVZpZXc6OnNsb3RJbml0UHJvZ3Jlc3NJbmRpY2F0b3IoKQogewogI2lmZGVmIEhBVkVfS0ZBQ0UK
ZGlmZiAtLWdpdCBhL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmggYi9hcHAvaXRlbXMvZGln
aWthbWltYWdldmlldy5oCmluZGV4IDhmMTM0ODAuLmZjZDJmNzQgMTAwNjQ0Ci0tLSBhL2FwcC9p
dGVtcy9kaWdpa2FtaW1hZ2V2aWV3LmgKKysrIGIvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXcu
aApAQCAtODYsNiArODYsNyBAQCBwdWJsaWMgUV9TTE9UUzoKIFFfU0lHTkFMUzoKIAogICAgIHZv
aWQgcHJldmlld1JlcXVlc3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOworICAgIHZvaWQgZnVs
bHNjcmVlblJlcXVlc3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOwogICAgIHZvaWQgZ290b0Fs
YnVtQW5kSW1hZ2VSZXF1ZXN0ZWQoY29uc3QgSW1hZ2VJbmZvJiBpbmZvKTsKICAgICB2b2lkIGdv
dG9UYWdBbmRJbWFnZVJlcXVlc3RlZChpbnQgdGFnSWQpOwogICAgIHZvaWQgZ290b0RhdGVBbmRJ
bWFnZVJlcXVlc3RlZChjb25zdCBJbWFnZUluZm8mIGluZm8pOwpAQCAtMTEwLDYgKzExMSw3IEBA
IHByaXZhdGUgUV9TTE9UUzoKIAogICAgIHZvaWQgc2xvdFJvdGF0ZUxlZnQoY29uc3QgUUxpc3Q8
UU1vZGVsSW5kZXg+Jik7CiAgICAgdm9pZCBzbG90Um90YXRlUmlnaHQoY29uc3QgUUxpc3Q8UU1v
ZGVsSW5kZXg+Jik7CisgICAgdm9pZCBzbG90RnVsbHNjcmVlbihjb25zdCBRTGlzdDxRTW9kZWxJ
bmRleD4mKTsKICAgICB2b2lkIHNsb3RJbml0UHJvZ3Jlc3NJbmRpY2F0b3IoKTsKIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3X3AuY3BwIGIvYXBwL2l0
ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5jcHAKaW5kZXggY2JmZTc3Zi4uOTJiMGNhYiAxMDA2NDQK
LS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5jcHAKKysrIGIvYXBwL2l0ZW1zL2Rp
Z2lrYW1pbWFnZXZpZXdfcC5jcHAKQEAgLTM5LDExICszOSwxMyBAQCBuYW1lc3BhY2UgRGlnaWth
bQogCiBEaWdpa2FtSW1hZ2VWaWV3OjpQcml2YXRlOjpQcml2YXRlKERpZ2lrYW1JbWFnZVZpZXcq
IGNvbnN0IHFxKQogICAgIDogb3ZlcmxheXNBY3RpdmUoZmFsc2UpLAorICAgICAgZnVsbHNjcmVl
bkFjdGl2ZShmYWxzZSksCiAgICAgICBxX3B0cihxcSkKIHsKICAgICB1dGlsaXRpZXMgICAgICAg
ICAgPSAwOwogICAgIHJvdGF0ZUxlZnRPdmVybGF5ICA9IDA7CiAgICAgcm90YXRlUmlnaHRPdmVy
bGF5ID0gMDsKKyAgICBmdWxsc2NyZWVuT3ZlcmxheSAgPSAwOwogICAgIG5vcm1hbERlbGVnYXRl
ICAgICA9IDA7CiAgICAgZmFjZURlbGVnYXRlICAgICAgID0gMDsKICAgICBmYWNlTW9kZSAgICAg
ICAgICAgPSBmYWxzZTsKQEAgLTkxLDYgKzkzLDMxIEBAIHZvaWQgRGlnaWthbUltYWdlVmlldzo6
UHJpdmF0ZTo6dXBkYXRlT3ZlcmxheXMoKQogICAgICAgICAgICAgb3ZlcmxheXNBY3RpdmUgPSB0
cnVlOwogICAgICAgICB9CiAgICAgfQorCisgICAgaWYgKGZ1bGxzY3JlZW5BY3RpdmUpCisgICAg
eworICAgICAgICBpZiAoIXNldHRpbmdzLT5nZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSkKKyAgICAg
ICAgeworICAgICAgICAgICAgZGlzY29ubmVjdChmdWxsc2NyZWVuT3ZlcmxheSwgU0lHTkFMKHNp
Z25hbFJvdGF0ZShRTGlzdDxRTW9kZWxJbmRleD4pKSwKKyAgICAgICAgICAgICAgICAgICAgICAg
cSwgU0xPVChzbG90RnVsbHNjcmVlbihRTGlzdDxRTW9kZWxJbmRleD4pKSk7CisKKyAgICAgICAg
ICAgIHEtPnJlbW92ZU92ZXJsYXkoZnVsbHNjcmVlbk92ZXJsYXkpOworCisgICAgICAgICAgICBm
dWxsc2NyZWVuQWN0aXZlID0gZmFsc2U7CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZQorICAg
IHsKKyAgICAgICAgaWYgKHNldHRpbmdzLT5nZXRJY29uU2hvd0Z1bGxzY3JlZW4oKSkKKyAgICAg
ICAgeworICAgICAgICAgICAgZnVsbHNjcmVlbkFjdGl2ZSA9IHRydWU7CisKKyAgICAgICAgICAg
IHEtPmFkZE92ZXJsYXkoZnVsbHNjcmVlbk92ZXJsYXksIG5vcm1hbERlbGVnYXRlKTsKKworICAg
ICAgICAgICAgY29ubmVjdChmdWxsc2NyZWVuT3ZlcmxheSwgU0lHTkFMKHNpZ25hbEZ1bGxzY3Jl
ZW4oUUxpc3Q8UU1vZGVsSW5kZXg+KSksCisgICAgICAgICAgICAgICAgICAgIHEsIFNMT1Qoc2xv
dEZ1bGxzY3JlZW4oUUxpc3Q8UU1vZGVsSW5kZXg+KSkpOworICAgICAgICB9CisgICAgfQogfQog
CiB9IC8vIG5hbWVzcGFjZSBEaWdpa2FtCmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvZGlnaWthbWlt
YWdldmlld19wLmggYi9hcHAvaXRlbXMvZGlnaWthbWltYWdldmlld19wLmgKaW5kZXggNTBmNjli
OC4uNjZjYjZmYiAxMDA2NDQKLS0tIGEvYXBwL2l0ZW1zL2RpZ2lrYW1pbWFnZXZpZXdfcC5oCisr
KyBiL2FwcC9pdGVtcy9kaWdpa2FtaW1hZ2V2aWV3X3AuaApAQCAtMzYsNiArMzYsNyBAQAogI2lu
Y2x1ZGUgImRpZ2lrYW1pbWFnZXZpZXcuaCIKICNpbmNsdWRlICJkaWdpa2FtaW1hZ2VkZWxlZ2F0
ZS5oIgogI2luY2x1ZGUgImltYWdlcm90YXRpb25vdmVybGF5LmgiCisjaW5jbHVkZSAiaW1hZ2Vm
c292ZXJsYXkuaCIKICNpbmNsdWRlICJhcHBsaWNhdGlvbnNldHRpbmdzLmgiCiAKICNpZmRlZiBI
QVZFX0tGQUNFCkBAIC03Myw5ICs3NCwxMSBAQCBwdWJsaWM6CiAgICAgRGlnaWthbUltYWdlRmFj
ZURlbGVnYXRlKiBmYWNlRGVsZWdhdGU7CiAKICAgICBib29sICAgICAgICAgICAgICAgICAgICAg
IG92ZXJsYXlzQWN0aXZlOworICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgZnVsbHNjcmVl
bkFjdGl2ZTsKIAogICAgIEltYWdlUm90YXRlT3ZlcmxheSogICAgICAgcm90YXRlTGVmdE92ZXJs
YXk7CiAgICAgSW1hZ2VSb3RhdGVPdmVybGF5KiAgICAgICByb3RhdGVSaWdodE92ZXJsYXk7Cisg
ICAgSW1hZ2VGc092ZXJsYXkqICAgICAgICAgICBmdWxsc2NyZWVuT3ZlcmxheTsKIAogICAgIGJv
b2wgICAgICAgICAgICAgICAgICAgICAgZmFjZU1vZGU7CiAKZGlmZiAtLWdpdCBhL2FwcC9pdGVt
cy9vdmVybGF5cy9pbWFnZWZzb3ZlcmxheS5jcHAgYi9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vm
c292ZXJsYXkuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1NDc4Y2IK
LS0tIC9kZXYvbnVsbAorKysgYi9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuY3Bw
CkBAIC0wLDAgKzEsMTIyIEBACisvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAqCisgKiBUaGlzIGZpbGUgaXMgYSBwYXJ0IG9m
IGRpZ2lLYW0gcHJvamVjdAorICogaHR0cDovL3d3dy5kaWdpa2FtLm9yZworICoKKyAqIERhdGUg
ICAgICAgIDogMjAxNS0wOC0zMAorICogRGVzY3JpcHRpb24gOiBmdWxsc2NyZWVuIG92ZXJsYXkK
KyAqCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgYnkgTHVjYSBDYXJsb24gPGNhcmxvbiBkb3QgbHVj
YSBhdCBnbWFpbCBkb3QgY29tPgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl
OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdAorICogYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUg
dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsCisgKiBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg
YnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsKKyAqIGVpdGhlciB2ZXJzaW9uIDIsIG9y
IChhdCB5b3VyIG9wdGlvbikKKyAqIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJv
Z3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor
ICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy
cmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg
UFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl
IGRldGFpbHMuCisgKgorICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09ICovCisKKyNpbmNsdWRlICJpbWFnZWZzb3ZlcmxheS5tb2Mi
CisKKy8vIEtERSBpbmNsdWRlcworCisjaW5jbHVkZSA8a2ljb25sb2FkZXIuaD4KKyNpbmNsdWRl
IDxrbG9jYWxlLmg+CisKKy8vIExvY2FsIGluY2x1ZGVzCisKKyNpbmNsdWRlICJpbWFnZWNhdGVn
b3JpemVkdmlldy5oIgorI2luY2x1ZGUgImltYWdlaW5mby5oIgorI2luY2x1ZGUgImltYWdlbW9k
ZWwuaCIKKyNpbmNsdWRlICJpdGVtdmlld2hvdmVyYnV0dG9uLmgiCisKK25hbWVzcGFjZSBEaWdp
a2FtCit7CisKK0ltYWdlRnNPdmVybGF5QnV0dG9uOjpJbWFnZUZzT3ZlcmxheUJ1dHRvbihRQWJz
dHJhY3RJdGVtVmlldyogY29uc3QgcGFyZW50VmlldykKKyAgICA6IEl0ZW1WaWV3SG92ZXJCdXR0
b24ocGFyZW50VmlldykKK3sKK30KKworUVNpemUgSW1hZ2VGc092ZXJsYXlCdXR0b246OnNpemVI
aW50KCkgY29uc3QKK3sKKyAgICByZXR1cm4gUVNpemUoMzIsIDMyKTsKK30KKworUVBpeG1hcCBJ
bWFnZUZzT3ZlcmxheUJ1dHRvbjo6aWNvbigpCit7CisgICAgcmV0dXJuIEtJY29uTG9hZGVyOjpn
bG9iYWwoKS0+bG9hZEljb24oCisgICAgICAgICAgICAibWVkaWEtcGxheWJhY2stc3RhcnQiLCBL
SWNvbkxvYWRlcjo6Tm9Hcm91cCwgS0ljb25Mb2FkZXI6OlNpemVNZWRpdW0pOworfQorCit2b2lk
IEltYWdlRnNPdmVybGF5QnV0dG9uOjp1cGRhdGVUb29sVGlwKCkKK3sKKyAgICBzZXRUb29sVGlw
KGkxOG5jKCJAaW5mbzp0b29sdGlwIiwgIlNob3cgRnVsbHNjcmVlbiIpKTsKK30KKworLy8gLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0KKworSW1hZ2VGc092ZXJsYXk6OkltYWdlRnNPdmVybGF5KFFPYmplY3QqIGNvbnN0
IHBhcmVudCkKKyAgICA6IEhvdmVyQnV0dG9uRGVsZWdhdGVPdmVybGF5KHBhcmVudCkKK3sKK30K
Kwordm9pZCBJbWFnZUZzT3ZlcmxheTo6c2V0QWN0aXZlKGJvb2wgYWN0aXZlKQoreworICAgIEhv
dmVyQnV0dG9uRGVsZWdhdGVPdmVybGF5OjpzZXRBY3RpdmUoYWN0aXZlKTsKKworICAgIGlmIChh
Y3RpdmUpCisgICAgeworICAgICAgICBjb25uZWN0KGJ1dHRvbigpLCBTSUdOQUwoY2xpY2tlZChi
b29sKSksCisgICAgICAgICAgICAgICAgdGhpcywgU0xPVChzbG90Q2xpY2tlZCgpKSk7CisgICAg
fQorCisgICAgLy8gaWYgIWFjdGl2ZSwgYnV0dG9uKCkgaXMgZGVsZXRlZAorfQorCitJdGVtVmll
d0hvdmVyQnV0dG9uKiBJbWFnZUZzT3ZlcmxheTo6Y3JlYXRlQnV0dG9uKCkKK3sKKyAgICByZXR1
cm4gbmV3IEltYWdlRnNPdmVybGF5QnV0dG9uKHZpZXcoKSk7Cit9CisKK3ZvaWQgSW1hZ2VGc092
ZXJsYXk6OnVwZGF0ZUJ1dHRvbihjb25zdCBRTW9kZWxJbmRleCYgaW5kZXgpCit7CisgICAgY29u
c3QgUVJlY3QgcmVjdCA9IG1fdmlldy0+dmlzdWFsUmVjdChpbmRleCk7CisgICAgY29uc3QgaW50
IHNpemUgICA9IHFCb3VuZCgxNiwgcmVjdC53aWR0aCgpIC8gOCAtIDIsIDQ4KTsKKyAgICBjb25z
dCBpbnQgZ2FwICAgID0gNTsKKyAgICBjb25zdCBpbnQgeCAgICAgID0gcmVjdC5yaWdodCgpIC0g
MypnYXAgLSBzaXplKjQgKyAyOworICAgIGNvbnN0IGludCB5ICAgICAgPSByZWN0LnRvcCgpICsg
Z2FwOworICAgIGJ1dHRvbigpLT5yZXNpemUoc2l6ZSwgc2l6ZSk7CisgICAgYnV0dG9uKCktPm1v
dmUoUVBvaW50KHgsIHkpKTsKK30KKwordm9pZCBJbWFnZUZzT3ZlcmxheTo6c2xvdENsaWNrZWQo
KQoreworICAgIFFNb2RlbEluZGV4IGluZGV4ID0gYnV0dG9uKCktPmluZGV4KCk7CisKKyAgICBp
ZiAoaW5kZXguaXNWYWxpZCgpKQorICAgICAgICBlbWl0IHNpZ25hbEZ1bGxzY3JlZW4oYWZmZWN0
ZWRJbmRleGVzKGluZGV4KSk7Cit9CisKK2Jvb2wgSW1hZ2VGc092ZXJsYXk6OmNoZWNrSW5kZXgo
Y29uc3QgUU1vZGVsSW5kZXgmIGluZGV4KSBjb25zdAoreworICAgIEltYWdlSW5mbyBpbmZvID0g
SW1hZ2VNb2RlbDo6cmV0cmlldmVJbWFnZUluZm8oaW5kZXgpOworICAgIHJldHVybiAoaW5mby5j
YXRlZ29yeSgpID09IERhdGFiYXNlSXRlbTo6SW1hZ2UpOworfQorCit2b2lkIEltYWdlRnNPdmVy
bGF5Ojp3aWRnZXRFbnRlckV2ZW50KCkKK3sKKyAgICB3aWRnZXRFbnRlck5vdGlmeU11bHRpcGxl
KGJ1dHRvbigpLT5pbmRleCgpKTsKK30KKwordm9pZCBJbWFnZUZzT3ZlcmxheTo6d2lkZ2V0TGVh
dmVFdmVudCgpCit7CisgICAgd2lkZ2V0TGVhdmVOb3RpZnlNdWx0aXBsZSgpOworfQorCit9IC8v
IG5hbWVzcGFjZSBEaWdpa2FtCmRpZmYgLS1naXQgYS9hcHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vm
c292ZXJsYXkuaCBiL2FwcC9pdGVtcy9vdmVybGF5cy9pbWFnZWZzb3ZlcmxheS5oCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmMzM2YWEKLS0tIC9kZXYvbnVsbAorKysgYi9h
cHAvaXRlbXMvb3ZlcmxheXMvaW1hZ2Vmc292ZXJsYXkuaApAQCAtMCwwICsxLDg3IEBACisvKiA9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KKyAqCisgKiBUaGlzIGZpbGUgaXMgYSBwYXJ0IG9mIGRpZ2lLYW0gcHJvamVjdAorICogaHR0
cDovL3d3dy5kaWdpa2FtLm9yZworICoKKyAqIERhdGUgICAgICAgIDogMjAxNS0wOC0zMAorICog
RGVzY3JpcHRpb24gOiBmdWxsc2NyZWVuIG92ZXJsYXkKKyAqCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTUgYnkgTHVjYSBDYXJsb24gPGNhcmxvbiBkb3QgbHVjYSBhdCBnbWFpbCBkb3QgY29tPgorICoK
KyAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp
dAorICogYW5kL29yIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFs
CisgKiBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91
bmRhdGlvbjsKKyAqIGVpdGhlciB2ZXJzaW9uIDIsIG9yIChhdCB5b3VyIG9wdGlvbikKKyAqIGFu
eSBsYXRlciB2ZXJzaW9uLgorICoKKyAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0
aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJB
TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJ
TElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqIEdO
VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisgKgorICogPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICov
CisKKyNpZm5kZWYgSU1BR0VGU09WRVJMQVlfSAorI2RlZmluZSBJTUFHRUZTT1ZFUkxBWV9ICisK
Ky8vIFF0IGluY2x1ZGVzCisKKyNpbmNsdWRlIDxRQWJzdHJhY3RCdXR0b24+CisjaW5jbHVkZSA8
UUFic3RyYWN0SXRlbVZpZXc+CisKKy8vIExvY2FsIGluY2x1ZGVzCisKKyNpbmNsdWRlICJpdGVt
dmlld2hvdmVyYnV0dG9uLmgiCisjaW5jbHVkZSAiaW1hZ2VkZWxlZ2F0ZW92ZXJsYXkuaCIKKwor
bmFtZXNwYWNlIERpZ2lrYW0KK3sKKworY2xhc3MgSW1hZ2VGc092ZXJsYXlCdXR0b24gOiBwdWJs
aWMgSXRlbVZpZXdIb3ZlckJ1dHRvbgoreworcHVibGljOgorCisgICAgSW1hZ2VGc092ZXJsYXlC
dXR0b24oUUFic3RyYWN0SXRlbVZpZXcqIGNvbnN0IHBhcmVudFZpZXcpOworICAgIHZpcnR1YWwg
UVNpemUgc2l6ZUhpbnQoKSBjb25zdDsKKworcHJvdGVjdGVkOgorCisgICAgdmlydHVhbCBRUGl4
bWFwIGljb24oKTsKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlVG9vbFRpcCgpOworfTsKKworLy8g
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KKworY2xhc3MgSW1hZ2VGc092ZXJsYXkgOiBwdWJsaWMgSG92ZXJCdXR0b25E
ZWxlZ2F0ZU92ZXJsYXkKK3sKKyAgICBRX09CSkVDVAorCitwdWJsaWM6CisKKyAgICBJbWFnZUZz
T3ZlcmxheShRT2JqZWN0KiBjb25zdCBwYXJlbnQpOworICAgIHZpcnR1YWwgdm9pZCBzZXRBY3Rp
dmUoYm9vbCBhY3RpdmUpOworCisgICAgc3RhdGljIEltYWdlRnNPdmVybGF5KiBpbnN0YW5jZShR
T2JqZWN0KiBwYXJlbnQpIHsKKyAgICAgICByZXR1cm4gbmV3IEltYWdlRnNPdmVybGF5KHBhcmVu
dCk7CisgICAgfQorCitRX1NJR05BTFM6CisKKyAgICB2b2lkIHNpZ25hbEZ1bGxzY3JlZW4oY29u
c3QgUUxpc3Q8UU1vZGVsSW5kZXg+JiBpbmRleGVzKTsKKworcHJvdGVjdGVkOgorCisgICAgdmly
dHVhbCBJdGVtVmlld0hvdmVyQnV0dG9uKiBjcmVhdGVCdXR0b24oKTsKKyAgICB2aXJ0dWFsIHZv
aWQgdXBkYXRlQnV0dG9uKGNvbnN0IFFNb2RlbEluZGV4JiBpbmRleCk7CisgICAgdmlydHVhbCBi
b29sIGNoZWNrSW5kZXgoY29uc3QgUU1vZGVsSW5kZXgmIGluZGV4KSBjb25zdDsKKyAgICB2aXJ0
dWFsIHZvaWQgd2lkZ2V0RW50ZXJFdmVudCgpOworICAgIHZpcnR1YWwgdm9pZCB3aWRnZXRMZWF2
ZUV2ZW50KCk7CisKK3ByaXZhdGUgUV9TTE9UUzoKKworICAgIHZvaWQgc2xvdENsaWNrZWQoKTsK
K307CisKK30gLy8gbmFtZXNwYWNlIERpZ2lrYW0KKworI2VuZGlmIC8qIElNQUdFRlNPVkVSTEFZ
X0ggKi8KZGlmZiAtLWdpdCBhL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzLmNwcCBi
L2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzLmNwcAppbmRleCA3MGU0N2FjLi5iYzIx
NGU5IDEwMDY0NAotLS0gYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5jcHAKKysr
IGIvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3MuY3BwCkBAIC0xNTUsNiArMTU1LDcg
QEAgdm9pZCBBcHBsaWNhdGlvblNldHRpbmdzOjpyZWFkU2V0dGluZ3MoKQogICAgIGQtPmljb25T
aG93Q29tbWVudHMgICAgICAgICAgICAgICAgID0gZ3JvdXAucmVhZEVudHJ5KGQtPmNvbmZpZ0lj
b25TaG93Q29tbWVudHNFbnRyeSwgICAgICAgICAgICAgdHJ1ZSk7CiAgICAgZC0+aWNvblNob3dU
YWdzICAgICAgICAgICAgICAgICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNo
b3dUYWdzRW50cnksICAgICAgICAgICAgICAgICB0cnVlKTsKICAgICBkLT5pY29uU2hvd092ZXJs
YXlzICAgICAgICAgICAgICAgICA9IGdyb3VwLnJlYWRFbnRyeShkLT5jb25maWdJY29uU2hvd092
ZXJsYXlzRW50cnksICAgICAgICAgICAgIHRydWUpOworICAgIGQtPmljb25TaG93RnVsbHNjcmVl
biAgICAgICAgICAgICAgID0gZ3JvdXAucmVhZEVudHJ5KGQtPmNvbmZpZ0ljb25TaG93RnVsbHNj
cmVlbkVudHJ5LCAgICAgICAgICAgdHJ1ZSk7CiAgICAgZC0+aWNvblNob3dSYXRpbmcgICAgICAg
ICAgICAgICAgICAgPSBncm91cC5yZWFkRW50cnkoZC0+Y29uZmlnSWNvblNob3dSYXRpbmdFbnRy
eSwgICAgICAgICAgICAgICB0cnVlKTsKICAgICBkLT5pY29uU2hvd0ltYWdlRm9ybWF0ICAgICAg
ICAgICAgICA9IGdyb3VwLnJlYWRFbnRyeShkLT5jb25maWdJY29uU2hvd0ltYWdlRm9ybWF0RW50
cnksICAgICAgICAgIGZhbHNlKTsKICAgICBkLT5pY29uU2hvd0Nvb3JkaW5hdGVzICAgICAgICAg
ICAgICA9IGdyb3VwLnJlYWRFbnRyeShkLT5jb25maWdJY29uU2hvd0Nvb3JkaW5hdGVzRW50cnks
ICAgICAgICAgIGZhbHNlKTsKQEAgLTI5OCw2ICsyOTksNyBAQCB2b2lkIEFwcGxpY2F0aW9uU2V0
dGluZ3M6OnNhdmVTZXR0aW5ncygpCiAgICAgZ3JvdXAud3JpdGVFbnRyeShkLT5jb25maWdJY29u
U2hvd0NvbW1lbnRzRW50cnksICAgICAgICAgICAgICAgICAgIGQtPmljb25TaG93Q29tbWVudHMp
OwogICAgIGdyb3VwLndyaXRlRW50cnkoZC0+Y29uZmlnSWNvblNob3dUYWdzRW50cnksICAgICAg
ICAgICAgICAgICAgICAgICBkLT5pY29uU2hvd1RhZ3MpOwogICAgIGdyb3VwLndyaXRlRW50cnko
ZC0+Y29uZmlnSWNvblNob3dPdmVybGF5c0VudHJ5LCAgICAgICAgICAgICAgICAgICBkLT5pY29u
U2hvd092ZXJsYXlzKTsKKyAgICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93RnVs
bHNjcmVlbkVudHJ5LCAgICAgICAgICAgICAgICAgZC0+aWNvblNob3dGdWxsc2NyZWVuKTsKICAg
ICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93UmF0aW5nRW50cnksICAgICAgICAg
ICAgICAgICAgICAgZC0+aWNvblNob3dSYXRpbmcpOwogICAgIGdyb3VwLndyaXRlRW50cnkoZC0+
Y29uZmlnSWNvblNob3dJbWFnZUZvcm1hdEVudHJ5LCAgICAgICAgICAgICAgICBkLT5pY29uU2hv
d0ltYWdlRm9ybWF0KTsKICAgICBncm91cC53cml0ZUVudHJ5KGQtPmNvbmZpZ0ljb25TaG93Q29v
cmRpbmF0ZXNFbnRyeSwgICAgICAgICAgICAgICAgZC0+aWNvblNob3dDb29yZGluYXRlcyk7CmRp
ZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5oIGIvYXBwL3NldHRp
bmdzL2FwcGxpY2F0aW9uc2V0dGluZ3MuaAppbmRleCA0OTBhMjQ1Li4yM2M0OTYyIDEwMDY0NAot
LS0gYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5ncy5oCisrKyBiL2FwcC9zZXR0aW5n
cy9hcHBsaWNhdGlvbnNldHRpbmdzLmgKQEAgLTIzNyw2ICsyMzcsOSBAQCBwdWJsaWM6CiAgICAg
ICovCiAgICAgdm9pZCBzZXRJY29uU2hvd092ZXJsYXlzKGJvb2wgdmFsKTsKIAorICAgIHZvaWQg
c2V0SWNvblNob3dGdWxsc2NyZWVuKGJvb2wgdmFsKTsKKyAgICBib29sIGdldEljb25TaG93RnVs
bHNjcmVlbigpIGNvbnN0OworCiAgICAgLyoqCiAgICAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRo
ZSBvdmVybGF5IGJ1dHRvbnMgc2hvdWxkIGJlIGRpc3BsYXllZCBvbiB0aGUgaWNvbnMuCiAgICAg
ICovCmRpZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19pY29udmll
dy5jcHAgYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19pY29udmlldy5jcHAKaW5k
ZXggYTNmYmU0Yi4uNGI4YjQ3ZiAxMDA2NDQKLS0tIGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9u
c2V0dGluZ3NfaWNvbnZpZXcuY3BwCisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRp
bmdzX2ljb252aWV3LmNwcApAQCAtMjI4LDYgKzIyOCwxNiBAQCB2b2lkIEFwcGxpY2F0aW9uU2V0
dGluZ3M6OnNldEljb25TaG93T3ZlcmxheXMoYm9vbCB2YWwpCiAgICAgZC0+aWNvblNob3dPdmVy
bGF5cyA9IHZhbDsKIH0KIAordm9pZCBBcHBsaWNhdGlvblNldHRpbmdzOjpzZXRJY29uU2hvd0Z1
bGxzY3JlZW4oYm9vbCB2YWwpCit7CisgICBkLT5pY29uU2hvd0Z1bGxzY3JlZW4gPSB2YWw7Cit9
CisKK2Jvb2wgQXBwbGljYXRpb25TZXR0aW5nczo6Z2V0SWNvblNob3dGdWxsc2NyZWVuKCkgY29u
c3QKK3sKKyAgIHJldHVybiBkLT5pY29uU2hvd0Z1bGxzY3JlZW47Cit9CisKIGJvb2wgQXBwbGlj
YXRpb25TZXR0aW5nczo6Z2V0SWNvblNob3dPdmVybGF5cygpIGNvbnN0CiB7CiAgICAgcmV0dXJu
IGQtPmljb25TaG93T3ZlcmxheXM7CmRpZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRp
b25zZXR0aW5nc19wLmNwcCBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuY3Bw
CmluZGV4IDk2MDQwMjguLjkyZDJlZDQgMTAwNjQ0Ci0tLSBhL2FwcC9zZXR0aW5ncy9hcHBsaWNh
dGlvbnNldHRpbmdzX3AuY3BwCisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdz
X3AuY3BwCkBAIC04MSw2ICs4MSw3IEBAIGNvbnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5n
czo6UHJpdmF0ZTo6Y29uZmlnSWNvblNob3dJbWFnZUZvcm1hdEVudHJ5KCJJY29uCiBjb25zdCBR
U3RyaW5nIEFwcGxpY2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6OmNvbmZpZ0ljb25TaG93Q29vcmRp
bmF0ZXNFbnRyeSgiSWNvbiBTaG93IENvb3JkaW5hdGVzIik7CiBjb25zdCBRU3RyaW5nIEFwcGxp
Y2F0aW9uU2V0dGluZ3M6OlByaXZhdGU6OmNvbmZpZ0ljb25TaG93QXNwZWN0UmF0aW9FbnRyeSgi
SWNvbiBTaG93IEFzcGVjdCBSYXRpbyIpOwogY29uc3QgUVN0cmluZyBBcHBsaWNhdGlvblNldHRp
bmdzOjpQcml2YXRlOjpjb25maWdJY29uU2hvd092ZXJsYXlzRW50cnkoIkljb24gU2hvdyBPdmVy
bGF5cyIpOworY29uc3QgUVN0cmluZyBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpjb25m
aWdJY29uU2hvd0Z1bGxzY3JlZW5FbnRyeSgiSWNvbiBTaG93IEZ1bGxzY3JlZW4iKTsKIGNvbnN0
IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmlnSWNvblZpZXdGb250
RW50cnkoIkljb25WaWV3IEZvbnQiKTsKIGNvbnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5n
czo6UHJpdmF0ZTo6Y29uZmlnVG9vbFRpcHNGb250RW50cnkoIlRvb2xUaXBzIEZvbnQiKTsKIGNv
bnN0IFFTdHJpbmcgQXBwbGljYXRpb25TZXR0aW5nczo6UHJpdmF0ZTo6Y29uZmlnU2hvd1Rvb2xU
aXBzRW50cnkoIlNob3cgVG9vbFRpcHMiKTsKQEAgLTE0OCw2ICsxNDksNyBAQCBBcHBsaWNhdGlv
blNldHRpbmdzOjpQcml2YXRlOjpQcml2YXRlKEFwcGxpY2F0aW9uU2V0dGluZ3MqIGNvbnN0IHEp
CiAgICAgICBpY29uU2hvd1Jlc29sdXRpb24oZmFsc2UpLAogICAgICAgaWNvblNob3dUYWdzKGZh
bHNlKSwKICAgICAgIGljb25TaG93T3ZlcmxheXMoZmFsc2UpLAorICAgICAgaWNvblNob3dGdWxs
c2NyZWVuKGZhbHNlKSwKICAgICAgIGljb25TaG93UmF0aW5nKGZhbHNlKSwKICAgICAgIGljb25T
aG93SW1hZ2VGb3JtYXQoZmFsc2UpLAogICAgICAgaWNvblNob3dDb29yZGluYXRlcyhmYWxzZSks
CkBAIC0yNTcsNiArMjU5LDcgQEAgdm9pZCBBcHBsaWNhdGlvblNldHRpbmdzOjpQcml2YXRlOjpp
bml0KCkKICAgICBpY29uU2hvd0FzcGVjdFJhdGlvICAgICAgICAgICAgICAgICA9IGZhbHNlOwog
ICAgIGljb25TaG93VGFncyAgICAgICAgICAgICAgICAgICAgICAgID0gdHJ1ZTsKICAgICBpY29u
U2hvd092ZXJsYXlzICAgICAgICAgICAgICAgICAgICA9IHRydWU7CisgICAgaWNvblNob3dGdWxs
c2NyZWVuICAgICAgICAgICAgICAgICAgPSB0cnVlOwogICAgIGljb25TaG93UmF0aW5nICAgICAg
ICAgICAgICAgICAgICAgID0gdHJ1ZTsKICAgICBpY29uU2hvd0ltYWdlRm9ybWF0ICAgICAgICAg
ICAgICAgICA9IGZhbHNlOwogICAgIGljb25TaG93Q29vcmRpbmF0ZXMgICAgICAgICAgICAgICAg
ID0gZmFsc2U7CmRpZmYgLS1naXQgYS9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19w
LmggYi9hcHAvc2V0dGluZ3MvYXBwbGljYXRpb25zZXR0aW5nc19wLmgKaW5kZXggOTQzNDI5YS4u
ZDgxNjYzMCAxMDA2NDQKLS0tIGEvYXBwL3NldHRpbmdzL2FwcGxpY2F0aW9uc2V0dGluZ3NfcC5o
CisrKyBiL2FwcC9zZXR0aW5ncy9hcHBsaWNhdGlvbnNldHRpbmdzX3AuaApAQCAtNzMsNiArNzMs
NyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGNvbnN0IFFTdHJpbmcgICAgICAgICAgICAgICAgICAg
ICAgY29uZmlnSWNvblNob3dDb21tZW50c0VudHJ5OwogICAgIHN0YXRpYyBjb25zdCBRU3RyaW5n
ICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93VGFnc0VudHJ5OwogICAgIHN0YXRp
YyBjb25zdCBRU3RyaW5nICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93T3Zlcmxh
eXNFbnRyeTsKKyAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAgICBj
b25maWdJY29uU2hvd0Z1bGxzY3JlZW5FbnRyeTsKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAg
ICAgICAgICAgICAgICAgICAgICBjb25maWdJY29uU2hvd1JhdGluZ0VudHJ5OwogICAgIHN0YXRp
YyBjb25zdCBRU3RyaW5nICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZ0ljb25TaG93SW1hZ2VG
b3JtYXRFbnRyeTsKICAgICBzdGF0aWMgY29uc3QgUVN0cmluZyAgICAgICAgICAgICAgICAgICAg
ICBjb25maWdJY29uU2hvd0Nvb3JkaW5hdGVzRW50cnk7CkBAIC0xNDksNiArMTUwLDcgQEAgcHVi
bGljOgogICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb25T
aG93UmVzb2x1dGlvbjsKICAgICBib29sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpY29uU2hvd1RhZ3M7CiAgICAgYm9vbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaWNvblNob3dPdmVybGF5czsKKyAgICBib29sICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpY29uU2hvd0Z1bGxzY3JlZW47CiAgICAgYm9vbCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblNob3dSYXRpbmc7CiAgICAgYm9vbCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvblNob3dJbWFnZUZvcm1hdDsKICAg
ICBib29sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uU2hvd0Nvb3Jk
aW5hdGVzOwpkaWZmIC0tZ2l0IGEvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuY3BwIGIvYXBw
L3V0aWxzL3NsaWRlc2hvd2J1aWxkZXIuY3BwCmluZGV4IDZkMTlkN2UuLmYzMWZlYTUgMTAwNjQ0
Ci0tLSBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmNwcAorKysgYi9hcHAvdXRpbHMvc2xp
ZGVzaG93YnVpbGRlci5jcHAKQEAgLTQ5LDEzICs0OSwxNiBAQCBwdWJsaWM6CiAKICAgICBQcml2
YXRlKCkgOgogICAgICAgICBjYW5jZWwoZmFsc2UpLAotICAgICAgICBhbGJ1bSgwKQorICAgICAg
ICBhbGJ1bSgwKSwKKyAgICAgICAgYXV0b1BsYXlFbmFibGVkKHRydWUpCiAgICAgewogICAgIH0K
IAogICAgIGJvb2wgICAgICAgICAgY2FuY2VsOwogICAgIEltYWdlSW5mb0xpc3QgaW5mb0xpc3Q7
CiAgICAgQWxidW0qICAgICAgICBhbGJ1bTsKKyAgICBib29sICAgICAgICAgIGF1dG9QbGF5RW5h
YmxlZDsKKyAgICBLVXJsICAgICAgICAgIHN0YXJ0RnJvbTsgLy8gT3ZlcnJpZGVzIHRoZSBzdGFy
dEZyb21DdXJyZW50IGZsYWcgcmVhZCBmcm9tIHNldHRpbmdzLgogfTsKIAogU2xpZGVTaG93QnVp
bGRlcjo6U2xpZGVTaG93QnVpbGRlcihjb25zdCBJbWFnZUluZm9MaXN0JiBpbmZvTGlzdCkKQEAg
LTY1LDggKzY4LDYgQEAgU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihjb25zdCBJ
bWFnZUluZm9MaXN0JiBpbmZvTGlzdCkKICAgICBkLT5pbmZvTGlzdCA9IGluZm9MaXN0OwogCiAg
ICAgUHJvZ3Jlc3NNYW5hZ2VyOjphZGRQcm9ncmVzc0l0ZW0odGhpcyk7Ci0KLSAgICBRVGltZXI6
OnNpbmdsZVNob3QoNTAwLCB0aGlzLCBTTE9UKHNsb3RSdW4oKSkpOwogfQogCiBTbGlkZVNob3dC
dWlsZGVyOjpTbGlkZVNob3dCdWlsZGVyKEFsYnVtKiBjb25zdCBhbGJ1bSkKQEAgLTc2LDggKzc3
LDYgQEAgU2xpZGVTaG93QnVpbGRlcjo6U2xpZGVTaG93QnVpbGRlcihBbGJ1bSogY29uc3QgYWxi
dW0pCiAgICAgZC0+YWxidW0gPSBhbGJ1bTsKIAogICAgIFByb2dyZXNzTWFuYWdlcjo6YWRkUHJv
Z3Jlc3NJdGVtKHRoaXMpOwotCi0gICAgUVRpbWVyOjpzaW5nbGVTaG90KDUwMCwgdGhpcywgU0xP
VChzbG90UnVuKCkpKTsKIH0KIAogU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIo
KQpAQCAtODUsNiArODQsMjEgQEAgU2xpZGVTaG93QnVpbGRlcjo6flNsaWRlU2hvd0J1aWxkZXIo
KQogICAgIGRlbGV0ZSBkOwogfQogCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldE92ZXJyaWRl
U3RhcnRGcm9tKGNvbnN0IEltYWdlSW5mbyYgaW5mbykKK3sKKyAgIGQtPnN0YXJ0RnJvbSA9IGlu
Zm8uZmlsZVVybCgpOworfQorCit2b2lkIFNsaWRlU2hvd0J1aWxkZXI6OnNldEF1dG9QbGF5RW5h
YmxlZChib29sIGVuYWJsZSkKK3sKKyAgICBkLT5hdXRvUGxheUVuYWJsZWQgPSBlbmFibGU7Cit9
CisKK3ZvaWQgU2xpZGVTaG93QnVpbGRlcjo6cnVuKCkKK3sKKyAgICBRVGltZXI6OnNpbmdsZVNo
b3QoNTAwLCB0aGlzLCBTTE9UKHNsb3RSdW4oKSkpOworfQorCiB2b2lkIFNsaWRlU2hvd0J1aWxk
ZXI6OnNsb3RSdW4oKQogewogICAgIGNvbm5lY3QodGhpcywgU0lHTkFMKHByb2dyZXNzSXRlbUNh
bmNlbGVkKFByb2dyZXNzSXRlbSopKSwKQEAgLTEyNSw4ICsxMzksMTQgQEAgdm9pZCBTbGlkZVNo
b3dCdWlsZGVyOjpzbG90UGFyc2VJbWFnZUluZm9MaXN0KGNvbnN0IEltYWdlSW5mb0xpc3QmIGxp
c3QpCiAgICAgaW50ICAgICAgICAgICAgICAgaSA9IDA7CiAgICAgU2xpZGVTaG93U2V0dGluZ3Mg
c2V0dGluZ3M7CiAgICAgc2V0dGluZ3MucmVhZEZyb21Db25maWcoKTsKKyAgICBzZXR0aW5ncy5h
dXRvUGxheUVuYWJsZWQgPSBkLT5hdXRvUGxheUVuYWJsZWQ7CiAgICAgc2V0dGluZ3MucHJldmll
d1NldHRpbmdzID0gQXBwbGljYXRpb25TZXR0aW5nczo6aW5zdGFuY2UoKS0+Z2V0UHJldmlld1Nl
dHRpbmdzKCk7CiAKKyAgICBpZiAoZC0+c3RhcnRGcm9tLmlzVmFsaWQoKSkKKyAgICB7CisgICAg
ICAgIHNldHRpbmdzLmltYWdlVXJsID0gZC0+c3RhcnRGcm9tOworICAgIH0KKwogICAgIGZvciAo
SW1hZ2VJbmZvTGlzdDo6Y29uc3RfaXRlcmF0b3IgaXQgPSBsaXN0LmNvbnN0QmVnaW4oKTsKICAg
ICAgICAgICFkLT5jYW5jZWwgJiYgKGl0ICE9IGxpc3QuY29uc3RFbmQoKSkgOyArK2l0KQogICAg
IHsKZGlmZiAtLWdpdCBhL2FwcC91dGlscy9zbGlkZXNob3didWlsZGVyLmggYi9hcHAvdXRpbHMv
c2xpZGVzaG93YnVpbGRlci5oCmluZGV4IDRjYzM0NjguLjA5ODJjNzQgMTAwNjQ0Ci0tLSBhL2Fw
cC91dGlscy9zbGlkZXNob3didWlsZGVyLmgKKysrIGIvYXBwL3V0aWxzL3NsaWRlc2hvd2J1aWxk
ZXIuaApAQCAtNTAsNiArNTAsMTggQEAgcHVibGljOgogICAgIGV4cGxpY2l0IFNsaWRlU2hvd0J1
aWxkZXIoQWxidW0qIGNvbnN0IGFsYnVtKTsKICAgICB+U2xpZGVTaG93QnVpbGRlcigpOwogCisg
ICAgLyoqCisgICAgICAqIFRoZSBidWlsZGVyIGNyZWF0ZXMgdGhlIHNsaWRlc2hvdyBieSByZWFk
aW5nIHRoZSBpbnRlcm5hbCBzZXR1cC4gVGhlc2UgZnVuY3Rpb25zIHBlcm1pdAorICAgICAgKiB0
byBvdmVycmlkZSB0aGUgc2V0dXAuCisgICAgICAqCisgICAgICAqIEBicmllZiBzZXRPdmVycmlk
ZVN0YXJ0RnJvbUN1cnJlbnQKKyAgICAgICogQHBhcmFtIHN0YXJ0RnJvbUN1cnJlbnQKKyAgICAg
ICovCisgICAgdm9pZCBzZXRPdmVycmlkZVN0YXJ0RnJvbShjb25zdCBJbWFnZUluZm8mIGluZm8p
OworICAgIHZvaWQgc2V0QXV0b1BsYXlFbmFibGVkKGJvb2wgZW5hYmxlKTsKKworICAgIHZvaWQg
cnVuKCk7CisKIFFfU0lHTkFMUzoKIAogICAgIHZvaWQgc2lnbmFsQ29tcGxldGUoY29uc3QgU2xp
ZGVTaG93U2V0dGluZ3MmKTsKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAg
Yi9hcHAvdmlld3MvZGlnaWthbXZpZXcuY3BwCmluZGV4IDRmZTI5ZTYuLmE5MjA1NzggMTAwNjQ0
Ci0tLSBhL2FwcC92aWV3cy9kaWdpa2Ftdmlldy5jcHAKKysrIGIvYXBwL3ZpZXdzL2RpZ2lrYW12
aWV3LmNwcApAQCAtNDc5LDYgKzQ3OSw5IEBAIHZvaWQgRGlnaWthbVZpZXc6OnNldHVwQ29ubmVj
dGlvbnMoKQogICAgIGNvbm5lY3QoZC0+aWNvblZpZXcsIFNJR05BTChwcmV2aWV3UmVxdWVzdGVk
KEltYWdlSW5mbykpLAogICAgICAgICAgICAgdGhpcywgU0xPVChzbG90VG9nZ2xlUHJldmlld01v
ZGUoSW1hZ2VJbmZvKSkpOwogCisgICAgY29ubmVjdChkLT5pY29uVmlldywgU0lHTkFMKGZ1bGxz
Y3JlZW5SZXF1ZXN0ZWQoSW1hZ2VJbmZvKSksCisgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3RT
bGlkZVNob3dNYW51YWxGcm9tKEltYWdlSW5mbykpKTsKKwogICAgIGNvbm5lY3QoZC0+aWNvblZp
ZXcsIFNJR05BTChnb3RvQWxidW1BbmRJbWFnZVJlcXVlc3RlZChJbWFnZUluZm8pKSwKICAgICAg
ICAgICAgIHRoaXMsIFNMT1Qoc2xvdEdvdG9BbGJ1bUFuZEl0ZW0oSW1hZ2VJbmZvKSkpOwogCkBA
IC01OTcsNiArNjAwLDkgQEAgdm9pZCBEaWdpa2FtVmlldzo6c2V0dXBDb25uZWN0aW9ucygpCiAg
ICAgY29ubmVjdChkLT5zdGFja2VkdmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvdygpKSwKICAg
ICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0FsbCgpKSk7CiAKKyAgICBjb25uZWN0
KGQtPnN0YWNrZWR2aWV3LCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgpKSwKKyAgICAg
ICAgICAgIHRoaXMsIFNMT1Qoc2xvdFNsaWRlU2hvd01hbnVhbEZyb21DdXJyZW50KCkpKTsKKwog
ICAgIGNvbm5lY3QoZC0+c3RhY2tlZHZpZXcsIFNJR05BTChzaWduYWxab29tRmFjdG9yQ2hhbmdl
ZChkb3VibGUpKSwKICAgICAgICAgICAgIHRoaXMsIFNMT1Qoc2xvdFpvb21GYWN0b3JDaGFuZ2Vk
KGRvdWJsZSkpKTsKIApAQCAtMjA4MiwxNSArMjA4OCwzNiBAQCB2b2lkIERpZ2lrYW1WaWV3Ojpz
bG90U2xpZGVTaG93UmVjdXJzaXZlKCkKIAogICAgICAgICBjb25uZWN0KGJ1aWxkZXIsIFNJR05B
TChzaWduYWxDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpLAogICAgICAgICAgICAgICAgIHRo
aXMsIFNMT1Qoc2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykp
KTsKKworICAgICAgICBidWlsZGVyLT5ydW4oKTsKICAgICB9CiB9CiAKK3ZvaWQgRGlnaWthbVZp
ZXc6OnNsb3RTbGlkZVNob3dNYW51YWxGcm9tQ3VycmVudCgpCit7CisgICAgc2xvdFNsaWRlU2hv
d01hbnVhbEZyb20oY3VycmVudEluZm8oKSk7Cit9CisKK3ZvaWQgRGlnaWthbVZpZXc6OnNsb3RT
bGlkZVNob3dNYW51YWxGcm9tKGNvbnN0IEltYWdlSW5mbyYgaW5mbykKK3sKKyAgIFNsaWRlU2hv
d0J1aWxkZXIqIGNvbnN0IGJ1aWxkZXIgPSBuZXcgU2xpZGVTaG93QnVpbGRlcihhbGxJbmZvKCkp
OworICAgYnVpbGRlci0+c2V0T3ZlcnJpZGVTdGFydEZyb20oaW5mbyk7CisgICBidWlsZGVyLT5z
ZXRBdXRvUGxheUVuYWJsZWQoZmFsc2UpOworCisgICBjb25uZWN0KGJ1aWxkZXIsIFNJR05BTChz
aWduYWxDb21wbGV0ZShTbGlkZVNob3dTZXR0aW5ncykpLAorICAgICAgICAgICB0aGlzLCBTTE9U
KHNsb3RTbGlkZVNob3dCdWlsZGVyQ29tcGxldGUoU2xpZGVTaG93U2V0dGluZ3MpKSk7CisKKyAg
IGJ1aWxkZXItPnJ1bigpOworfQorCiB2b2lkIERpZ2lrYW1WaWV3OjpzbGlkZVNob3coY29uc3Qg
SW1hZ2VJbmZvTGlzdCYgaW5mb0xpc3QpCiB7CiAgICAgU2xpZGVTaG93QnVpbGRlciogY29uc3Qg
YnVpbGRlciA9IG5ldyBTbGlkZVNob3dCdWlsZGVyKGluZm9MaXN0KTsKIAogICAgIGNvbm5lY3Qo
YnVpbGRlciwgU0lHTkFMKHNpZ25hbENvbXBsZXRlKFNsaWRlU2hvd1NldHRpbmdzKSksCiAgICAg
ICAgICAgICB0aGlzLCBTTE9UKHNsb3RTbGlkZVNob3dCdWlsZGVyQ29tcGxldGUoU2xpZGVTaG93
U2V0dGluZ3MpKSk7CisKKyAgICBidWlsZGVyLT5ydW4oKTsKIH0KIAogdm9pZCBEaWdpa2FtVmll
dzo6c2xvdFNsaWRlU2hvd0J1aWxkZXJDb21wbGV0ZShjb25zdCBTbGlkZVNob3dTZXR0aW5ncyYg
c2V0dGluZ3MpCkBAIC0yMDk4LDkgKzIxMjUsMTMgQEAgdm9pZCBEaWdpa2FtVmlldzo6c2xvdFNs
aWRlU2hvd0J1aWxkZXJDb21wbGV0ZShjb25zdCBTbGlkZVNob3dTZXR0aW5ncyYgc2V0dGluZ3MK
ICAgICBTbGlkZVNob3cqIGNvbnN0IHNsaWRlID0gbmV3IFNsaWRlU2hvdyhzZXR0aW5ncyk7CiAg
ICAgVGFnc0FjdGlvbk1uZ3I6OmRlZmF1bHRNYW5hZ2VyKCktPnJlZ2lzdGVyQWN0aW9uc1RvV2lk
Z2V0KHNsaWRlKTsKIAotICAgIGlmIChzZXR0aW5ncy5zdGFydFdpdGhDdXJyZW50KQorICAgIGlm
IChzZXR0aW5ncy5pbWFnZVVybC5pc1ZhbGlkKCkpCisgICAgeworICAgICAgICBzbGlkZS0+c2V0
Q3VycmVudEl0ZW0oc2V0dGluZ3MuaW1hZ2VVcmwpOworICAgIH0KKyAgICBlbHNlIGlmIChzZXR0
aW5ncy5zdGFydFdpdGhDdXJyZW50KQogICAgIHsKLSAgICAgICAgc2xpZGUtPnNldEN1cnJlbnRJ
dGVtKGN1cnJlbnRVcmwoKSk7CisgICAgICAgIHNsaWRlLT5zZXRDdXJyZW50SXRlbShjdXJyZW50
SW5mbygpLmZpbGVVcmwoKSk7CiAgICAgfQogCiAgICAgY29ubmVjdChzbGlkZSwgU0lHTkFMKHNp
Z25hbFJhdGluZ0NoYW5nZWQoS1VybCxpbnQpKSwKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9kaWdp
a2Ftdmlldy5oIGIvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKaW5kZXggMjNjOTIyNi4uMmY3YmEx
OSAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL2RpZ2lrYW12aWV3LmgKKysrIGIvYXBwL3ZpZXdzL2Rp
Z2lrYW12aWV3LmgKQEAgLTE0MSw2ICsxNDEsOCBAQCBwdWJsaWMgUV9TTE9UUzoKICAgICB2b2lk
IHNsb3RTbGlkZVNob3dBbGwoKTsKICAgICB2b2lkIHNsb3RTbGlkZVNob3dTZWxlY3Rpb24oKTsK
ICAgICB2b2lkIHNsb3RTbGlkZVNob3dSZWN1cnNpdmUoKTsKKyAgICB2b2lkIHNsb3RTbGlkZVNo
b3dNYW51YWxGcm9tQ3VycmVudCgpOworICAgIHZvaWQgc2xvdFNsaWRlU2hvd01hbnVhbEZyb20o
Y29uc3QgSW1hZ2VJbmZvJiBpbmZvKTsKIAogICAgIC8vIEFsYnVtIGFjdGlvbiBzbG90cwogICAg
IHZvaWQgc2xvdFJlZnJlc2goKTsKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2
aWV3LmNwcCBiL2FwcC92aWV3cy9pbWFnZXByZXZpZXd2aWV3LmNwcAppbmRleCAwOTc4N2UzLi5h
MjE2YTllIDEwMDY0NAotLS0gYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5jcHAKKysrIGIv
YXBwL3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuY3BwCkBAIC0xMjksNiArMTI5LDggQEAgcHVibGlj
OgogICAgIFFBY3Rpb24qICAgICAgICAgICAgICAgYWRkUGVyc29uQWN0aW9uOwogICAgIFFBY3Rp
b24qICAgICAgICAgICAgICAgZm9yZ2V0RmFjZXNBY3Rpb247CiAjZW5kaWYgLyogSEFWRV9LRkFD
RSAqLworCisgICAgUUFjdGlvbiogICAgICAgICAgICAgICBmdWxsc2NyZWVuQWN0aW9uOwogfTsK
IAogSW1hZ2VQcmV2aWV3Vmlldzo6SW1hZ2VQcmV2aWV3VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJl
bnQsIE1vZGUgbW9kZSkKQEAgLTE4MCw2ICsxODIsOCBAQCBJbWFnZVByZXZpZXdWaWV3OjpJbWFn
ZVByZXZpZXdWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCwgTW9kZSBtb2RlKQogICAgIGQtPnBl
b3BsZVRvZ2dsZUFjdGlvbi0+c2V0SWNvbihTbWFsbEljb24oInVzZXItaWRlbnRpdHkiKSk7CiAj
ZW5kaWYgLyogSEFWRV9LRkFDRSAqLwogCisgICAgZC0+ZnVsbHNjcmVlbkFjdGlvbiAgICA9IG5l
dyBRQWN0aW9uKFNtYWxsSWNvbigibWVkaWEtcGxheWJhY2stc3RhcnQiKSwgaTE4bigiU2hvdyBG
dWxsc2NyZWVuIiksIHRoaXMpOworCiAgICAgZC0+dG9vbEJhciAgICAgICAgICAgICA9IG5ldyBR
VG9vbEJhcih0aGlzKTsKIAogICAgIGlmIChtb2RlID09IEljb25WaWV3UHJldmlldykKQEAgLTE5
Niw2ICsyMDAsOCBAQCBJbWFnZVByZXZpZXdWaWV3OjpJbWFnZVByZXZpZXdWaWV3KFFXaWRnZXQq
IGNvbnN0IHBhcmVudCwgTW9kZSBtb2RlKQogICAgIGQtPnRvb2xCYXItPmFkZEFjdGlvbihkLT5h
ZGRQZXJzb25BY3Rpb24pOwogI2VuZGlmIC8qIEhBVkVfS0ZBQ0UgKi8KIAorICAgIGQtPnRvb2xC
YXItPmFkZEFjdGlvbihkLT5mdWxsc2NyZWVuQWN0aW9uKTsKKwogICAgIGNvbm5lY3QoZC0+cHJl
dkFjdGlvbiwgU0lHTkFMKHRyaWdnZXJlZCgpKSwKICAgICAgICAgICAgIHRoaXMsIFNJR05BTCh0
b1ByZXZpb3VzSW1hZ2UoKSkpOwogCkBAIC0yMTksNiArMjI1LDkgQEAgSW1hZ2VQcmV2aWV3Vmll
dzo6SW1hZ2VQcmV2aWV3VmlldyhRV2lkZ2V0KiBjb25zdCBwYXJlbnQsIE1vZGUgbW9kZSkKICAg
ICAgICAgICAgIGQtPmZhY2VHcm91cCwgU0xPVChyZWplY3RBbGwoKSkpOwogI2VuZGlmIC8qIEhB
VkVfS0ZBQ0UgKi8KIAorICAgIGNvbm5lY3QoZC0+ZnVsbHNjcmVlbkFjdGlvbiwgU0lHTkFMKHRy
aWdnZXJlZCgpKSwKKyAgICAgICAgICAgIHRoaXMsIFNJR05BTChzaWduYWxTbGlkZVNob3dDdXJy
ZW50KCkpKTsKKwogICAgIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiAgICAgY29ubmVjdCh0aGlzLCBTSUdOQUwodG9OZXh0
SW1hZ2UoKSksCmRpZmYgLS1naXQgYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oIGIvYXBw
L3ZpZXdzL2ltYWdlcHJldmlld3ZpZXcuaAppbmRleCBmMzU3Zjc0Li5lMmVkMTY2IDEwMDY0NAot
LS0gYS9hcHAvdmlld3MvaW1hZ2VwcmV2aWV3dmlldy5oCisrKyBiL2FwcC92aWV3cy9pbWFnZXBy
ZXZpZXd2aWV3LmgKQEAgLTc2LDYgKzc2LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgc2lnbmFs
RWRpdEl0ZW0oKTsKICAgICB2b2lkIHNpZ25hbFByZXZpZXdMb2FkZWQoYm9vbCBzdWNjZXNzKTsK
ICAgICB2b2lkIHNpZ25hbEVzY2FwZVByZXZpZXcoKTsKKyAgICB2b2lkIHNpZ25hbFNsaWRlU2hv
d0N1cnJlbnQoKTsKICAgICB2b2lkIHNpZ25hbFNsaWRlU2hvdygpOwogICAgIHZvaWQgc2lnbmFs
SW5zZXJ0MkxpZ2h0VGFibGUoKTsKICAgICB2b2lkIHNpZ25hbEluc2VydDJRdWV1ZU1ncigpOwpk
aWZmIC0tZ2l0IGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmNwcCBiL2FwcC92aWV3cy9zdGFja2Vk
dmlldy5jcHAKaW5kZXggN2MyZjc2OC4uZThkMDE2ZSAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL3N0
YWNrZWR2aWV3LmNwcAorKysgYi9hcHAvdmlld3Mvc3RhY2tlZHZpZXcuY3BwCkBAIC0xODAsNiAr
MTgwLDkgQEAgU3RhY2tlZFZpZXc6OlN0YWNrZWRWaWV3KFFXaWRnZXQqIGNvbnN0IHBhcmVudCkK
ICAgICBjb25uZWN0KGQtPmltYWdlUHJldmlld1ZpZXcsIFNJR05BTChzaWduYWxTbGlkZVNob3co
KSksCiAgICAgICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93KCkpKTsKIAorICAg
IGNvbm5lY3QoZC0+aW1hZ2VQcmV2aWV3VmlldywgU0lHTkFMKHNpZ25hbFNsaWRlU2hvd0N1cnJl
bnQoKSksCisgICAgICAgICAgICB0aGlzLCBTSUdOQUwoc2lnbmFsU2xpZGVTaG93Q3VycmVudCgp
KSk7CisKICAgICBjb25uZWN0KGQtPmltYWdlUHJldmlld1ZpZXctPmxheW91dCgpLCBTSUdOQUwo
em9vbUZhY3RvckNoYW5nZWQoZG91YmxlKSksCiAgICAgICAgICAgICB0aGlzLCBTTE9UKHNsb3Ra
b29tRmFjdG9yQ2hhbmdlZChkb3VibGUpKSk7CiAKZGlmZiAtLWdpdCBhL2FwcC92aWV3cy9zdGFj
a2Vkdmlldy5oIGIvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmgKaW5kZXggZTFiNzY1Zi4uZDQxOGU0
MCAxMDA2NDQKLS0tIGEvYXBwL3ZpZXdzL3N0YWNrZWR2aWV3LmgKKysrIGIvYXBwL3ZpZXdzL3N0
YWNrZWR2aWV3LmgKQEAgLTEzMyw2ICsxMzMsNyBAQCBRX1NJR05BTFM6CiAgICAgdm9pZCBzaWdu
YWxWaWV3TW9kZUNoYW5nZWQoKTsKICAgICB2b2lkIHNpZ25hbEVzY2FwZVByZXZpZXcoKTsKICAg
ICB2b2lkIHNpZ25hbFNsaWRlU2hvdygpOworICAgIHZvaWQgc2lnbmFsU2xpZGVTaG93Q3VycmVu
dCgpOwogICAgIHZvaWQgc2lnbmFsWm9vbUZhY3RvckNoYW5nZWQoZG91YmxlKTsKICAgICB2b2lk
IHNpZ25hbEluc2VydDJMaWdodFRhYmxlKCk7CiAgICAgdm9pZCBzaWduYWxJbnNlcnQyUXVldWVN
Z3IoKTsKZGlmZiAtLWdpdCBhL3V0aWxpdGllcy9zZXR1cC9zZXR1cGFsYnVtdmlldy5jcHAgYi91
dGlsaXRpZXMvc2V0dXAvc2V0dXBhbGJ1bXZpZXcuY3BwCmluZGV4IDg4ZDQ5ZjkuLjIyODNiMDEg
MTAwNjQ0Ci0tLSBhL3V0aWxpdGllcy9zZXR1cC9zZXR1cGFsYnVtdmlldy5jcHAKKysrIGIvdXRp
bGl0aWVzL3NldHVwL3NldHVwYWxidW12aWV3LmNwcApAQCAtNzMsNiArNzMsNyBAQCBwdWJsaWM6
CiAgICAgICAgIGljb25TaG93Q29tbWVudHNCb3goMCksCiAgICAgICAgIGljb25TaG93VGFnc0Jv
eCgwKSwKICAgICAgICAgaWNvblNob3dPdmVybGF5c0JveCgwKSwKKyAgICAgICAgaWNvblNob3dG
dWxsc2NyZWVuQm94KDApLAogICAgICAgICBpY29uU2hvd1JhdGluZ0JveCgwKSwKICAgICAgICAg
aWNvblNob3dGb3JtYXRCb3goMCksCiAgICAgICAgIGljb25TaG93Q29vcmRpbmF0ZXNCb3goMCks
CkBAIC0xMDUsNiArMTA2LDcgQEAgcHVibGljOgogICAgIFFDaGVja0JveCogICAgICAgICAgaWNv
blNob3dDb21tZW50c0JveDsKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93VGFnc0Jv
eDsKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25TaG93T3ZlcmxheXNCb3g7CisgICAgUUNo
ZWNrQm94KiAgICAgICAgICBpY29uU2hvd0Z1bGxzY3JlZW5Cb3g7CiAgICAgUUNoZWNrQm94KiAg
ICAgICAgICBpY29uU2hvd1JhdGluZ0JveDsKICAgICBRQ2hlY2tCb3gqICAgICAgICAgIGljb25T
aG93Rm9ybWF0Qm94OwogICAgIFFDaGVja0JveCogICAgICAgICAgaWNvblNob3dDb29yZGluYXRl
c0JveDsKQEAgLTE4NCw2ICsxODYsMTAgQEAgU2V0dXBBbGJ1bVZpZXc6OlNldHVwQWxidW1WaWV3
KFFXaWRnZXQqIGNvbnN0IHBhcmVudCkKICAgICBkLT5pY29uU2hvd092ZXJsYXlzQm94LT5zZXRX
aGF0c1RoaXMoaTE4bigiU2V0IHRoaXMgb3B0aW9uIHRvIHNob3cgb3ZlcmxheSBidXR0b25zIG9u
ICIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidGhlIGlt
YWdlIHRodW1ibmFpbCBmb3IgaW1hZ2Ugcm90YXRpb24uIikpOwogCisgICAgZC0+aWNvblNob3dG
dWxsc2NyZWVuQm94ICA9IG5ldyBRQ2hlY2tCb3goaTE4bigiU2hvdyBmdWxsc2NyZWVuIG92ZXJs
YXkgYnV0dG9uIiksIGljb25WaWV3R3JvdXApOworICAgIGQtPmljb25TaG93RnVsbHNjcmVlbkJv
eC0+c2V0V2hhdHNUaGlzKGkxOG4oIlNldCB0aGlzIG9wdGlvbiB0byBzaG93IGFuIG92ZXJsYXkg
YnV0dG9uIG9uIHRoZSAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAiaW1hZ2UgdGh1bWJuYWlsIHRvIG9wZW4gaXQgaW4gZnVsbHNjcmVlbi4iKSk7CisK
ICAgICBkLT5pY29uU2hvd0Nvb3JkaW5hdGVzQm94ID0gbmV3IFFDaGVja0JveChpMThuKCJTaG93
IEdlb2xvY2F0aW9uIEluZGljYXRvciIpLCBpY29uVmlld0dyb3VwKTsKICAgICBkLT5pY29uU2hv
d0Nvb3JkaW5hdGVzQm94LT5zZXRXaGF0c1RoaXMoaTE4bigiU2V0IHRoaXMgb3B0aW9uIHRvIGlu
ZGljYXRlIGlmIGltYWdlIGhhcyBnZW9sb2NhdGlvbiBpbmZvcm1hdGlvbi4iKSk7CiAKQEAgLTIx
Nyw3ICsyMjMsOCBAQCBTZXR1cEFsYnVtVmlldzo6U2V0dXBBbGJ1bVZpZXcoUVdpZGdldCogY29u
c3QgcGFyZW50KQogICAgIGdyaWQtPmFkZFdpZGdldChkLT5pY29uU2hvd1RhZ3NCb3gsICAgICAg
ICAgIDIsIDEsIDEsIDEpOwogICAgIGdyaWQtPmFkZFdpZGdldChkLT5pY29uU2hvd1JhdGluZ0Jv
eCwgICAgICAgIDMsIDEsIDEsIDEpOwogICAgIGdyaWQtPmFkZFdpZGdldChkLT5pY29uU2hvd092
ZXJsYXlzQm94LCAgICAgIDQsIDEsIDEsIDEpOwotICAgIGdyaWQtPmFkZFdpZGdldChkLT5pY29u
U2hvd0Nvb3JkaW5hdGVzQm94LCAgIDUsIDEsIDEsIDEpOworICAgIGdyaWQtPmFkZFdpZGdldChk
LT5pY29uU2hvd0Z1bGxzY3JlZW5Cb3gsICAgIDUsIDEsIDEsIDEpOworICAgIGdyaWQtPmFkZFdp
ZGdldChkLT5pY29uU2hvd0Nvb3JkaW5hdGVzQm94LCAgIDYsIDEsIDEsIDEpOwogCiAgICAgZ3Jp
ZC0+YWRkV2lkZ2V0KGxlZnRDbGlja0xhYmVsLCAgICAgICAgICAgICAgNywgMCwgMSwgMSk7CiAg
ICAgZ3JpZC0+YWRkV2lkZ2V0KGQtPmxlZnRDbGlja0FjdGlvbkNvbWJvQm94LCAgNywgMSwgMSwg
MSk7CkBAIC0zNDAsNiArMzQ3LDcgQEAgdm9pZCBTZXR1cEFsYnVtVmlldzo6YXBwbHlTZXR0aW5n
cygpCiAgICAgc2V0dGluZ3MtPnNldEljb25TaG93VGl0bGUoZC0+aWNvblNob3dUaXRsZUJveC0+
aXNDaGVja2VkKCkpOwogICAgIHNldHRpbmdzLT5zZXRJY29uU2hvd0NvbW1lbnRzKGQtPmljb25T
aG93Q29tbWVudHNCb3gtPmlzQ2hlY2tlZCgpKTsKICAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dP
dmVybGF5cyhkLT5pY29uU2hvd092ZXJsYXlzQm94LT5pc0NoZWNrZWQoKSk7CisgICAgc2V0dGlu
Z3MtPnNldEljb25TaG93RnVsbHNjcmVlbihkLT5pY29uU2hvd0Z1bGxzY3JlZW5Cb3gtPmlzQ2hl
Y2tlZCgpKTsKICAgICBzZXR0aW5ncy0+c2V0SWNvblNob3dDb29yZGluYXRlcyhkLT5pY29uU2hv
d0Nvb3JkaW5hdGVzQm94LT5pc0NoZWNrZWQoKSk7CiAgICAgc2V0dGluZ3MtPnNldEljb25TaG93
UmF0aW5nKGQtPmljb25TaG93UmF0aW5nQm94LT5pc0NoZWNrZWQoKSk7CiAgICAgc2V0dGluZ3Mt
PnNldEljb25TaG93SW1hZ2VGb3JtYXQoZC0+aWNvblNob3dGb3JtYXRCb3gtPmlzQ2hlY2tlZCgp
KTsKQEAgLTQwMiw2ICs0MTAsNyBAQCB2b2lkIFNldHVwQWxidW1WaWV3OjpyZWFkU2V0dGluZ3Mo
KQogICAgIGQtPmljb25TaG93VGl0bGVCb3gtPnNldENoZWNrZWQoc2V0dGluZ3MtPmdldEljb25T
aG93VGl0bGUoKSk7CiAgICAgZC0+aWNvblNob3dDb21tZW50c0JveC0+c2V0Q2hlY2tlZChzZXR0
aW5ncy0+Z2V0SWNvblNob3dDb21tZW50cygpKTsKICAgICBkLT5pY29uU2hvd092ZXJsYXlzQm94
LT5zZXRDaGVja2VkKHNldHRpbmdzLT5nZXRJY29uU2hvd092ZXJsYXlzKCkpOworICAgIGQtPmlj
b25TaG93RnVsbHNjcmVlbkJveC0+c2V0Q2hlY2tlZChzZXR0aW5ncy0+Z2V0SWNvblNob3dGdWxs
c2NyZWVuKCkpOwogICAgIGQtPmljb25TaG93Q29vcmRpbmF0ZXNCb3gtPnNldENoZWNrZWQoc2V0
dGluZ3MtPmdldEljb25TaG93Q29vcmRpbmF0ZXMoKSk7CiAgICAgZC0+aWNvblNob3dSYXRpbmdC
b3gtPnNldENoZWNrZWQoc2V0dGluZ3MtPmdldEljb25TaG93UmF0aW5nKCkpOwogICAgIGQtPmlj
b25TaG93Rm9ybWF0Qm94LT5zZXRDaGVja2VkKHNldHRpbmdzLT5nZXRJY29uU2hvd0ltYWdlRm9y
bWF0KCkpOwpkaWZmIC0tZ2l0IGEvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5n
cy5oIGIvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXNob3dzZXR0aW5ncy5oCmluZGV4IDhhNGM2
OGEuLjUyNWE2NjAgMTAwNjQ0Ci0tLSBhL3V0aWxpdGllcy9zbGlkZXNob3cvc2xpZGVzaG93c2V0
dGluZ3MuaAorKysgYi91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRlc2hvd3NldHRpbmdzLmgKQEAg
LTE2MCw2ICsxNjAsMTAgQEAgcHVibGljOgogICAgICAqLwogICAgIGludCAgICAgICAgICAgICAg
ICAgICAgICAgICAgZGVsYXk7CiAKKyAgICAvKiogV2hldGhlciB0byBlbmFibGUgdGhlIGF1dG8t
bW92ZSBmZWF0dXJlLgorICAgICAqLworICAgIGJvb2wgICAgICAgICAgICAgICAgICAgICAgICAg
YXV0b1BsYXlFbmFibGVkOworCiAgICAgLyoqIFNjcmVlbiB0byB1c2UgaW4gY2FzZSBvZiBtdWx0
aS1tb25pdG9yIGNvbXB1dGVyLgogICAgICAqLwogICAgIGludCAgICAgICAgICAgICAgICAgICAg
ICAgICAgc2xpZGVTY3JlZW47CkBAIC0xODAsNiArMTg0LDEwIEBAIHB1YmxpYzoKICAgICAgKi8K
ICAgICBRTWFwPEtVcmwsIFNsaWRlUGljdHVyZUluZm8+IHBpY3RJbmZvTWFwOwogCisgICAgLyoq
IFVSTCBvZiB0aGUgZmlyc3QgaW1hZ2UgdG8gc2hvdyBpZiByZXF1ZXN0ZWQKKyAgICAgKi8KKyAg
ICBLVXJsICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlVXJsOworCiBwcml2YXRlOgogCiAg
ICAgc3RhdGljIGNvbnN0IFFTdHJpbmcgICAgICAgICBjb25maWdHcm91cE5hbWU7CmRpZmYgLS1n
aXQgYS91dGlsaXRpZXMvc2xpZGVzaG93L3NsaWRldG9vbGJhci5jcHAgYi91dGlsaXRpZXMvc2xp
ZGVzaG93L3NsaWRldG9vbGJhci5jcHAKaW5kZXggOTlkZDIzYy4uYjE4MTBiNSAxMDA2NDQKLS0t
IGEvdXRpbGl0aWVzL3NsaWRlc2hvdy9zbGlkZXRvb2xiYXIuY3BwCisrKyBiL3V0aWxpdGllcy9z
bGlkZXNob3cvc2xpZGV0b29sYmFyLmNwcApAQCAtODgsMTUgKzg4LDE4IEBAIFNsaWRlVG9vbEJh
cjo6U2xpZGVUb29sQmFyKGNvbnN0IFNsaWRlU2hvd1NldHRpbmdzJiBzZXR0aW5ncywgUVdpZGdl
dCogY29uc3QgcGFyCiAgICAgZC0+c3RvcEJ0biA9IG5ldyBRVG9vbEJ1dHRvbih0aGlzKTsKIAog
ICAgIGQtPnBsYXlCdG4tPnNldENoZWNrYWJsZSh0cnVlKTsKKyAgICBkLT5wbGF5QnRuLT5zZXRD
aGVja2VkKCFzZXR0aW5ncy5hdXRvUGxheUVuYWJsZWQpOworCiAgICAgZC0+cGxheUJ0bi0+c2V0
Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMpOwogICAgIGQtPnByZXZCdG4tPnNldEZvY3VzUG9saWN5
KFF0OjpOb0ZvY3VzKTsKICAgICBkLT5uZXh0QnRuLT5zZXRGb2N1c1BvbGljeShRdDo6Tm9Gb2N1
cyk7CiAgICAgZC0+c3RvcEJ0bi0+c2V0Rm9jdXNQb2xpY3koUXQ6Ok5vRm9jdXMpOwogCi0gICAg
ZC0+cGxheUJ0bi0+c2V0SWNvbihkLT5sb2FkZXItPmxvYWRJY29uKCJtZWRpYS1wbGF5YmFjay1w
YXVzZSIsIEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwotICAgIGQtPnByZXZC
dG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtc2tpcC1iYWNrd2FyZCIsICBL
SWNvbkxvYWRlcjo6VG9vbGJhciwgZC0+aWNvblNpemUpKTsKLSAgICBkLT5uZXh0QnRuLT5zZXRJ
Y29uKGQtPmxvYWRlci0+bG9hZEljb24oIm1lZGlhLXNraXAtZm9yd2FyZCIsICAgS0ljb25Mb2Fk
ZXI6OlRvb2xiYXIsIGQtPmljb25TaXplKSk7Ci0gICAgZC0+c3RvcEJ0bi0+c2V0SWNvbihkLT5s
b2FkZXItPmxvYWRJY29uKCJtZWRpYS1wbGF5YmFjay1zdG9wIiwgIEtJY29uTG9hZGVyOjpUb29s
YmFyLCBkLT5pY29uU2l6ZSkpOworICAgIFFTdHJpbmcgaWNvblN0cmluZyA9IHNldHRpbmdzLmF1
dG9QbGF5RW5hYmxlZCA/ICJtZWRpYS1wbGF5YmFjay1wYXVzZSIgOiAibWVkaWEtcGxheWJhY2st
c3RhcnQiOworICAgIGQtPnBsYXlCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbihpY29u
U3RyaW5nLCAgICAgICAgICAgIEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwor
ICAgIGQtPnByZXZCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtc2tpcC1i
YWNrd2FyZCIsIEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOworICAgIGQtPm5l
eHRCdG4tPnNldEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtc2tpcC1mb3J3YXJkIiwg
IEtJY29uTG9hZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOworICAgIGQtPnN0b3BCdG4tPnNl
dEljb24oZC0+bG9hZGVyLT5sb2FkSWNvbigibWVkaWEtcGxheWJhY2stc3RvcCIsIEtJY29uTG9h
ZGVyOjpUb29sYmFyLCBkLT5pY29uU2l6ZSkpOwogCiAgICAgZC0+cGxheUJ0bi0+c2V0SWNvblNp
emUoUVNpemUoZC0+aWNvblNpemUsIGQtPmljb25TaXplKSk7CiAgICAgZC0+cHJldkJ0bi0+c2V0
SWNvblNpemUoUVNpemUoZC0+aWNvblNpemUsIGQtPmljb25TaXplKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>