<?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>48513</bug_id>
          
          <creation_ts>2010-10-28 04:57:15 -0700</creation_ts>
          <short_desc>[Chromium] History related tests REGRESSED after r70723</short_desc>
          <delta_ts>2010-10-28 16:21:09 -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>History</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>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mikhail Naganov">mnaganov</reporter>
          <assigned_to name="Mihai Parparita">mihaip</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>mihaip</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>300998</commentid>
    <comment_count>0</comment_count>
    <who name="Mikhail Naganov">mnaganov</who>
    <bug_when>2010-10-28 04:57:15 -0700</bug_when>
    <thetext>A number of tests (see below) fail on Chromium, having the same problem: instead of reporting &quot;http://127.0.0.1:8000/history&quot; in Back Forward List, they report &quot;chrome-back-forward://go/0&quot;

E.g. for http/tests/history/redirect-301, expected is:


============== Back Forward List ==============
        http://127.0.0.1:8000/history/redirect-301.html  **nav target**
curr-&gt;  http://127.0.0.1:8000/history/resources/redirect-target.html#2  **nav target**
===============================================


Actual is:


============== Back Forward List ==============
        http://127.0.0.1:8000/history/redirect-301.html  **nav target**
curr-&gt;  chrome-back-forward://go/0
===============================================


I searched for &quot;chrome-back-forward&quot;, and it originates from WebKit/chromium/src/BackForwardListClientImpl.cpp, having a FIXME. Probably, it&apos;s time to do it.

