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

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>61175</bug_id>
          
          <creation_ts>2011-05-20 01:44:32 -0700</creation_ts>
          <short_desc>Web Inspector: [Chromium] Get rid of flickering &quot;Please wait&quot; message in Heap profiler</short_desc>
          <delta_ts>2011-07-10 23:39:12 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mikhail Naganov">mnaganov</reporter>
          <assigned_to name="Mikhail Naganov">mnaganov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>406944</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-05-20 01:44:32 -0700</bug_when>
    <thetext>During data loading, &quot;Please wait&quot; message is constantly flickering on the top. This is annoying. Loading indication should be smoother.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>433967</commentid>
    <comment_count>1</comment_count>
      <attachid>100097</attachid>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-07-08 02:43:53 -0700</bug_when>
    <thetext>Created attachment 100097
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434066</commentid>
    <comment_count>2</comment_count>
      <attachid>100097</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-07-08 08:38:13 -0700</bug_when>
    <thetext>Comment on attachment 100097
patch

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

Also, you want to update WebCore.qrc with removed / added files.

&gt; Source/WebCore/WebCore.gypi:6460
&gt; +            &apos;inspector/front-end/Images/spinnerActive.gif&apos;,

Where did you get these? Is there a license agreement for them?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434675</commentid>
    <comment_count>3</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-07-10 23:05:15 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 100097 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=100097&amp;action=review
&gt; 
&gt; Also, you want to update WebCore.qrc with removed / added files.
&gt;

Thanks, updated!
 
&gt; &gt; Source/WebCore/WebCore.gypi:6460
&gt; &gt; +            &apos;inspector/front-end/Images/spinnerActive.gif&apos;,
&gt; 
&gt; Where did you get these? Is there a license agreement for them?

Generated using ajaxload.info. It states that &quot;Generated gifs are totally free for use&quot;. The service itself is around since 2006 and is really good known. I haven&apos;t found any alternative load images generators that have a clear license.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>434686</commentid>
    <comment_count>4</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2011-07-10 23:39:12 -0700</bug_when>
    <thetext>Manually committed http://trac.webkit.org/changeset/90720

2011-07-08  Mikhail Naganov  &lt;mnaganov@chromium.org&gt;

        Web Inspector: [Chromium] Get rid of flickering &quot;Please wait&quot; message in Heap profiler.
        https://bugs.webkit.org/show_bug.cgi?id=61175

        The message has been replaced with spinner icons appearing instead of profile&apos;s
        icon. As each profile owns a worker, they run independently, and there can be
        multiple spinners at the same time.

        Reviewed by Pavel Feldman.

        * WebCore.gypi:
        * WebCore.vcproj/WebCore.vcproj:
        * inspector/front-end/DetailedHeapshotGridNodes.js:
        (WebInspector.HeapSnapshotGridNode.prototype._populate.sorted):
        (WebInspector.HeapSnapshotGridNode.prototype._populate):
        (WebInspector.HeapSnapshotGridNode.prototype.populateChildren.childrenRetrieved):
        (WebInspector.HeapSnapshotGridNode.prototype.populateChildren):
        * inspector/front-end/DetailedHeapshotView.js:
        (WebInspector.HeapSnapshotSortableDataGrid.prototype.sortingChanged):
        (WebInspector.HeapSnapshotRetainingPathsList.prototype.showNext):
        (WebInspector.HeapSnapshotRetainingPathsList.prototype.searchCancelled):
        (WebInspector.DetailedHeapshotView.profileCallback):
        (WebInspector.DetailedHeapshotView):
        (WebInspector.DetailedHeapshotView.prototype._changeBase.baseProfileLoaded):
        (WebInspector.DetailedHeapshotView.prototype._changeBase):
        (WebInspector.DetailedHeapshotView.prototype.processLoadedSnapshot):
        (WebInspector.DetailedHeapshotView.prototype._changeView):
        * inspector/front-end/HeapSnapshotProxy.js:
        (WebInspector.HeapSnapshotWorker):
        (WebInspector.HeapSnapshotWorker.prototype.dispose):
        (WebInspector.HeapSnapshotWorker.prototype.startCheckingForLongRunningCalls):
        (WebInspector.HeapSnapshotWorker.prototype._checkLongRunningCalls):
        (WebInspector.HeapSnapshotProxyObject.prototype.callMethod):
        (WebInspector.HeapSnapshotProxyObject.prototype.get worker):
        * inspector/front-end/Images/spinnerActive.gif: Added. Generated using ajaxload.info.
        * inspector/front-end/Images/spinnerActiveSelected.gif: Added. Generated using ajaxload.info.
        * inspector/front-end/Images/spinnerInactive.gif: Added. Generated using ajaxload.info.
        * inspector/front-end/Images/spinnerInactiveSelected.gif: Added. Generated using ajaxload.info.
        * inspector/front-end/PleaseWaitMessage.js: Removed.
        * inspector/front-end/ProfilesPanel.js:
        (WebInspector.ProfilesPanel.prototype._addProfileHeader):
        (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot.setProfileWait):
        (WebInspector.ProfilesPanel.prototype.loadHeapSnapshot):
        (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot.parsed):
        (WebInspector.ProfilesPanel.prototype._finishHeapSnapshot):
        (WebInspector.ProfilesPanel.prototype._reportHeapSnapshotProgress):
        * inspector/front-end/SidebarTreeElement.js:
        (WebInspector.SidebarTreeElement.prototype.set wait):
        * inspector/front-end/WebKit.qrc:
        * inspector/front-end/heapProfiler.css:
        (.heap-snapshot-sidebar-tree-item.wait .icon):
        (.heap-snapshot-sidebar-tree-item.wait.selected .icon):
        (body.inactive .heap-snapshot-sidebar-tree-item.wait .icon):
        (body.inactive .heap-snapshot-sidebar-tree-item.wait.selected .icon):
        * inspector/front-end/inspector.html:</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>100097</attachid>
            <date>2011-07-08 02:43:53 -0700</date>
            <delta_ts>2011-07-08 08:38:13 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch-61175</filename>
            <type>text/plain</type>
            <size>38692</size>
            <attacher name="Mikhail Naganov">mnaganov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA2OWEwYjljLi4xY2ZiNzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjAg
