<?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>15173</bug_id>
          
          <creation_ts>2007-09-10 13:45:45 -0700</creation_ts>
          <short_desc>Middle click should not fire onclick event</short_desc>
          <delta_ts>2010-05-06 15:05:54 -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>DOM</component>
          <version>523.x (Safari 3)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>22382</dup_id>
          
          <bug_file_loc>http://bugs.blaut.biz/webkit/onclick-issue.htm</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robert Blaut">webkit</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>ian</cc>
    
    <cc>tony</cc>
    
    <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>696</commentid>
    <comment_count>0</comment_count>
    <who name="Robert Blaut">webkit</who>
    <bug_when>2007-09-10 13:45:45 -0700</bug_when>
    <thetext>I&apos;ve noticed that Safari is the only browser I&apos;ve tested which fire onclick event after using middle click (wheel button) to load a link on a new tab. This is very frustrating behaviour, not visible in other popular browsers on Windows (Internet Explorer 7, Firefox 2 and Opera 9).

Steps to reproduce:

1. Go to a page: http://bugs.blaut.biz/webkit/onclick-issue.htm
2. Middle click on the only link on the page.

Expected result:

Safari should open a new tab and load a page http://webkit.org. The tab with the clicked link should not load webkit.org site.

Current result:

Safari loads on a new tab a page http://webkit.org and also load a page webkit.org on the tab with the clicked link.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>680</commentid>
    <comment_count>1</comment_count>
      <attachid>16247</attachid>
    <who name="Robert Blaut">webkit</who>
    <bug_when>2007-09-10 13:46:59 -0700</bug_when>
    <thetext>Created attachment 16247
A minimal test case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-09-10 20:09:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/5473092&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>71023</commentid>
    <comment_count>3</comment_count>
    <who name="Robert Blaut">webkit</who>
    <bug_when>2008-02-18 02:06:40 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; &lt;rdar://problem/5473092&gt;
&gt; 

I assume the bug is confirmed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>77973</commentid>
    <comment_count>4</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2008-04-17 12:46:32 -0700</bug_when>
    <thetext>It looks like in Firefox, click event handlers only fire for left click.

In IE7, click events fire for left click or middle click.  However, anchor tags seem to be a special case where if there&apos;s a href, the href is opened in a new tab.  Otherwise, the click event handler runs.

As far as I can tell, it seems like the click event should fire for middle clicks, but the spec seems ambiguous:
http://www.w3.org/TR/DOM-Level-3-Events/events.html#event-click

Here&apos;s a good test case:
http://www.w3.org/WAI/UA/TS/html401/cp0102/0102-ONCLICK-MULTIPLE-EVENTS.html

Also, this is what causes middle clicking a link in Gmail to open in a new window rather than as a background tab in Safari.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84290</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-24 12:43:18 -0700</bug_when>
    <thetext>The &quot;fix&quot; to this would be a one line change in:
EventHandler.cpp:
bool EventHandler::handleMouseReleaseEvent(const PlatformMouseEvent&amp; mouseEvent)

There is already code in that function to avoid ever dispatching click events for right-clicks, we&apos;d just have to change it to not dispatch clicks for middle clicks as well (possibly only to dispatch click events for left-clicks in general).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84291</commentid>
    <comment_count>6</comment_count>
    <who name="Peter Kasting">pkasting</who>
    <bug_when>2008-06-24 12:48:43 -0700</bug_when>
    <thetext>&quot;A pointing device button&quot; on the spec seems unambiguous that any button should fire clicks.  It&apos;s not clear to me whether to claim the other browsers are wrong (certainly not firing clicks on middle/right clicks _seems_ bizarre, and makes life harder on JS authors who want to use those buttons to trigger actions), or to claim that the spec should change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84325</commentid>
    <comment_count>7</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2008-06-24 17:44:30 -0700</bug_when>
    <thetext>It seems like the better behaviour would be to fire the click event normally, but then catch any attempt at navigating the page, and instead make another browsing context navigate, or something like that. Then it would work with all kinds of weird scripts, too. That&apos;s more work, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84503</commentid>
    <comment_count>8</comment_count>
      <attachid>21957</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-26 11:40:46 -0700</bug_when>
    <thetext>Created attachment 21957
Only dispatch clicks for left-button clicks

 WebCore/ChangeLog             |   13 +++++++++++++
 WebCore/page/EventHandler.cpp |    7 ++++---
 2 files changed, 17 insertions(+), 3 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84504</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-26 11:42:44 -0700</bug_when>
    <thetext>I see there are differing opinions above as to how this should be solved.  Regardless, I wrote a patch which solves this by making us not send these click events like other browsers.

I also noticed in my testing that we do not send a mouse-release event on right-clicks.  FF does (right as it&apos;s displaying the context menu).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84576</commentid>
    <comment_count>10</comment_count>
      <attachid>21957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-27 09:10:58 -0700</bug_when>
    <thetext>Comment on attachment 21957
Only dispatch clicks for left-button clicks

Lets add something to eventSender so we can do an automated tests. Should be simple.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84603</commentid>
    <comment_count>11</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2008-06-27 12:56:38 -0700</bug_when>
    <thetext>I think Eric&apos;s patch is fine for now, my earlier suggestion is what I think we should do on the long term though. It would work for far more cases, and would be really cool.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84604</commentid>
    <comment_count>12</comment_count>
      <attachid>21976</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 13:19:35 -0700</bug_when>
    <thetext>Created attachment 21976
First attempt at adding eventSender.mouseDown(1) support

 .../DumpRenderTree.xcodeproj/project.pbxproj       |    2 +-
 .../DumpRenderTree/mac/EventSendingController.h    |    2 +-
 .../DumpRenderTree/mac/EventSendingController.mm   |   95 ++++++++++++++++----
 3 files changed, 79 insertions(+), 20 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84614</commentid>
    <comment_count>13</comment_count>
      <attachid>21977</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 19:37:23 -0700</bug_when>
    <thetext>Created attachment 21977
Add multi-button mouseevent support to DRT and test case

 .../fast/events/mouse-click-events-expected.txt    |   32 +++++++
 LayoutTests/fast/events/mouse-click-events.html    |   13 +++
 .../fast/events/resources/mouse-click-events.js    |   45 ++++++++++
 .../DumpRenderTree.xcodeproj/project.pbxproj       |    2 +-
 .../DumpRenderTree/mac/EventSendingController.h    |    2 +-
 .../DumpRenderTree/mac/EventSendingController.mm   |   88 ++++++++++++++++----
 6 files changed, 165 insertions(+), 17 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84619</commentid>
    <comment_count>14</comment_count>
      <attachid>21980</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 21:04:06 -0700</bug_when>
    <thetext>Created attachment 21980
Add multi-button mouseevent support to DRT and test case

 LayoutTests/ChangeLog                              |   12 ++
 .../fast/events/mouse-click-events-expected.txt    |   32 ++++++
 LayoutTests/fast/events/mouse-click-events.html    |   13 +++
 .../fast/events/resources/mouse-click-events.js    |   45 ++++++++
 WebKitTools/ChangeLog                              |   22 ++++
 .../DumpRenderTree.xcodeproj/project.pbxproj       |    2 +-
 .../DumpRenderTree/mac/EventSendingController.h    |    2 +-
 .../DumpRenderTree/mac/EventSendingController.mm   |  111 ++++++++++++++++----
 8 files changed, 214 insertions(+), 25 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84621</commentid>
    <comment_count>15</comment_count>
      <attachid>21957</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-27 21:15:30 -0700</bug_when>
    <thetext>Comment on attachment 21957
Only dispatch clicks for left-button clicks

r=me, assuming you land the test too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84622</commentid>
    <comment_count>16</comment_count>
      <attachid>21980</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-06-27 21:15:32 -0700</bug_when>
    <thetext>Comment on attachment 21980
Add multi-button mouseevent support to DRT and test case

Looks good, but we need to add this test to the skipped list for the other platforms, since the new support in DumpRenderTree is Mac-only.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84627</commentid>
    <comment_count>17</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 21:50:02 -0700</bug_when>
    <thetext>Actually.  My patch just breaks middle-click-to-open-links entirely.  I guess the &quot;middle click to open links&quot; behavior depends on there being a click event.   Sigh.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84628</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 21:55:20 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; Actually.  My patch just breaks middle-click-to-open-links entirely.  I guess
&gt; the &quot;middle click to open links&quot; behavior depends on there being a click event.
&gt;   Sigh.

Yeah, of course it does.  We do navigation based on HTMLAnchorElement::defaultEventHandler.  I&apos;m not sure why I ever thought this would work.  I guess the test case is still useful, but there is no easy way for us to replicate FF/IE behavior here.  I think we should scratch this patch and implement a better &quot;window.open opens in new tab if called from a middle-click&quot; behavior.  However I bet that&apos;s a Safari change more than a WebKit change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84629</commentid>
    <comment_count>19</comment_count>
      <attachid>21957</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-27 21:55:54 -0700</bug_when>
    <thetext>Comment on attachment 21957
Only dispatch clicks for left-button clicks

Removing Review flag.  This patch breaks more than it helps.  I&apos;ll still land the test case patch though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>84718</commentid>
    <comment_count>20</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-06-29 12:27:36 -0700</bug_when>
    <thetext>Ok.  I landed the test case and DRT enhancements as part of:
http://trac.webkit.org/changeset/34871

We&apos;ve decided to continue to send these events but instead fix window.open to open in a new tab when the result of a command-click or middle-click.  The rest needs to be done in Safari (And is thus tracked internally by Apple).

Closing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85904</commentid>
    <comment_count>21</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-07-14 14:06:54 -0700</bug_when>
    <thetext>So unfortunately Gmail still isn&apos;t fixed (middle clicking on links, still opens in a new window).

Part of that is going to be a Safari fix, but part of it is going to need to be a WebKit fix.  I don&apos;t believe this could be fixed in Safari TOT, since WebKit TOT isn&apos;t passing any event context information to the WebViewLoadDelegate as part of the open new url callback.  the NavigationAction does not have an event() set on it when you middle-click a gmail link, so there is no way this information could be being passed up to Safari.

I don&apos;t think this is the right bug to track the brokeness of gmail-middle-clicking.  But I was asked by some avid Safari users internally to finally see if I couldn&apos;t get to the bottom of this Safari + Gmail bug.  As far as I can tell, there are still fixes which need to happen in WebKit (and possibly Safari as well).

Perhaps someone on the Apple side of things can give me some guidance as to any work you all have done to fix the &quot;Safari + middle-click in Gmail opens a new window instead of a new-tab behind the current&quot; bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221993</commentid>
    <comment_count>22</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-05-06 15:05:54 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 22382 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>16247</attachid>
            <date>2007-09-10 13:46:59 -0700</date>
            <delta_ts>2007-09-10 13:46:59 -0700</delta_ts>
            <desc>A minimal test case</desc>
            <filename>onclick-issue.htm</filename>
            <type>text/html</type>
            <size>474</size>
            <attacher name="Robert Blaut">webkit</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCjxoZWFkPg0KCTx0aXRsZT5PbmNsaWNrIElzc3VlPC90