The full list of tests affected (see http://build.chromium.org/p/chromium.webkit/builders/Webkit%20Mac/builds/312/steps/webkit_tests/logs/stdio):

  fast/history/form-submit-in-frame-via-onclick.html = TEXT
  fast/history/form-submit-in-frame.html = TEXT
  fast/history/gesture-before-onload-form-submit.html = TEXT
  fast/history/gesture-before-onload-location-href.html = TEXT
  fast/history/redirect-via-iframe.html = TEXT
  fast/history/same-document-iframes-changing-fragment.html = TEXT
  fast/history/same-document-iframes-changing-pushstate.html = TEXT
  fast/loader/fragment-after-redirect-gets-back-entry.html = TEXT
  fast/loader/frame-location-change-not-added-to-history.html = TEXT
  fast/loader/frame-src-change-added-to-history.html = TEXT
  fast/loader/frame-src-change-not-added-to-history.html = TEXT
  fast/loader/stateobjects/pushstate-clears-forward-history.html = TEXT
  fast/loader/subframe-navigate-during-main-frame-load.html = TEXT
  http/tests/history/redirect-200-refresh-0-seconds.pl = TEXT
  http/tests/history/redirect-200-refresh-2-seconds.pl = TEXT
  http/tests/history/redirect-301.html = TEXT
  http/tests/history/redirect-302.html = TEXT
  http/tests/history/redirect-303.html = TEXT
  http/tests/history/redirect-307.html = TEXT
  http/tests/history/redirect-js-document-location-0-seconds.html = TEXT
  http/tests/history/redirect-js-document-location-2-seconds.html = TEXT
  http/tests/history/redirect-js-document-location-before-load.html = TEXT
  http/tests/history/redirect-js-form-submit-0-seconds.html = TEXT
  http/tests/history/redirect-js-form-submit-2-seconds.html = TEXT
  http/tests/history/redirect-js-form-submit-before-load.html = TEXT
  http/tests/history/redirect-js-location-0-seconds.html = TEXT
  http/tests/history/redirect-js-location-2-seconds.html = TEXT
  http/tests/history/redirect-js-location-assign-0-seconds.html = TEXT
  http/tests/history/redirect-js-location-assign-2-seconds.html = TEXT
  http/tests/history/redirect-js-location-assign-before-load.html = TEXT
  http/tests/history/redirect-js-location-before-load.html = TEXT
  http/tests/history/redirect-js-location-href-0-seconds.html = TEXT
  http/tests/history/redirect-js-location-href-2-seconds.html = TEXT
  http/tests/history/redirect-js-location-href-before-load.html = TEXT
  http/tests/history/redirect-js-location-replace-0-seconds.html = TEXT
  http/tests/history/redirect-js-location-replace-2-seconds.html = TEXT
  http/tests/history/redirect-js-location-replace-before-load.html = TEXT
  http/tests/history/redirect-meta-refresh-0-seconds.html = TEXT
  http/tests/history/redirect-meta-refresh-2-seconds.html = TEXT
  http/tests/navigation/anchor-basic.html = TEXT
  http/tests/navigation/anchor-goback.html = TEXT
  http/tests/navigation/anchor-subframeload.html = TEXT
  http/tests/navigation/back-to-slow-frame.html = TEXT
  http/tests/navigation/document-location-click-timeout.html = TEXT
  http/tests/navigation/document-location-click.html = TEXT
  http/tests/navigation/document-location-mouseover.html = TEXT
  http/tests/navigation/document-location-onload.html = TEXT
  http/tests/navigation/document-location-script.html = TEXT
  http/tests/navigation/dynamic-iframe-dynamic-form-back-entry.html = TEXT
  http/tests/navigation/error404-basic.html = TEXT
  http/tests/navigation/error404-frames.html = TEXT
  http/tests/navigation/error404-goback.html = TEXT
  http/tests/navigation/error404-subframeload.html = TEXT
  http/tests/navigation/javascriptlink-basic.html = TEXT
  http/tests/navigation/javascriptlink-frames.html = TEXT
  http/tests/navigation/javascriptlink-goback.html = TEXT
  http/tests/navigation/javascriptlink-subframeload.html = TEXT
  http/tests/navigation/location-assign-adds-history-item.html = TEXT
  http/tests/navigation/location-href-set-adds-history-item.html = TEXT
  http/tests/navigation/location-replace-adds-history-item.html = TEXT
  http/tests/navigation/location-set-adds-history-item.html = TEXT
  http/tests/navigation/lockedhistory-iframe.html = TEXT
  http/tests/navigation/metaredirect-basic.html = TEXT
  http/tests/navigation/metaredirect-frames.html = TEXT
  http/tests/navigation/metaredirect-goback.html = TEXT
  http/tests/navigation/metaredirect-subframeload.html = TEXT
  http/tests/navigation/multiple-back-forward-entries.html = TEXT
  http/tests/navigation/new-window-redirect-history.html = TEXT
  http/tests/navigation/onload-navigation-iframe-2.html = TEXT
  http/tests/navigation/onload-navigation-iframe-timeout.html = TEXT
  http/tests/navigation/onload-navigation-iframe.html = TEXT
  http/tests/navigation/parsed-iframe-dynamic-form-back-entry.html = TEXT
  http/tests/navigation/post-basic.html = TEXT
  http/tests/navigation/post-frames.html = TEXT
  http/tests/navigation/post-goback-same-url.html = TEXT
  http/tests/navigation/post-goback1.html = TEXT
  http/tests/navigation/post-goback2.html = TEXT
  http/tests/navigation/postredirect-basic.html = TEXT
  http/tests/navigation/postredirect-frames.html = TEXT
  http/tests/navigation/postredirect-goback1.html = TEXT
  http/tests/navigation/postredirect-goback2.html = TEXT
  http/tests/navigation/postredirect-reload.html = TEXT
  http/tests/navigation/redirect-cycle.html = TEXT
  http/tests/navigation/redirect-load-no-form-restoration.html = TEXT
  http/tests/navigation/redirect302-basic.html = TEXT
  http/tests/navigation/redirect302-frames.html = TEXT
  http/tests/navigation/redirect302-goback.html = TEXT
  http/tests/navigation/redirect302-metaredirect.html = TEXT
  http/tests/navigation/redirect302-subframeload.html = TEXT
  http/tests/navigation/relativeanchor-basic.html = TEXT
  http/tests/navigation/relativeanchor-frames.html = TEXT
  http/tests/navigation/relativeanchor-goback.html = TEXT
  http/tests/navigation/restore-form-state-https.html = TEXT
  http/tests/navigation/slowmetaredirect-basic.html = TEXT
  http/tests/navigation/slowtimerredirect-basic.html = TEXT
  http/tests/navigation/success200-basic.html = TEXT
  http/tests/navigation/success200-frames-loadsame.html = TEXT
  http/tests/navigation/success200-frames.html = TEXT
  http/tests/navigation/success200-goback.html = TEXT
  http/tests/navigation/success200-loadsame.html = TEXT
  http/tests/navigation/success200-reload.html = TEXT
  http/tests/navigation/success200-subframeload.html = TEXT
  http/tests/navigation/timerredirect-basic.html = TEXT
  http/tests/navigation/timerredirect-frames.html = TEXT
  http/tests/navigation/timerredirect-goback.html = TEXT
  http/tests/navigation/timerredirect-subframeload.html = TEXT
  http/tests/navigation/window-open-adds-history-item.html = TEXT
  http/tests/navigation/window-open-adds-history-item2.html = TEXT</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301082</commentid>
    <comment_count>1</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-10-28 08:13:26 -0700</bug_when>
    <thetext>I’ll try to find some time to look at this today, but if someone else can fix it before I get to it, that would be great. I have limited experience with Chrome’s back/forward implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301155</commentid>
    <comment_count>2</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-10-28 10:46:07 -0700</bug_when>
    <thetext>I&apos;ll take a stab at this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301219</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-10-28 12:06:59 -0700</bug_when>
    <thetext>On guess is that this has something to do with the backItem, currentItem, and forwardItem functions. Perhaps itemAtIndex doesn’t give the same result or there was some side effect from the old version of the functions.

Very little else changed in WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301365</commentid>
    <comment_count>4</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-10-28 15:08:53 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; On guess is that this has something to do with the backItem, currentItem, and forwardItem functions. Perhaps itemAtIndex doesn’t give the same result or there was some side effect from the old version of the functions.

Yes, BackForwardListChromium has a custom implementation of currentItem(). Either changing it back to virtual in BackForwardList.h or making itemAtIndex(0) in the Chromium version be the same as currentItem should fix things.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301366</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-10-28 15:11:06 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; making itemAtIndex(0) in the Chromium version be the same as currentItem should fix things.

That’s what we should do. In the future we probably don’t want a separate currentItem function. Unless we get rid of itemAtIndex altogether, we want to make sure that itemAtIndex(0) works properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301388</commentid>
    <comment_count>6</comment_count>
      <attachid>72249</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-10-28 15:40:14 -0700</bug_when>
    <thetext>Created attachment 72249
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301389</commentid>
    <comment_count>7</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-10-28 15:40:49 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; That’s what we should do. In the future we probably don’t want a separate currentItem function. Unless we get rid of itemAtIndex altogether, we want to make sure that itemAtIndex(0) works properly.

Makes sense. Uploaded patch does that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301392</commentid>
    <comment_count>8</comment_count>
      <attachid>72249</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-10-28 15:43:19 -0700</bug_when>
    <thetext>Comment on attachment 72249
Patch

Looks good. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301418</commentid>
    <comment_count>9</comment_count>
      <attachid>72249</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-28 16:21:03 -0700</bug_when>
    <thetext>Comment on attachment 72249
Patch

Clearing flags on attachment: 72249

Committed r70823: &lt;http://trac.webkit.org/changeset/70823&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>301419</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-28 16:21:09 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>72249</attachid>
            <date>2010-10-28 15:40:14 -0700</date>
            <delta_ts>2010-10-28 16:21:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-48513-20101028154012.patch</filename>
            <type>text/plain</type>
            <size>14844</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0YzI4NTczYzk3MmQ4ZGQ2NDZlZGViZWYxYzIxMDdlMTA5YTBmOTJmLi5iOTY3OTg1
ZmU4OTk1YTI3MjQwM2QxNDYzNjdlZWY4YzY1NzgzNDdmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMTAtMTAtMjggIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW0Nocm9taXVtXSBI
aXN0b3J5IHJlbGF0ZWQgdGVzdHMgUkVHUkVTU0VEIGFmdGVyIHI3MDcyMworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDg1MTMKKyAgICAgICAgCisgICAg
ICAgIFJlbW92ZSB0ZXN0X2V4cGVjdGF0aW9ucy50eHQgbGluZXMgZm9yIHRlc3RzIHRoYXQgbm93
IHBhc3MuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50
eHQ6CisKIDIwMTAtMTAtMjggIFNlcmdpbyBWaWxsYXIgU2VuaW4gIDxzdmlsbGFyQGlnYWxpYS5j
b20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFydGluIFJvYmluc29uLgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CmluZGV4IDhh
M2U2YWMzYTI4ZmUzMjM1OTczY2M1YzA5NDRlMmM2NjQ1YjQ1ZDMuLmY4NzY1NDAwYWRkNzc3M2Ri
NzNhNzEzMThlZjhkMzYzMzdlMDBmZGEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2Nocm9taXVtL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKQEAgLTMyNDUsMTE4ICszMjQ1LDMgQEAg
QlVHV0s0Njg2OCBXT05URklYIDogcGxhdGZvcm0vY2hyb21pdW0vZmFzdC90ZXh0L2Nocm9taXVt
LW1hYy1kdXBsaWNhdGUtaW1lLWNvbXAKIAogLy8gVmVydGljYWwgdGV4dCBuZWVkcyB0byBiZSBp
bXBsZW1lbnRlZCBpbiBwbGF0Zm9ybXMgb3RoZXIgdGhhbiBPUyBYLgogQlVHV0s0ODQ1OSBXSU4g
TElOVVggOiBmYXN0L2Jsb2NrZmxvdy9ib3JkZXItdmVydGljYWwtbHIuaHRtbCA9IElNQUdFK1RF
WFQKLQotLy8gSGlzdG9yeSByZWxhdGVkIHRlc3RzIHJlZ3Jlc3NlZCBhZnRlciByNzA3MjMuCi1C
VUdXSzQ4NTEzIDogZmFzdC9oaXN0b3J5L2Zvcm0tc3VibWl0LWluLWZyYW1lLXZpYS1vbmNsaWNr
Lmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogZmFzdC9oaXN0b3J5L2Zvcm0tc3VibWl0LWluLWZy
YW1lLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogZmFzdC9oaXN0b3J5L2hpc3RvcnktYmFjay13
aXRoaW4tc3ViZnJhbWUtaGFzaC5odG1sID0gVElNRU9VVAotQlVHV0s0ODUxMyA6IGZhc3QvaGlz
dG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtZm9ybS1zdWJtaXQuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgOiBmYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWxvY2F0aW9uLWhyZWYu
aHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBmYXN0L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFt
ZS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGZhc3QvaGlzdG9yeS9zYW1lLWRvY3VtZW50LWlm
cmFtZXMtY2hhbmdpbmctZnJhZ21lbnQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBmYXN0L2hp
c3Rvcnkvc2FtZS1kb2N1bWVudC1pZnJhbWVzLWNoYW5naW5nLXB1c2hzdGF0ZS5odG1sID0gVEVY
VAotQlVHV0s0ODUxMyA6IGZhc3QvbG9hZGVyL2ZyYWdtZW50LWFmdGVyLXJlZGlyZWN0LWdldHMt
YmFjay1lbnRyeS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGZhc3QvbG9hZGVyL2ZyYW1lLWxv
Y2F0aW9uLWNoYW5nZS1ub3QtYWRkZWQtdG8taGlzdG9yeS5odG1sID0gVEVYVAotQlVHV0s0ODUx
MyA6IGZhc3QvbG9hZGVyL2ZyYW1lLXNyYy1jaGFuZ2UtYWRkZWQtdG8taGlzdG9yeS5odG1sID0g
VEVYVAotQlVHV0s0ODUxMyA6IGZhc3QvbG9hZGVyL2ZyYW1lLXNyYy1jaGFuZ2Utbm90LWFkZGVk
LXRvLWhpc3RvcnkuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBmYXN0L2xvYWRlci9zdGF0ZW9i
amVjdHMvcHVzaHN0YXRlLWNsZWFycy1mb3J3YXJkLWhpc3RvcnkuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgOiBmYXN0L2xvYWRlci9zdWJmcmFtZS1uYXZpZ2F0ZS1kdXJpbmctbWFpbi1mcmFtZS1s
b2FkLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGlyZWN0
LTIwMC1yZWZyZXNoLTAtc2Vjb25kcy5wbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3Rz
L2hpc3RvcnkvcmVkaXJlY3QtMjAwLXJlZnJlc2gtMi1zZWNvbmRzLnBsID0gVEVYVAotQlVHV0s0
ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC0zMDEuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgOiBodHRwL3Rlc3RzL2hpc3RvcnkvcmVkaXJlY3QtMzAyLmh0bWwgPSBURVhUCi1CVUdX
SzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGlyZWN0LTMwMy5odG1sID0gVEVYVAotQlVH
V0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC0zMDcuaHRtbCA9IFRFWFQKLUJV
R1dLNDg1MTMgOiBodHRwL3Rlc3RzL2hpc3RvcnkvcmVkaXJlY3QtanMtZG9jdW1lbnQtbG9jYXRp
b24tMC1zZWNvbmRzLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5
L3JlZGlyZWN0LWpzLWRvY3VtZW50LWxvY2F0aW9uLTItc2Vjb25kcy5odG1sID0gVEVYVAotQlVH
V0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1kb2N1bWVudC1sb2NhdGlv
bi1iZWZvcmUtbG9hZC5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9y
eS9yZWRpcmVjdC1qcy1mb3JtLXN1Ym1pdC0wLXNlY29uZHMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1
MTMgOiBodHRwL3Rlc3RzL2hpc3RvcnkvcmVkaXJlY3QtanMtZm9ybS1zdWJtaXQtMi1zZWNvbmRz
Lmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGlyZWN0LWpz
LWZvcm0tc3VibWl0LWJlZm9yZS1sb2FkLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90
ZXN0cy9oaXN0b3J5L3JlZGlyZWN0LWpzLWxvY2F0aW9uLTAtc2Vjb25kcy5odG1sID0gVEVYVAot
QlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlvbi0yLXNl
Y29uZHMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL2hpc3RvcnkvcmVkaXJl
Y3QtanMtbG9jYXRpb24tYXNzaWduLTAtc2Vjb25kcy5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6
IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlvbi1hc3NpZ24tMi1zZWNvbmRz
Lmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGlyZWN0LWpz
LWxvY2F0aW9uLWFzc2lnbi1iZWZvcmUtbG9hZC5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0
dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlvbi1iZWZvcmUtbG9hZC5odG1sID0g
VEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlv
bi1ocmVmLTAtc2Vjb25kcy5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlz
dG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlvbi1ocmVmLTItc2Vjb25kcy5odG1sID0gVEVYVAotQlVH
V0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1qcy1sb2NhdGlvbi1ocmVmLWJl
Zm9yZS1sb2FkLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3Jl
ZGlyZWN0LWpzLWxvY2F0aW9uLXJlcGxhY2UtMC1zZWNvbmRzLmh0bWwgPSBURVhUCi1CVUdXSzQ4
NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGlyZWN0LWpzLWxvY2F0aW9uLXJlcGxhY2UtMi1z
ZWNvbmRzLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9oaXN0b3J5L3JlZGly
ZWN0LWpzLWxvY2F0aW9uLXJlcGxhY2UtYmVmb3JlLWxvYWQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1
MTMgOiBodHRwL3Rlc3RzL2hpc3RvcnkvcmVkaXJlY3QtbWV0YS1yZWZyZXNoLTAtc2Vjb25kcy5o
dG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvaGlzdG9yeS9yZWRpcmVjdC1tZXRh
LXJlZnJlc2gtMi1zZWNvbmRzLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9u
YXZpZ2F0aW9uL2FuY2hvci1iYXNpYy5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVz
dHMvbmF2aWdhdGlvbi9hbmNob3ItZ29iYWNrLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0
cC90ZXN0cy9uYXZpZ2F0aW9uL2FuY2hvci1zdWJmcmFtZWxvYWQuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vYmFjay10by1zbG93LWZyYW1lLmh0bWwgPSBU
RVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2RvY3VtZW50LWxvY2F0aW9u
LWNsaWNrLXRpbWVvdXQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmln
YXRpb24vZG9jdW1lbnQtbG9jYXRpb24tY2xpY2suaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBo
dHRwL3Rlc3RzL25hdmlnYXRpb24vZG9jdW1lbnQtbG9jYXRpb24tbW91c2VvdmVyLmh0bWwgPSBU
RVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2RvY3VtZW50LWxvY2F0aW9u
LW9ubG9hZC5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9k
b2N1bWVudC1sb2NhdGlvbi1zY3JpcHQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rl
c3RzL25hdmlnYXRpb24vZHluYW1pYy1pZnJhbWUtZHluYW1pYy1mb3JtLWJhY2stZW50cnkuaHRt
bCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vZXJyb3I0MDQtYmFz
aWMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vZXJyb3I0
MDQtZnJhbWVzLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIFdJTiA6IGh0dHAvdGVzdHMvbmF2aWdh
dGlvbi9lcnJvcjQwNC1nb2JhY2suaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgV0lOIExJTlVYIDog
aHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2Vycm9yNDA0LXN1YmZyYW1lbG9hZC5odG1sID0gVEVYVAot
QlVHV0s0ODUxMyBNQUMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vZXJyb3I0MDQtc3ViZnJhbWVs
b2FkLmh0bWwgPSBJTUFHRStURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9u
L2phdmFzY3JpcHRsaW5rLWJhc2ljLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIFdJTiA6IGh0dHAv
dGVzdHMvbmF2aWdhdGlvbi9qYXZhc2NyaXB0bGluay1mcmFtZXMuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgTUFDIExJTlVYIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2phdmFzY3JpcHRsaW5rLWZy
YW1lcy5odG1sID0gSU1BR0UrVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlv
bi9qYXZhc2NyaXB0bGluay1nb2JhY2suaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rl
c3RzL25hdmlnYXRpb24vamF2YXNjcmlwdGxpbmstc3ViZnJhbWVsb2FkLmh0bWwgPSBURVhUCi1C
VUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2xvY2F0aW9uLWFzc2lnbi1hZGRzLWhp
c3RvcnktaXRlbS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlv
bi9sb2NhdGlvbi1ocmVmLXNldC1hZGRzLWhpc3RvcnktaXRlbS5odG1sID0gVEVYVAotQlVHV0s0
ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9sb2NhdGlvbi1yZXBsYWNlLWFkZHMtaGlzdG9y
eS1pdGVtLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL2xv
Y2F0aW9uLXNldC1hZGRzLWhpc3RvcnktaXRlbS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0
dHAvdGVzdHMvbmF2aWdhdGlvbi9sb2NrZWRoaXN0b3J5LWlmcmFtZS5odG1sID0gVEVYVAotQlVH
V0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9tZXRhcmVkaXJlY3QtYmFzaWMuaHRtbCA9
IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vbWV0YXJlZGlyZWN0LWZy
YW1lcy5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9tZXRh
cmVkaXJlY3QtZ29iYWNrLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZp
Z2F0aW9uL21ldGFyZWRpcmVjdC1zdWJmcmFtZWxvYWQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMg
OiBodHRwL3Rlc3RzL25hdmlnYXRpb24vbXVsdGlwbGUtYmFjay1mb3J3YXJkLWVudHJpZXMuaHRt
bCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vbmV3LXdpbmRvdy1y
ZWRpcmVjdC1oaXN0b3J5Lmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZp
Z2F0aW9uL29ubG9hZC1uYXZpZ2F0aW9uLWlmcmFtZS0yLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEz
IDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL29ubG9hZC1uYXZpZ2F0aW9uLWlmcmFtZS10aW1lb3V0
Lmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL29ubG9hZC1u
YXZpZ2F0aW9uLWlmcmFtZS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2
aWdhdGlvbi9wYXJzZWQtaWZyYW1lLWR5bmFtaWMtZm9ybS1iYWNrLWVudHJ5Lmh0bWwgPSBURVhU
Ci1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3Bvc3QtYmFzaWMuaHRtbCA9IFRF
WFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcG9zdC1mcmFtZXMuaHRtbCA9
IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcG9zdC1nb2JhY2stc2Ft
ZS11cmwuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcG9z
dC1nb2JhY2sxLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9u
L3Bvc3QtZ29iYWNrMi5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdh
dGlvbi9wb3N0cmVkaXJlY3QtYmFzaWMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgV0lOIDogaHR0
cC90ZXN0cy9uYXZpZ2F0aW9uL3Bvc3RyZWRpcmVjdC1mcmFtZXMuaHRtbCA9IFRFWFQKLUJVR1dL
NDg1MTMgTElOVVggTUFDIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3Bvc3RyZWRpcmVjdC1mcmFt
ZXMuaHRtbCA9IElNQUdFK1RFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24v
cG9zdHJlZGlyZWN0LWdvYmFjazEuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3Rz
L25hdmlnYXRpb24vcG9zdHJlZGlyZWN0LWdvYmFjazIuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMg
OiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcG9zdHJlZGlyZWN0LXJlbG9hZC5odG1sID0gVEVYVAot
QlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9yZWRpcmVjdC1jeWNsZS5odG1sID0g
VEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9yZWRpcmVjdC1sb2FkLW5v
LWZvcm0tcmVzdG9yYXRpb24uaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25h
dmlnYXRpb24vcmVkaXJlY3QzMDItYmFzaWMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRw
L3Rlc3RzL25hdmlnYXRpb24vcmVkaXJlY3QzMDItZnJhbWVzLmh0bWwgPSBURVhUCi1CVUdXSzQ4
NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3JlZGlyZWN0MzAyLWdvYmFjay5odG1sID0gVEVY
VAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9yZWRpcmVjdDMwMi1tZXRhcmVk
aXJlY3QuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcmVk
aXJlY3QzMDItc3ViZnJhbWVsb2FkLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0
cy9uYXZpZ2F0aW9uL3JlbGF0aXZlYW5jaG9yLWJhc2ljLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEz
IDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3JlbGF0aXZlYW5jaG9yLWZyYW1lcy5odG1sID0gVEVY
VAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9yZWxhdGl2ZWFuY2hvci1nb2Jh
Y2suaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vcmVzdG9y
ZS1mb3JtLXN0YXRlLWh0dHBzLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9u
YXZpZ2F0aW9uL3Nsb3dtZXRhcmVkaXJlY3QtYmFzaWMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMg
OiBodHRwL3Rlc3RzL25hdmlnYXRpb24vc2xvd3RpbWVycmVkaXJlY3QtYmFzaWMuaHRtbCA9IFRF
WFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vc3VjY2VzczIwMC1iYXNpYy5o
dG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9zdWNjZXNzMjAw
LWZyYW1lcy1sb2Fkc2FtZS5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAvdGVzdHMvbmF2
aWdhdGlvbi9zdWNjZXNzMjAwLWZyYW1lcy5odG1sID0gVEVYVAotQlVHV0s0ODUxMyA6IGh0dHAv
dGVzdHMvbmF2aWdhdGlvbi9zdWNjZXNzMjAwLWdvYmFjay5odG1sID0gVEVYVAotQlVHV0s0ODUx
MyA6IGh0dHAvdGVzdHMvbmF2aWdhdGlvbi9zdWNjZXNzMjAwLWxvYWRzYW1lLmh0bWwgPSBURVhU
Ci1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3N1Y2Nlc3MyMDAtcmVsb2FkLmh0
bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0aW9uL3N1Y2Nlc3MyMDAt
c3ViZnJhbWVsb2FkLmh0bWwgPSBURVhUCi1CVUdXSzQ4NTEzIDogaHR0cC90ZXN0cy9uYXZpZ2F0
aW9uL3RpbWVycmVkaXJlY3QtYmFzaWMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rl
c3RzL25hdmlnYXRpb24vdGltZXJyZWRpcmVjdC1mcmFtZXMuaHRtbCA9IFRFWFQKLUJVR1dLNDg1
MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vdGltZXJyZWRpcmVjdC1nb2JhY2suaHRtbCA9IFRF
WFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24vdGltZXJyZWRpcmVjdC1zdWJm
cmFtZWxvYWQuaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBodHRwL3Rlc3RzL25hdmlnYXRpb24v
d2luZG93LW9wZW4tYWRkcy1oaXN0b3J5LWl0ZW0uaHRtbCA9IFRFWFQKLUJVR1dLNDg1MTMgOiBo
dHRwL3Rlc3RzL25hdmlnYXRpb24vd2luZG93LW9wZW4tYWRkcy1oaXN0b3J5LWl0ZW0yLmh0bWwg
PSBURVhUCi0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VM
b2cKaW5kZXggZDIzMjVkYzY2YjYwNmY0YTg0MDdjNzhiOWQyNjBhOWZhOGFkN2Y3MS4uNmY1M2U1
YjI0MzY4OTE3YzYzODk5YmRjNTc3NWNhMzJhZGVmMzFjMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMC0x
MC0yOCAgTWloYWkgUGFycGFyaXRhICA8bWloYWlwQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbQ2hyb21pdW1dIEhpc3Rvcnkg
cmVsYXRlZCB0ZXN0cyBSRUdSRVNTRUQgYWZ0ZXIgcjcwNzIzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00ODUxMworICAgICAgICAKKyAgICAgICAgUmVt
b3ZlIGJhY2tJdGVtKCksIGZvcndhcmRJdGVtKCkgYW5kIGN1cnJlbnRJdGVtKCkgZnJvbSB0aGUg
Q2hyb21pdW0KKyAgICAgICAgQmFja0ZvcndhcmRMaXN0IGltcGxlbWVudGF0aW9uLCBzaW5jZSB0
aGV5IGNhbiB1c2UgdGhlIGJhc2UgY2xhc3MKKyAgICAgICAgYmVoYXZpb3Igbm93ICh3aGljaCBj
YWxsIGl0ZW1BdEluZGV4IHdpdGggLTEsIDEsIGFuZCAwIHJlc3BlY3RpdmVseSkuCisKKyAgICAg
ICAgKiBoaXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5oOgorICAgICAgICAqIGhpc3RvcnkvQmFja0Zv
cndhcmRMaXN0Q2hyb21pdW0uY3BwOgorCiAyMDEwLTEwLTI4ICBEYW4gQmVybnN0ZWluICA8bWl0
ekBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBSb2Jlbi4KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvaGlzdG9yeS9CYWNrRm9yd2FyZExpc3QuaCBiL1dlYkNvcmUvaGlzdG9yeS9C
YWNrRm9yd2FyZExpc3QuaAppbmRleCA4M2VmYzNjNzU4YWUzNjcwOWU0MmQ2MTBmODg4N2QyZGQw
NWRiMjY5Li5iNjIyYTlkMjU0NzU4NzNmZDFhZmNkNDBhZjhhY2FlMjkzMTA5YzgwIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2hpc3RvcnkvQmFja0ZvcndhcmRMaXN0LmgKKysrIGIvV2ViQ29yZS9oaXN0
b3J5L0JhY2tGb3J3YXJkTGlzdC5oCkBAIC01NCw3ICs1NCw2IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5CYWNrRm9yd2FyZExpc3RDbGllbnQoKSB7fQogICAgIHZpcnR1YWwgdm9pZCBhZGRJdGVt
KFBhc3NSZWZQdHI8SGlzdG9yeUl0ZW0+KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIGdvVG9JdGVt
KEhpc3RvcnlJdGVtKikgPSAwOwotICAgIHZpcnR1YWwgSGlzdG9yeUl0ZW0qIGN1cnJlbnRJdGVt
KCkgPSAwOwogICAgIHZpcnR1YWwgSGlzdG9yeUl0ZW0qIGl0ZW1BdEluZGV4KGludCkgPSAwOwog
ICAgIHZpcnR1YWwgaW50IGJhY2tMaXN0Q291bnQoKSA9IDA7CiAgICAgdmlydHVhbCBpbnQgZm9y
d2FyZExpc3RDb3VudCgpID0gMDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaGlzdG9yeS9CYWNrRm9y
d2FyZExpc3RDaHJvbWl1bS5jcHAgYi9XZWJDb3JlL2hpc3RvcnkvQmFja0ZvcndhcmRMaXN0Q2hy
b21pdW0uY3BwCmluZGV4IGRjMWVmYzk5NTU4MTRhYmY4MDJkN2E5YjhiOWE5NDJiYTEzNzhlM2Uu
LmEyMmExNDcwYmM2NDcxOTlmYTMxNWU1NTU1ODIxZjdhYTE3NjZhMjUgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvaGlzdG9yeS9CYWNrRm9yd2FyZExpc3RDaHJvbWl1bS5jcHAKKysrIGIvV2ViQ29yZS9o
aXN0b3J5L0JhY2tGb3J3YXJkTGlzdENocm9taXVtLmNwcApAQCAtNjQsMjMgKzY0LDYgQEAgdm9p
ZCBCYWNrRm9yd2FyZExpc3RJbXBsOjpnb1RvSXRlbShIaXN0b3J5SXRlbSogaXRlbSkKICAgICBt
X2NsaWVudC0+Z29Ub0l0ZW0oaXRlbSk7CiB9CiAKLUhpc3RvcnlJdGVtKiBCYWNrRm9yd2FyZExp
c3RJbXBsOjpiYWNrSXRlbSgpCi17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0
dXJuIDA7Ci19Ci0KLUhpc3RvcnlJdGVtKiBCYWNrRm9yd2FyZExpc3RJbXBsOjpmb3J3YXJkSXRl
bSgpCi17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLUhp
c3RvcnlJdGVtKiBCYWNrRm9yd2FyZExpc3RJbXBsOjpjdXJyZW50SXRlbSgpCi17Ci0gICAgcmV0
dXJuIG1fY2xpZW50LT5jdXJyZW50SXRlbSgpOwotfQotCiBpbnQgQmFja0ZvcndhcmRMaXN0SW1w
bDo6Y2FwYWNpdHkoKQogewogICAgIHJldHVybiBtX2NhcGFjaXR5OwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
ZWJhNmQ1NGMyOWViMWMzZTdiYTVmYzg2MWE2NmY5M2UyMTUxMjA4Mi4uY2RlNmJmY2YwMTZlZDhl
ZjVlMDJhOGRjZDJlYzljNTIxMDYzOGM1NiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL0No
YW5nZUxvZworKysgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAK
KzIwMTAtMTAtMjggIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW0Nocm9taXVtXSBI
aXN0b3J5IHJlbGF0ZWQgdGVzdHMgUkVHUkVTU0VEIGFmdGVyIHI3MDcyMworICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDg1MTMKKworICAgICAgICBTaW5j
ZSByNzA3MjMgbWFkZSBCYWNrRm9yd2FyZExpc3Q6OmN1cnJlbnRJdGVtIG5vIGxvbmdlciBiZSB2
aXJ0dWFsLAorICAgICAgICB3ZSB3ZXJlIG5vdCByZWFjaGluZyB0aGUgaW1wbGVtZW50YXRpb24g
aW4gQ2hyb21pdW0ncyAKKyAgICAgICAgQmFja0ZvcndhcmRMaXN0Q2xpZW50SW1wbCwgYW5kIGZv
ciBDaHJvbWl1bSBjdXJyZW50SXRlbSBpcyBub3QgdGhlIHNhbWUKKyAgICAgICAgYXMgaXRlbUF0
SW5kZXgoMCkuCisgICAgICAgIAorICAgICAgICBUaGUgZml4IGlzIHRvIG1ha2UgaXRlbUF0SW5k
ZXgoMCkgaGF2ZSB0aGUgY3VycmVudEl0ZW0oKSBiZWhhdmlvciwgd2hpY2gKKyAgICAgICAgbGV0
cyB1cyBrZWVwIGN1cnJlbnRJdGVtIGFzIG5vbi12aXJ0dWFsIChhbmQgcmVtb3ZlIGl0cyBpbXBs
ZW1lbnRhdGlvbgorICAgICAgICBmcm9tIHRoZSBDaHJvbWl1bSBzaWRlKS4KKyAgICAgICAgCisg
ICAgICAgIFRoaXMgYWxzbyBzd2l0Y2hlcyBDaHJvbWl1bSB0byB1c2UgdGhlIGRlZmF1bHQgaW1w
bGVtZW50YXRpb24gb2YgCisgICAgICAgIGJhY2tJdGVtKCkgYW5kIGZvcndhcmRJdGVtKCkgKHZz
LiB0aGUgb2xkIHN0dWJzIHRoYXQganVzdCBoYWQKKyAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KSBzaW5jZSB0aGV5J3JlIGFjdHVhbGx5IHJlYWNoZWFibGUgd2l0aCBDaHJvbWl1bQorICAgICAg
ICBjb2RlIHRoYW5rcyB0byB0aGUgY2FsbHMgaW4gRnJhbWVMb2FkZXI6OmNoZWNrRGlkUGVyZm9y
bUZpcnN0TmF2aWdhdGlvbi4KKworICAgICAgICAqIHNyYy9CYWNrRm9yd2FyZExpc3RDbGllbnRJ
bXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6QmFja0ZvcndhcmRMaXN0Q2xpZW50SW1wbDo6aXRl
bUF0SW5kZXgpOgorICAgICAgICAqIHNyYy9CYWNrRm9yd2FyZExpc3RDbGllbnRJbXBsLmg6CisK
IDIwMTAtMTAtMjggIFNhdGlzaCBTYW1wYXRoICA8c2F0aXNoQGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBTdGV2ZSBCbG9jay4KZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvQmFja0ZvcndhcmRMaXN0Q2xpZW50SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3Jj
L0JhY2tGb3J3YXJkTGlzdENsaWVudEltcGwuY3BwCmluZGV4IDI5NzYzMjlhMGQ3OTExN2Y3OThi
YWM1N2Q2YTM5MDFmYjNkNmVkYzIuLmFmNjU5YmM4OWM2NzVlMDU1YjZjOWViZGRlNmEyYzU5YjMx
NWM3ZWIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQmFja0ZvcndhcmRMaXN0Q2xp
ZW50SW1wbC5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9CYWNrRm9yd2FyZExpc3RDbGll
bnRJbXBsLmNwcApAQCAtODQsMTQgKzg0LDE1IEBAIHZvaWQgQmFja0ZvcndhcmRMaXN0Q2xpZW50
SW1wbDo6Z29Ub0l0ZW0oSGlzdG9yeUl0ZW0qIGl0ZW0pCiAgICAgICAgIG1fcGVuZGluZ0hpc3Rv
cnlJdGVtID0gMDsKIH0KIAotSGlzdG9yeUl0ZW0qIEJhY2tGb3J3YXJkTGlzdENsaWVudEltcGw6
OmN1cnJlbnRJdGVtKCkKLXsKLSAgICByZXR1cm4gbV9jdXJyZW50SXRlbS5nZXQoKTsKLX0KLQog
SGlzdG9yeUl0ZW0qIEJhY2tGb3J3YXJkTGlzdENsaWVudEltcGw6Oml0ZW1BdEluZGV4KGludCBp
bmRleCkKIHsKLSAgICBpZiAoIW1fd2ViVmlldy0+Y2xpZW50KCkgfHwgaW5kZXggPiBmb3J3YXJk
TGlzdENvdW50KCkgfHwgLWluZGV4ID4gYmFja0xpc3RDb3VudCgpKQorICAgIGlmICghbV93ZWJW
aWV3LT5jbGllbnQoKSkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBpZiAoIWluZGV4KQorICAg
ICAgICByZXR1cm4gbV9jdXJyZW50SXRlbS5nZXQoKTsKKworICAgIGlmIChpbmRleCA+IGZvcndh
cmRMaXN0Q291bnQoKSB8fCAtaW5kZXggPiBiYWNrTGlzdENvdW50KCkpCiAgICAgICAgIHJldHVy
biAwOwogCiAgICAgLy8gU2luY2Ugd2UgZG9uJ3Qga2VlcCB0aGUgZW50aXJlIGJhY2svZm9yd2Fy
ZCBsaXN0LCB3ZSBoYXZlIG5vIHdheSB0bwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9CYWNrRm9yd2FyZExpc3RDbGllbnRJbXBsLmggYi9XZWJLaXQvY2hyb21pdW0vc3JjL0JhY2tG
b3J3YXJkTGlzdENsaWVudEltcGwuaAppbmRleCAxZDhiZWIwNmUzNDJiNTdmNDNjZTJlY2QxOGIy
ZjJiZjY2NDk2ZjM5Li4zOGUzN2E0YmFmMmFlZTM5ZWEzMzc2YTNjMjQ0NzkxZmE2YzUzNzA2IDEw
MDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL0JhY2tGb3J3YXJkTGlzdENsaWVudEltcGwu
aAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0JhY2tGb3J3YXJkTGlzdENsaWVudEltcGwuaApA
QCAtNTAsNyArNTAsNiBAQCBwcml2YXRlOgogICAgIC8vIFdlYkNvcmU6OkJhY2tGb3J3YXJkTGlz
dENsaWVudCBtZXRob2RzOgogICAgIHZpcnR1YWwgdm9pZCBhZGRJdGVtKFBhc3NSZWZQdHI8V2Vi
Q29yZTo6SGlzdG9yeUl0ZW0+KTsKICAgICB2aXJ0dWFsIHZvaWQgZ29Ub0l0ZW0oV2ViQ29yZTo6
SGlzdG9yeUl0ZW0qKTsKLSAgICB2aXJ0dWFsIFdlYkNvcmU6Okhpc3RvcnlJdGVtKiBjdXJyZW50
SXRlbSgpOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6SGlzdG9yeUl0ZW0qIGl0ZW1BdEluZGV4KGlu
dCBpbmRleCk7CiAgICAgdmlydHVhbCBpbnQgYmFja0xpc3RDb3VudCgpOwogICAgIHZpcnR1YWwg
aW50IGZvcndhcmRMaXN0Q291bnQoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>