QEAKKzIwMTEtMDctMDggIE1pa2hhaWwgTmFnYW5vdiAgPG1uYWdhbm92QGNocm9taXVtLm9yZz4K
KworICAgICAgICBXZWIgSW5zcGVjdG9yOiBbQ2hyb21pdW1dIEdldCByaWQgb2YgZmxpY2tlcmlu
ZyAiUGxlYXNlIHdhaXQiIG1lc3NhZ2UgaW4gSGVhcCBwcm9maWxlci4KKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTYxMTc1CisKKyAgICAgICAgVGhlIG1l
c3NhZ2UgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCBzcGlubmVyIGljb25zIGFwcGVhcmluZyBpbnN0
ZWFkIG9mIHByb2ZpbGUncworICAgICAgICBpY29uLiBBcyBlYWNoIHByb2ZpbGUgb3ducyBhIHdv
cmtlciwgdGhleSBydW4gaW5kZXBlbmRlbnRseSwgYW5kIHRoZXJlIGNhbiBiZQorICAgICAgICBt
dWx0aXBsZSBzcGlubmVycyBhdCB0aGUgc2FtZSB0aW1lLgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAgICAqIFdl
YkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1l
bmQvRGV0YWlsZWRIZWFwc2hvdEdyaWROb2Rlcy5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5I
ZWFwU25hcHNob3RHcmlkTm9kZS5wcm90b3R5cGUuX3BvcHVsYXRlLnNvcnRlZCk6CisgICAgICAg
IChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90R3JpZE5vZGUucHJvdG90eXBlLl9wb3B1bGF0ZSk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90R3JpZE5vZGUucHJvdG90eXBlLnBv
cHVsYXRlQ2hpbGRyZW4uY2hpbGRyZW5SZXRyaWV2ZWQpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3RvdHlwZS5wb3B1bGF0ZUNoaWxkcmVuKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0RldGFpbGVkSGVhcHNob3RWaWV3LmpzOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFNvcnRhYmxlRGF0YUdyaWQucHJvdG90eXBlLnNv
cnRpbmdDaGFuZ2VkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RSZXRhaW5p
bmdQYXRoc0xpc3QucHJvdG90eXBlLnNob3dOZXh0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5I
ZWFwU25hcHNob3RSZXRhaW5pbmdQYXRoc0xpc3QucHJvdG90eXBlLnNlYXJjaENhbmNlbGxlZCk6
CisgICAgICAgIChXZWJJbnNwZWN0b3IuRGV0YWlsZWRIZWFwc2hvdFZpZXcucHJvZmlsZUNhbGxi
YWNrKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5EZXRhaWxlZEhlYXBzaG90Vmlldyk6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuRGV0YWlsZWRIZWFwc2hvdFZpZXcucHJvdG90eXBlLl9jaGFuZ2VC
YXNlLmJhc2VQcm9maWxlTG9hZGVkKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5EZXRhaWxlZEhl
YXBzaG90Vmlldy5wcm90b3R5cGUuX2NoYW5nZUJhc2UpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LkRldGFpbGVkSGVhcHNob3RWaWV3LnByb3RvdHlwZS5wcm9jZXNzTG9hZGVkU25hcHNob3QpOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLkRldGFpbGVkSGVhcHNob3RWaWV3LnByb3RvdHlwZS5fY2hh
bmdlVmlldyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9IZWFwU25hcHNob3RQcm94
eS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3JrZXIpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdvcmtlci5wcm90b3R5cGUuZGlzcG9zZSk6Cisg
ICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90V29ya2VyLnByb3RvdHlwZS5zdGFydENo
ZWNraW5nRm9yTG9uZ1J1bm5pbmdDYWxscyk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNu
YXBzaG90V29ya2VyLnByb3RvdHlwZS5fY2hlY2tMb25nUnVubmluZ0NhbGxzKToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RQcm94eU9iamVjdC5wcm90b3R5cGUuY2FsbE1ldGhv
ZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHlPYmplY3QucHJvdG90
eXBlLmdldCB3b3JrZXIpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvSW1hZ2VzL3Nw
aW5uZXJBY3RpdmUuZ2lmOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0lt
YWdlcy9zcGlubmVyQWN0aXZlU2VsZWN0ZWQuZ2lmOiBBZGRlZC4KKyAgICAgICAgKiBpbnNwZWN0
b3IvZnJvbnQtZW5kL0ltYWdlcy9zcGlubmVySW5hY3RpdmUuZ2lmOiBBZGRlZC4KKyAgICAgICAg
KiBpbnNwZWN0b3IvZnJvbnQtZW5kL0ltYWdlcy9zcGlubmVySW5hY3RpdmVTZWxlY3RlZC5naWY6
IEFkZGVkLgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvUGxlYXNlV2FpdE1lc3NhZ2Uu
anM6IFJlbW92ZWQuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlc1BhbmVs
LmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlByb2ZpbGVzUGFuZWwucHJvdG90eXBlLl9hZGRQ
cm9maWxlSGVhZGVyKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3Rv
dHlwZS5sb2FkSGVhcFNuYXBzaG90LnNldFByb2ZpbGVXYWl0KToKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5sb2FkSGVhcFNuYXBzaG90KToKKyAgICAgICAg
KFdlYkluc3BlY3Rvci5Qcm9maWxlc1BhbmVsLnByb3RvdHlwZS5fZmluaXNoSGVhcFNuYXBzaG90
LnBhcnNlZCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUu
X2ZpbmlzaEhlYXBTbmFwc2hvdCk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUHJvZmlsZXNQYW5l
bC5wcm90b3R5cGUuX3JlcG9ydEhlYXBTbmFwc2hvdFByb2dyZXNzKToKKyAgICAgICAgKiBpbnNw
ZWN0b3IvZnJvbnQtZW5kL1NpZGViYXJUcmVlRWxlbWVudC5qczoKKyAgICAgICAgKFdlYkluc3Bl
Y3Rvci5TaWRlYmFyVHJlZUVsZW1lbnQucHJvdG90eXBlLnNldCB3YWl0KToKKyAgICAgICAgKiBp
bnNwZWN0b3IvZnJvbnQtZW5kL1dlYktpdC5xcmM6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250
LWVuZC9oZWFwUHJvZmlsZXIuY3NzOgorICAgICAgICAoLmhlYXAtc25hcHNob3Qtc2lkZWJhci10
cmVlLWl0ZW0ud2FpdCAuaWNvbik6CisgICAgICAgICguaGVhcC1zbmFwc2hvdC1zaWRlYmFyLXRy
ZWUtaXRlbS53YWl0LnNlbGVjdGVkIC5pY29uKToKKyAgICAgICAgKGJvZHkuaW5hY3RpdmUgLmhl
YXAtc25hcHNob3Qtc2lkZWJhci10cmVlLWl0ZW0ud2FpdCAuaWNvbik6CisgICAgICAgIChib2R5
LmluYWN0aXZlIC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtLndhaXQuc2VsZWN0ZWQg
Lmljb24pOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmh0bWw6CisK
IDIwMTEtMDctMDcgIEVtaWwgQSBFa2x1bmQgIDxlYWVAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFN3aXRjaCBIaXRUZXN0UmVzdWx0IHRvIHRvIG5ldyBsYXlvdXQgdHlwZXMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lw
aQppbmRleCA5ZGE4MTUxLi5iMmM5NGIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC02MzA2LDcgKzYz
MDYsNiBAQAogICAgICAgICAgICAgJ2luc3BlY3Rvci9mcm9udC1lbmQvUGFuZWxFbmFibGVyVmll
dy5qcycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9QYXJ0aWFsUXVpY2tTb3J0
LmpzJywKICAgICAgICAgICAgICdpbnNwZWN0b3IvZnJvbnQtZW5kL1BsYWNhcmQuanMnLAotICAg
ICAgICAgICAgJ2luc3BlY3Rvci9mcm9udC1lbmQvUGxlYXNlV2FpdE1lc3NhZ2UuanMnLAogICAg
ICAgICAgICAgJ2luc3BlY3Rvci9mcm9udC1lbmQvUG9wb3Zlci5qcycsCiAgICAgICAgICAgICAn
aW5zcGVjdG9yL2Zyb250LWVuZC9Qcm9maWxlRGF0YUdyaWRUcmVlLmpzJywKICAgICAgICAgICAg
ICdpbnNwZWN0b3IvZnJvbnQtZW5kL1Byb2ZpbGVzUGFuZWwuanMnLApAQCAtNjQ1OCw2ICs2NDU3
LDEwIEBACiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMvc2VnbWVudFNl
bGVjdGVkRW5kLnBuZycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMv
c2Vzc2lvblN0b3JhZ2UucG5nJywKICAgICAgICAgICAgICdpbnNwZWN0b3IvZnJvbnQtZW5kL0lt
YWdlcy9zcGlubmVyLmdpZicsCisgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFn
ZXMvc3Bpbm5lckFjdGl2ZS5naWYnLAorICAgICAgICAgICAgJ2luc3BlY3Rvci9mcm9udC1lbmQv
SW1hZ2VzL3NwaW5uZXJBY3RpdmVTZWxlY3RlZC5naWYnLAorICAgICAgICAgICAgJ2luc3BlY3Rv
ci9mcm9udC1lbmQvSW1hZ2VzL3NwaW5uZXJJbmFjdGl2ZS5naWYnLAorICAgICAgICAgICAgJ2lu
c3BlY3Rvci9mcm9udC1lbmQvSW1hZ2VzL3NwaW5uZXJJbmFjdGl2ZVNlbGVjdGVkLmdpZicsCiAg
ICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMvc3BsaXR2aWV3RGltcGxlLnBu
ZycsCiAgICAgICAgICAgICAnaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMvc3BsaXR2aWV3RGl2
aWRlckJhY2tncm91bmQucG5nJywKICAgICAgICAgICAgICdpbnNwZWN0b3IvZnJvbnQtZW5kL0lt
YWdlcy9zdGF0dXNiYXJCYWNrZ3JvdW5kLnBuZycsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDEzYjA3NTkuLmJjNzc4NmUgMTAwNzU1Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC02ODE4MSwxMCArNjgx
ODEsNiBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxGaWxlCi0JCQkJCVJlbGF0aXZlUGF0
aD0iLi5caW5zcGVjdG9yXGZyb250LWVuZFxQbGVhc2VXYWl0TWVzc2FnZS5qcyIKLQkJCQkJPgot
CQkJCTwvRmlsZT4KLQkJCQk8RmlsZQogCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGluc3BlY3Rvclxm
cm9udC1lbmRccG9wb3Zlci5jc3MiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RldGFpbGVkSGVhcHNob3RHcmlkTm9k
ZXMuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RldGFpbGVkSGVhcHNo
b3RHcmlkTm9kZXMuanMKaW5kZXggNmEzMTRhNC4uZmE3OTFhNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9EZXRhaWxlZEhlYXBzaG90R3JpZE5vZGVzLmpz
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRGV0YWlsZWRIZWFwc2hv
dEdyaWROb2Rlcy5qcwpAQCAtNjgsMTMgKzY4LDExIEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNo
b3RHcmlkTm9kZS5wcm90b3R5cGUgPSB7CiAgICAgICAgIHsKICAgICAgICAgICAgIHRoaXMucG9w
dWxhdGVDaGlsZHJlbigpOwogICAgICAgICB9Ci0gICAgICAgIFdlYkluc3BlY3Rvci5QbGVhc2VX
YWl0TWVzc2FnZS5wcm90b3R5cGUuc2hvdyh0aGlzLmRhdGFHcmlkLmVsZW1lbnQpOwogICAgICAg
ICB0aGlzLl9wcm92aWRlci5zb3J0QW5kUmV3aW5kKHRoaXMuY29tcGFyYXRvcigpLCBzb3J0ZWQu
YmluZCh0aGlzKSk7CiAgICAgfSwKIAogICAgIHBvcHVsYXRlQ2hpbGRyZW46IGZ1bmN0aW9uKHBy
b3ZpZGVyLCBob3dNYW55LCBhdEluZGV4LCBhZnRlclBvcHVsYXRlLCBzdXBwcmVzc05vdGlmeUFi
b3V0Q29tcGxldGlvbikKICAgICB7Ci0gICAgICAgIFdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVz
c2FnZS5wcm90b3R5cGUuc2hvdyh0aGlzLmRhdGFHcmlkLmVsZW1lbnQpOwogICAgICAgICBpZiAo
IWhvd01hbnkgJiYgcHJvdmlkZXIpIHsKICAgICAgICAgICAgIGhvd01hbnkgPSBwcm92aWRlci5p
bnN0YW5jZUNvdW50OwogICAgICAgICAgICAgcHJvdmlkZXIuaW5zdGFuY2VDb3VudCA9IDA7CkBA
IC0xMzIsNyArMTMwLDYgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEdyaWROb2RlLnByb3Rv
dHlwZSA9IHsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgc2V0VGltZW91dChu
b3RpZnkuYmluZCh0aGlzKSwgMCk7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBXZWJJbnNw
ZWN0b3IuUGxlYXNlV2FpdE1lc3NhZ2UucHJvdG90eXBlLmhpZGUoKTsKICAgICAgICAgfQogICAg
ICAgICBzZXRUaW1lb3V0KGNhbGxTZXJpYWxpemUuYmluZCh0aGlzKSwgMCk7CiAgICAgfSwKQEAg
LTE0OSw3ICsxNDYsNiBAQCBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90R3JpZE5vZGUucHJvdG90
eXBlID0gewogCiAgICAgc29ydDogZnVuY3Rpb24oKQogICAgIHsKLSAgICAgICAgV2ViSW5zcGVj
dG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZS5zaG93QW5kV2FpdEZvcih0aGlzLmRhdGFH
cmlkLmVsZW1lbnQsIHRoaXMuZGF0YUdyaWQsICJzb3J0aW5nIGNvbXBsZXRlIik7CiAgICAgICAg
IHRoaXMuZGF0YUdyaWQucmVjdXJzaXZlU29ydGluZ0VudGVyKCk7CiAgICAgICAgIGZ1bmN0aW9u
IGFmdGVyU29ydChzb3J0ZWQpCiAgICAgICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvRGV0YWlsZWRIZWFwc2hvdFZpZXcuanMgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0RldGFpbGVkSGVhcHNob3RWaWV3LmpzCmluZGV4IGZh
MTc1NzYuLjcwMTU4ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvRGV0YWlsZWRIZWFwc2hvdFZpZXcuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9EZXRhaWxlZEhlYXBzaG90Vmlldy5qcwpAQCAtNzMsMTIgKzczLDcgQEAg
V2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFNvcnRhYmxlRGF0YUdyaWQucHJvdG90eXBlID0gewog
ICAgICAgICAgICAgICAgIHJlc3VsdCA9IC1yZXN1bHQ7CiAgICAgICAgICAgICByZXR1cm4gcmVz
dWx0OwogICAgICAgICB9Ci0KLSAgICAgICAgV2ViSW5zcGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdl
LnByb3RvdHlwZS5zaG93QW5kV2FpdEZvcih0aGlzLmVsZW1lbnQsIHRoaXMsICJzb3J0aW5nIGNv
bXBsZXRlIiwgc29ydC5iaW5kKHRoaXMpKTsKLSAgICAgICAgZnVuY3Rpb24gc29ydCgpCi0gICAg
ICAgIHsKLSAgICAgICAgICAgIHRoaXMuX3BlcmZvcm1Tb3J0aW5nKFNvcnRCeVR3b0ZpZWxkcyk7
Ci0gICAgICAgIH0KKyAgICAgICAgdGhpcy5fcGVyZm9ybVNvcnRpbmcoU29ydEJ5VHdvRmllbGRz
KTsKICAgICB9LAogCiAgICAgX3BlcmZvcm1Tb3J0aW5nOiBmdW5jdGlvbihzb3J0RnVuY3Rpb24p
CkBAIC00MTAsMTIgKzQwNSw5IEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RSZXRhaW5pbmdQ
YXRoc0xpc3QucHJvdG90eXBlID0gewogCiAgICAgc2hvd05leHQ6IGZ1bmN0aW9uKHBhdGhzQ291
bnQpCiAgICAgewotICAgICAgICBXZWJJbnNwZWN0b3IuUGxlYXNlV2FpdE1lc3NhZ2UucHJvdG90
eXBlLnNob3codGhpcy5lbGVtZW50LCB0aGlzLnNlYXJjaENhbmNlbGxlZC5iaW5kKHRoaXMsIHBh
dGhzQ291bnQpKTsKLQogICAgICAgICBmdW5jdGlvbiBwYXRoRm91bmQocmVzdWx0KQogICAgICAg
ICB7CiAgICAgICAgICAgICBpZiAocmVzdWx0ID09PSBudWxsKSB7Ci0gICAgICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZS5oaWRlKCk7CiAgICAgICAg
ICAgICAgICAgaWYgKCF0aGlzLmNoaWxkcmVuLmxlbmd0aCkKICAgICAgICAgICAgICAgICAgICAg
dGhpcy5hcHBlbmRDaGlsZChuZXcgV2ViSW5zcGVjdG9yLkRhdGFHcmlkTm9kZSh7cGF0aDpXZWJJ
bnNwZWN0b3IuVUlTdHJpbmcoIkNhbid0IGZpbmQgYW55IHBhdGhzLiIpLCBsZW46IiJ9LCBmYWxz
ZSkpOwogICAgICAgICAgICAgICAgIHJldHVybjsKQEAgLTQ0OSw3ICs0NDEsNiBAQCBXZWJJbnNw
ZWN0b3IuSGVhcFNuYXBzaG90UmV0YWluaW5nUGF0aHNMaXN0LnByb3RvdHlwZSA9IHsKIAogICAg
IHNlYXJjaENhbmNlbGxlZDogZnVuY3Rpb24ocGF0aHNDb3VudCkKICAgICB7Ci0gICAgICAgIFdl
Ykluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2FnZS5wcm90b3R5cGUuaGlkZSgpOwogICAgICAgICB0
aGlzLl9jb3VudGVyID0gMDsKICAgICAgICAgdGhpcy5fY2FuY2VsID0gdGhpcy5wYXRoRmluZGVy
OwogICAgICAgICBpZiAocGF0aHNDb3VudCkgewpAQCAtNjA2LDEyICs1OTcsNyBAQCBXZWJJbnNw
ZWN0b3IuRGV0YWlsZWRIZWFwc2hvdFZpZXcgPSBmdW5jdGlvbihwYXJlbnQsIHByb2ZpbGUpCiAg
ICAgICAgICAgICB0aGlzLmJhc2VTZWxlY3RFbGVtZW50LnNlbGVjdGVkSW5kZXggPSBwcm9maWxl
SW5kZXggLSAxOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICB0aGlzLmJhc2VTZWxlY3RFbGVt
ZW50LnNlbGVjdGVkSW5kZXggPSBwcm9maWxlSW5kZXg7Ci0gICAgICAgIFdlYkluc3BlY3Rvci5Q
bGVhc2VXYWl0TWVzc2FnZS5wcm90b3R5cGUuc2hvd0FuZFdhaXRGb3IodGhpcy5jdXJyZW50Vmll
dy5lbGVtZW50LCB0aGlzLmRhdGFHcmlkLCAic29ydGluZyBjb21wbGV0ZSIsIHNldERhdGFTb3Vy
Y2UuYmluZCh0aGlzKSk7Ci0gICAgfQotCi0gICAgZnVuY3Rpb24gc2V0RGF0YVNvdXJjZSgpCi0g
ICAgewotICAgICAgICB0aGlzLmRhdGFHcmlkLnNldERhdGFTb3VyY2UodGhpcywgdGhpcy5wcm9m
aWxlV3JhcHBlcik7IAorICAgICAgICB0aGlzLmRhdGFHcmlkLnNldERhdGFTb3VyY2UodGhpcywg
dGhpcy5wcm9maWxlV3JhcHBlcik7CiAgICAgICAgIHRoaXMuX3VwZGF0ZVBlcmNlbnRCdXR0b24o
KTsKICAgICB9CiB9CkBAIC04NDUsMTEgKzgzMSw2IEBAIFdlYkluc3BlY3Rvci5EZXRhaWxlZEhl
YXBzaG90Vmlldy5wcm90b3R5cGUgPSB7CiAgICAgICAgIHsKICAgICAgICAgICAgIGRlbGV0ZSB0
aGlzLl9iYXNlUHJvZmlsZVdyYXBwZXI7CiAgICAgICAgICAgICB0aGlzLmJhc2VQcm9maWxlLl9s
YXN0U2hvd24gPSBEYXRlLm5vdygpOwotICAgICAgICAgICAgV2ViSW5zcGVjdG9yLlBsZWFzZVdh
aXRNZXNzYWdlLnByb3RvdHlwZS5zaG93QW5kV2FpdEZvcih0aGlzLmN1cnJlbnRWaWV3LmVsZW1l
bnQsIHRoaXMuZGlmZkRhdGFHcmlkLCAic29ydGluZyBjb21wbGV0ZSIsIHNldERhdGFTb3VyY2Uu
YmluZCh0aGlzKSk7Ci0gICAgICAgIH0KLQotICAgICAgICBmdW5jdGlvbiBzZXREYXRhU291cmNl
KCkKLSAgICAgICAgewogICAgICAgICAgICAgdGhpcy5kaWZmRGF0YUdyaWQuc2V0QmFzZURhdGFT
b3VyY2UodGhpcy5iYXNlUHJvZmlsZVdyYXBwZXIpOwogICAgICAgICB9CiAKQEAgLTg4Nyw3ICs4
NjgsNyBAQCBXZWJJbnNwZWN0b3IuRGV0YWlsZWRIZWFwc2hvdFZpZXcucHJvdG90eXBlID0gewog
ICAgICAgICBwcm9maWxlLm5vZGVzID0gc25hcHNob3Qubm9kZXM7CiAgICAgICAgIHByb2ZpbGUu
c3RyaW5ncyA9IHNuYXBzaG90LnN0cmluZ3M7CiAgICAgICAgIHZhciBzID0gbmV3IFdlYkluc3Bl
Y3Rvci5IZWFwU25hcHNob3QocHJvZmlsZSk7Ci0gICAgICAgIHByb2ZpbGUuc2lkZUJhckVsZW1l
bnQuc3VidGl0bGUgPSBOdW1iZXIuYnl0ZXNUb1N0cmluZyhzLnRvdGFsU2l6ZSk7CisgICAgICAg
IHByb2ZpbGUuc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBOdW1iZXIuYnl0ZXNUb1N0cmluZyhz
LnRvdGFsU2l6ZSk7CiAgICAgfSwKIAogICAgIF9tb3VzZUNsaWNrSW5Db250YWlubWVudEdyaWQ6
IGZ1bmN0aW9uKGV2ZW50KQpAQCAtOTcwLDE1ICs5NTEsOSBAQCBXZWJJbnNwZWN0b3IuRGV0YWls
ZWRIZWFwc2hvdFZpZXcucHJvdG90eXBlID0gewogICAgICAgICB9IGVsc2UgewogICAgICAgICAg
ICAgdGhpcy5iYXNlU2VsZWN0RWxlbWVudC5hZGRTdHlsZUNsYXNzKCJoaWRkZW4iKTsKICAgICAg
ICAgICAgIGlmICghdGhpcy5kYXRhR3JpZC5zbmFwc2hvdFZpZXcpCi0gICAgICAgICAgICAgICAg
V2ViSW5zcGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZS5zaG93QW5kV2FpdEZvcih0
aGlzLmN1cnJlbnRWaWV3LmVsZW1lbnQsIHRoaXMuZGF0YUdyaWQsICJzb3J0aW5nIGNvbXBsZXRl
Iiwgc2V0RGF0YVNvdXJjZS5iaW5kKHRoaXMpKTsKLSAgICAgICAgfQotCi0gICAgICAgIGZ1bmN0
aW9uIHNldERhdGFTb3VyY2UoKQotICAgICAgICB7Ci0gICAgICAgICAgICB0aGlzLmRhdGFHcmlk
LnNldERhdGFTb3VyY2UodGhpcywgdGhpcy5wcm9maWxlV3JhcHBlcik7CisgICAgICAgICAgICAg
ICAgdGhpcy5kYXRhR3JpZC5zZXREYXRhU291cmNlKHRoaXMsIHRoaXMucHJvZmlsZVdyYXBwZXIp
OwogICAgICAgICB9CiAKLQogICAgICAgICBpZiAoIXRoaXMuY3VycmVudFF1ZXJ5IHx8ICF0aGlz
Ll9zZWFyY2hGaW5pc2hlZENhbGxiYWNrIHx8ICF0aGlzLl9zZWFyY2hSZXN1bHRzKQogICAgICAg
ICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0hlYXBTbmFwc2hvdFByb3h5LmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9IZWFwU25hcHNob3RQcm94eS5qcwppbmRleCA5Mjc4OGZmLi42YWExZTYxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0hlYXBTbmFwc2hvdFBy
b3h5LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSGVhcFNuYXBz
aG90UHJveHkuanMKQEAgLTkxLDYgKzkxLDcgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdv
cmtlciA9IGZ1bmN0aW9uKCkKICAgICB0aGlzLl9uZXh0T2JqZWN0SWQgPSAxOwogICAgIHRoaXMu
X25leHRDYWxsSWQgPSAxOwogICAgIHRoaXMuX2NhbGxiYWNrcyA9IFtdOworICAgIHRoaXMuX3By
ZXZpb3VzQ2FsbGJhY2tzID0gW107CiAgICAgLy8gVGhlcmUgaXMgbm8gc3VwcG9ydCBmb3Igd29y
a2VycyBpbiBDaHJvbWl1bSBEUlQuCiAgICAgdGhpcy5fd29ya2VyID0gdHlwZW9mIEluc3BlY3Rv
clRlc3QgPT09ICJ1bmRlZmluZWQiID8gbmV3IFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RSZWFs
V29ya2VyKCkgOiBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdEZha2VXb3JrZXIoKTsKICAg
ICB0aGlzLl93b3JrZXIuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsIHRoaXMuX21lc3NhZ2VS
ZWNlaXZlZC5iaW5kKHRoaXMpLCBmYWxzZSk7CkBAIC0xMDksNiArMTEwLDggQEAgV2ViSW5zcGVj
dG9yLkhlYXBTbmFwc2hvdFdvcmtlci5wcm90b3R5cGUgPSB7CiAgICAgZGlzcG9zZTogZnVuY3Rp
b24oKQogICAgIHsKICAgICAgICAgdGhpcy5fd29ya2VyLnRlcm1pbmF0ZSgpOworICAgICAgICBp
ZiAodGhpcy5faW50ZXJ2YWwpCisgICAgICAgICAgICBjbGVhckludGVydmFsKHRoaXMuX2ludGVy
dmFsKTsKICAgICB9LAogCiAgICAgZGlzcG9zZU9iamVjdDogZnVuY3Rpb24ob2JqZWN0SWQpCkBA
IC0xNTIsNiArMTU1LDI3IEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3JrZXIucHJvdG90
eXBlID0gewogICAgICAgICB0aGlzLl9wb3N0TWVzc2FnZSh7Y2FsbElkOiBjYWxsSWQsIGRpc3Bv
c2l0aW9uOiAibWV0aG9kIiwgb2JqZWN0SWQ6IG9iamVjdElkLCBtZXRob2ROYW1lOiBtZXRob2RO
YW1lLCBtZXRob2RBcmd1bWVudHM6IG1ldGhvZEFyZ3VtZW50c30pOwogICAgIH0sCiAKKyAgICBz
dGFydENoZWNraW5nRm9yTG9uZ1J1bm5pbmdDYWxsczogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgdGhpcy5fY2hlY2tMb25nUnVubmluZ0NhbGxzKCk7CisgICAgICAgIHRoaXMuX2ludGVydmFs
ID0gc2V0SW50ZXJ2YWwodGhpcy5fY2hlY2tMb25nUnVubmluZ0NhbGxzLmJpbmQodGhpcyksIDMw
MCk7CisgICAgfSwKKworICAgIF9jaGVja0xvbmdSdW5uaW5nQ2FsbHM6IGZ1bmN0aW9uKCkKKyAg
ICB7CisgICAgICAgIGZvciAodmFyIGNhbGxJZCBpbiB0aGlzLl9wcmV2aW91c0NhbGxiYWNrcykK
KyAgICAgICAgICAgIGlmICghKGNhbGxJZCBpbiB0aGlzLl9jYWxsYmFja3MpKQorICAgICAgICAg
ICAgICAgIGRlbGV0ZSB0aGlzLl9wcmV2aW91c0NhbGxiYWNrc1tjYWxsSWRdOworICAgICAgICB2
YXIgaGFzTG9uZ1J1bm5pbmdDYWxscyA9IGZhbHNlOworICAgICAgICBmb3IgKGNhbGxJZCBpbiB0
aGlzLl9wcmV2aW91c0NhbGxiYWNrcykgeworICAgICAgICAgICAgaGFzTG9uZ1J1bm5pbmdDYWxs
cyA9IHRydWU7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICB0aGlzLmRp
c3BhdGNoRXZlbnRUb0xpc3RlbmVycygid2FpdCIsIGhhc0xvbmdSdW5uaW5nQ2FsbHMpOworICAg
ICAgICBmb3IgKGNhbGxJZCBpbiB0aGlzLl9jYWxsYmFja3MpCisgICAgICAgICAgICB0aGlzLl9w
cmV2aW91c0NhbGxiYWNrc1tjYWxsSWRdID0gdHJ1ZTsKKyAgICB9LAorCiAgICAgX2ZpbmRGdW5j
dGlvbjogZnVuY3Rpb24obmFtZSkKICAgICB7CiAgICAgICAgIHZhciBwYXRoID0gbmFtZS5zcGxp
dCgiLiIpOwpAQCAtMTc3LDYgKzIwMSw4IEBAIFdlYkluc3BlY3Rvci5IZWFwU25hcHNob3RXb3Jr
ZXIucHJvdG90eXBlID0gewogICAgIH0KIH07CiAKK1dlYkluc3BlY3Rvci5IZWFwU25hcHNob3RX
b3JrZXIucHJvdG90eXBlLl9fcHJvdG9fXyA9IFdlYkluc3BlY3Rvci5PYmplY3QucHJvdG90eXBl
OworCiBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90UHJveHlPYmplY3QgPSBmdW5jdGlvbih3b3Jr
ZXIsIG9iamVjdElkKQogewogICAgIHRoaXMuX3dvcmtlciA9IHdvcmtlcjsKQEAgLTIxMyw2ICsy
MzksMTAgQEAgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFByb3h5T2JqZWN0LnByb3RvdHlwZSA9
IHsKICAgICBjYWxsTWV0aG9kOiBmdW5jdGlvbihjYWxsYmFjaywgbWV0aG9kTmFtZSkKICAgICB7
CiAgICAgICAgIHJldHVybiB0aGlzLl9jYWxsV29ya2VyKCJjYWxsTWV0aG9kIiwgQXJyYXkucHJv
dG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLCAwKSk7CisgICAgfSwKKworICAgIGdldCB3b3Jr
ZXIoKSB7CisgICAgICAgIHJldHVybiB0aGlzLl93b3JrZXI7CiAgICAgfQogfTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMvc3Bpbm5lckFj
dGl2ZS5naWYgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0ltYWdlcy9zcGlu
bmVyQWN0aXZlLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNzU3NDVjMjQ0NDhmYzE4MDVjMmJjOWQ3N2VmZmNi
NWYzZDVhY2FmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAzMjA4CnpjbWMoaWN+RGM9OT4qYGFP
T3xgfT5Ba0B3MVpxR2NMTTtSWiVCbih1MDBDSjkxalU2STYrfWZAMWNFP1ZMSVNkZQp6dW8qeFNr
e0ZeRDVmeypFNWt5ZG5nSD1LOCgrOUx9eFl4MUlfSTJLU1V+N2x6emkrMVJ7Q1Zjd3glMnMpQDkj
VHYKel88e2JlWnQta0A0Wkg8XyhmYmJwME1IKmprKGBweipyTHNzbVZSIX00RzBRM2IqYGBYQF5E
TEFKSlhCPmc1ZE8tCnotPElYUyYzR3dXPEl9Y14qY3BqdzNHRGJDQHRIZjU8Mzt2fnlTRjYrbU9u
IVBaVGdfKWY2JiFfayF5SX5WU2RaKAp6eHVEN1AqM3l+cFhNUEdta0xMe3FDZFRXZ2g5MyhCUXRN
YGElKE58bjxnSlc2djZRU153cjB8Zj4rSWxnV3RWMTsKenJNVHdlSChWeFpvYD59U211SiNzUFlT
Zk57NTYyTCNDejVKV0R9XithPUJaaV5WenI/dUN8NmJ2ZXdOUFUhRlc2CnpxTFZXK2BDaFJRWjk1
JColbUAkYFRrSiE7eSVieihiWC0lTSs9RUpqTDlNUm9rY1pCdzNOVnl2anZRXzd2U3tGKgp6Szkk
Qyk0b0VGSWtQXzx8a1l9R3k0M3dPeXFoMyU1emI0azEyP3M7e3chMT9PZEhtUTdfUHQqQnkjRW16
LWpySlcKejIkK2YhXzl4aThKQC1vOHt3fVgmT1dFNzRsTlJfTEpHXnFWY3BMREFAM2Uqd0khdEQ+
UHRDQiRZTnYofCRORD9kCnpvQmdZOVgoRXQqV3UlYjdLTn09SCpaY2Z2dSg0UypWZksybEc8SGBl
PnEmKk9BMldzNmFUdU14cykzMTFyWUBRdQp6V0sqRXlrUiMqUSNTdypfM0wqZmZJaGk8eXBac29y
R3tXU04jTHp4RWwoJVJIUzRPTCM/PTBoUSYqdFdXQzckYDcKeilTfnM4XnxGTk9PcjR0RjQkLXBP
SFNMRXhXTm9NRyowKnIkJiQ3UGFwUjhzWF5rSyF+Q1ZWakEkXzRlTWg5cSR4CnpvQGlFb2dfMmQj
ZGdFJXNlKH4pRDFePDUwV2J9WmhCbVhKenFVVHYkMGBZaSNONXZ+KFAlQUhleDQ4RFI+ZWpVXwp6
VXp+OXJYQVc3Q2UjYS14Iyh6MURafGdYWHxKYWY1RVpRSmxRbWMqX0pmVnpTUjtKdCRUJEo1Xikw
MGlDQTh7VEoKenA8ZnVNYVl2WjhRWU1XWitgVHs+TkdnODRPRkhhbDd+RCloM0JofUNUQCgkP2hj
PDRiYjBgSEhKSz49cEVKI1E/Cno9MFQ5ZVZwMHliRDI3RiltOHtge1RRZS1PcGQ/Um42Tmg+enc1
X2VBaEZZeGBZbU0yOEZPTTRjdztRI20rY2NhVwp6Xk1tSzs9bHdlcCVOK1paVHpRRV5yb1otOD5g
NGBJdTsyQWtYNmVfOEdPR0J7bH5wQnAkKFpOO0JmdW5aYVBaPVQKekAxRm8yN2cqMC0tI21gPj4/
b1ZVdWpuWVFaKUp6JFdNUVYocl9TanQ2Jkw1c3xDaik5d3R8YFR3PSo8VCFgcXBECnpRUytNWCp0
YzZGV2J3KktwTHV0K2JCVCF5ZHNmKC11R01hKHl0OUAhVEZGNnJvTlNTd0JoT15GPFdkRV9ASmpD
Mwp6WjZKdWJiaXY9M2RkSnNOakFxU0k4NV5CVTB5JHkjQTVpOXxxdX5wZEZER1NsXk5+Y3lOR1R1
UW8/KUpxIXZXPFMKem5+MGBuMCY3KkhGdHRLaj1BfH1iYG9xbWZ1cn1Tezx0P1pBYih8ak1wMG5x
PGRSaW1WNiU+JnlidFo8MnhxK0FUCnp5UndxeFA9RHF5TDVZLWEke0FXeDJ9czhfUEVLWUNuayFP
STttQDAldTFNVHU7OGZneHglKEhkeVpHZTJ0OSRQXwp6WjV7cVJxKSs9dGBrfnFFQUZraWRGZzB2
cj4hJVpLc0k0THhgdT95OHN5OVhIWnUjWkUjM19uYG5rSGRKJV5aJTQKeiNFUCQ3QkM9akBCfiFj
KT5pbzNWS2pGKE4xZFBYNztaUnVsPH48enF6RzRSLXxGRjAlUUZBOGV0YylCPEJkdkFWCnpnT0tA
KUwoX2NXXylYQGlQP3A2YFV6P0RJTWduYlctYipiXyt0U2RpTClEcl9KdH1PfkVJWmlnMylXUEhm
RWVhKAp6UUdMcCtydzZTUnNwVDlKKHUqTl44WWZQd0UhdW1vST12N29eamw4diNAY3xgQzwqZmJr
YW4tYChXQzBpek5PWlcKemYpWWJzYyNnLThkejlXZVBEbU89bztCPUhRYkFoR2tEaHlOS0FaMHxf
bUFzYFhEZkkrUXZlYXwoKjxBXiM5PXFyCnpSbmdVWXp3bVgmcyQ9LUtfXlYpJXFWJTdpI34jenUt
WCM+JkJ8UW1PQDBTJGUmSiplUTE8V2ItZUlVS2kjUG1vagp6MzBnZnp4RTdVX09WWD1sJk1NbD1p
engqXlFJQiU2Z3NlfGlZfit4VjlhOHBMPn55bVVSQDR3a1R8TD1qVlhANHUKent0JSpTcyViP1Vy
RU47MTh6fHdGbzVMc3k5IVBaUz5PemB2MURpKTdfbj41fVZqbHwtXk1SMF9RQCpLMEM3cTA2Cnoy
cHpuPkYkVVV9Vjt4MnYhP0pAUHRQQklMVnlJRlQ+STklO0JmV2slLSRELStzXzE5ZGpQNkhRPWJN
TkNRcWFnRQp6VFVgM0xKPDs+fmRhWFk7MFcjYWV2c29VYihAfGlYc3c0Vz10dUM8KHZva3B8O2M/
cUtFWmFgR3h9Zigob1ptPioKemtDdjE/JEVlVXtfa0YzMm5eSWY/ZS1oSHYrSzBDOzE9SnNPclRX
eCtQKXs3U3ZZe0I4KV9yI2A/WXUmMEUpZ3VeCnoqJEN0JTFYeHhNWFhMRHVtbio/KWdgZ0khT2Nj
QTZ3emA5djFwKXtgOzU9YGghOVlIPUlMOXJJZDwtRntpUV9DXwp6RyE4bSNGIzArKEpUZ0hQP0lC
PThYTCFENzJ7c0IpdWM0aVN3ZkhFOFVxekE5NVQ5YFp4ZHpHdVBkPiQ9ZC00I2sKekgjcXM0bVgl
N3BwWEAmRz5La3VUMiY7cVduXnkoJXEySFUzSmUmWDNVJX01OEdwMiMlbTk5REI1PUZUKHdeWVQ2
CnpESDQhQyg5TlJJVTFQfVM9NGQlbypaeyZhPFBoUlI+RDJDSVl7NVY/NUpBWW44ZXc9b2Y/PFFg
NFMrZztSTFNBJQp6ODFuey0hdmxqUT09REN9SzB6TW41YGZucTs3ez1HMHI/TnVeVCojbDltcTds
and+NWNnXmVHYTgpSiRzcjNeaEMKekUhZ2oxXnwxO212bUx6dEtSSi1QUV4tWiQ0JTQjX0BeVG1+
Mi1XTTApOGghRjE0RnU0QnJxWElzTURqY1o9Vj9pCnpnOGRzN2Rja0BGS31KeW5HTSN9VEZoQVAl
Q2R3UXxhTjUwNjxtU2pFMFN+JEh6PzxMVyZ3TCpWb31nOTBKTig2MAp6MD0tbXxVUVJ1TzU4OWI/
eG05YUUxK1MrNChUVVhBNjhANHdtPHxHclZwWXs4VnJOPSlKeXhTRXVXVHFpI0ZNJkgKeiE1SS1L
M1YjclI3PnpSYCRYeko7NDlqb1lMJVJgaTBWbzR6Pio8dCpVWFc0T2pVWU8zM3xPMUYqIUM4fTlR
IXVWCnpPLXthYjZxczAqJSE2LXtpSylueWYoTXRNLVhUUWF2MGwtQy0wPVJRJmxsPW1wckYtLSFX
Y1E/YCo5Rnh2LXpMPQp6UGEmWFNtbkVoamllTWc+dlV+dy0+ezJHJj9qe09WQHhBcHMqaWtyKVg3
ZDcqJXkkVXxpKTMyXyllMm5WTi1mSGMKelNKYipUP3BEPEA4WDlZS3ZWIU87Y2V3K01BYlpfSUA+
dyk7TStZeG1rXygqYUNZUEFgQzNHYm4+bWEpVFJQYTE3CnpWX3tRQVhDVmw+Z24ycWRRU080VjBz
ZXsheDBRSEVBQlElPHp4S15qLWJCKHtWNHMwP19zdDZYNFpwYjEraDFHQwp6WjBDTUxpazUkejBD
WUN8cEMldipgPmg0M3tTME1MP35lRFltISUzXkRydWM2T21yWXtvQEJfPjdHPWByMT5YcmMKenpF
O2kwVCZTZTBwOW8/WWRjNSM/WXAyNUFNSSQ8SFZDOWshYVpTU0FKfn14KW90KXl9IWo1cjkzSWpi
aDZgUUFfCnphT2ZnR1lJZGtmQzNsTV5CYnY2UjdQbUhvUSojUmdRbnhwQ3NfSCRXPnYjP3s1Un4r
fEZqJG14e1NDUXg9VyZ+VQp6eFlSNXBkMHt0eF84Y3RQZVNKezRGczJXNSQ4JEcpN0h2MVklayZ8
ezZsQHZ+eV4kZ1MtZ0s+QVdlLWZMWmlzI2MKaGE8QV9sKGZfY0okVCFEKkhEc1VCMTFRQ0xkSUNJ
Vi1UQCFoZSpyTXlze0hAfQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9JbWFnZXMvc3Bpbm5lckFjdGl2ZVNlbGVj
dGVkLmdpZiBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW1hZ2VzL3NwaW5u
ZXJBY3RpdmVTZWxlY3RlZC5naWYKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMWZmYjE4YmZkOWRhZTU1ODFkNDY4NmI1
YTlhMGMxNjhiMzdjZDg2ZgpHSVQgYmluYXJ5IHBhdGNoCmxpdGVyYWwgMzIwOAp6Y21jKGlYOzQj
SDk+cEpkRkU3aGBJe0lGKTFBI1VtNXV0NGVEbTFHS0Fwezc+QXxNRWUjSGIpRCR8NFgxIVYoZ1kK
ekhINks4bDBhZ0p3dXJjWlRlRkJESFotPF5UazhQYlpuKEU/a0tOO3AxNVFvVlIxRmBkWU5+cWYk
Nkw0VnQ+NXtkCnpiRSs9UyRJSDx2bUkqTHt3KmE3U3xMKV8qazdzKUJqRXBfSmFPSDw5LSVVPXhf
fnBUbUZXV0FSQU1MISspcW41cAp6RllpQm1fIzUhQVclZHpTI3w+R31hUyFDS3V3akQrR3k3KExI
fDhYNWpaTjdxV1R3VFojNCUlYyNIUX58ajF9NiUKekA3fFVPbkVlSihzNTdVUSYpeldtQzsmWlBG
ejZFPnRDPTJ0RVp8RWw4b2Z9JT0zcyltQklNKzlsNGl5RkRRbVg5Cnp0P2t1YT5PRSRucy1BRHpN
dVlffTdYNTZGTDR5cyEkSio/Skgpb21xK0olVipQYD1xcHJ4NSNkUVAmLTxibn5RNQp6bnxvZktJ
d189KSgkYVp1NWZGN2Q0YSFnUjc4SUs5Z1djV2FZKVYqRUx6SypnTExoPUludWZ6Sjhva242U0ZB
cEkKenRnKndpaih6NUkzYWlwUHgjJlByZ3NYUnNPKWxQRmJoZF9hTmlPJlgtKUpsdDI7Z3BhaFUj
Kjc1eiNpP1pnPGBQCno5MXpyeVQ9KW8+anVRMDYqKkhDU09XeXUyPWdeanR3X0IlN3ZEPztJYEZQ
PHI7NDlBPVcmVj9XZFhfeitXcVNCWAp6Z3FKPDcoV35PN0l2RE8jZ2IzKW9iSDAtRS1PckV0PV5L
VFUjOz0hM0I2ZylTb3xHeTJQKHozcmgwPHRpPng/ayoKemJkVFhkQ0spO2IrMGoyTjRiRT91PEs3
cmBtNFJLKnNlQWp3VT9VYm0xbnJ8aUlaSmwxclBNT28mSnkxQ09tO1J7Cno8ZUtZQkRUcWBATzUt
WmlIN1peIU05cFlidztwTWVIbEx9OUpqQVgmJEdFXmRSbXNxNDB9RGtCKmcpTFhPUkNGdAp6MzhH
I3MtbmpORUlpc3hVYGNUfHsoTzhfRWNmVmpOdFk2KWhgeEpRNV4oLW41ZTtuQ1hfNml0aWtybHNO
VEt6PzMKeih9cUp8b3BxY3I4Wjt4IWg1dkV9LV55K1Z8RklwPFVLbE18Ujs+eWlJSD9GKFFLSCE0
U0NIOXYhPEM2Z2pAblE3CnooPUpVPSpgcjJRNStmP3B1WDluMDUyNWgmRjNCKWdIP1d5QDNMQF5v
R0AoPV43dXZMcSN2PG8hWTl8aTxXSi1Xagp6UTVUI2I1KXJjNDE+cDx8d1AteVgrP3I7WjBWVE1T
OGQjTFcwbk49dFJnX0F0czcwU0N8TjVBSWYyK1JiT3RZSFIKeldwZU81P1Y/dihlMkhESmYtTmYm
T1NSVzdNNFZGTTJtMmZecngkLUNGUUpHSVV0TD4tNzJSXlplLXhNazRpNUFACnpgMCl3UWM4VCVh
QHkrODEqUzM7cj81YytCXypReChOKlpXcmFyKFQqT3hgblo7aFlZYmIkPV5lSnczZUxoI1Jffgp6
djQlTzs2ZkJLWmdtXjV0KD1zMlF5dEhTdjwoY1oxdD5rd1d2VStuRk5RO3MjO281TndjOGYyVShl
a2ZtLXg+cGEKempnfkxeVll6IzNIQ2I9bTdARD9lbTRPY3tAY3NreHs4U2BwKGFNI0NPbTszRFp4
PHJyNXgxd0FXTXJ7RzhPdCliCnpwJUYpJFIweHEkQ01qYEs9fjM7RyMtbkpuPUUleEpYTHZRTkYy
JGE2N3VpfkJKPktDUG9HN3UhMk1nSWdtJGtieAp6NUBiK2NgWT11b2s7UDtVRS1NRWx3PkN7cFck
K3V6bDIycEw4PWtJP2tJfUtwIyROOUotUiV4R2IkNGoqP053V2MKenp4M35JbmNNeEojJjR+Zzk9
NWROWUp9MCU2KnlobjdaXi0mQ283IUl6VyVFeU51RjJMQVZ7bTQkOHIjeF5JRGIoCnpFaDVkT143
cD4mcExjdTNlTyY+QXVeMXg9M019MmNoaEBAUlh6U3E+N199dkktcWdHYEEpX2dUNFlxcT01XnJm
aAp6aVlHQlAjdn5jYUZ4fX5DPjBlaW1CTXBzdkRhOSNVPktaa09OP29yLTFXb0R7MmlyWnRzdFNK
KU1WKEQ2UGFBaTIKekE+fjRxajc1T0VROC03dmlqezFJYmYyJEcmND0+MkRgfWwqR1l9Q2ZIYVk7
TCtedT1ec1BjK3V2QmV8YmM+Zm8hCno2QT0/RyNrV3UzO3lSJmc2KkdYNG1sRlE3PnQ0JCo3SkFI
fGQ7RClfM21+fDRyVTEtK1M8Sj9vM1l0cEc0Y2UlJAp6SUY1YWZ6NDg7dml+c1V2I0JuWTRVMGh5
RyFqbUE/ZXNLWTJLYmVZTUxSVXErX28zdyo3Iz9qUks8bmxTSFh6YmMKemFjWlUxVVAqbn5sYSUp
PjxycGhOITEhJFNDS2UmbEhmZipmUEE1eDBjQCstVilSSjVsN2ZQTEs1NXZsYXN3VEt6CnooeVkp
c2ZucnZ2MkB5ZlMxTXlCQjlkSU0yVnsqdShFYCglVz13Uys/OXVWQWgrQXxxMXI7JCg7cmh5fXkh
bDcraAp6N0oteW9Ycnx3VEhHI2tvaVlTeDtze3JLSVhnQng5VGotJSY4VFFQQS11WS1+cEA5JH1f
Pkx+SSFYJHMlNlNsQ28KeitoV2NwYz1tNVBOTUB8U0cqa3VtWmRfTW45Y1hRRWJrYiRhQX40Zmh1
YGFMc01IRnxtOyU3NSpqJExUTGl1PDBGCnpgantqS3BJLSUzUm07UGhtJVZFYkkjTjdwVF9gN3lu
T2w8ZTRJQSY+T31RdStuMjdtSElGQGBfNWV9QT02NFNFUQp6JFZ3R3BySlA/NG1kQUA2aWtxQ2xe
Z0tRVSFeOWtTaiFzODl5Zm4peGhqYmghckhHPFRpQVdUNU15TDAqckBOJHMKejItMVpVYj9yZzkh
ZSFfPEspSHNyXkVZN1FDXm0kXiNyX0A+SUQ4RzFgSjglK0wzZF5UWmZgS3N3SDhKKXsoaD9TCnpx
TjhXNUt8V0ZDT1dWQkdqfGFgd2dzPVZ4ZXg4VXYxMXV8ZCVufXZKT0JMRDBOPitGUXA4JGVScnVv
aWxUYG9KVAp6ZysoRmlLO2tTcDFiZEwlVFh4ZDdwckExYiF6NGVvQVNmM2AoRTtRLUs8UzRvV1cq
OEY9c0pRQ2B2OzFVa3pVfEYKelBVYFJBZ0NoXkhDcz0yez4/aWQzPEx7c0xyPDt0eCVMYkshNjk/
eXE4PX1qfWdIT2x2X1M+NHpTJXQ2dlBafiZeCnokKW9+eituTVp4b0dkeTZMYlRlIylGPlFvTCpX
aHYwZ1RITVh0VzU/dikzMmAhTV5DbFpiWXBQQ24xT3FwN0ZwUwp6bT5YdHcxMkd6aEczd283X3tR
aUlQOEBYTmZIIWBgb19SanZLUzMmaGNpNCp5ZTYyKkNUMXEqSzRPcEE3KiVqK1EKejJadkpUPyEt
U04yczFfP0I0fFpyazt0QX1TJkxSRk8zVWt0NHw2Mlc2bVY3dTFSO0pCMEBtd2lnJj1oeHFfWWd9
CnpqMUh9TyphMEItOCVOVH1pYF5pLXJXMXhXOzROVDdgY2tXI3UrZ3BXZVZrO1pvNXo2M3dUVD8h
TyVnc0d2V0VaUQp6JUcyQXBARStxOD9kUnpDSnN3fUZ4YERoVjJRcSMxc09Pd1BjPUE3KWZRKClk
OC02TisxI0klbE1NUW12QjV0ZWAKeiZzV0JGKlkwNDNWbmlnOTxDOT5yT1RiP3UtTkxWd1ZgNHsy
TDF3SkgrT2RBT3ZZSzkzVSF7QGVnO2hBcVk+Njx1CnoqViNYcEtfI2BkYVo8KEV6fVpleGt1Zil9
QmpJPSgkcE41JTdsQno3ViVwbUNMQ18pNClpI3VUMmFORmNsMjFDVgp6IVRmdCEpSmZqOFo9WjR8
NlcjKipiY3tRMVJAKzRYP20lbU9aNj52dnt9fn1uX1RNQlI2I1p1bFF1Xm8kLXxpam4KeipSNHFB
SkNzd35tOGtINSZqUnRGcCVyMzhVRXBgeWBAe3duNHxTanJoQ2J0bSkzc1JzXlFMeVdqZX1adkxk
VkReCnp6QG48U0pIMGVnWUFQd28pYDF5cjU5ajsxIzF4dk9BakUoclR1TnF1UVltdV5CZjt3Q2hD
QCF4eD5iI2I9I1orbAp6cDxQKyk1Pn5ecHJHbFdpJVluYHlwWU47N3chVm0yXzdSSlh7U3l+PVYm
fjJpI2spcmExZEdGYUwxISNHYGluNUAKejthIUZnQXRRZHdNOE5lVktKY2J2LUM3JTlUNnRhZzg8
MEorY1UxZStWbSNMYl5IaF5PI3QkSDVgPFZvfCU+RHlECkd0JHpVOUlsNiVXCgpsaXRlcmFsIDAK
SGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0ltYWdlcy9zcGlubmVySW5hY3RpdmUuZ2lmIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L2Zyb250LWVuZC9JbWFnZXMvc3Bpbm5lckluYWN0aXZlLmdpZgpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zMDljY2Ew
YzM1MDM2NTlmYTM1YTQzNDNiYTkzZGE3ZGZmNDdkZjZlCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJh
bCAzMjA4CnpjbWMoaWN+RGM9OT4qYGFPT3xgfTtsMDVJMHlROEpwJSNKKVdtT0BCMEFVdnAxVm15
fmFGPDBPMiF0Z2hBWnJMfgp6S3VJN20xUz13X3B3JUtzS2Bqb30tOUNMbFRTZVVLKmt9N1g/PihA
ISF9US1iKHw3KG5iTUQ7dmU5cmd4b2pIN2UKelVsLVJ6N1FoMUQwS29NMEd5bmoteX1nOzRuTDNA
V3RnT3RAKEo/cVVjekFldGUwO3BLdnk7aFdmKj80MT1DQF99CnpaIT5QbioySmB9QjM0Rm5TYHNV
OU1gR3IjeUA/fEc8VVFOPTArdjVSMEIhYzU8JHVzJVVjYEU/UzE1MCNKcUkrSgp6LUM4bUN7b0dG
aD0mfHZyZXshT0JYNiYoMEFobUFzI1oyMTVOblhsYGxQayNEbUZ1Vk1JOEZgQG12P0xTUyZDfmUK
emUkNm9AOE18OCNiR1N5JF85VEJoJVV9SnQlZX5ldStHXytBVENRQDlhNUBgei1OamJGSy1Sa1g7
KX52c0IwNCFFCnpsa1hWPShZRGl9IVZFdVF2QmQkeiVUdkxqTSNWTTkkPSNfVzc7TSl6QTkyP2pS
RFN3V1AzTihlOSpZTGY9fkhSIQp6WVFOTnlMbiQjSGV0R3UhI0JqLShJX2Q/NUBKbksmblEkYjh4
N2BoRCRtN1N2K1lmbCZfeGVYalNhV0xlQlZaO0AKeklGd31YYHBoJFJgYGYoM1RndSpTb3dDNjEr
VG9TQWk/OyF2YE9Jb351ZnUzUWBeKzRCTyM5NSgoSExKUmRXJno+CnpPLShwNXE+SzxVXy02eTg9
TFZofjNwQktkQ2UyPGdsZzh9TVdLTEhvaGNGWH02XkdJMz5sI2RQJDs/SFFDS2QlYwp6MFhaXiRU
XjMmMHRzd2t4K0ctPW11LTxQRU1qQHRia3tDS2Jod18mMDtLKm5kXmomNUE/YikxTXUqNChaZ0lX
fTsKemlJcFcpWEtLfl80djNjM3EzSmw8QzJLb2Y3a2lqZmYwcD9MenFndkgqTSR+fm9BSHNQJU5O
dl84Z19+WUBucDA1CnolYXA4Jio2VVoyNHZLRmpEZmtiSHJsTio1VUhNT2Q9bHhJUGw4REUjVEBe
MlprIz4zTStodyglUkpVJDh7TWl8bwp6M0RaJGEoKG19QmBTPnFwQG9nUHZAZ0Y8I29rYTF7PCti
WVlrKDBgWm0xVzh1ZmtvTHZII31IRz82fWlKNWRGZGcKempXY2QpRD5iRkQwe2ElWGA7JkBhP1Vz
KTVeZHA8O3klNCspKkdBSU5kfXp9KUktNjNrc1QmXnMtaHphclc5fGU9CnpFR0ZlfWlsVWlSVEZI
NzJ4SFpFZjMpPDtIWmV+LURndFdEbClLSUgrOyZ3eH07YDN2TWdCXnpVKGBfMWR6akBPKwp6YGd6
fjM8VEElV0J9Wk4maz9GMn01ITAoOG51YzYxV3RNKWFENUh2eFR3WWcjbSkhQXEmPFJXZE8oUGN7
ZW00enQKelUwXjxRZEhwIVhxcE5ITnpwU09XeXBiSl5sWkJkQ3BFez90UjlzeEo9dEJhKWAzbU9K
LUAodyNqQlBqTk1IO3UlCnp2Mkx9NyVNejZsLXAyUlo3WlFeZl9OfW93VUU5OHVeNDQxM1hlOV5m
YWs4YTZOM1BLeCQpeVQ8O3BOO3J3fTFmQwp6Nl5zQUEhWWk/c1ZsWm9vJS1GUXIkZSRoaDsyfnZV
SXZUY2spaGJkcENtJV82akY5ci0/SFQ0LUljIWtRd2gzPTsKekErVDA4M1I1ZWpXdTlzU3JhUml3
aU00NXV0fnp8MFUmcm9PP21LJilxb1h3dkpwdGkrckIxfFhGfnxSc1pnPHZCCnpJVyZ8eE1vPVE7
MnwxKDdEKkBAOU87Yn1AZnxpUVpRfjB5eUN1QD11Xno0ZFRGWlRUNmNATGt1ZWBXdk8pbXo2dAp6
NEh8NiFCbUt+UF9WP0Zzcj1KPEt2RV53K0B3SFYxTHBLeH1QVzdURi03Ryk8bXBEYUhQfTN+VHM5
Q152bVJSeEkKem15NGBwdHo/Ukswb0AtRF8kR1pgZ0BCMVRHWWtxWC1ASzEpSzNNR0Y/SGR9bUMz
MztrZzAmSWpYYH5HZmB3JWpKCnpTeEF9Pm9TMHlxM1QwWEJeMDVoT1hlN3wpbWleU3l2QEghU1Qy
IXJSKVM8I3cmQn5eM0FGIXE+MipmWnFpfFNLbQp6e3J6YUFORylmUmtPMihJKTJ3RXYrTSl5SnM/
IVVoTGYkSFJBSnp1TUxgcUIjMGNyUV45ekNsNSVCUiUmUTl5RmcKemJCfkZiM0hRPndDa1JQeyRm
SmY4TE1saiR7P1RLPCVfb2J6N3lmYm1ATyVZdDxfYUxaVzN+WFMwQCRwVXgrPU9fCnojfHp0TnM1
KnsrZ1REK0VETjZ0T1kwUG1RP1FLIyktT2xNU14rOER5P2xoVD5VJSp6IXl6ezNROGt1eXFsQXoh
UAp6IVZSZGJUI3taYmI1aFk+VHVkcVdpRiVCa0MxaWZJVylxdlYqQ0ZNQSNWJUt5S3QmQ0spWVgm
U21sVnJmPnlJRisKej05KlRkUVFEPzd4UGxVUHhqQnJZO0d0eUtvKnR3SCpSIX0zYXo5RzhEKXpQ
akY+ZVV6S2pvODNSTU4+OWhTMCVsCnpvMSZwQElvNkBuSjZMdyQhP21IbjYlMTlYTFJKSWxvJCYk
UWpXXkhfM1JUb29ZZXdJckR+cFVvMDRaUjZzVnklMwp6K3JGcXBnOUZ3ZG5nRSZhO3BzZE4oJUM0
bU93ezNuOC1xKmlMaFh6P0MqNXlaaGkyTztnOWA/cCRNTUZpZXpjX0kKeklZeCU4ZUJlV0VPaHxG
fHw0QiR3eEJxYlNsMyN0MzMpUT5jb3FGPF5sP316dnl6JCVuWTNDSX1iQlNPbipHMz5PCnpBOzdZ
N0kzczdSeWolJVpEK0lNKld3T30wd0FCc0ZFRCU1bDBfUztnXj9MRz1XalVeUzxsX2lBTyZuKGRx
akF0Xwp6eX1gJGM7aHFWaVhnPmsjeVRrSEQlZHkpNF4oeHZlKm5yPjBAR0JAJThzdDRlQVhoPVRm
QTEzPHgtU3AlZTJ0VEAKendsaDxTY1Q7YG1VMz9PYTNTbzVzZWU9M05LSjxHTmxJUWNrezQ0blJW
I1h9Nnl3Vzh7VCVzc2Y9OWE0MShNMTloCnoyKWJHbnhAcStKb1NiJHg3MW8zQjk2NXd8UUBZIUNG
fTdmIThIZ2F7SyNlZGdBSGxFQF5nMkt0TXlsbFNITyV4bgp6aW8/U3JDRnIkNS1+bUElP2glMDM5
XiV0QC0/MDM5P0FoYVFvKHlOMlVxaENVc3pOODQ3RGsoM0Q9NEUrWldrUE0KenU9LUdpbD0lKWB7
aHU2Mi02LVRERk5mTEwyZX47NkNXUHZBI3AhVmIodUU7Q09jSSFzQmg+MHAqa3tsVDA+UHA5CnpD
NyFUT1Btb2Jta0laSVo2d0hzWnlAOHRFTXNWOHdRc2w8PzZha09BYT17emw7Wko9WTM4djkxOzRT
fEEzeFE2bQp6TmlWMEshQUk9T0loP0JYQUE/dVl7XiYmTmQ8bFFhQWp9MjxNek5+dTYwc0FseCpu
QGhtUkJ+RTlecCNlc05rRmsKejZvdWM1S24jWEM1IyUwfWUxXiVKXzBWQkpvQl8oUFN1Q0JoIzFr
QFRgdyZENi1UXmpiRjA7TGZuQk11dS0mSWImCnpjP182YngwZWd3Qm9pfGNZWHVMI2RVQlQjZWFu
MUZ8MXRqRU1lb25sMTMqRW1HbGVuVT5HTlJfWCFINH18RUNhOAp6dSYqUjA/fkF+Z0xzXypMSHVO
WnladUpwYHM+RmYlOWpyKGtNemd2OEpJIXxzMXhzYUgxbDA7JDt6QkxUUEVeI28KekgxMUs9Rzgh
NmR3NmNQekRtUz9VajNFMm5nN1RSKGEjdDVPVTZLbyY9XzhrekBzZklXOWA3UE0xNjElbEZsUW01
Cnp0R2ZeY29rS2t3QX1STzQ3KFpYZHIwWkhkWHBse3Q8WGA+ejMzcWJtOHttTVJkR0daYWB9a2or
PV5ke3VXd3J9SAp6QjFPcVJPYU05YHshYkdTaVQmMXMpRkZtNFV8YDMpO0ZZTlk9U29fKTNLSmRq
SDxwWj0qcktMMTxHe09xQ3BNYDAKem1AfTFoPHMoNWZMeCZlV1l3Y0ZwSjhNS0lednFsbUJDYmln
SCVLUl5yO300MG9MU0xNTlRJKWJMYX0pbzNXcUdeCnpRTHtyLUQhRlNFOFBUKmdBOWlpaXVXbVdh
ZlljcSQtS3UpYHM1LTYjNEZvMHEmSX41eSspeldWLUZlKCoycmV9WAp6K1BrQz1LWUk/QT83MjF+
VG9PRzl5NVlJO3BHNFY+P0tiJVZHOEg2RGdqYFAlMEl6JDMqVnpMenNfVVlrZiF1NVIKZCQ5M04/
QUBhPn05fVVfMl85Mnd3RyY9JEFiTUp1bj4lWVZldEplU2sKCmxpdGVyYWwgMApIY21WP2QwMDAw
MQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvSW1hZ2Vz
L3NwaW5uZXJJbmFjdGl2ZVNlbGVjdGVkLmdpZiBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvSW1hZ2VzL3NwaW5uZXJJbmFjdGl2ZVNlbGVjdGVkLmdpZgpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40
MGJjMjc0OTlmOGVkZmI2OWVlOWNiZThmNjA4OGQyY2VmZjliYmZmCkdJVCBiaW5hcnkgcGF0Y2gK
bGl0ZXJhbCAzMjA4CnpjbWMoaVg7NCNIOT5wSmRGRTdoYEl7SUYpMUEjVW01dXQ0ZTNOKSg8MFJq
WU01ZkJzP1ZwSUBVN0oob1RtWEhLbAp6TClaKWAyXyVOTkFjNnxnRHpZPyk0RiZDaitNQCVzdCU4
YyQ3Q207NEg0WnA2Ulp9JjVuNXdEanhnVCVjeTA/RGsKemY2bDQ4VHQ2UXQ9TktseTFsfEtjVFUq
PHdQb0h7d2Qma0RjMV9sTzNNQE1JN1d9WkhNZGdJMjgmZCQjTXt7R3E3CnoqXmVKVDB7PmNPcE9C
NS1WVmdKfSFRTnxaKnIzN096Uy1aNklTSVJDbDZESzJEUkRgJCUkUipLc3J3SmIyeUVnRwp6P2x9
YVF7UlVCfWJFajYlLSFUNnUwNmt3YTsxP0k4bkkzeDE9WlApcWR7RCFOUD1iZGQ/QlomWVgzZUhh
WXFvPX0Kej9YM2dxISlDKHJvOFBtSTJ1b1pvYHEmKFVTe3M2JndiQDVzJk1KPSRPQWlAOXhuXnNm
IXlLK2drMitjRDdEPylOCnota2ZRPkQ0PnkyUW5+ST81T3BzTiUxIWEqPWJJamRKPjJETk48PyZS
d0E3VkNBY0JwVytFY0M/ejB5fSNwZ3djOQp6dUdPQGZlZmQlbnRJUmkxYzAzYDwle1IqPzh9RX17
c2lhKCZeS2FsPWpRUmFSLWd7bDM+TVU7NUhrJlRATTs/QygKejNhTCVaZStFb1BeTHRgI29Meypv
P3chcCN4dlRLfj9uelZaZmkrZmdLWXRKS2pufHdxfEgoYyombVBxe0ojOyRDCnokQU1Qb1EraWgm
M2lsfCZfO2xgN2V7cEJtdEZyPDZJPkNoVCttKyZ8MUY0SmAjZmwhKDVNb0I3R30/eDBCVE9gWAp6
KTk/aDczfClaaT1wUj54PUM7VWpVeU4jUlU+RE4lPEZOP1hoKCE9V01gPSpqaWhYUGV3VjFaUWto
P2RYb2U5ZF4KenZmVV9vVGgmYDd2MU8/bTZ9Smhaclp1VVhQQiUqJEU+fl9uJCojSn1fP0Z2TiM/
V2JsXk0kb29mOSRSNnNeMDImCnpWSyl8TVR5PXxfUiRNPGk3PCl7M0ZJTFdkb0hyVEtyKjYpazAk
ejgjakU9PmhaKjRBcTFOMWphM3VhZVZke3RKegp6YFEkZk9vV19qPyVtQHFOJiY9VWwrMEVmVXg4
cGhwd3V4NiZzNnpXTUQjRiRqRCl0NUJyVDUlJVc4enkhOUw1N18KeipUPD5zNWhFK0g1dFNMeHpP
MiFZa3BLMzhjKnRBVnptd0ptNWY1WFVhNE0xd1pRbnk8ayNufVU1Q0ApYDY1d1JpCno2KDxPVmdi
YTNHQiFmYmdaRE5ERlEldXZLY3NFaWxpKmhRY3ArUXpvRGJvcllfMzgzK1haNlJMXm9eR3IpVHxE
Wgp6NlA+aGNLRng4M2NISWlMUjM/JldaK3shcnJvPlA1SVE2QyQrPmpTaWdye3o4a1lUYmh4NXND
SU4jSTJQJV9sIy0KejBHaDhlVU9CeWM5Xzd8dElFfiVYa2UlTDNQRGV8RTRKfEhwWVJ1I303Y0Vg
VDByVCF9cU59SGVfOE5KSUZSODAhCnotbTRGbCMzO2YlbXBwNy1qODl4WXl3MzcrTWROUHJ0Y0E0
M1RuZl5uQmBkdGBJMGdxcnl+VldMVGJYMGAwRHEmXgp6JWxeRkRCY182Xkg/OWokKj19IygjfG5Q
QGd1Rk56MzBieXdFZ193cTRhZURxaU1oblJESkUkZEVLdGdfNDZVdWgKeihSdmpecSFmel8tQm8m
MmQlRXJuK01xZVRfVCopNUM5NlltYDA2I2JtUmZfaWBpQ0E4Skt6S1BZYDxSWmZ3WHVqCnopUlFg
ZGxmJEd0RzZxKGEwT0dPamxhcHpAeTVodTMqc0kjOWIjWGcldG0xbiEyWSt7ZWgpcTVrSm8zUFBf
dDRqWQp6LUhpKm98TVUyKmI8O3paUl5BJUh3dSh9bXVJJmo5ckZmN1BFQHRRY0NRT2okbC1LZjgk
YGBSNU1kc1liUlJXOHgKejxgVmVffENUU2lkfTdhKSFlOSk+MiFWbyZiez1NI2JtIVo4YFVGU3Mz
U1R0Mlhub2o3NUBFQ0xWVkp+UzhJPEhqCnpqTS10NTImSXxzX3AlSkV1RUNNb3grOWM9cStRaUA4
YnFiOChJV2hNXl9ta2NVU040P0FjJiRhcmUmOW1KMzVkTwp6ZmxBNkV6K0VWdXJNNzEhU3xNR1hX
eSFmdnVKPkE2Sks2dzVnXlBAaTE0KWw2cEZKITQmYTElVW5TV2cxWXEjO0oKemFvMihlN2pSTHZ6
XiRBYU05NHtze0tmNXY8eVQ4UjdjVl5pX3d4bDErQjg9SD1LZF5aVTFjZHZyUyVUa3FBeHY8Cnp7
ZVptKjVYY011YGdQUUtFcDt8RnIheExVaTBZVXE0fEFBRSM7JjlHUTZLemh4ZHcpMz5JdS1zTWZ9
WihxKTMhcAp6Q1VIPHdYS3A2c3s3Tn4/TzUtIVdTaHQtO0lBb2h9KU81ZUlXcWBhS2hieVp7dUZM
WiEmUSsmaVdvPnlxVHFBQiEKej0kJTBrdEhefGlBbUgmaD1oanhaNCUwQz9XS3N1MEdTQnhrMXlO
NTM/enJUWWg/bWV2QzxAY1M7cTgmb28oemolCnokezNtK0BNTHszRm8rQHdXc3A2OWpFIWA4LSsy
JUhFTFRSbnc0az4/OChlQjIwMHttZ0UzN2NfcEFKVlg/ZTROegp6dW5BdU5uLTFiUkQ9LWFKcTF7
X0glQitLfTRiRHVzLW0/ZiF3Xm5TLT4zU1hRSnlRQ004OUI9P0paUX5oRkd8Z2gKejFWX0pMYEJZ
V28mdiQhJHQ0PXNrSmdaek83dGZrb2xKJkopZXRlWDRQMGx3RkBtNnB3Y35UaDs3OFZneEdTKjly
Cno2a3dVMFJ7QHM5Ml58YVNVQkp7Rjl0NlkwRUR3JU9NPkA0SyEjUnN8OXdzRlRxZkxvT0c7fj5+
X2l+YFNyaCo5NAp6ZmZJRXRBPSFkZT16Vn40OClATmYjX3Byb0FPYVR6ZFhENHBaQlhqaEhpYmN0
cT1EfTVGdypUdE1rNC1VdmkrS3EKelNCeWF9UVJQcUR4Z21mSEUhMmM+e3M/fXFrVWpAMkVwZl5h
JUgmMGclbU83VkdMSl85TDEpdWs3cXU+JW96Y2ptCno1T3BBTm8qYVRiJHR7aWg+QU8oUzc9JlJg
ZlNNblk0V25wM0c3Mz1vOzhIMVo3JlJKMkZrKVo3Mz5vZVE5Xjw2Rwp6UnZ0TH4xYmN6Q19lcjBr
dWIlJWYpdDcyQTQ2aG5jMjlLWHU5QkdLSUNKIypBJnBCcG16Ri14O3tYYzBTYnxJN1UKekpaJEgo
NHt8Yy0zPCVMYF5PS2AteEVZMDg4M1pza2dSanZkTTZZZ1IybjJoIUVxNW5zYnZPd0BibnUpOTJF
Z25ICnp0Mj5DJWVIZiFZRHVDfmRPeWF9PVhBWEdoQyt3eHlHdXtpTjZxdjxjZjZMUX4peVlNYURf
Rm1eMzdjS0k9fVR9aAp6WTJpLSVMeE0xODFSe2MjbWRTKDspVXFuSFR2MWR+VTJ1dmNjQTxkdExM
ZG43dms8VWVLUTlFUzYoTDw9YytjdDMKenE9eXs9YS1aPjU4aE49cHF9UX49dW0mNmhIbTl6JXgo
Z2VQe292OztDRVl5Pk9sJnlCQT5KazcoXyFtKlByalJhCnpmRDMrUHlyS1FGP1padmFaJlkxQ1BR
ND9VSzYxdXUhNjNaJnBHLWhUellgZ0xFYGxYJl40ZXVZZVhBbiZVT1Mkdgp6ak9uVnsjfCsxYU5J
SihhLXNBd0V3P2VYdVMwPXxxUEwjYSM3PHErTCV8VEBheX1HN2NCZ3UmPGImPVc8VmZjdGsKelVe
YXRGWUhzRXZpIXk7TD9JZkE4Y1dpNj9gRFQoTUttbzQtXkQ2OVVacGo1ZiQ2ejx4YVBtVmklR1hD
ZTtrK0lUCno+fUY5WHhWT0tiOyFNUTkyYWY2KDU4dGhgKzRqMzV0Pzh8cSNBQCp1Z2IzKz5sWW5z
YXBEanF+cCkzNW1fST1wNgp6Q1h3ZUBMVHlvXmc1IVFtTDw1RmFoIUomM3p5c2U0bl5qIVlrd09e
IWYpYDJHViE1eUNUalZ5NVlRWTVeQmE7OU4KeiVWUXNRKEA0cTVxeSQ/Pld+MmswPip1OzcteXto
azJDZVg+cXo1VUxRcylRfnRadH0xPkQte1J1UkJTSFI4NiVsCnokfH4yME57JWZSMVZ0VD1iT3lQ
enIjalI2OGZNdTtFSERse3c3ZWE9K0RRfjA5UFp+WWtMKDZydSpfez1NT1k2Vgp6RiNIKVo7X1Zt
QDhjcEI8P14tdSp1bVByKHFrYFhuJTs2Jj0rTmFDJFkhbDImUDRje2Q5M2VaKkNCU3c1QU1rbm8K
RTFNOWxGU3BXYjQKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUGxlYXNlV2FpdE1lc3NhZ2UuanMgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1BsZWFzZVdhaXRNZXNzYWdlLmpzCmRlbGV0ZWQg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MDlkNTdlLi4wMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUGxlYXNlV2FpdE1lc3NhZ2UuanMKKysrIC9kZXYvbnVs
bApAQCAtMSwxMDQgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5j
LiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFy
ZQotICogbWV0OgotICoKLSAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBj
b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAgICAgKiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCi0gKiBjb3B5
cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyCi0gKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlCi0gKiBkaXN0cmlidXRpb24uCi0gKiAgICAgKiBOZWl0aGVyIHRo
ZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCi0gKiBjb250cmlidXRv
cnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv
bQotICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQg
SE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCi0gKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAotICogTElNSVRFRCBUTywgVEhF
IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCi0g
KiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
VEhFIENPUFlSSUdIVAotICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0gKiBTUEVDSUFMLCBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCi0gKiBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwKLSAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWQotICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgotICovCi0KLVdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2FnZSA9IGZ1bmN0
aW9uKCkKLXsKLSAgICB0aGlzLmVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKLSAgICB0aGlzLmVsZW1lbnQuY2xhc3NOYW1lID0gInBsZWFzZS13YWl0LW1zZyI7Ci0gICAg
dGhpcy5lbGVtZW50LnRleHRDb250ZW50ID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJQbGVhc2Ug
d2FpdFx1MjAyNiIpOwotCi0gICAgdGhpcy5jYW5jZWxCdXR0b24gPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCJidXR0b24iKTsKLSAgICB0aGlzLmNhbmNlbEJ1dHRvbi50ZXh0Q29udGVudCA9IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiQ2FuY2VsIik7Ci0gICAgdGhpcy5jYW5jZWxCdXR0b24uYWRk
RXZlbnRMaXN0ZW5lcigiY2xpY2siLCB0aGlzLl9jYW5jZWxDbGlja2VkLmJpbmQodGhpcyksIGZh
bHNlKTsKLX0KLQotV2ViSW5zcGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZSA9IHsK
LSAgICBfY2FuY2VsQ2xpY2tlZDogZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgaWYgKHRoaXMu
X2NhbmNlbENhbGxiYWNrKSB7Ci0gICAgICAgICAgICB2YXIgY2FuY2VsQ2FsbGJhY2sgPSB0aGlz
Ll9jYW5jZWxDYWxsYmFjazsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9jYW5jZWxDYWxsYmFj
azsKLSAgICAgICAgICAgIGNhbmNlbENhbGxiYWNrKCk7Ci0gICAgICAgIH0KLSAgICB9LAotCi0g
ICAgaGlkZTogZnVuY3Rpb24oKQotICAgIHsKLSAgICAgICAgdmFyIGluc3RhbmNlID0gV2ViSW5z
cGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZS5pbnN0YW5jZTsKLSAgICAgICAgdmFy
IG1lc3NhZ2UgPSBpbnN0YW5jZS5lbGVtZW50OwotICAgICAgICBpZiAobWVzc2FnZS5wYXJlbnRO
b2RlKQotICAgICAgICAgICAgbWVzc2FnZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG1lc3NhZ2Up
OwotICAgIH0sCi0KLSAgICBnZXQgaW5zdGFuY2UoKQotICAgIHsKLSAgICAgICAgaWYgKCEoIl9p
bnN0YW5jZSIgaW4gV2ViSW5zcGVjdG9yLlBsZWFzZVdhaXRNZXNzYWdlLnByb3RvdHlwZSkpCi0g
ICAgICAgICAgICBXZWJJbnNwZWN0b3IuUGxlYXNlV2FpdE1lc3NhZ2UucHJvdG90eXBlLl9pbnN0
YW5jZSA9IG5ldyBXZWJJbnNwZWN0b3IuUGxlYXNlV2FpdE1lc3NhZ2UoKTsKLSAgICAgICAgcmV0
dXJuIFdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2FnZS5wcm90b3R5cGUuX2luc3RhbmNlOwot
ICAgIH0sCi0KLSAgICBzaG93OiBmdW5jdGlvbihlbGVtZW50LCBjYW5jZWxDYWxsYmFjaykKLSAg
ICB7Ci0gICAgICAgIHZhciBpbnN0YW5jZSA9IFdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2Fn
ZS5wcm90b3R5cGUuaW5zdGFuY2U7Ci0gICAgICAgIHZhciBtZXNzYWdlID0gaW5zdGFuY2UuZWxl
bWVudDsKLSAgICAgICAgaWYgKG1lc3NhZ2UucGFyZW50Tm9kZSA9PT0gZWxlbWVudCkKLSAgICAg
ICAgICAgIHJldHVybjsKLSAgICAgICAgZWxzZSBpZiAobWVzc2FnZS5wYXJlbnROb2RlKQotICAg
ICAgICAgICAgbWVzc2FnZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG1lc3NhZ2UpOwotICAgICAg
ICBpZiAobWVzc2FnZS5jaGlsZE5vZGVzLmxlbmd0aCA+IDEpCi0gICAgICAgICAgICBtZXNzYWdl
LnJlbW92ZUNoaWxkKGluc3RhbmNlLmNhbmNlbEJ1dHRvbik7Ci0gICAgICAgIGlmIChjYW5jZWxD
YWxsYmFjaykgewotICAgICAgICAgICAgbWVzc2FnZS5hcHBlbmRDaGlsZChpbnN0YW5jZS5jYW5j
ZWxCdXR0b24pOwotICAgICAgICAgICAgaW5zdGFuY2UuX2NhbmNlbENhbGxiYWNrID0gY2FuY2Vs
Q2FsbGJhY2s7Ci0gICAgICAgIH0KLSAgICAgICAgZWxlbWVudC5hcHBlbmRDaGlsZChtZXNzYWdl
KTsKLSAgICB9LAotCi0gICAgc2hvd0FuZFdhaXRGb3I6IGZ1bmN0aW9uKGVsZW1lbnQsIGxpc3Rl
bk9iamVjdCwgbGlzdGVuRXZlbnQsIGFjdGlvbikKLSAgICB7Ci0gICAgICAgIHZhciBpbnN0YW5j
ZSA9IFdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2FnZS5wcm90b3R5cGUuaW5zdGFuY2U7Ci0g
ICAgICAgIHZhciBtZXNzYWdlID0gaW5zdGFuY2UuZWxlbWVudDsKLSAgICAgICAgaWYgKG1lc3Nh
Z2UucGFyZW50Tm9kZSAhPT0gZWxlbWVudCkgewotICAgICAgICAgICAgLy8gSWYgbm90IGFscmVh
ZHkgc2hvd24gZm9yIHRoaXMgZWxlbWVudC4KLSAgICAgICAgICAgIGxpc3Rlbk9iamVjdC5hZGRF
dmVudExpc3RlbmVyKGxpc3RlbkV2ZW50LCBpbnN0YW5jZS51bmxpc3RlbkFuZEhpZGUuYmluZChp
bnN0YW5jZSwgbGlzdGVuT2JqZWN0LCBsaXN0ZW5FdmVudCksIGluc3RhbmNlKTsKLSAgICAgICAg
ICAgIFdlYkluc3BlY3Rvci5QbGVhc2VXYWl0TWVzc2FnZS5wcm90b3R5cGUuc2hvdyhlbGVtZW50
KTsKLSAgICAgICAgfQotICAgICAgICBpZiAoYWN0aW9uKQotICAgICAgICAgICAgc2V0VGltZW91
dChhY3Rpb24sIDApOwotICAgIH0sCi0KLSAgICB1bmxpc3RlbkFuZEhpZGU6IGZ1bmN0aW9uKGxp
c3Rlbk9iamVjdCwgbGlzdGVuRXZlbnQpCi0gICAgewotICAgICAgICB2YXIgaW5zdGFuY2UgPSBX
ZWJJbnNwZWN0b3IuUGxlYXNlV2FpdE1lc3NhZ2UucHJvdG90eXBlLmluc3RhbmNlOwotICAgICAg
ICBsaXN0ZW5PYmplY3QucmVtb3ZlRXZlbnRMaXN0ZW5lcihsaXN0ZW5FdmVudCwgaW5zdGFuY2Uu
dW5saXN0ZW5BbmRIaWRlLCBpbnN0YW5jZSk7Ci0gICAgICAgIFdlYkluc3BlY3Rvci5QbGVhc2VX
YWl0TWVzc2FnZS5wcm90b3R5cGUuaGlkZSgpOwotICAgIH0KLX07Ci0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUHJvZmlsZXNQYW5lbC5qcwppbmRleCA1YmQy
ODgyLi44NTA0OTE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1Byb2ZpbGVzUGFuZWwuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9Qcm9maWxlc1BhbmVsLmpzCkBAIC0zMzYsNyArMzM2LDcgQEAgV2ViSW5zcGVjdG9yLlBy
b2ZpbGVzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICB9CiAKICAgICAgICAgdmFyIHByb2Zp
bGVUcmVlRWxlbWVudCA9IHByb2ZpbGVUeXBlLmNyZWF0ZVNpZGViYXJUcmVlRWxlbWVudEZvclBy
b2ZpbGUocHJvZmlsZSk7Ci0gICAgICAgIHByb2ZpbGUuc2lkZUJhckVsZW1lbnQgPSBwcm9maWxl
VHJlZUVsZW1lbnQ7CisgICAgICAgIHByb2ZpbGUuc2lkZWJhckVsZW1lbnQgPSBwcm9maWxlVHJl
ZUVsZW1lbnQ7CiAgICAgICAgIHByb2ZpbGVUcmVlRWxlbWVudC5zbWFsbCA9IHNtYWxsOwogICAg
ICAgICBpZiAoYWx0ZXJuYXRlVGl0bGUpCiAgICAgICAgICAgICBwcm9maWxlVHJlZUVsZW1lbnQu
bWFpblRpdGxlID0gYWx0ZXJuYXRlVGl0bGU7CkBAIC00NDEsMTEgKzQ0MSwxOCBAQCBXZWJJbnNw
ZWN0b3IuUHJvZmlsZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgICAgIGlmICghcHJvZmlsZSkK
ICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBpZiAoIXByb2ZpbGUucHJveHkpCi0gICAg
ICAgICAgICBwcm9maWxlLnByb3h5ID0gKG5ldyBXZWJJbnNwZWN0b3IuSGVhcFNuYXBzaG90V29y
a2VyKCkpLmNyZWF0ZU9iamVjdCgiV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdExvYWRlciIpOwor
ICAgICAgICBpZiAoIXByb2ZpbGUucHJveHkpIHsKKyAgICAgICAgICAgIGZ1bmN0aW9uIHNldFBy
b2ZpbGVXYWl0KGV2ZW50KSB7CisgICAgICAgICAgICAgICAgcHJvZmlsZS5zaWRlYmFyRWxlbWVu
dC53YWl0ID0gZXZlbnQuZGF0YTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHZhciB3b3Jr
ZXIgPSBuZXcgV2ViSW5zcGVjdG9yLkhlYXBTbmFwc2hvdFdvcmtlcigpOworICAgICAgICAgICAg
d29ya2VyLmFkZEV2ZW50TGlzdGVuZXIoIndhaXQiLCBzZXRQcm9maWxlV2FpdCwgdGhpcyk7Cisg
ICAgICAgICAgICBwcm9maWxlLnByb3h5ID0gd29ya2VyLmNyZWF0ZU9iamVjdCgiV2ViSW5zcGVj
dG9yLkhlYXBTbmFwc2hvdExvYWRlciIpOworICAgICAgICB9CiAgICAgICAgIHZhciBwcm94eSA9
IHByb2ZpbGUucHJveHk7CiAgICAgICAgIGlmIChwcm94eS5zdGFydExvYWRpbmcoY2FsbGJhY2sp
KSB7Ci0gICAgICAgICAgICBwcm9maWxlLnNpZGVCYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nKCJMb2FkaW5nXHUyMDI2Iik7CisgICAgICAgICAgICBwcm9maWxlLnNp
ZGViYXJFbGVtZW50LnN1YnRpdGxlID0gV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJMb2FkaW5nXHUy
MDI2Iik7CisgICAgICAgICAgICBwcm9maWxlLnNpZGViYXJFbGVtZW50LndhaXQgPSB0cnVlOwog
ICAgICAgICAgICAgUHJvZmlsZXJBZ2VudC5nZXRQcm9maWxlKHByb2ZpbGUudHlwZUlkLCBwcm9m
aWxlLnVpZCk7CiAgICAgICAgIH0KICAgICB9LApAQCAtNDY3LDEwICs0NzQsMTIgQEAgV2ViSW5z
cGVjdG9yLlByb2ZpbGVzUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICBmdW5jdGlvbiBwYXJz
ZWQoc25hcHNob3RQcm94eSkKICAgICAgICAgewogICAgICAgICAgICAgcHJvZmlsZS5wcm94eSA9
IHNuYXBzaG90UHJveHk7Ci0gICAgICAgICAgICBwcm9maWxlLnNpZGVCYXJFbGVtZW50LnN1YnRp
dGxlID0gTnVtYmVyLmJ5dGVzVG9TdHJpbmcoc25hcHNob3RQcm94eS50b3RhbFNpemUpOworICAg
ICAgICAgICAgcHJvZmlsZS5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IE51bWJlci5ieXRlc1Rv
U3RyaW5nKHNuYXBzaG90UHJveHkudG90YWxTaXplKTsKKyAgICAgICAgICAgIHByb2ZpbGUuc2lk
ZWJhckVsZW1lbnQud2FpdCA9IGZhbHNlOworICAgICAgICAgICAgc25hcHNob3RQcm94eS53b3Jr
ZXIuc3RhcnRDaGVja2luZ0ZvckxvbmdSdW5uaW5nQ2FsbHMoKTsKICAgICAgICAgfQogICAgICAg
ICBpZiAocHJveHkuZmluaXNoTG9hZGluZyhwYXJzZWQpKQotICAgICAgICAgICAgcHJvZmlsZS5z
aWRlQmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiUGFyc2luZ1x1
MjAyNiIpOworICAgICAgICAgICAgcHJvZmlsZS5zaWRlYmFyRWxlbWVudC5zdWJ0aXRsZSA9IFdl
Ykluc3BlY3Rvci5VSVN0cmluZygiUGFyc2luZ1x1MjAyNiIpOwogICAgIH0sCiAKICAgICBzaG93
VmlldzogZnVuY3Rpb24odmlldykKQEAgLTY3NSw3ICs2ODQsOCBAQCBXZWJJbnNwZWN0b3IuUHJv
ZmlsZXNQYW5lbC5wcm90b3R5cGUgPSB7CiAgICAgX3JlcG9ydEhlYXBTbmFwc2hvdFByb2dyZXNz
OiBmdW5jdGlvbihkb25lLCB0b3RhbCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLmhhc1RlbXBv
cmFyeVByb2ZpbGUoV2ViSW5zcGVjdG9yLkRldGFpbGVkSGVhcHNob3RQcm9maWxlVHlwZS5UeXBl
SWQpKSB7Ci0gICAgICAgICAgICB0aGlzLl90ZW1wb3JhcnlUYWtpbmdTbmFwc2hvdC5zaWRlQmFy
RWxlbWVudC5zdWJ0aXRsZSA9IFdlYkluc3BlY3Rvci5VSVN0cmluZygiJS4yZiUlIiwgKGRvbmUg
LyB0b3RhbCkgKiAxMDApOworICAgICAgICAgICAgdGhpcy5fdGVtcG9yYXJ5VGFraW5nU25hcHNo
b3Quc2lkZWJhckVsZW1lbnQuc3VidGl0bGUgPSBXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIiUuMmYl
JSIsIChkb25lIC8gdG90YWwpICogMTAwKTsKKyAgICAgICAgICAgIHRoaXMuX3RlbXBvcmFyeVRh
a2luZ1NuYXBzaG90LnNpZGViYXJFbGVtZW50LndhaXQgPSB0cnVlOwogICAgICAgICAgICAgaWYg
KGRvbmUgPj0gdG90YWwpCiAgICAgICAgICAgICAgICAgdGhpcy5fcmVtb3ZlUHJvZmlsZUhlYWRl
cih0aGlzLl90ZW1wb3JhcnlUYWtpbmdTbmFwc2hvdCk7CiAgICAgICAgIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2lkZWJhclRyZWVFbGVtZW50Lmpz
IGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaWRlYmFyVHJlZUVsZW1lbnQu
anMKaW5kZXggYTI3YzQ1Ny4uNDY1MDY3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9TaWRlYmFyVHJlZUVsZW1lbnQuanMKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TaWRlYmFyVHJlZUVsZW1lbnQuanMKQEAgLTE1Myw2ICsx
NTMsMTQgQEAgV2ViSW5zcGVjdG9yLlNpZGViYXJUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAg
ICAgICAgIHRoaXMuYnViYmxlRWxlbWVudC50ZXh0Q29udGVudCA9IHg7CiAgICAgfSwKIAorICAg
IHNldCB3YWl0KHgpCisgICAgeworICAgICAgICBpZiAoeCkKKyAgICAgICAgICAgIHRoaXMuX2xp
c3RJdGVtTm9kZS5hZGRTdHlsZUNsYXNzKCJ3YWl0Iik7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIHRoaXMuX2xpc3RJdGVtTm9kZS5yZW1vdmVTdHlsZUNsYXNzKCJ3YWl0Iik7CisgICAgfSwK
KwogICAgIHJlZnJlc2hUaXRsZXM6IGZ1bmN0aW9uKCkKICAgICB7CiAgICAgICAgIHZhciBtYWlu
VGl0bGUgPSB0aGlzLm1haW5UaXRsZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvV2ViS2l0LnFyYyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvV2ViS2l0LnFyYwppbmRleCBkOGZjNDQxLi4zYjk0YmRmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1dlYktpdC5xcmMKKysrIGIvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9XZWJLaXQucXJjCkBAIC03Miw3ICs3Miw2IEBACiAg
ICAgPGZpbGU+UGFuZWxFbmFibGVyVmlldy5qczwvZmlsZT4KICAgICA8ZmlsZT5QYXJ0aWFsUXVp
Y2tTb3J0LmpzPC9maWxlPgogICAgIDxmaWxlPlBsYWNhcmQuanM8L2ZpbGU+Ci0gICAgPGZpbGU+
UGxlYXNlV2FpdE1lc3NhZ2UuanM8L2ZpbGU+CiAgICAgPGZpbGU+UG9wb3Zlci5qczwvZmlsZT4K
ICAgICA8ZmlsZT5Qcm9maWxlRGF0YUdyaWRUcmVlLmpzPC9maWxlPgogICAgIDxmaWxlPlByb2Zp
bGVzUGFuZWwuanM8L2ZpbGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
ZnJvbnQtZW5kL2hlYXBQcm9maWxlci5jc3MgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL2hlYXBQcm9maWxlci5jc3MKaW5kZXggZWNmNDE5YS4uOWNhYzJiMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9oZWFwUHJvZmlsZXIuY3NzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaGVhcFByb2ZpbGVyLmNzcwpA
QCAtMzMsNiArMzMsMjIgQEAKICAgICBjb250ZW50OiB1cmwoSW1hZ2VzL3Byb2ZpbGVJY29uLnBu
Zyk7CiB9CiAKKy5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtLndhaXQgLmljb24gewor
ICAgIGNvbnRlbnQ6IHVybChJbWFnZXMvc3Bpbm5lckFjdGl2ZS5naWYpOworfQorCisuaGVhcC1z
bmFwc2hvdC1zaWRlYmFyLXRyZWUtaXRlbS53YWl0LnNlbGVjdGVkIC5pY29uIHsKKyAgICBjb250
ZW50OiB1cmwoSW1hZ2VzL3NwaW5uZXJBY3RpdmVTZWxlY3RlZC5naWYpOworfQorCitib2R5Lmlu
YWN0aXZlIC5oZWFwLXNuYXBzaG90LXNpZGViYXItdHJlZS1pdGVtLndhaXQgLmljb24geworICAg
IGNvbnRlbnQ6IHVybChJbWFnZXMvc3Bpbm5lckluYWN0aXZlLmdpZik7Cit9CisKK2JvZHkuaW5h
Y3RpdmUgLmhlYXAtc25hcHNob3Qtc2lkZWJhci10cmVlLWl0ZW0ud2FpdC5zZWxlY3RlZCAuaWNv
biB7CisgICAgY29udGVudDogdXJsKEltYWdlcy9zcGlubmVySW5hY3RpdmVTZWxlY3RlZC5naWYp
OworfQorCiAuaGVhcC1zbmFwc2hvdC1zaWRlYmFyLXRyZWUtaXRlbS5zbWFsbCAuaWNvbiB7CiAg
ICAgY29udGVudDogdXJsKEltYWdlcy9wcm9maWxlU21hbGxJY29uLnBuZyk7CiB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5odG1sIGIv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuaHRtbAppbmRleCA4
ZjgyYTM4Li5lMTViZmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5odG1sCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvaW5zcGVjdG9yLmh0bWwKQEAgLTU0LDcgKzU0LDYgQEAgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAgICA8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJQb3BvdmVyLmpzIj48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJUYWJiZWRQYW5lLmpzIj48L3Nj
cmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJQbGFjYXJkLmpz
Ij48L3NjcmlwdD4KLSAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJQbGVh
c2VXYWl0TWVzc2FnZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFz
Y3JpcHQiIHNyYz0iVmlldy5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2ph
dmFzY3JpcHQiIHNyYz0iRHJhd2VyLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgc3JjPSJDb25zb2xlVmlldy5qcyI+PC9zY3JpcHQ+Cg==
</data>
<flag name="review"
          id="94725"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
    <flag name="commit-queue"
          id="94726"
          type_id="3"
          status="-"
          setter="mnaganov"
    />
          </attachment>
      

    </bug>

</bugzilla>