aXRsZT4NCjwvaGVhZD4NCjxib2R5Pg0KDQo8ZGl2IG9uY2xpY2s9ImxvY2F0aW9uLmhyZWY9J2h0
dHA6Ly93ZWJraXQub3JnJyI+DQoJTWlkZGxlIGNsaWNrIHNob3VsZCBub3QgZmlyZSBvbmNsaWNr
IGV2ZW50IGluIFdlYmtpdCBhcyBpbXBsZW1lbnRlZCBpbiBJbnRlcm5ldCBFeHBsb3JlciwgRmly
ZWZveCBhbmQgT3BlcmEuPGJyIC8+DQoJPGEgaHJlZj0iaHR0cDovL3dlYmtpdC5vcmciPnRvIHRl
c3QgdGhpcyBiZWhhdmlvdXIgbWlkZGxlIGNsaWNrIG1lPC9hPjxiciAvPg0KCUFmdGVyIG1pZGRs
ZSBjbGljayBhIG5ldyB0YWIgPGI+c2hvdWxkPC9iPiBvcGVuIHdlYmtpdC5vcmcgc2l0ZSBhbmQg
dGhpcyBwYWdlIDxiPnNob3VsZCBub3Q8L2I+IG9wZW4gd2Via2l0Lm9yZyBzaXRlLg0KPC9kaXY+
DQo8L2JvZHk+DQo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21957</attachid>
            <date>2008-06-26 11:40:46 -0700</date>
            <delta_ts>2008-06-27 21:55:54 -0700</delta_ts>
            <desc>Only dispatch clicks for left-button clicks</desc>
            <filename>Only-dispatch-clicks-for-left-button-clicks.patch</filename>
            <type>text/plain</type>
            <size>2211</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">YzI1ZGI2OTliNjQzNzcyZDc5NjcwYWJlNWIyZjc2NWViMWYyMjg2ZgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2ODAzNjYzLi4wZTM1N2Vl
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDA4LTA2LTI2ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYXRj
aCBJRS9GRiBieSBvbmx5IGRpc3BhdGNoaW5nIGNsaWNrIGV2ZW50cyBmb3IgbGVmdC1jbGlja3MK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MTczCisK
KyAgICAgICAgVGVzdDogIFRoZXJlIGlzIGN1cnJlbnRseSBubyB3YXkgdG8gbWFrZSBhbiBhdXRv
bWF0ZWQgdGVzdC4KKworICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VEb3VibGVDbGlja0V2ZW50KToKKyAg
ICAgICAgKFdlYkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VSZWxlYXNlRXZlbnQpOgor
CiAyMDA4LTA2LTI1ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2
aWV3ZWQgYnkgQnJhZHkgRWlkc29uLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFu
ZGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCA2OTg0N2ZmLi5i
NjFhNjQ0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9X
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtOTMxLDggKzkzMSw4IEBAIGJvb2wgRXZl
bnRIYW5kbGVyOjpoYW5kbGVNb3VzZURvdWJsZUNsaWNrRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3Vz
ZUV2ZW50JiBtb3VzZUV2CiAgICAgYm9vbCBzd2FsbG93TW91c2VVcEV2ZW50ID0gZGlzcGF0Y2hN
b3VzZUV2ZW50KG1vdXNldXBFdmVudCwgbWV2LnRhcmdldE5vZGUoKSwgdHJ1ZSwgbV9jbGlja0Nv
dW50LCBtb3VzZUV2ZW50LCBmYWxzZSk7CiAKICAgICBib29sIHN3YWxsb3dDbGlja0V2ZW50ID0g
ZmFsc2U7Ci0gICAgLy8gRG9uJ3QgZXZlciBkaXNwYXRjaCBjbGljayBldmVudHMgZm9yIHJpZ2h0
IGNsaWNrcwotICAgIGlmIChtb3VzZUV2ZW50LmJ1dHRvbigpICE9IFJpZ2h0QnV0dG9uICYmIG1l
di50YXJnZXROb2RlKCkgPT0gbV9jbGlja05vZGUpCisgICAgLy8gR2Vja28gYW5kIElFIG9ubHkg
ZGlzcGF0Y2ggY2xpY2sgZXZlbnRzIGZvciBsZWZ0LW1vdXNlIGNsaWNrcworICAgIGlmIChtb3Vz
ZUV2ZW50LmJ1dHRvbigpID09IExlZnRCdXR0b24gJiYgbWV2LnRhcmdldE5vZGUoKSA9PSBtX2Ns
aWNrTm9kZSkKICAgICAgICAgc3dhbGxvd0NsaWNrRXZlbnQgPSBkaXNwYXRjaE1vdXNlRXZlbnQo
Y2xpY2tFdmVudCwgbWV2LnRhcmdldE5vZGUoKSwgdHJ1ZSwgbV9jbGlja0NvdW50LCBtb3VzZUV2
ZW50LCB0cnVlKTsKIAogICAgIGJvb2wgc3dhbGxvd01vdXNlUmVsZWFzZUV2ZW50ID0gZmFsc2U7
CkBAIC0xMDk2LDcgKzEwOTYsOCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlTW91c2VSZWxl
YXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBtb3VzZUV2ZW50KQogCiAgICAgLy8g
RG9uJ3QgZXZlciBkaXNwYXRjaCBjbGljayBldmVudHMgZm9yIHJpZ2h0IGNsaWNrcwogICAgIGJv
b2wgc3dhbGxvd0NsaWNrRXZlbnQgPSBmYWxzZTsKLSAgICBpZiAobV9jbGlja0NvdW50ID4gMCAm
JiBtb3VzZUV2ZW50LmJ1dHRvbigpICE9IFJpZ2h0QnV0dG9uICYmIG1ldi50YXJnZXROb2RlKCkg
PT0gbV9jbGlja05vZGUpCisgICAgLy8gR2Vja28gYW5kIElFIG9ubHkgZGlzcGF0Y2ggY2xpY2sg
ZXZlbnRzIGZvciBsZWZ0LW1vdXNlIGNsaWNrcworICAgIGlmIChtX2NsaWNrQ291bnQgPiAwICYm
IG1vdXNlRXZlbnQuYnV0dG9uKCkgPT0gTGVmdEJ1dHRvbiAmJiBtZXYudGFyZ2V0Tm9kZSgpID09
IG1fY2xpY2tOb2RlKQogICAgICAgICBzd2FsbG93Q2xpY2tFdmVudCA9IGRpc3BhdGNoTW91c2VF
dmVudChjbGlja0V2ZW50LCBtZXYudGFyZ2V0Tm9kZSgpLCB0cnVlLCBtX2NsaWNrQ291bnQsIG1v
dXNlRXZlbnQsIHRydWUpOwogCiAgICAgaWYgKG1fcmVzaXplTGF5ZXIpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21976</attachid>
            <date>2008-06-27 13:19:35 -0700</date>
            <delta_ts>2008-06-27 19:37:33 -0700</delta_ts>
            <desc>First attempt at adding eventSender.mouseDown(1) support</desc>
            <filename>First-attempt-at-adding-eventSender.mouseDown-1-support.patch</filename>
            <type>text/plain</type>
            <size>10355</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">MmRmMThlNjZlZGVhYzk4NTllNjlkOTQwNTA3ZmNmYzlkYjI3MTBiYwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvaiBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMTQ0NTBjNS4uZTI2OGEzMCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJl
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0xMjIsNyArMTIyLDcgQEAKIC8qIEJlZ2lu
IFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCQkxNDFCRjIzMzA5NkE0NENGMDBFMDc1M0Mg
LyogVGVzdE5ldHNjYXBlUGx1Z0luLnBsdWdpbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBleHBsaWNpdEZpbGVUeXBlID0gd3JhcHBlci5jZmJ1bmRsZTsgaW5jbHVkZUluSW5kZXggPSAw
OyBwYXRoID0gVGVzdE5ldHNjYXBlUGx1Z0luLnBsdWdpbjsgc291cmNlVHJlZSA9IEJVSUxUX1BS
T0RVQ1RTX0RJUjsgfTsKIAkJMTQxQkY0NDcwOTZBNDVDODAwRTA3NTNDIC8qIFBsdWdpbk9iamVj
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGx1Z2luT2JqZWN0Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTE0MUJGNDQ4MDk2QTQ1QzgwMEUwNzUzQyAvKiBJ
bmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueG1sOyBwYXRoID0gSW5mby5wbGlzdDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMTQxQkY0NDgwOTZBNDVDODAwRTA3NTNDIC8qIEluZm8u
cGxpc3QgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxh
c3RLbm93bkZpbGVUeXBlID0gdGV4dC5wbGlzdC54bWw7IHBhdGggPSBJbmZvLnBsaXN0OyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxNDc3MEZFMDBBMjJBREY3MDA5MzQyRUUgLyogR0ND
b250cm9sbGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdDQ29udHJvbGxl
ci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQThGMDI0QzBCQjlCMDU2MDA4Q0ZB
MzQgLyogVGVzdE9iamVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXN0
T2JqZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQzZDNzdGMEQwNzU4OUIw
MENEMzE2MSAvKiBtYWluLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IG1haW4uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaCBiL1dlYktp
dFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLmgKaW5kZXgg
MjhkMDM4NS4uZGVlZTg0OCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5oCkBAIC0zMSw3ICszMSw3IEBACiAKIEBp
bnRlcmZhY2UgRXZlbnRTZW5kaW5nQ29udHJvbGxlciA6IE5TT2JqZWN0IDxET01FdmVudExpc3Rl
bmVyPgogewotICAgIEJPT0wgZG93bjsKKyAgICBCT09MIGxlZnRNb3VzZUJ1dHRvbkRvd247CiAg
ICAgQk9PTCBkcmFnTW9kZTsKICAgICBpbnQgY2xpY2tDb3VudDsKICAgICBOU1RpbWVJbnRlcnZh
bCBsYXN0Q2xpY2s7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMv
RXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbSBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21h
Yy9FdmVudFNlbmRpbmdDb250cm9sbGVyLm1tCmluZGV4IGJhNDYyNjEuLmU0ZjZiNDUgMTAwNjQ0
Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9s
bGVyLm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdD
b250cm9sbGVyLm1tCkBAIC00Nyw2ICs0NywxOSBAQCBOU0FycmF5ICp3ZWJraXREb21FdmVudE5h
bWVzOwogTlNNdXRhYmxlQXJyYXkgKnNhdmVkTW91c2VFdmVudHM7IC8vIG1vdXNlIGV2ZW50cyBz
ZW50IGJldHdlZW4gbW91c2VEb3duIGFuZCBtb3VzZVVwIGFyZSBzdG9yZWQgaGVyZSwgYW5kIHRo
ZW4gZXhlY3V0ZWQgYXQgb25jZS4KIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAKK2VudW0g
TW91c2VBY3Rpb24geworICAgIE1vdXNlRG93biwKKyAgICBNb3VzZVVwLAorICAgIE1vdXNlRHJh
Z2dlZAorfTsKKworLy8gTWF0Y2ggdGhlIERPTSBzcGVjIChzYWRseSB0aGUgRE9NIHNwZWMgZG9l
cyBub3QgcHJvdmlkZSBhbiBlbnVtKQorZW51bSBNb3VzZUJ1dHRvbiB7CisgICAgTGVmdE1vdXNl
QnV0dG9uID0gMCwKKyAgICBNaWRkbGVNb3VzZUJ1dHRvbiA9IDEsCisgICAgUmlnaHRNb3VzZUJ1
dHRvbiA9IDIKK307CisKIEBpbXBsZW1lbnRhdGlvbiBFdmVudFNlbmRpbmdDb250cm9sbGVyCiAK
ICsgKHZvaWQpaW5pdGlhbGl6ZQpAQCAtMTAzLDggKzExNiw4IEBAIEJPT0wgcmVwbGF5aW5nU2F2
ZWRFdmVudHM7CiAKICsgKEJPT0wpaXNTZWxlY3RvckV4Y2x1ZGVkRnJvbVdlYlNjcmlwdDooU0VM
KWFTZWxlY3RvcgogewotICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlRG93bikK
LSAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VVcCkKKyAgICBpZiAo
YVNlbGVjdG9yID09IEBzZWxlY3Rvcihtb3VzZURvd246KQorICAgICAgICAgICAgfHwgYVNlbGVj
dG9yID09IEBzZWxlY3Rvcihtb3VzZVVwOikKICAgICAgICAgICAgIHx8IGFTZWxlY3RvciA9PSBA
c2VsZWN0b3IoY29udGV4dENsaWNrKQogICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxl
Y3Rvcihtb3VzZU1vdmVUb1g6WTopCiAgICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVj
dG9yKGxlYXBGb3J3YXJkOikKQEAgLTEyOSw2ICsxNDIsMTAgQEAgQk9PTCByZXBsYXlpbmdTYXZl
ZEV2ZW50czsKIAogKyAoTlNTdHJpbmcgKil3ZWJTY3JpcHROYW1lRm9yU2VsZWN0b3I6KFNFTClh
U2VsZWN0b3IKIHsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rvcihtb3VzZURvd246KSkK
KyAgICAgICAgcmV0dXJuIEAibW91c2VEb3duIjsKKyAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxl
Y3Rvcihtb3VzZVVwOikpCisgICAgICAgIHJldHVybiBAIm1vdXNlVXAiOwogICAgIGlmIChhU2Vs
ZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlTW92ZVRvWDpZOikpCiAgICAgICAgIHJldHVybiBAIm1v
dXNlTW92ZVRvIjsKICAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3RvcihsZWFwRm9yd2FyZDop
KQpAQCAtMTY0LDcgKzE4MSw3IEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAKIC0gKHZv
aWQpbGVhcEZvcndhcmQ6KGludCltaWxsaXNlY29uZHMKIHsKLSAgICBpZiAoZHJhZ01vZGUgJiYg
ZG93biAmJiAhcmVwbGF5aW5nU2F2ZWRFdmVudHMpIHsKKyAgICBpZiAoZHJhZ01vZGUgJiYgbGVm
dE1vdXNlQnV0dG9uRG93biAmJiAhcmVwbGF5aW5nU2F2ZWRFdmVudHMpIHsKICAgICAgICAgTlNJ
bnZvY2F0aW9uICppbnZvY2F0aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0aW9uV2l0aE1ldGhv
ZFNpZ25hdHVyZTpbRXZlbnRTZW5kaW5nQ29udHJvbGxlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVy
ZUZvclNlbGVjdG9yOkBzZWxlY3RvcihsZWFwRm9yd2FyZDopXV07CiAgICAgICAgIFtpbnZvY2F0
aW9uIHNldFRhcmdldDpzZWxmXTsKICAgICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNl
bGVjdG9yKGxlYXBGb3J3YXJkOildOwpAQCAtMTgzLDcgKzIwMCw0MiBAQCBCT09MIHJlcGxheWlu
Z1NhdmVkRXZlbnRzOwogICAgIF9OU05ld0tpbGxSaW5nU2VxdWVuY2UoKTsKIH0KIAotLSAodm9p
ZCltb3VzZURvd24KK3N0YXRpYyBOU0V2ZW50VHlwZSBldmVudFR5cGVGb3JNb3VzZUJ1dHRvbkFu
ZEFjdGlvbihpbnQgYnV0dG9uLCBNb3VzZUFjdGlvbiBhY3Rpb24pCit7CisgICAgc3dpdGNoKGJ1
dHRvbikgeworICAgICAgICBjYXNlIExlZnRNb3VzZUJ1dHRvbjoKKyAgICAgICAgICAgIHN3aXRj
aCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246CisgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURvd247CisgICAgICAgICAgICAgICAgY2FzZSBN
b3VzZVVwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNMZWZ0TW91c2VVcDsKKyAgICAg
ICAgICAgICAgICBjYXNlIE1vdXNlRHJhZ2dlZDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJu
IE5TTGVmdE1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgY2FzZSBSaWdodE1v
dXNlQnV0dG9uOgorICAgICAgICAgICAgc3dpdGNoIChhY3Rpb24pIHsKKyAgICAgICAgICAgICAg
ICBjYXNlIE1vdXNlRG93bjoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TUmlnaHRNb3Vz
ZURvd247CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZVVwOgorICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gTlNSaWdodE1vdXNlVXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdn
ZWQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU1JpZ2h0TW91c2VEcmFnZ2VkOworICAg
ICAgICAgICAgfQorICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgc3dpdGNoIChhY3Rpb24p
IHsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRG93bjoKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIE5TT3RoZXJNb3VzZURvd247CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZVVwOgor
ICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNPdGhlck1vdXNlVXA7CisgICAgICAgICAgICAg
ICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU090aGVy
TW91c2VEcmFnZ2VkOworICAgICAgICAgICAgfQorICAgIH0KKyAgICBhc3NlcnQoMCk7CisgICAg
cmV0dXJuIDA7Cit9CisKKy0gKHZvaWQpbW91c2VEb3duOihpbnQpYnV0dG9uTnVtYmVyCiB7CiAg
ICAgW1tbbWFpbkZyYW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOwogICAgIGlm
ICgoW3NlbGYgY3VycmVudEV2ZW50VGltZV0gLSBsYXN0Q2xpY2sgPj0gMSkgfHwKQEAgLTE5MSw3
ICsyNDMsOSBAQCBCT09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogICAgICAgICBjbGlja0NvdW50
ID0gMTsKICAgICBlbHNlCiAgICAgICAgIGNsaWNrQ291bnQrKzsKLSAgICBOU0V2ZW50ICpldmVu
dCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpOU0xlZnRNb3VzZURvd24gCisgICAgCisg
ICAgTlNFdmVudFR5cGUgZXZlbnRUeXBlID0gZXZlbnRUeXBlRm9yTW91c2VCdXR0b25BbmRBY3Rp
b24oYnV0dG9uTnVtYmVyLCBNb3VzZURvd24pOworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZl
bnQgbW91c2VFdmVudFdpdGhUeXBlOmV2ZW50VHlwZQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGxvY2F0aW9uOmxhc3RNb3VzZVBvc2l0aW9uIAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmllckZsYWdzOjAgCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA6W3NlbGYgY3VycmVudEV2ZW50VGltZV0K
QEAgLTIwMSwxMCArMjU1LDEzIEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrQ291bnQ6Y2xpY2tDb3VudCAKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmVzc3VyZTowLjBdOwogCi0g
ICAgTlNWaWV3ICpzdWJWaWV3ID0gW1ttYWluRnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQg
bG9jYXRpb25JbldpbmRvd11dOwotICAgIGlmIChzdWJWaWV3KSB7Ci0gICAgICAgIFtzdWJWaWV3
IG1vdXNlRG93bjpldmVudF07Ci0gICAgICAgIGRvd24gPSBZRVM7CisgICAgLy8gQ3VycmVudGx5
IHdlIG9ubHkgc3VwcG9ydCBsZWZ0LW1vdXNlIGRyYWdnaW5nCisgICAgaWYgKGJ1dHRvbk51bWJl
ciA9PSBMZWZ0TW91c2VCdXR0b24pIHsKKyAgICAgICAgTlNWaWV3ICpzdWJWaWV3ID0gW1ttYWlu
RnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQgbG9jYXRpb25JbldpbmRvd11dOworICAgICAg
ICBpZiAoc3ViVmlldykgeworICAgICAgICAgICAgW3N1YlZpZXcgbW91c2VEb3duOmV2ZW50XTsK
KyAgICAgICAgICAgIGxlZnRNb3VzZUJ1dHRvbkRvd24gPSBZRVM7CisgICAgICAgIH0KICAgICB9
CiB9CiAKQEAgLTIyOCwxMiArMjg1LDEyIEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAg
ICAgW1ttYWluRnJhbWUgd2ViVmlld10gem9vbVBhZ2VPdXQ6c2VsZl07CiB9CiAKLS0gKHZvaWQp
bW91c2VVcAorLSAodm9pZCltb3VzZVVwOihpbnQpYnV0dG9uTnVtYmVyCiB7CiAgICAgaWYgKGRy
YWdNb2RlICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgewotICAgICAgICBOU0ludm9jYXRpb24g
Kmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9uIGludm9jYXRpb25XaXRoTWV0aG9kU2lnbmF0dXJl
OltFdmVudFNlbmRpbmdDb250cm9sbGVyIGluc3RhbmNlTWV0aG9kU2lnbmF0dXJlRm9yU2VsZWN0
b3I6QHNlbGVjdG9yKG1vdXNlVXApXV07CisgICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlv
biA9IFtOU0ludm9jYXRpb24gaW52b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2Vu
ZGluZ0NvbnRyb2xsZXIgaW5zdGFuY2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0
b3IobW91c2VVcDopXV07CiAgICAgICAgIFtpbnZvY2F0aW9uIHNldFRhcmdldDpzZWxmXTsKLSAg
ICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9yKG1vdXNlVXApXTsKKyAgICAg
ICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9yKG1vdXNlVXA6KV07CiAgICAgICAg
IAogICAgICAgICBbRXZlbnRTZW5kaW5nQ29udHJvbGxlciBzYXZlRXZlbnQ6aW52b2NhdGlvbl07
CiAgICAgICAgIFtFdmVudFNlbmRpbmdDb250cm9sbGVyIHJlcGxheVNhdmVkRXZlbnRzXTsKQEAg
LTI0Miw3ICsyOTksOCBAQCBCT09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogICAgIH0KIAogICAg
IFtbW21haW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKLSAgICBOU0V2
ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpOU0xlZnRNb3VzZVVwIAor
ICAgIE5TRXZlbnRUeXBlIGV2ZW50VHlwZSA9IGV2ZW50VHlwZUZvck1vdXNlQnV0dG9uQW5kQWN0
aW9uKGJ1dHRvbk51bWJlciwgTW91c2VVcCk7CisgICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVu
dCBtb3VzZUV2ZW50V2l0aFR5cGU6ZXZlbnRUeXBlCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1vdXNlUG9zaXRpb24gCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6MCAKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBjdXJyZW50RXZlbnRUaW1lXQpA
QCAtMjU5LDcgKzMxNyw4IEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAgICAgdGFyZ2V0
VmlldyA9IHRhcmdldFZpZXcgPyB0YXJnZXRWaWV3IDogW1ttYWluRnJhbWUgZnJhbWVWaWV3XSBk
b2N1bWVudFZpZXddOwogICAgIGFzc2VydCh0YXJnZXRWaWV3KTsKICAgICBbdGFyZ2V0VmlldyBt
b3VzZVVwOmV2ZW50XTsKLSAgICBkb3duID0gTk87CisgICAgaWYgKGJ1dHRvbk51bWJlciA9PSBM
ZWZ0TW91c2VCdXR0b24pCisgICAgICAgIGxlZnRNb3VzZUJ1dHRvbkRvd24gPSBOTzsKICAgICBs
YXN0Q2xpY2sgPSBbZXZlbnQgdGltZXN0YW1wXTsKICAgICBsYXN0Q2xpY2tQb3NpdGlvbiA9IGxh
c3RNb3VzZVBvc2l0aW9uOwogICAgIGlmIChkcmFnZ2luZ0luZm8pIHsKQEAgLTI3OSw3ICszMzgs
NyBAQCBCT09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogCiAtICh2b2lkKW1vdXNlTW92ZVRvWDoo
aW50KXggWTooaW50KXkKIHsKLSAgICBpZiAoZHJhZ01vZGUgJiYgZG93biAmJiAhcmVwbGF5aW5n
U2F2ZWRFdmVudHMpIHsKKyAgICBpZiAoZHJhZ01vZGUgJiYgbGVmdE1vdXNlQnV0dG9uRG93biAm
JiAhcmVwbGF5aW5nU2F2ZWRFdmVudHMpIHsKICAgICAgICAgTlNJbnZvY2F0aW9uICppbnZvY2F0
aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0aW9uV2l0aE1ldGhvZFNpZ25hdHVyZTpbRXZlbnRT
ZW5kaW5nQ29udHJvbGxlciBpbnN0YW5jZU1ldGhvZFNpZ25hdHVyZUZvclNlbGVjdG9yOkBzZWxl
Y3Rvcihtb3VzZU1vdmVUb1g6WTopXV07CiAgICAgICAgIFtpbnZvY2F0aW9uIHNldFRhcmdldDpz
ZWxmXTsKICAgICAgICAgW2ludm9jYXRpb24gc2V0U2VsZWN0b3I6QHNlbGVjdG9yKG1vdXNlTW92
ZVRvWDpZOildOwpAQCAtMjkzLDE5ICszNTIsMTkgQEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50
czsKIAogICAgIE5TVmlldyAqdmlldyA9IFttYWluRnJhbWUgd2ViVmlld107CiAgICAgbGFzdE1v
dXNlUG9zaXRpb24gPSBbdmlldyBjb252ZXJ0UG9pbnQ6TlNNYWtlUG9pbnQoeCwgW3ZpZXcgZnJh
bWVdLnNpemUuaGVpZ2h0IC0geSkgdG9WaWV3Om5pbF07Ci0gICAgTlNFdmVudCAqZXZlbnQgPSBb
TlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6KGRvd24gPyBOU0xlZnRNb3VzZURyYWdnZWQgOiBO
U01vdXNlTW92ZWQpIAorICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdp
dGhUeXBlOihsZWZ0TW91c2VCdXR0b25Eb3duID8gTlNMZWZ0TW91c2VEcmFnZ2VkIDogTlNNb3Vz
ZU1vdmVkKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9u
Omxhc3RNb3VzZVBvc2l0aW9uIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
b2RpZmllckZsYWdzOjAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
aW1lc3RhbXA6W3NlbGYgY3VycmVudEV2ZW50VGltZV0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHdpbmRvd051bWJlcjpbW3ZpZXcgd2luZG93XSB3aW5kb3dOdW1iZXJdIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0OltOU0dyYXBo
aWNzQ29udGV4dCBjdXJyZW50Q29udGV4dF0gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZXZlbnROdW1iZXI6KytldmVudE51bWJlciAKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY2xpY2tDb3VudDooZG93biA/IGNsaWNrQ291bnQgOiAwKSAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2tDb3VudDoobGVmdE1vdXNl
QnV0dG9uRG93biA/IGNsaWNrQ291bnQgOiAwKSAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBwcmVzc3VyZTowLjBdOwogCiAgICAgTlNWaWV3ICpzdWJWaWV3ID0gW1tt
YWluRnJhbWUgd2ViVmlld10gaGl0VGVzdDpbZXZlbnQgbG9jYXRpb25JbldpbmRvd11dOwogICAg
IGlmIChzdWJWaWV3KSB7Ci0gICAgICAgIGlmIChkb3duKSB7CisgICAgICAgIGlmIChsZWZ0TW91
c2VCdXR0b25Eb3duKSB7CiAgICAgICAgICAgICBbc3ViVmlldyBtb3VzZURyYWdnZWQ6ZXZlbnRd
OwogICAgICAgICAgICAgaWYgKGRyYWdnaW5nSW5mbykgewogICAgICAgICAgICAgICAgIFtbZHJh
Z2dpbmdJbmZvIGRyYWdnaW5nU291cmNlXSBkcmFnZ2VkSW1hZ2U6W2RyYWdnaW5nSW5mbyBkcmFn
Z2VkSW1hZ2VdIG1vdmVkVG86bGFzdE1vdXNlUG9zaXRpb25dOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21977</attachid>
            <date>2008-06-27 19:37:23 -0700</date>
            <delta_ts>2008-06-27 21:05:57 -0700</delta_ts>
            <desc>Add multi-button mouseevent support to DRT and test case</desc>
            <filename>Add-multi-button-mouseevent-support-to-DRT-and-test-case.patch</filename>
            <type>text/plain</type>
            <size>12948</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">NDc3MTEzZjVkMzY0Y2JkZDE4MTA3ZTUzMzE2ZTk5Y2Y4ODkxODIxZApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvbW91c2UtY2xpY2stZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy1leHBlY3RlZC50eHQKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGNmMTdjNgotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwzMiBAQAorVGhpcyB0ZXN0cyB3aGF0IG1vdXNlIGV2ZW50cyB3ZSBzZW5k
LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworTGVmdCBNb3VzZSBCdXR0b24KK21v
dXNlZG93bigwKQorbW91c2V1cCgwKQorY2xpY2soMCkKK21vdXNlZG93bigwKQorbW91c2V1cCgw
KQorY2xpY2soMCkKK2RibGNsaWNrKDApCitNaWRkbGUgTW91c2UgQnV0dG9uCittb3VzZWRvd24o
MSkKK21vdXNldXAoMSkKK21vdXNlZG93bigxKQorbW91c2V1cCgxKQorUmlnaHQgTW91c2UgQnV0
dG9uCittb3VzZWRvd24oMikKK21vdXNldXAoMikKK21vdXNlZG93bigyKQorbW91c2V1cCgyKQor
NHRoIE1vdXNlIEJ1dHRvbgorbW91c2Vkb3duKDEpCittb3VzZXVwKDEpCittb3VzZWRvd24oMSkK
K21vdXNldXAoMSkKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZS1jbGljay1l
dmVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA0ZDZjODcKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZS1jbGljay1ldmVudHMuaHRt
bApAQCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBI
VE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jl
c291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlk
PSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNy
Yz0icmVzb3VyY2VzL21vdXNlLWNsaWNrLWV2ZW50cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvbW91
c2UtY2xpY2stZXZlbnRzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL21v
dXNlLWNsaWNrLWV2ZW50cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40
NzEwOWEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3Vy
Y2VzL21vdXNlLWNsaWNrLWV2ZW50cy5qcwpAQCAtMCwwICsxLDQ1IEBACitkZXNjcmlwdGlvbigi
VGhpcyB0ZXN0cyB3aGF0IG1vdXNlIGV2ZW50cyB3ZSBzZW5kLiIpOworCit2YXIgZGl2ID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CitkaXYuc3R5bGUud2lkdGggPSAiMTAwcHgiOwor
ZGl2LnN0eWxlLmhlaWdodCA9ICIxMDBweCI7CitkaXYuc3R5bGUuYmFja2dyb3VuZENvbG9yID0g
ImJsdWUiOworCitmdW5jdGlvbiBsb2dFdmVudCgpIHsKKyAgICBkZWJ1ZyhldmVudC50eXBlICsg
IigiICsgZXZlbnQuYnV0dG9uICsgIikiKTsKK30KKworZGl2LmFkZEV2ZW50TGlzdGVuZXIoImNs
aWNrIiwgbG9nRXZlbnQsIGZhbHNlKTsKK2Rpdi5hZGRFdmVudExpc3RlbmVyKCJkYmxjbGljayIs
IGxvZ0V2ZW50LCBmYWxzZSk7CitkaXYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIiwgbG9n
RXZlbnQsIGZhbHNlKTsKK2Rpdi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIiwgbG9nRXZlbnQs
IGZhbHNlKTsKK2RvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGRpdiwgZG9jdW1lbnQuYm9keS5m
aXJzdENoaWxkKTsKKworaWYgKHdpbmRvdy5ldmVudFNlbmRlcikKKyAgICBldmVudFNlbmRlci5t
b3VzZU1vdmVUbygxMCwgMTApOworCitmdW5jdGlvbiBzZW5kRXZlbnRzKGJ1dHRvbikgeworICAg
IGlmICghd2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgIGRlYnVnKCJUaGlzIHRlc3QgcmVx
dWlyZXMgRHVtcFJlbmRlclRyZWUuICBDbGljayBvbiB0aGUgYmx1ZSByZWN0IHdpdGggZGlmZmVy
ZW50IG1vdXNlIGJ1dHRvbnMgdG8gbG9nLiIpCisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAg
ZXZlbnRTZW5kZXIubW91c2VEb3duKGJ1dHRvbik7CisgICAgZXZlbnRTZW5kZXIubW91c2VVcChi
dXR0b24pOworICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bihidXR0b24pOworICAgIGV2ZW50U2Vu
ZGVyLm1vdXNlVXAoYnV0dG9uKTsKKyAgICAvLyBjb3VsZCB0ZXN0IGRyYWdnaW5nIGhlcmUgdG9v
Cit9CisKK2RlYnVnKCJMZWZ0IE1vdXNlIEJ1dHRvbiIpOworc2VuZEV2ZW50cygwKTsKKworZGVi
dWcoIk1pZGRsZSBNb3VzZSBCdXR0b24iKTsKK3NlbmRFdmVudHMoMSk7CisKK2RlYnVnKCJSaWdo
dCBNb3VzZSBCdXR0b24iKTsKK3NlbmRFdmVudHMoMik7CisKK2RlYnVnKCI0dGggTW91c2UgQnV0
dG9uIik7CitzZW5kRXZlbnRzKDMpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsK
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9EdW1w
UmVuZGVyVHJlZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDE0NDUwYzUuLmUyNjhh
MzAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTIyLDcgKzEy
Miw3IEBACiAvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8KIAkJMTQxQkYyMzMw
OTZBNDRDRjAwRTA3NTNDIC8qIFRlc3ROZXRzY2FwZVBsdWdJbi5wbHVnaW4gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHdyYXBwZXIuY2ZidW5kbGU7IGlu
Y2x1ZGVJbkluZGV4ID0gMDsgcGF0aCA9IFRlc3ROZXRzY2FwZVBsdWdJbi5wbHVnaW47IHNvdXJj
ZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTE0MUJGNDQ3MDk2QTQ1QzgwMEUwNzUz
QyAvKiBQbHVnaW5PYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBs
dWdpbk9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxNDFCRjQ0ODA5NkE0
NUM4MDBFMDc1M0MgLyogSW5mby5wbGlzdCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhtbDsgcGF0aCA9IElu
Zm8ucGxpc3Q7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0MUJGNDQ4MDk2QTQ1Qzgw
MEUwNzUzQyAvKiBJbmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQucGxpc3QueG1sOyBwYXRoID0g
SW5mby5wbGlzdDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMTQ3NzBGRTAwQTIyQURG
NzAwOTM0MkVFIC8qIEdDQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBHQ0NvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE4RjAy
NEMwQkI5QjA1NjAwOENGQTM0IC8qIFRlc3RPYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gVGVzdE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkx
QUM2Qzc3RjBEMDc1ODlCMDBDRDMxNjEgLyogbWFpbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBtYWluLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250
cm9sbGVyLmggYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29u
dHJvbGxlci5oCmluZGV4IDI4ZDAzODUuLmRlZWU4NDggMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVyLmgKKysrIGIvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaApAQCAtMzEs
NyArMzEsNyBAQAogCiBAaW50ZXJmYWNlIEV2ZW50U2VuZGluZ0NvbnRyb2xsZXIgOiBOU09iamVj
dCA8RE9NRXZlbnRMaXN0ZW5lcj4KIHsKLSAgICBCT09MIGRvd247CisgICAgQk9PTCBsZWZ0TW91
c2VCdXR0b25Eb3duOwogICAgIEJPT0wgZHJhZ01vZGU7CiAgICAgaW50IGNsaWNrQ291bnQ7CiAg
ICAgTlNUaW1lSW50ZXJ2YWwgbGFzdENsaWNrOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0gYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQppbmRleCBiYTQ2MjYx
Li5hZjE4MTkzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZl
bnRTZW5kaW5nQ29udHJvbGxlci5tbQorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9t
YWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQpAQCAtNDcsNiArNDcsMTkgQEAgTlNBcnJheSAq
d2Via2l0RG9tRXZlbnROYW1lczsKIE5TTXV0YWJsZUFycmF5ICpzYXZlZE1vdXNlRXZlbnRzOyAv
LyBtb3VzZSBldmVudHMgc2VudCBiZXR3ZWVuIG1vdXNlRG93biBhbmQgbW91c2VVcCBhcmUgc3Rv
cmVkIGhlcmUsIGFuZCB0aGVuIGV4ZWN1dGVkIGF0IG9uY2UuCiBCT09MIHJlcGxheWluZ1NhdmVk
RXZlbnRzOwogCitlbnVtIE1vdXNlQWN0aW9uIHsKKyAgICBNb3VzZURvd24sCisgICAgTW91c2VV
cCwKKyAgICBNb3VzZURyYWdnZWQKK307CisKKy8vIE1hdGNoIHRoZSBET00gc3BlYyAoc2FkbHkg
dGhlIERPTSBzcGVjIGRvZXMgbm90IHByb3ZpZGUgYW4gZW51bSkKK2VudW0gTW91c2VCdXR0b24g
eworICAgIExlZnRNb3VzZUJ1dHRvbiA9IDAsCisgICAgTWlkZGxlTW91c2VCdXR0b24gPSAxLAor
ICAgIFJpZ2h0TW91c2VCdXR0b24gPSAyCit9OworCiBAaW1wbGVtZW50YXRpb24gRXZlbnRTZW5k
aW5nQ29udHJvbGxlcgogCiArICh2b2lkKWluaXRpYWxpemUKQEAgLTEwMyw4ICsxMTYsOCBAQCBC
T09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogCiArIChCT09MKWlzU2VsZWN0b3JFeGNsdWRlZEZy
b21XZWJTY3JpcHQ6KFNFTClhU2VsZWN0b3IKIHsKLSAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxl
Y3Rvcihtb3VzZURvd24pCi0gICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1v
dXNlVXApCisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VEb3duOikKKyAgICAg
ICAgICAgIHx8IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VVcDopCiAgICAgICAgICAgICB8
fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKGNvbnRleHRDbGljaykKICAgICAgICAgICAgIHx8IGFT
ZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KQogICAgICAgICAgICAgfHwgYVNl
bGVjdG9yID09IEBzZWxlY3RvcihsZWFwRm9yd2FyZDopCkBAIC0xMjksNiArMTQyLDEwIEBAIEJP
T0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAKICsgKE5TU3RyaW5nICopd2ViU2NyaXB0TmFtZUZv
clNlbGVjdG9yOihTRUwpYVNlbGVjdG9yCiB7CisgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0
b3IobW91c2VEb3duOikpCisgICAgICAgIHJldHVybiBAIm1vdXNlRG93biI7CisgICAgaWYgKGFT
ZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VVcDopKQorICAgICAgICByZXR1cm4gQCJtb3VzZVVw
IjsKICAgICBpZiAoYVNlbGVjdG9yID09IEBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopKQogICAg
ICAgICByZXR1cm4gQCJtb3VzZU1vdmVUbyI7CiAgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0
b3IobGVhcEZvcndhcmQ6KSkKQEAgLTE2NCw3ICsxODEsNyBAQCBCT09MIHJlcGxheWluZ1NhdmVk
RXZlbnRzOwogCiAtICh2b2lkKWxlYXBGb3J3YXJkOihpbnQpbWlsbGlzZWNvbmRzCiB7Ci0gICAg
aWYgKGRyYWdNb2RlICYmIGRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CisgICAgaWYg
KGRyYWdNb2RlICYmIGxlZnRNb3VzZUJ1dHRvbkRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRz
KSB7CiAgICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52
b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIgaW5zdGFu
Y2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IobGVhcEZvcndhcmQ6KV1dOwog
ICAgICAgICBbaW52b2NhdGlvbiBzZXRUYXJnZXQ6c2VsZl07CiAgICAgICAgIFtpbnZvY2F0aW9u
IHNldFNlbGVjdG9yOkBzZWxlY3RvcihsZWFwRm9yd2FyZDopXTsKQEAgLTE4Myw3ICsyMDAsNDIg
QEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50czsKICAgICBfTlNOZXdLaWxsUmluZ1NlcXVlbmNl
KCk7CiB9CiAKLS0gKHZvaWQpbW91c2VEb3duCitzdGF0aWMgTlNFdmVudFR5cGUgZXZlbnRUeXBl
Rm9yTW91c2VCdXR0b25BbmRBY3Rpb24oaW50IGJ1dHRvbiwgTW91c2VBY3Rpb24gYWN0aW9uKQor
eworICAgIHN3aXRjaChidXR0b24pIHsKKyAgICAgICAgY2FzZSBMZWZ0TW91c2VCdXR0b246Cisg
ICAgICAgICAgICBzd2l0Y2ggKGFjdGlvbikgeworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VE
b3duOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNMZWZ0TW91c2VEb3duOworICAgICAg
ICAgICAgICAgIGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TTGVm
dE1vdXNlVXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURyYWdnZWQ7CisgICAgICAgICAgICB9CisgICAg
ICAgIGNhc2UgUmlnaHRNb3VzZUJ1dHRvbjoKKyAgICAgICAgICAgIHN3aXRjaCAoYWN0aW9uKSB7
CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246CisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiBOU1JpZ2h0TW91c2VEb3duOworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VVcDoKKyAg
ICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TUmlnaHRNb3VzZVVwOworICAgICAgICAgICAgICAg
IGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNSaWdodE1v
dXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAg
IHN3aXRjaCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURvd246CisgICAg
ICAgICAgICAgICAgICAgIHJldHVybiBOU090aGVyTW91c2VEb3duOworICAgICAgICAgICAgICAg
IGNhc2UgTW91c2VVcDoKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TT3RoZXJNb3VzZVVw
OworICAgICAgICAgICAgICAgIGNhc2UgTW91c2VEcmFnZ2VkOgorICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gTlNPdGhlck1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0KKyAgICB9CisgICAg
YXNzZXJ0KDApOworICAgIHJldHVybiAwOworfQorCistICh2b2lkKW1vdXNlRG93bjooaW50KWJ1
dHRvbk51bWJlcgogewogICAgIFtbW21haW5GcmFtZSBmcmFtZVZpZXddIGRvY3VtZW50Vmlld10g
bGF5b3V0XTsKICAgICBpZiAoKFtzZWxmIGN1cnJlbnRFdmVudFRpbWVdIC0gbGFzdENsaWNrID49
IDEpIHx8CkBAIC0xOTEsNyArMjQzLDkgQEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50czsKICAg
ICAgICAgY2xpY2tDb3VudCA9IDE7CiAgICAgZWxzZQogICAgICAgICBjbGlja0NvdW50Kys7Ci0g
ICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2ZW50V2l0aFR5cGU6TlNMZWZ0TW91
c2VEb3duIAorICAgIAorICAgIE5TRXZlbnRUeXBlIGV2ZW50VHlwZSA9IGV2ZW50VHlwZUZvck1v
dXNlQnV0dG9uQW5kQWN0aW9uKGJ1dHRvbk51bWJlciwgTW91c2VEb3duKTsKKyAgICBOU0V2ZW50
ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpldmVudFR5cGUKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQb3NpdGlv
biAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFnczowIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1
cnJlbnRFdmVudFRpbWVdCkBAIC0yMDQsNyArMjU4LDggQEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2
ZW50czsKICAgICBOU1ZpZXcgKnN1YlZpZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBoaXRUZXN0
OltldmVudCBsb2NhdGlvbkluV2luZG93XV07CiAgICAgaWYgKHN1YlZpZXcpIHsKICAgICAgICAg
W3N1YlZpZXcgbW91c2VEb3duOmV2ZW50XTsKLSAgICAgICAgZG93biA9IFlFUzsKKyAgICAgICAg
aWYgKGJ1dHRvbk51bWJlciA9PSBMZWZ0TW91c2VCdXR0b24pCisgICAgICAgICAgICBsZWZ0TW91
c2VCdXR0b25Eb3duID0gWUVTOwogICAgIH0KIH0KIApAQCAtMjI4LDEyICsyODMsMTMgQEAgQk9P
TCByZXBsYXlpbmdTYXZlZEV2ZW50czsKICAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSB6b29tUGFn
ZU91dDpzZWxmXTsKIH0KIAotLSAodm9pZCltb3VzZVVwCistICh2b2lkKW1vdXNlVXA6KGludCli
dXR0b25OdW1iZXIKIHsKICAgICBpZiAoZHJhZ01vZGUgJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRz
KSB7Ci0gICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52
b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIgaW5zdGFu
Y2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IobW91c2VVcCldXTsKKyAgICAg
ICAgTlNJbnZvY2F0aW9uICppbnZvY2F0aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0aW9uV2l0
aE1ldGhvZFNpZ25hdHVyZTpbRXZlbnRTZW5kaW5nQ29udHJvbGxlciBpbnN0YW5jZU1ldGhvZFNp
Z25hdHVyZUZvclNlbGVjdG9yOkBzZWxlY3Rvcihtb3VzZVVwOildXTsKICAgICAgICAgW2ludm9j
YXRpb24gc2V0VGFyZ2V0OnNlbGZdOwotICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpA
c2VsZWN0b3IobW91c2VVcCldOworICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3RvcjpAc2Vs
ZWN0b3IobW91c2VVcDopXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0QXJndW1lbnQ6JmJ1dHRv
bk51bWJlciBhdEluZGV4OjJdOwogICAgICAgICAKICAgICAgICAgW0V2ZW50U2VuZGluZ0NvbnRy
b2xsZXIgc2F2ZUV2ZW50Omludm9jYXRpb25dOwogICAgICAgICBbRXZlbnRTZW5kaW5nQ29udHJv
bGxlciByZXBsYXlTYXZlZEV2ZW50c107CkBAIC0yNDIsNyArMjk4LDggQEAgQk9PTCByZXBsYXlp
bmdTYXZlZEV2ZW50czsKICAgICB9CiAKICAgICBbW1ttYWluRnJhbWUgZnJhbWVWaWV3XSBkb2N1
bWVudFZpZXddIGxheW91dF07Ci0gICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBtb3VzZUV2
ZW50V2l0aFR5cGU6TlNMZWZ0TW91c2VVcCAKKyAgICBOU0V2ZW50VHlwZSBldmVudFR5cGUgPSBl
dmVudFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihidXR0b25OdW1iZXIsIE1vdXNlVXApOwor
ICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOmV2ZW50VHlw
ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uOmxhc3RN
b3VzZVBvc2l0aW9uIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2RpZmll
ckZsYWdzOjAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3Rh
bXA6W3NlbGYgY3VycmVudEV2ZW50VGltZV0KQEAgLTI1OSw3ICszMTYsOCBAQCBCT09MIHJlcGxh
eWluZ1NhdmVkRXZlbnRzOwogICAgIHRhcmdldFZpZXcgPSB0YXJnZXRWaWV3ID8gdGFyZ2V0Vmll
dyA6IFtbbWFpbkZyYW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XTsKICAgICBhc3NlcnQodGFy
Z2V0Vmlldyk7CiAgICAgW3RhcmdldFZpZXcgbW91c2VVcDpldmVudF07Ci0gICAgZG93biA9IE5P
OworICAgIGlmIChidXR0b25OdW1iZXIgPT0gTGVmdE1vdXNlQnV0dG9uKQorICAgICAgICBsZWZ0
TW91c2VCdXR0b25Eb3duID0gTk87CiAgICAgbGFzdENsaWNrID0gW2V2ZW50IHRpbWVzdGFtcF07
CiAgICAgbGFzdENsaWNrUG9zaXRpb24gPSBsYXN0TW91c2VQb3NpdGlvbjsKICAgICBpZiAoZHJh
Z2dpbmdJbmZvKSB7CkBAIC0yNzksNyArMzM3LDcgQEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50
czsKIAogLSAodm9pZCltb3VzZU1vdmVUb1g6KGludCl4IFk6KGludCl5CiB7Ci0gICAgaWYgKGRy
YWdNb2RlICYmIGRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CisgICAgaWYgKGRyYWdN
b2RlICYmIGxlZnRNb3VzZUJ1dHRvbkRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CiAg
ICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52b2NhdGlv
bldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIgaW5zdGFuY2VNZXRo
b2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KV1dOwogICAg
ICAgICBbaW52b2NhdGlvbiBzZXRUYXJnZXQ6c2VsZl07CiAgICAgICAgIFtpbnZvY2F0aW9uIHNl
dFNlbGVjdG9yOkBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopXTsKQEAgLTI5MywxOSArMzUxLDE5
IEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAKICAgICBOU1ZpZXcgKnZpZXcgPSBbbWFp
bkZyYW1lIHdlYlZpZXddOwogICAgIGxhc3RNb3VzZVBvc2l0aW9uID0gW3ZpZXcgY29udmVydFBv
aW50Ok5TTWFrZVBvaW50KHgsIFt2aWV3IGZyYW1lXS5zaXplLmhlaWdodCAtIHkpIHRvVmlldzpu
aWxdOwotICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOihk
b3duID8gTlNMZWZ0TW91c2VEcmFnZ2VkIDogTlNNb3VzZU1vdmVkKSAKKyAgICBOU0V2ZW50ICpl
dmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZToobGVmdE1vdXNlQnV0dG9uRG93biA/
IE5TTGVmdE1vdXNlRHJhZ2dlZCA6IE5TTW91c2VNb3ZlZCkKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQb3NpdGlvbiAKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFnczowIAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1cnJlbnRFdmVudFRp
bWVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1iZXI6W1t2
aWV3IHdpbmRvd10gd2luZG93TnVtYmVyXSAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3VycmVudENvbnRleHRdIAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TnVtYmVyOisrZXZlbnRO
dW1iZXIgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNrQ291bnQ6
KGRvd24gPyBjbGlja0NvdW50IDogMCkgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGNsaWNrQ291bnQ6KGxlZnRNb3VzZUJ1dHRvbkRvd24gPyBjbGlja0NvdW50IDogMCkg
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6MC4wXTsK
IAogICAgIE5TVmlldyAqc3ViVmlldyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRlc3Q6W2V2
ZW50IGxvY2F0aW9uSW5XaW5kb3ddXTsKICAgICBpZiAoc3ViVmlldykgewotICAgICAgICBpZiAo
ZG93bikgeworICAgICAgICBpZiAobGVmdE1vdXNlQnV0dG9uRG93bikgewogICAgICAgICAgICAg
W3N1YlZpZXcgbW91c2VEcmFnZ2VkOmV2ZW50XTsKICAgICAgICAgICAgIGlmIChkcmFnZ2luZ0lu
Zm8pIHsKICAgICAgICAgICAgICAgICBbW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJjZV0gZHJh
Z2dlZEltYWdlOltkcmFnZ2luZ0luZm8gZHJhZ2dlZEltYWdlXSBtb3ZlZFRvOmxhc3RNb3VzZVBv
c2l0aW9uXTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>21980</attachid>
            <date>2008-06-27 21:04:06 -0700</date>
            <delta_ts>2008-06-27 21:15:32 -0700</delta_ts>
            <desc>Add multi-button mouseevent support to DRT and test case</desc>
            <filename>Add-multi-button-mouseevent-support-to-DRT-and-test-case.patch</filename>
            <type>text/plain</type>
            <size>15971</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZjNjYmRmYzA4ZDE0M2MzYmQzZDBjNGJiMDM3N2M0ODExMDExOWRjMApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDk2YWYwZjcu
LjAzOTI1Y2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAwOC0wNi0yNyAgRXJpYyBTZWlkZWwg
IDxlcmljQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIG11bHRpLWJ1dHRvbiBjbGljayBldmVudCB0ZXN0IGNhc2UuCisgICAg
ICAgIEZpcmVGb3ggYW5kIElFIG9ubHkgc2VuZCBjbGljayBldmVudHMgZm9yIGxlZnQtY2xpY2tz
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUxNzMK
KworICAgICAgICAqIGZhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy5odG1sOiBD
b3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3BhcnNlci9yZXNvdXJjZXMvVEVNUExBVEUuaHRt
bC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9yZXNvdXJjZXMvbW91c2UtY2xpY2stZXZlbnRzLmpz
OiBBZGRlZC4KKwogMjAwOC0wNi0yNiAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvbW91c2UtY2xpY2stZXZlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy1leHBlY3RlZC50eHQKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGNmMTdjNgotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwzMiBAQAorVGhpcyB0ZXN0cyB3aGF0IG1vdXNlIGV2ZW50cyB3ZSBzZW5kLgor
CitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBm
b2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworTGVmdCBNb3VzZSBCdXR0b24KK21vdXNl
ZG93bigwKQorbW91c2V1cCgwKQorY2xpY2soMCkKK21vdXNlZG93bigwKQorbW91c2V1cCgwKQor
Y2xpY2soMCkKK2RibGNsaWNrKDApCitNaWRkbGUgTW91c2UgQnV0dG9uCittb3VzZWRvd24oMSkK
K21vdXNldXAoMSkKK21vdXNlZG93bigxKQorbW91c2V1cCgxKQorUmlnaHQgTW91c2UgQnV0dG9u
Cittb3VzZWRvd24oMikKK21vdXNldXAoMikKK21vdXNlZG93bigyKQorbW91c2V1cCgyKQorNHRo
IE1vdXNlIEJ1dHRvbgorbW91c2Vkb3duKDEpCittb3VzZXVwKDEpCittb3VzZWRvd24oMSkKK21v
dXNldXAoMSkKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZS1jbGljay1ldmVu
dHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21vdXNlLWNsaWNrLWV2ZW50cy5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA0ZDZjODcKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tb3VzZS1jbGljay1ldmVudHMuaHRtbApA
QCAtMCwwICsxLDEzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJk
ZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL21vdXNlLWNsaWNrLWV2ZW50cy5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvbW91c2Ut
Y2xpY2stZXZlbnRzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL21vdXNl
LWNsaWNrLWV2ZW50cy5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NzEw
OWEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2Vz
L21vdXNlLWNsaWNrLWV2ZW50cy5qcwpAQCAtMCwwICsxLDQ1IEBACitkZXNjcmlwdGlvbigiVGhp
cyB0ZXN0cyB3aGF0IG1vdXNlIGV2ZW50cyB3ZSBzZW5kLiIpOworCit2YXIgZGl2ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7CitkaXYuc3R5bGUud2lkdGggPSAiMTAwcHgiOworZGl2
LnN0eWxlLmhlaWdodCA9ICIxMDBweCI7CitkaXYuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gImJs
dWUiOworCitmdW5jdGlvbiBsb2dFdmVudCgpIHsKKyAgICBkZWJ1ZyhldmVudC50eXBlICsgIigi
ICsgZXZlbnQuYnV0dG9uICsgIikiKTsKK30KKworZGl2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNr
IiwgbG9nRXZlbnQsIGZhbHNlKTsKK2Rpdi5hZGRFdmVudExpc3RlbmVyKCJkYmxjbGljayIsIGxv
Z0V2ZW50LCBmYWxzZSk7CitkaXYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIiwgbG9nRXZl
bnQsIGZhbHNlKTsKK2Rpdi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZXVwIiwgbG9nRXZlbnQsIGZh
bHNlKTsKK2RvY3VtZW50LmJvZHkuaW5zZXJ0QmVmb3JlKGRpdiwgZG9jdW1lbnQuYm9keS5maXJz
dENoaWxkKTsKKworaWYgKHdpbmRvdy5ldmVudFNlbmRlcikKKyAgICBldmVudFNlbmRlci5tb3Vz
ZU1vdmVUbygxMCwgMTApOworCitmdW5jdGlvbiBzZW5kRXZlbnRzKGJ1dHRvbikgeworICAgIGlm
ICghd2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgIGRlYnVnKCJUaGlzIHRlc3QgcmVxdWly
ZXMgRHVtcFJlbmRlclRyZWUuICBDbGljayBvbiB0aGUgYmx1ZSByZWN0IHdpdGggZGlmZmVyZW50
IG1vdXNlIGJ1dHRvbnMgdG8gbG9nLiIpCisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgZXZl
bnRTZW5kZXIubW91c2VEb3duKGJ1dHRvbik7CisgICAgZXZlbnRTZW5kZXIubW91c2VVcChidXR0
b24pOworICAgIGV2ZW50U2VuZGVyLm1vdXNlRG93bihidXR0b24pOworICAgIGV2ZW50U2VuZGVy
Lm1vdXNlVXAoYnV0dG9uKTsKKyAgICAvLyBjb3VsZCB0ZXN0IGRyYWdnaW5nIGhlcmUgdG9vCit9
CisKK2RlYnVnKCJMZWZ0IE1vdXNlIEJ1dHRvbiIpOworc2VuZEV2ZW50cygwKTsKKworZGVidWco
Ik1pZGRsZSBNb3VzZSBCdXR0b24iKTsKK3NlbmRFdmVudHMoMSk7CisKK2RlYnVnKCJSaWdodCBN
b3VzZSBCdXR0b24iKTsKK3NlbmRFdmVudHMoMik7CisKK2RlYnVnKCI0dGggTW91c2UgQnV0dG9u
Iik7CitzZW5kRXZlbnRzKDMpOworCit2YXIgc3VjY2Vzc2Z1bGx5UGFyc2VkID0gdHJ1ZTsKZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpp
bmRleCBjYWUzMmM1Li44MmNmNjQ2IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMDgtMDYtMjcg
IEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBtdWx0aS1idXR0b24gbW91c2VldmVudCBzdXBw
b3J0IHRvIERSVAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTUxNzMKKyAgICAgICAgCisgICAgICAgIEl0J3Mgbm93IHBvc3NpYmxlIHRvIHNwZWNpZnkg
dGhlIG1vdXNlIGJ1dHRvbiB3aXRoOgorICAgICAgICBldmVudFNlbmRlci5tb3VzZURvd24oMSk7
IGV2ZW50U2VuZGVyLm1vdXNlVXAoMSk7IGV0Yy4KKworICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L0R1bXBSZW5kZXJUcmVlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogRHVt
cFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIuaDoKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbToKKyAgICAgICAgKCtbRXZl
bnRTZW5kaW5nQ29udHJvbGxlciBpc1NlbGVjdG9yRXhjbHVkZWRGcm9tV2ViU2NyaXB0Ol0pOgor
ICAgICAgICAoK1tFdmVudFNlbmRpbmdDb250cm9sbGVyIHdlYlNjcmlwdE5hbWVGb3JTZWxlY3Rv
cjpdKToKKyAgICAgICAgKGV2ZW50VHlwZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKToKKyAgICAg
ICAgKC1bRXZlbnRTZW5kaW5nQ29udHJvbGxlciB1cGRhdGVDbGlja0NvdW50Rm9yQnV0dG9uOl0p
OgorICAgICAgICAoLVtFdmVudFNlbmRpbmdDb250cm9sbGVyIG1vdXNlRG93bjpdKToKKyAgICAg
ICAgKC1bRXZlbnRTZW5kaW5nQ29udHJvbGxlciBtb3VzZVVwOl0pOgorICAgICAgICAoLVtFdmVu
dFNlbmRpbmdDb250cm9sbGVyIG1vdXNlTW92ZVRvWDpZOl0pOgorICAgICAgICAoLVtFdmVudFNl
bmRpbmdDb250cm9sbGVyIGNvbnRleHRDbGlja10pOgorCiAyMDA4LTA2LTI3ICBKYW4gTWljaGFl
bCBBbG9uem8gIDxqbWFsb256b0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IENo
cmlzdGlhbiBEeXdhbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL0R1
bXBSZW5kZXJUcmVlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IDE0NDUwYzUuLmUyNjhhMzAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L0R1bXBSZW5kZXJUcmVlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtMTIyLDcgKzEyMiw3IEBACiAvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24g
Ki8KIAkJMTQxQkYyMzMwOTZBNDRDRjAwRTA3NTNDIC8qIFRlc3ROZXRzY2FwZVBsdWdJbi5wbHVn
aW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZXhwbGljaXRGaWxlVHlwZSA9IHdyYXBw
ZXIuY2ZidW5kbGU7IGluY2x1ZGVJbkluZGV4ID0gMDsgcGF0aCA9IFRlc3ROZXRzY2FwZVBsdWdJ
bi5wbHVnaW47IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCTE0MUJGNDQ3
MDk2QTQ1QzgwMEUwNzUzQyAvKiBQbHVnaW5PYmplY3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFBsdWdpbk9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkxNDFCRjQ0ODA5NkE0NUM4MDBFMDc1M0MgLyogSW5mby5wbGlzdCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
LnhtbDsgcGF0aCA9IEluZm8ucGxpc3Q7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTE0
MUJGNDQ4MDk2QTQ1QzgwMEUwNzUzQyAvKiBJbmZvLnBsaXN0ICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQucGxp
c3QueG1sOyBwYXRoID0gSW5mby5wbGlzdDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MTQ3NzBGRTAwQTIyQURGNzAwOTM0MkVFIC8qIEdDQ29udHJvbGxlci5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBHQ0NvbnRyb2xsZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMUE4RjAyNEMwQkI5QjA1NjAwOENGQTM0IC8qIFRlc3RPYmplY3QuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGVzdE9iamVjdC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkxQUM2Qzc3RjBEMDc1ODlCMDBDRDMxNjEgLyogbWFpbi5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBtYWluLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9F
dmVudFNlbmRpbmdDb250cm9sbGVyLmggYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMv
RXZlbnRTZW5kaW5nQ29udHJvbGxlci5oCmluZGV4IDI4ZDAzODUuLmRlZWU4NDggMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9FdmVudFNlbmRpbmdDb250cm9sbGVy
LmgKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRy
b2xsZXIuaApAQCAtMzEsNyArMzEsNyBAQAogCiBAaW50ZXJmYWNlIEV2ZW50U2VuZGluZ0NvbnRy
b2xsZXIgOiBOU09iamVjdCA8RE9NRXZlbnRMaXN0ZW5lcj4KIHsKLSAgICBCT09MIGRvd247Cisg
ICAgQk9PTCBsZWZ0TW91c2VCdXR0b25Eb3duOwogICAgIEJPT0wgZHJhZ01vZGU7CiAgICAgaW50
IGNsaWNrQ291bnQ7CiAgICAgTlNUaW1lSW50ZXJ2YWwgbGFzdENsaWNrOwpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIubW0g
Yi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5t
bQppbmRleCBiYTQ2MjYxLi5hOTQxYmJhIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQorKysgYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9tYWMvRXZlbnRTZW5kaW5nQ29udHJvbGxlci5tbQpAQCAtNDEsOCArNDEs
MjMgQEAKIAogZXh0ZXJuICJDIiB2b2lkIF9OU05ld0tpbGxSaW5nU2VxdWVuY2UoKTsKIAorZW51
bSBNb3VzZUFjdGlvbiB7CisgICAgTW91c2VEb3duLAorICAgIE1vdXNlVXAsCisgICAgTW91c2VE
cmFnZ2VkCit9OworCisvLyBNYXRjaCB0aGUgRE9NIHNwZWMgKHNhZGx5IHRoZSBET00gc3BlYyBk
b2VzIG5vdCBwcm92aWRlIGFuIGVudW0pCitlbnVtIE1vdXNlQnV0dG9uIHsKKyAgICBMZWZ0TW91
c2VCdXR0b24gPSAwLAorICAgIE1pZGRsZU1vdXNlQnV0dG9uID0gMSwKKyAgICBSaWdodE1vdXNl
QnV0dG9uID0gMiwKKyAgICBOb01vdXNlQnV0dG9uID0gLTEKK307CisKIE5TUG9pbnQgbGFzdE1v
dXNlUG9zaXRpb247CiBOU1BvaW50IGxhc3RDbGlja1Bvc2l0aW9uOworaW50IGxhc3RDbGlja0J1
dHRvbiA9IE5vTW91c2VCdXR0b247CiBOU0FycmF5ICp3ZWJraXREb21FdmVudE5hbWVzOwogTlNN
dXRhYmxlQXJyYXkgKnNhdmVkTW91c2VFdmVudHM7IC8vIG1vdXNlIGV2ZW50cyBzZW50IGJldHdl
ZW4gbW91c2VEb3duIGFuZCBtb3VzZVVwIGFyZSBzdG9yZWQgaGVyZSwgYW5kIHRoZW4gZXhlY3V0
ZWQgYXQgb25jZS4KIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CkBAIC0xMDMsOCArMTE4LDgg
QEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50czsKIAogKyAoQk9PTClpc1NlbGVjdG9yRXhjbHVk
ZWRGcm9tV2ViU2NyaXB0OihTRUwpYVNlbGVjdG9yCiB7Ci0gICAgaWYgKGFTZWxlY3RvciA9PSBA
c2VsZWN0b3IobW91c2VEb3duKQotICAgICAgICAgICAgfHwgYVNlbGVjdG9yID09IEBzZWxlY3Rv
cihtb3VzZVVwKQorICAgIGlmIChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlRG93bjopCisg
ICAgICAgICAgICB8fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlVXA6KQogICAgICAgICAg
ICAgfHwgYVNlbGVjdG9yID09IEBzZWxlY3Rvcihjb250ZXh0Q2xpY2spCiAgICAgICAgICAgICB8
fCBhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlTW92ZVRvWDpZOikKICAgICAgICAgICAgIHx8
IGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobGVhcEZvcndhcmQ6KQpAQCAtMTI5LDYgKzE0NCwxMCBA
QCBCT09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogCiArIChOU1N0cmluZyAqKXdlYlNjcmlwdE5h
bWVGb3JTZWxlY3RvcjooU0VMKWFTZWxlY3RvcgogeworICAgIGlmIChhU2VsZWN0b3IgPT0gQHNl
bGVjdG9yKG1vdXNlRG93bjopKQorICAgICAgICByZXR1cm4gQCJtb3VzZURvd24iOworICAgIGlm
IChhU2VsZWN0b3IgPT0gQHNlbGVjdG9yKG1vdXNlVXA6KSkKKyAgICAgICAgcmV0dXJuIEAibW91
c2VVcCI7CiAgICAgaWYgKGFTZWxlY3RvciA9PSBAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KSkK
ICAgICAgICAgcmV0dXJuIEAibW91c2VNb3ZlVG8iOwogICAgIGlmIChhU2VsZWN0b3IgPT0gQHNl
bGVjdG9yKGxlYXBGb3J3YXJkOikpCkBAIC0xNjQsNyArMTgzLDcgQEAgQk9PTCByZXBsYXlpbmdT
YXZlZEV2ZW50czsKIAogLSAodm9pZClsZWFwRm9yd2FyZDooaW50KW1pbGxpc2Vjb25kcwogewot
ICAgIGlmIChkcmFnTW9kZSAmJiBkb3duICYmICFyZXBsYXlpbmdTYXZlZEV2ZW50cykgeworICAg
IGlmIChkcmFnTW9kZSAmJiBsZWZ0TW91c2VCdXR0b25Eb3duICYmICFyZXBsYXlpbmdTYXZlZEV2
ZW50cykgewogICAgICAgICBOU0ludm9jYXRpb24gKmludm9jYXRpb24gPSBbTlNJbnZvY2F0aW9u
IGludm9jYXRpb25XaXRoTWV0aG9kU2lnbmF0dXJlOltFdmVudFNlbmRpbmdDb250cm9sbGVyIGlu
c3RhbmNlTWV0aG9kU2lnbmF0dXJlRm9yU2VsZWN0b3I6QHNlbGVjdG9yKGxlYXBGb3J3YXJkOild
XTsKICAgICAgICAgW2ludm9jYXRpb24gc2V0VGFyZ2V0OnNlbGZdOwogICAgICAgICBbaW52b2Nh
dGlvbiBzZXRTZWxlY3RvcjpAc2VsZWN0b3IobGVhcEZvcndhcmQ6KV07CkBAIC0xODMsMTUgKzIw
Miw1OSBAQCBCT09MIHJlcGxheWluZ1NhdmVkRXZlbnRzOwogICAgIF9OU05ld0tpbGxSaW5nU2Vx
dWVuY2UoKTsKIH0KIAotLSAodm9pZCltb3VzZURvd24KK3N0YXRpYyBOU0V2ZW50VHlwZSBldmVu
dFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihpbnQgYnV0dG9uLCBNb3VzZUFjdGlvbiBhY3Rp
b24pCit7CisgICAgc3dpdGNoKGJ1dHRvbikgeworICAgICAgICBjYXNlIExlZnRNb3VzZUJ1dHRv
bjoKKyAgICAgICAgICAgIHN3aXRjaCAoYWN0aW9uKSB7CisgICAgICAgICAgICAgICAgY2FzZSBN
b3VzZURvd246CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU0xlZnRNb3VzZURvd247Cisg
ICAgICAgICAgICAgICAgY2FzZSBNb3VzZVVwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4g
TlNMZWZ0TW91c2VVcDsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRHJhZ2dlZDoKKyAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIE5TTGVmdE1vdXNlRHJhZ2dlZDsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgY2FzZSBSaWdodE1vdXNlQnV0dG9uOgorICAgICAgICAgICAgc3dpdGNoIChhY3Rp
b24pIHsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRG93bjoKKyAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIE5TUmlnaHRNb3VzZURvd247CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZVVw
OgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNSaWdodE1vdXNlVXA7CisgICAgICAgICAg
ICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBOU1Jp
Z2h0TW91c2VEcmFnZ2VkOworICAgICAgICAgICAgfQorICAgICAgICBkZWZhdWx0OgorICAgICAg
ICAgICAgc3dpdGNoIChhY3Rpb24pIHsKKyAgICAgICAgICAgICAgICBjYXNlIE1vdXNlRG93bjoK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE5TT3RoZXJNb3VzZURvd247CisgICAgICAgICAg
ICAgICAgY2FzZSBNb3VzZVVwOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gTlNPdGhlck1v
dXNlVXA7CisgICAgICAgICAgICAgICAgY2FzZSBNb3VzZURyYWdnZWQ6CisgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBOU090aGVyTW91c2VEcmFnZ2VkOworICAgICAgICAgICAgfQorICAgIH0K
KyAgICBhc3NlcnQoMCk7CisgICAgcmV0dXJuIDA7Cit9CisKKy0gKHZvaWQpdXBkYXRlQ2xpY2tD
b3VudEZvckJ1dHRvbjooaW50KWJ1dHRvbk51bWJlcgogewotICAgIFtbW21haW5GcmFtZSBmcmFt
ZVZpZXddIGRvY3VtZW50Vmlld10gbGF5b3V0XTsKICAgICBpZiAoKFtzZWxmIGN1cnJlbnRFdmVu
dFRpbWVdIC0gbGFzdENsaWNrID49IDEpIHx8Ci0gICAgICAgICFOU0VxdWFsUG9pbnRzKGxhc3RN
b3VzZVBvc2l0aW9uLCBsYXN0Q2xpY2tQb3NpdGlvbikpCisgICAgICAgICFOU0VxdWFsUG9pbnRz
KGxhc3RNb3VzZVBvc2l0aW9uLCBsYXN0Q2xpY2tQb3NpdGlvbikgfHwKKyAgICAgICAgbGFzdENs
aWNrQnV0dG9uICE9IGJ1dHRvbk51bWJlcikgewogICAgICAgICBjbGlja0NvdW50ID0gMTsKLSAg
ICBlbHNlCisgICAgICAgIGxhc3RDbGlja0J1dHRvbiA9IGJ1dHRvbk51bWJlcjsKKyAgICB9IGVs
c2UKICAgICAgICAgY2xpY2tDb3VudCsrOwotICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQg
bW91c2VFdmVudFdpdGhUeXBlOk5TTGVmdE1vdXNlRG93biAKK30KKworLSAodm9pZCltb3VzZURv
d246KGludClidXR0b25OdW1iZXIKK3sKKyAgICBbW1ttYWluRnJhbWUgZnJhbWVWaWV3XSBkb2N1
bWVudFZpZXddIGxheW91dF07CisgICAgW3NlbGYgdXBkYXRlQ2xpY2tDb3VudEZvckJ1dHRvbjpi
dXR0b25OdW1iZXJdOworICAgIAorICAgIE5TRXZlbnRUeXBlIGV2ZW50VHlwZSA9IGV2ZW50VHlw
ZUZvck1vdXNlQnV0dG9uQW5kQWN0aW9uKGJ1dHRvbk51bWJlciwgTW91c2VEb3duKTsKKyAgICBO
U0V2ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpldmVudFR5cGUKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQ
b3NpdGlvbiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFn
czowIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltz
ZWxmIGN1cnJlbnRFdmVudFRpbWVdCkBAIC0yMDQsNyArMjY3LDggQEAgQk9PTCByZXBsYXlpbmdT
YXZlZEV2ZW50czsKICAgICBOU1ZpZXcgKnN1YlZpZXcgPSBbW21haW5GcmFtZSB3ZWJWaWV3XSBo
aXRUZXN0OltldmVudCBsb2NhdGlvbkluV2luZG93XV07CiAgICAgaWYgKHN1YlZpZXcpIHsKICAg
ICAgICAgW3N1YlZpZXcgbW91c2VEb3duOmV2ZW50XTsKLSAgICAgICAgZG93biA9IFlFUzsKKyAg
ICAgICAgaWYgKGJ1dHRvbk51bWJlciA9PSBMZWZ0TW91c2VCdXR0b24pCisgICAgICAgICAgICBs
ZWZ0TW91c2VCdXR0b25Eb3duID0gWUVTOwogICAgIH0KIH0KIApAQCAtMjI4LDEyICsyOTIsMTMg
QEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2ZW50czsKICAgICBbW21haW5GcmFtZSB3ZWJWaWV3XSB6
b29tUGFnZU91dDpzZWxmXTsKIH0KIAotLSAodm9pZCltb3VzZVVwCistICh2b2lkKW1vdXNlVXA6
KGludClidXR0b25OdW1iZXIKIHsKICAgICBpZiAoZHJhZ01vZGUgJiYgIXJlcGxheWluZ1NhdmVk
RXZlbnRzKSB7Ci0gICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRp
b24gaW52b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIg
aW5zdGFuY2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IobW91c2VVcCldXTsK
KyAgICAgICAgTlNJbnZvY2F0aW9uICppbnZvY2F0aW9uID0gW05TSW52b2NhdGlvbiBpbnZvY2F0
aW9uV2l0aE1ldGhvZFNpZ25hdHVyZTpbRXZlbnRTZW5kaW5nQ29udHJvbGxlciBpbnN0YW5jZU1l
dGhvZFNpZ25hdHVyZUZvclNlbGVjdG9yOkBzZWxlY3Rvcihtb3VzZVVwOildXTsKICAgICAgICAg
W2ludm9jYXRpb24gc2V0VGFyZ2V0OnNlbGZdOwotICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxl
Y3RvcjpAc2VsZWN0b3IobW91c2VVcCldOworICAgICAgICBbaW52b2NhdGlvbiBzZXRTZWxlY3Rv
cjpAc2VsZWN0b3IobW91c2VVcDopXTsKKyAgICAgICAgW2ludm9jYXRpb24gc2V0QXJndW1lbnQ6
JmJ1dHRvbk51bWJlciBhdEluZGV4OjJdOwogICAgICAgICAKICAgICAgICAgW0V2ZW50U2VuZGlu
Z0NvbnRyb2xsZXIgc2F2ZUV2ZW50Omludm9jYXRpb25dOwogICAgICAgICBbRXZlbnRTZW5kaW5n
Q29udHJvbGxlciByZXBsYXlTYXZlZEV2ZW50c107CkBAIC0yNDIsNyArMzA3LDggQEAgQk9PTCBy
ZXBsYXlpbmdTYXZlZEV2ZW50czsKICAgICB9CiAKICAgICBbW1ttYWluRnJhbWUgZnJhbWVWaWV3
XSBkb2N1bWVudFZpZXddIGxheW91dF07Ci0gICAgTlNFdmVudCAqZXZlbnQgPSBbTlNFdmVudCBt
b3VzZUV2ZW50V2l0aFR5cGU6TlNMZWZ0TW91c2VVcCAKKyAgICBOU0V2ZW50VHlwZSBldmVudFR5
cGUgPSBldmVudFR5cGVGb3JNb3VzZUJ1dHRvbkFuZEFjdGlvbihidXR0b25OdW1iZXIsIE1vdXNl
VXApOworICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhUeXBlOmV2
ZW50VHlwZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9u
Omxhc3RNb3VzZVBvc2l0aW9uIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBt
b2RpZmllckZsYWdzOjAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0
aW1lc3RhbXA6W3NlbGYgY3VycmVudEV2ZW50VGltZV0KQEAgLTI1OSw3ICszMjUsOCBAQCBCT09M
IHJlcGxheWluZ1NhdmVkRXZlbnRzOwogICAgIHRhcmdldFZpZXcgPSB0YXJnZXRWaWV3ID8gdGFy
Z2V0VmlldyA6IFtbbWFpbkZyYW1lIGZyYW1lVmlld10gZG9jdW1lbnRWaWV3XTsKICAgICBhc3Nl
cnQodGFyZ2V0Vmlldyk7CiAgICAgW3RhcmdldFZpZXcgbW91c2VVcDpldmVudF07Ci0gICAgZG93
biA9IE5POworICAgIGlmIChidXR0b25OdW1iZXIgPT0gTGVmdE1vdXNlQnV0dG9uKQorICAgICAg
ICBsZWZ0TW91c2VCdXR0b25Eb3duID0gTk87CiAgICAgbGFzdENsaWNrID0gW2V2ZW50IHRpbWVz
dGFtcF07CiAgICAgbGFzdENsaWNrUG9zaXRpb24gPSBsYXN0TW91c2VQb3NpdGlvbjsKICAgICBp
ZiAoZHJhZ2dpbmdJbmZvKSB7CkBAIC0yNzksNyArMzQ2LDcgQEAgQk9PTCByZXBsYXlpbmdTYXZl
ZEV2ZW50czsKIAogLSAodm9pZCltb3VzZU1vdmVUb1g6KGludCl4IFk6KGludCl5CiB7Ci0gICAg
aWYgKGRyYWdNb2RlICYmIGRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRzKSB7CisgICAgaWYg
KGRyYWdNb2RlICYmIGxlZnRNb3VzZUJ1dHRvbkRvd24gJiYgIXJlcGxheWluZ1NhdmVkRXZlbnRz
KSB7CiAgICAgICAgIE5TSW52b2NhdGlvbiAqaW52b2NhdGlvbiA9IFtOU0ludm9jYXRpb24gaW52
b2NhdGlvbldpdGhNZXRob2RTaWduYXR1cmU6W0V2ZW50U2VuZGluZ0NvbnRyb2xsZXIgaW5zdGFu
Y2VNZXRob2RTaWduYXR1cmVGb3JTZWxlY3RvcjpAc2VsZWN0b3IobW91c2VNb3ZlVG9YOlk6KV1d
OwogICAgICAgICBbaW52b2NhdGlvbiBzZXRUYXJnZXQ6c2VsZl07CiAgICAgICAgIFtpbnZvY2F0
aW9uIHNldFNlbGVjdG9yOkBzZWxlY3Rvcihtb3VzZU1vdmVUb1g6WTopXTsKQEAgLTI5MywxOSAr
MzYwLDE5IEBAIEJPT0wgcmVwbGF5aW5nU2F2ZWRFdmVudHM7CiAKICAgICBOU1ZpZXcgKnZpZXcg
PSBbbWFpbkZyYW1lIHdlYlZpZXddOwogICAgIGxhc3RNb3VzZVBvc2l0aW9uID0gW3ZpZXcgY29u
dmVydFBvaW50Ok5TTWFrZVBvaW50KHgsIFt2aWV3IGZyYW1lXS5zaXplLmhlaWdodCAtIHkpIHRv
VmlldzpuaWxdOwotICAgIE5TRXZlbnQgKmV2ZW50ID0gW05TRXZlbnQgbW91c2VFdmVudFdpdGhU
eXBlOihkb3duID8gTlNMZWZ0TW91c2VEcmFnZ2VkIDogTlNNb3VzZU1vdmVkKSAKKyAgICBOU0V2
ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZToobGVmdE1vdXNlQnV0dG9u
RG93biA/IE5TTGVmdE1vdXNlRHJhZ2dlZCA6IE5TTW91c2VNb3ZlZCkKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhdGlvbjpsYXN0TW91c2VQb3NpdGlvbiAKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kaWZpZXJGbGFnczowIAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZXN0YW1wOltzZWxmIGN1cnJlbnRF
dmVudFRpbWVdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dOdW1i
ZXI6W1t2aWV3IHdpbmRvd10gd2luZG93TnVtYmVyXSAKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29udGV4dDpbTlNHcmFwaGljc0NvbnRleHQgY3VycmVudENvbnRl
eHRdIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50TnVtYmVyOisr
ZXZlbnROdW1iZXIgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWNr
Q291bnQ6KGRvd24gPyBjbGlja0NvdW50IDogMCkgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGNsaWNrQ291bnQ6KGxlZnRNb3VzZUJ1dHRvbkRvd24gPyBjbGlja0NvdW50
IDogMCkgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJlc3N1cmU6
MC4wXTsKIAogICAgIE5TVmlldyAqc3ViVmlldyA9IFtbbWFpbkZyYW1lIHdlYlZpZXddIGhpdFRl
c3Q6W2V2ZW50IGxvY2F0aW9uSW5XaW5kb3ddXTsKICAgICBpZiAoc3ViVmlldykgewotICAgICAg
ICBpZiAoZG93bikgeworICAgICAgICBpZiAobGVmdE1vdXNlQnV0dG9uRG93bikgewogICAgICAg
ICAgICAgW3N1YlZpZXcgbW91c2VEcmFnZ2VkOmV2ZW50XTsKICAgICAgICAgICAgIGlmIChkcmFn
Z2luZ0luZm8pIHsKICAgICAgICAgICAgICAgICBbW2RyYWdnaW5nSW5mbyBkcmFnZ2luZ1NvdXJj
ZV0gZHJhZ2dlZEltYWdlOltkcmFnZ2luZ0luZm8gZHJhZ2dlZEltYWdlXSBtb3ZlZFRvOmxhc3RN
b3VzZVBvc2l0aW9uXTsKQEAgLTMxOSwxMSArMzg2LDkgQEAgQk9PTCByZXBsYXlpbmdTYXZlZEV2
ZW50czsKIC0gKHZvaWQpY29udGV4dENsaWNrCiB7CiAgICAgW1tbbWFpbkZyYW1lIGZyYW1lVmll
d10gZG9jdW1lbnRWaWV3XSBsYXlvdXRdOwotICAgIGlmIChbc2VsZiBjdXJyZW50RXZlbnRUaW1l
XSAtIGxhc3RDbGljayA+PSAxKQotICAgICAgICBjbGlja0NvdW50ID0gMTsKLSAgICBlbHNlCi0g
ICAgICAgIGNsaWNrQ291bnQrKzsKLSAgICBOU0V2ZW50ICpldmVudCA9IFtOU0V2ZW50IG1vdXNl
RXZlbnRXaXRoVHlwZTpOU1JpZ2h0TW91c2VEb3duIAorICAgIFtzZWxmIHVwZGF0ZUNsaWNrQ291
bnRGb3JCdXR0b246UmlnaHRNb3VzZUJ1dHRvbl07CisKKyAgICBOU0V2ZW50ICpldmVudCA9IFtO
U0V2ZW50IG1vdXNlRXZlbnRXaXRoVHlwZTpOU1JpZ2h0TW91c2VEb3duCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYXRpb246bGFzdE1vdXNlUG9zaXRpb24gCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGlmaWVyRmxhZ3M6MCAKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcDpbc2VsZiBjdXJyZW50
RXZlbnRUaW1lXQo=
</data>
<flag name="review"
          id="9663"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>