<?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>41550</bug_id>
          
          <creation_ts>2010-07-02 16:29:25 -0700</creation_ts>
          <short_desc>The missing plug-in indicator should be clickable</short_desc>
          <delta_ts>2010-07-03 14:58:25 -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>Plug-ins</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></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="Jon Honeycutt">jhoneycutt</reporter>
          <assigned_to name="Jon Honeycutt">jhoneycutt</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>246150</commentid>
    <comment_count>0</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-07-02 16:29:25 -0700</bug_when>
    <thetext>Clicking the missing plug-in indicator should call a delegate method.

&lt;rdar://problem/8132162&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246162</commentid>
    <comment_count>1</comment_count>
      <attachid>60421</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-07-02 16:58:38 -0700</bug_when>
    <thetext>Created attachment 60421
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246167</commentid>
    <comment_count>2</comment_count>
      <attachid>60421</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-02 17:11:47 -0700</bug_when>
    <thetext>Comment on attachment 60421
Patch

&gt; +void* HTMLPlugInElement::preDispatchEventHandler(Event* event)

Why does this code need to be in preDispatchEventHandler instead of defaultEventHandler? This is not what preDispatchEventHandler was designed for. It was only for very special cases in the &lt;input&gt; element. Do we really need to use it here?

&gt; +    String pluginPageURL = getAttribute(&quot;pluginspage&quot;);
&gt; +
&gt; +    ChromeClient* client = page-&gt;chrome()-&gt;client();
&gt; +    client-&gt;missingPluginButtonClicked(serviceType(), pluginPageURL);


Why does the element need to call getAttribute and pass the URL? It seems the client could get the pluginspage attribute itself as long as it got a reference to the element. Same comment on service type. It seems the client could get that using standard DOM APIs and it would be more flexible to pass a reference to the element. The only downside to that I can think of is that it&apos;s not very WebKit2-friendly.

I don’t see any code here to implement a different look for the Missing Plug-in text when it&apos;s being clicked on, a pressed state. Isn&apos;t that part of what we were planning?

review- because of the use of preDispatchEventHandler. Everything else seems OK as is even though I do have the questions above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246173</commentid>
    <comment_count>3</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-07-02 17:39:32 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 60421 [details])
&gt; &gt; +void* HTMLPlugInElement::preDispatchEventHandler(Event* event)
&gt; 
&gt; Why does this code need to be in preDispatchEventHandler instead of defaultEventHandler? This is not what preDispatchEventHandler was designed for. It was only for very special cases in the &lt;input&gt; element. Do we really need to use it here?

I added this to preDispatchEventHandler so that the delegate is called even if there is an onclick handler that calls event.preventDefault(). What should the correct behavior be in that case?

&gt; 
&gt; &gt; +    String pluginPageURL = getAttribute(&quot;pluginspage&quot;);
&gt; &gt; +
&gt; &gt; +    ChromeClient* client = page-&gt;chrome()-&gt;client();
&gt; &gt; +    client-&gt;missingPluginButtonClicked(serviceType(), pluginPageURL);
&gt; 
&gt; 
&gt; Why does the element need to call getAttribute and pass the URL? It seems the client could get the pluginspage attribute itself as long as it got a reference to the element. Same comment on service type. It seems the client could get that using standard DOM APIs and it would be more flexible to pass a reference to the element. The only downside to that I can think of is that it&apos;s not very WebKit2-friendly.

Kevin explained to me why he thought this was a better approach, but I don&apos;t remember what he said. I&apos;ll change the delegate to take a reference to the element.

&gt; 
&gt; I don’t see any code here to implement a different look for the Missing Plug-in text when it&apos;s being clicked on, a pressed state. Isn&apos;t that part of what we were planning?

I didn&apos;t include that in this patch, both to make this patch simpler and because the code to have a pressed look is not complete.

&gt; 
&gt; review- because of the use of preDispatchEventHandler. Everything else seems OK as is even though I do have the questions above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246291</commentid>
    <comment_count>4</comment_count>
      <attachid>60446</attachid>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-07-03 04:14:40 -0700</bug_when>
    <thetext>Created attachment 60446
patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246332</commentid>
    <comment_count>5</comment_count>
      <attachid>60446</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-03 10:43:22 -0700</bug_when>
    <thetext>Comment on attachment 60446
patch v2

This doesn&apos;t seem to do any hit testing. So clicking anywhere in the plug-in, even far away from the missing plug-in indicator, would trigger the function call.

&gt; +        ChromeClient* client = page-&gt;chrome()-&gt;client();
&gt; +        client-&gt;missingPluginButtonClicked(this);
&gt; +
&gt; +        return;

I&apos;d write that more compactly like this:

    page-&gt;chrome()-&gt;client()-&gt;missingPluginButtonClicked(this);
    return;

Without the blank line or the local variable.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>246350</commentid>
    <comment_count>6</comment_count>
    <who name="Jon Honeycutt">jhoneycutt</who>
    <bug_when>2010-07-03 14:58:25 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 60446 [details])
&gt; This doesn&apos;t seem to do any hit testing. So clicking anywhere in the plug-in, even far away from the missing plug-in indicator, would trigger the function call.

Yes, I&apos;ll file a bug about this.

&gt; 
&gt; &gt; +        ChromeClient* client = page-&gt;chrome()-&gt;client();
&gt; &gt; +        client-&gt;missingPluginButtonClicked(this);
&gt; &gt; +
&gt; &gt; +        return;
&gt; 
&gt; I&apos;d write that more compactly like this:
&gt; 
&gt;     page-&gt;chrome()-&gt;client()-&gt;missingPluginButtonClicked(this);
&gt;     return;
&gt; 
&gt; Without the blank line or the local variable.

Fixed.

&gt; 
&gt; r=me

Thanks for the reviews! Landed in r62451.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60421</attachid>
            <date>2010-07-02 16:58:38 -0700</date>
            <delta_ts>2010-07-03 04:14:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-the-missing-plug-in-indicator-should-be-clickable.patch</filename>
            <type>text/plain</type>
            <size>18085</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSBjYzYwYmFmNTMxODM5MTJjMTRhOWIxNjA2ZWI2NGRlOGI2NDZjNjFkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogRnJpLCAyIEp1bCAyMDEwIDE2OjU0OjMxIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gVGhl
IG1pc3NpbmcgcGx1Zy1pbiBpbmRpY2F0b3Igc2hvdWxkIGJlIGNsaWNrYWJsZQoKaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNTUwCjxyZGFyOi8vcHJvYmxlbS84MTMy
MTYyPgoKRnJvbSBhbiBvcmlnaW5hbCBwYXRjaCBieSBLZXZpbiBEZWNrZXIuCgpSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KCldlYkNvcmU6CgoqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3Bw
OgooV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OnByZURpc3BhdGNoRXZlbnRIYW5kbGVyKToK
SWYgdGhlIHJlbmRlcmVyIGlzIGEgUmVuZGVyRW1iZWRkZWRXaWRnZXQgc2hvd2luZyB0aGUgbWlz
c2luZyBwbHVnLWluCmluZGljYXRvciwgYW5kIHRoZSBldmVudCBpcyBhIGNsaWNrIGV2ZW4sIGNh
bGwgdGhlIENocm9tZUNsaWVudCdzCm1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKCkgZnVuY3Rp
b24uCgoqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaDoKQWRkIGFuIG92ZXJyaWRlIG9mIHByZURp
c3BhdGNoRXZlbnRIYW5kbGVyKCkuCihXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6c2Vydmlj
ZVR5cGUpOgpBZGRlZDsgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiByZXR1cm5zIG51bGwgU3RyaW5n
LgoKKiBodG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDoKKFdlYkNvcmU6OkhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnNlcnZpY2VUeXBlKToKUmVtb3ZlZCB0aGUgb2xkIHNlcnZpY2VUeXBlKCkg
ZnVuY3Rpb24sIGFuZCByZXBsYWNlIGl0IHdpdGggYW4gb3ZlcnJpZGUKb2YgSFRNTFBsdWdJbkVs
ZW1lbnQncyB2aXJ0dWFsIGZ1bmN0aW9uIG9mIHRoZSBzYW1lIG5hbWUuCgoqIHBhZ2UvQ2hyb21l
Q2xpZW50Lmg6CkRlY2xhcmUgbWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoKSwgYW5kIHN0dWIg
dGhlIGRlZmF1bHQKaW1wbGVtZW50YXRpb24uCgoqIHJlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9i
amVjdC5jcHA6CihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6UmVuZGVyRW1iZWRkZWRP
YmplY3QpOgpJbml0aWFsaXplIG1fc2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yLgooV2ViQ29y
ZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OnNldFNob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvcik6
CkFzc2VydCB0aGF0IHdlJ3JlIG5vdCBjdXJyZW50bHkgc2hvd2luZyBhbnkgcmVwbGFjZW1lbnQg
dGV4dC4gU2V0Cm1fc2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yIGFmdGVyIHNldHRpbmcgdGhl
IHJlcGxhY2VtZW50IHRleHQuCihXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6c2V0U2hv
d3NDcmFzaGVkUGx1Z2luSW5kaWNhdG9yKToKQWRkIHRoZSBzYW1lIGFzc2VydGlvbiBhcyBhYm92
ZS4KCiogcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg6CihXZWJDb3JlOjpSZW5kZXJF
bWJlZGRlZE9iamVjdDo6c2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKToKR2V0dGVyIGZvciBt
X3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvci4KCldlYktpdC9tYWM6CgoqIFdlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5oOgpEZWNsYXJlIGFuIG92ZXJyaWRlIG9mIG1pc3NpbmdQbHVn
aW5CdXR0b25DbGlja2VkKCkuCgoqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5tbToK
KFdlYkNocm9tZUNsaWVudDo6bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQpOgpDYWxsIHRoZSBV
SSBkZWxlZ2F0ZSdzIG1pc3NpbmdQbHVnaW5DbGlja2VkIGZ1bmN0aW9uLgoKKiBXZWJWaWV3L1dl
YlVJRGVsZWdhdGVQcml2YXRlLmg6CkRlY2xhcmUgZGlkUHJlc3NNaXNzaW5nUGx1Z2luQnV0dG9u
LgoKV2ViS2l0L3dpbjoKCiogSW50ZXJmYWNlcy9JV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaWRsOgpB
ZGRlZCBhIG5ldyBkZWxlZ2F0ZSBpbnRlcmZhY2UsIGFuZCBkZWNsYXJlIGEgZnVuY3Rpb24KZGlk
UHJlc3NNaXNzaW5nUGx1Z2luQnV0dG9uKCkuCgoqIEludGVyZmFjZXMvV2ViS2l0LmlkbDoKVG91
Y2ggdGhpcyBmaWxlIHRvIGZvcmNlIGludGVyZmFjZXMgdG8gYmUgcmVidWlsdC4KCiogV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKFdlYkNocm9tZUNsaWVudDo6bWlzc2luZ1Bs
dWdpbkJ1dHRvbkNsaWNrZWQpOgpHZXQgdGhlIFVJIGRlbGVnYXRlLCBhbmQgcXVlcnkgaXQgZm9y
IElXZWJVSURlbGVnYXRlUHJpdmF0ZTMuIENhbGwgaXRzCmRpZFByZXNzTWlzc2luZ1BsdWdpbkJ1
dHRvbigpIGZ1bmN0aW9uLgoKKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKRGVj
bGFyZSBhbiBvdmVycmlkZSBvZiBtaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tlZCgpLgotLS0KIFdl
YkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0NCArKysr
KysrKysrKysrKysrKysrKysrKwogV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcCAg
ICAgICAgICAgICAgfCAgIDI3ICsrKysrKysrKysrKysrCiBXZWJDb3JlL2h0bWwvSFRNTFBsdWdJ
bkVsZW1lbnQuaCAgICAgICAgICAgICAgICB8ICAgIDMgKysKIFdlYkNvcmUvaHRtbC9IVE1MUGx1
Z0luSW1hZ2VFbGVtZW50LmggICAgICAgICAgIHwgICAgMiArLQogV2ViQ29yZS9wYWdlL0Nocm9t
ZUNsaWVudC5oICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsKIFdlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcCAgICAgIHwgICAgNCArKwogV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuaCAgICAgICAgfCAgICAyICsKIFdlYktpdC9tYWMvQ2hh
bmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyMSArKysrKysrKysrKwogV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaCAgICAgfCAgICAxICsKIFdl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tICAgIHwgICAgNSArKysK
IFdlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oICAgICAgIHwgICAgMSAr
CiBXZWJLaXQvd2luL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMjYg
KysrKysrKysrKysrKwogV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0
ZS5pZGwgfCAgIDExICsrKysrKwogV2ViS2l0L3dpbi9JbnRlcmZhY2VzL1dlYktpdC5pZGwgICAg
ICAgICAgICAgICAgfCAgICAyICstCiBXZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAgICB8ICAgMTMgKysrKysrKwogV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaCAgICAgfCAgICAxICsKIDE2IGZpbGVzIGNoYW5nZWQsIDE2MiBpbnNl
cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9n
IGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2U0Y2MxNC4uYzcxNzhhMSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NyBA
QAorMjAxMC0wNy0wMiAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1dHRAYXBwbGUuY29tPgorCisg
ICAgICAgIFRoZSBtaXNzaW5nIHBsdWctaW4gaW5kaWNhdG9yIHNob3VsZCBiZSBjbGlja2FibGUK
KworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE1NTAK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgxMzIxNjI+CisKKyAgICAgICAgRnJvbSBhbiBvcmln
aW5hbCBwYXRjaCBieSBLZXZpbiBEZWNrZXIuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpwcmVEaXNwYXRjaEV2ZW50SGFuZGxlcik6
CisgICAgICAgIElmIHRoZSByZW5kZXJlciBpcyBhIFJlbmRlckVtYmVkZGVkV2lkZ2V0IHNob3dp
bmcgdGhlIG1pc3NpbmcgcGx1Zy1pbgorICAgICAgICBpbmRpY2F0b3IsIGFuZCB0aGUgZXZlbnQg
aXMgYSBjbGljayBldmVuLCBjYWxsIHRoZSBDaHJvbWVDbGllbnQncworICAgICAgICBtaXNzaW5n
UGx1Z2luQnV0dG9uQ2xpY2tlZCgpIGZ1bmN0aW9uLgorCisgICAgICAgICogaHRtbC9IVE1MUGx1
Z0luRWxlbWVudC5oOgorICAgICAgICBBZGQgYW4gb3ZlcnJpZGUgb2YgcHJlRGlzcGF0Y2hFdmVu
dEhhbmRsZXIoKS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzZXJ2aWNl
VHlwZSk6CisgICAgICAgIEFkZGVkOyBkZWZhdWx0IGltcGxlbWVudGF0aW9uIHJldHVybnMgbnVs
bCBTdHJpbmcuCisKKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnNlcnZpY2VUeXBlKToKKyAg
ICAgICAgUmVtb3ZlZCB0aGUgb2xkIHNlcnZpY2VUeXBlKCkgZnVuY3Rpb24sIGFuZCByZXBsYWNl
IGl0IHdpdGggYW4gb3ZlcnJpZGUKKyAgICAgICAgb2YgSFRNTFBsdWdJbkVsZW1lbnQncyB2aXJ0
dWFsIGZ1bmN0aW9uIG9mIHRoZSBzYW1lIG5hbWUuCisKKyAgICAgICAgKiBwYWdlL0Nocm9tZUNs
aWVudC5oOgorICAgICAgICBEZWNsYXJlIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKCksIGFu
ZCBzdHViIHRoZSBkZWZhdWx0CisgICAgICAgIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgICog
cmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckVtYmVkZGVkT2JqZWN0OjpSZW5kZXJFbWJlZGRlZE9iamVjdCk6CisgICAgICAgIEluaXRp
YWxpemUgbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IuCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJFbWJlZGRlZE9iamVjdDo6c2V0U2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKToKKyAg
ICAgICAgQXNzZXJ0IHRoYXQgd2UncmUgbm90IGN1cnJlbnRseSBzaG93aW5nIGFueSByZXBsYWNl
bWVudCB0ZXh0LiBTZXQKKyAgICAgICAgbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IgYWZ0
ZXIgc2V0dGluZyB0aGUgcmVwbGFjZW1lbnQgdGV4dC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckVtYmVkZGVkT2JqZWN0OjpzZXRTaG93c0NyYXNoZWRQbHVnaW5JbmRpY2F0b3IpOgorICAgICAg
ICBBZGQgdGhlIHNhbWUgYXNzZXJ0aW9uIGFzIGFib3ZlLgorCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckVtYmVkZGVkT2JqZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRl
ZE9iamVjdDo6c2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKToKKyAgICAgICAgR2V0dGVyIGZv
ciBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvci4KKwogMjAxMC0wNi0yOSAgRnJhbsOnb2lz
IFNhdXNzZXQgIDxzYXVzc2V0QGdtYWlsLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAg
Yi9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCmluZGV4IDc2NDU1MjIuLjY3YzJk
MDYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKKysrIGIv
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcApAQCAtMjQsNiArMjQsOCBAQAogI2lu
Y2x1ZGUgIkhUTUxQbHVnSW5FbGVtZW50LmgiCiAKICNpbmNsdWRlICJBdHRyaWJ1dGUuaCIKKyNp
bmNsdWRlICJDaHJvbWUuaCIKKyNpbmNsdWRlICJDaHJvbWVDbGllbnQuaCIKICNpbmNsdWRlICJD
U1NQcm9wZXJ0eU5hbWVzLmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJGcmFt
ZS5oIgpAQCAtMzEsNiArMzMsNyBAQAogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUg
IkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJSZW5kZXJFbWJlZGRl
ZE9iamVjdC5oIgogI2luY2x1ZGUgIlJlbmRlcldpZGdldC5oIgogI2luY2x1ZGUgIlNjcmlwdENv
bnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgpAQCAtMTI5LDYgKzEzMiwzMCBAQCBi
b29sIEhUTUxQbHVnSW5FbGVtZW50OjpjaGVja0RURChjb25zdCBOb2RlKiBuZXdDaGlsZCkKICAg
ICByZXR1cm4gbmV3Q2hpbGQtPmhhc1RhZ05hbWUocGFyYW1UYWcpIHx8IEhUTUxGcmFtZU93bmVy
RWxlbWVudDo6Y2hlY2tEVEQobmV3Q2hpbGQpOwogfQogCit2b2lkKiBIVE1MUGx1Z0luRWxlbWVu
dDo6cHJlRGlzcGF0Y2hFdmVudEhhbmRsZXIoRXZlbnQqIGV2ZW50KQoreworICAgIFJlbmRlck9i
amVjdCogcmVuZGVyT2JqZWN0ID0gcmVuZGVyZXIoKTsKKyAgICBpZiAoIXJlbmRlck9iamVjdCB8
fCAhcmVuZGVyT2JqZWN0LT5pc0VtYmVkZGVkT2JqZWN0KCkpCisgICAgICAgIHJldHVybiAwOwor
CisgICAgaWYgKCF0b1JlbmRlckVtYmVkZGVkT2JqZWN0KHJlbmRlck9iamVjdCktPnNob3dzTWlz
c2luZ1BsdWdpbkluZGljYXRvcigpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChldmVu
dC0+dHlwZSgpICE9IGV2ZW50TmFtZXMoKS5jbGlja0V2ZW50KQorICAgICAgICByZXR1cm4gMDsK
KworICAgIFBhZ2UqIHBhZ2UgPSBkb2N1bWVudCgpLT5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQor
ICAgICAgICByZXR1cm4gMDsKKworICAgIFN0cmluZyBwbHVnaW5QYWdlVVJMID0gZ2V0QXR0cmli
dXRlKCJwbHVnaW5zcGFnZSIpOworCisgICAgQ2hyb21lQ2xpZW50KiBjbGllbnQgPSBwYWdlLT5j
aHJvbWUoKS0+Y2xpZW50KCk7CisgICAgY2xpZW50LT5taXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tl
ZChzZXJ2aWNlVHlwZSgpLCBwbHVnaW5QYWdlVVJMKTsKKworICAgIHJldHVybiAwOworfQorCiB2
b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkK
IHsKICAgICAvLyBGaXJlZm94IHNlZW1zIHRvIHVzZSBhIGZha2UgZXZlbnQgbGlzdGVuZXIgdG8g
ZGlzcGF0Y2ggZXZlbnRzIHRvIHBsdWctaW4gKHRlc3RlZCB3aXRoIG1vdXNlIGV2ZW50cyBvbmx5
KS4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oIGIvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgKaW5kZXggY2ZhYmMwMS4uNTQ2NWU1ZiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgKKysrIGIvV2ViQ29yZS9odG1s
L0hUTUxQbHVnSW5FbGVtZW50LmgKQEAgLTU0LDcgKzU0LDEwIEBAIHByb3RlY3RlZDoKICAgICB2
aXJ0dWFsIGJvb2wgbWFwVG9FbnRyeShjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyTmFtZSwgTWFw
cGVkQXR0cmlidXRlRW50cnkmIHJlc3VsdCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHBhcnNl
TWFwcGVkQXR0cmlidXRlKEF0dHJpYnV0ZSopOwogCisgICAgdmlydHVhbCBTdHJpbmcgc2Vydmlj
ZVR5cGUoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQorCiBwcml2YXRlOgorICAgIHZpcnR1
YWwgdm9pZCogcHJlRGlzcGF0Y2hFdmVudEhhbmRsZXIoRXZlbnQqKTsKICAgICB2aXJ0dWFsIHZv
aWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCopOwogCiAgICAgdmlydHVhbCBSZW5kZXJXaWRn
ZXQqIHJlbmRlcldpZGdldEZvckpTQmluZGluZ3MoKSBjb25zdCA9IDA7CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oIGIvV2ViQ29yZS9odG1sL0hUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQuaAppbmRleCA2ZjhkMzA1Li5iNTliNjkwIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRtbC9I
VE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgKQEAgLTMwLDcgKzMwLDcgQEAgY2xhc3MgSFRNTEltYWdl
TG9hZGVyOwogCiBjbGFzcyBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50IDogcHVibGljIEhUTUxQbHVn
SW5FbGVtZW50IHsKIHB1YmxpYzoKLSAgICBjb25zdCBTdHJpbmcmIHNlcnZpY2VUeXBlKCkgY29u
c3QgeyByZXR1cm4gbV9zZXJ2aWNlVHlwZTsgfQorICAgIHZpcnR1YWwgU3RyaW5nIHNlcnZpY2VU
eXBlKCkgY29uc3QgeyByZXR1cm4gbV9zZXJ2aWNlVHlwZTsgfQogICAgIGNvbnN0IFN0cmluZyYg
dXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KIAogcHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oIGIvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5o
CmluZGV4IGM5M2IzYzkuLjA5N2FiYjUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9DaHJvbWVD
bGllbnQuaAorKysgYi9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50LmgKQEAgLTE0Miw2ICsxNDIs
NyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIEVuZCBtZXRob2RzIHVzZWQgYnkg
SG9zdFdpbmRvdy4KIAogICAgICAgICB2aXJ0dWFsIHZvaWQgc2Nyb2xsYmFyc01vZGVEaWRDaGFu
Z2UoKSBjb25zdCA9IDA7CisgICAgICAgIHZpcnR1YWwgdm9pZCBtaXNzaW5nUGx1Z2luQnV0dG9u
Q2xpY2tlZChjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKSBjb25zdCB7IH0KICAgICAgICAg
dmlydHVhbCB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IEhpdFRlc3RSZXN1bHQm
LCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSA9IDA7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIHNl
dFRvb2xUaXAoY29uc3QgU3RyaW5nJiwgVGV4dERpcmVjdGlvbikgPSAwOwpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwIGIvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwCmluZGV4IDdhYjEyYTEuLjNkNjU3NWMgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcAorKysg
Yi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAKQEAgLTY3LDYgKzY3
LDcgQEAgc3RhdGljIGNvbnN0IGZsb2F0IHJlcGxhY2VtZW50VGV4dFRleHRPcGFjaXR5ID0gMC41
NWY7CiBSZW5kZXJFbWJlZGRlZE9iamVjdDo6UmVuZGVyRW1iZWRkZWRPYmplY3QoRWxlbWVudCog
ZWxlbWVudCkKICAgICA6IFJlbmRlclBhcnQoZWxlbWVudCkKICAgICAsIG1faGFzRmFsbGJhY2tD
b250ZW50KGZhbHNlKQorICAgICwgbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IoZmFsc2Up
CiB7CiAgICAgdmlldygpLT5mcmFtZVZpZXcoKS0+c2V0SXNWaXN1YWxseU5vbkVtcHR5KCk7CiB9
CkBAIC0zNDQsMTEgKzM0NSwxNCBAQCB2b2lkIFJlbmRlckVtYmVkZGVkT2JqZWN0Ojp1cGRhdGVX
aWRnZXQoYm9vbCBvbmx5Q3JlYXRlTm9uTmV0c2NhcGVQbHVnaW5zKQogCiB2b2lkIFJlbmRlckVt
YmVkZGVkT2JqZWN0OjpzZXRTaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IoKQogeworICAgIEFT
U0VSVChtX3JlcGxhY2VtZW50VGV4dC5pc0VtcHR5KCkpOwogICAgIG1fcmVwbGFjZW1lbnRUZXh0
ID0gbWlzc2luZ1BsdWdpblRleHQoKTsKKyAgICBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRv
ciA9IHRydWU7CiB9CiAKIHZvaWQgUmVuZGVyRW1iZWRkZWRPYmplY3Q6OnNldFNob3dzQ3Jhc2hl
ZFBsdWdpbkluZGljYXRvcigpCiB7CisgICAgQVNTRVJUKG1fcmVwbGFjZW1lbnRUZXh0LmlzRW1w
dHkoKSk7CiAgICAgbV9yZXBsYWNlbWVudFRleHQgPSBjcmFzaGVkUGx1Z2luVGV4dCgpOwogfQog
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5oIGIv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuaAppbmRleCBiNjgxMDhkLi5i
ZmI3Yjk2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVj
dC5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmgKQEAgLTM3
LDYgKzM3LDcgQEAgcHVibGljOgogICAgIHZvaWQgdXBkYXRlV2lkZ2V0KGJvb2wgb25seUNyZWF0
ZU5vbk5ldHNjYXBlUGx1Z2lucyk7CiAgICAgdm9pZCBzZXRTaG93c01pc3NpbmdQbHVnaW5JbmRp
Y2F0b3IoKTsKICAgICB2b2lkIHNldFNob3dzQ3Jhc2hlZFBsdWdpbkluZGljYXRvcigpOworICAg
IGJvb2wgc2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKCkgY29uc3QgeyByZXR1cm4gbV9zaG93
c01pc3NpbmdQbHVnaW5JbmRpY2F0b3I7IH0KIAogICAgIGJvb2wgaGFzRmFsbGJhY2tDb250ZW50
KCkgY29uc3QgeyByZXR1cm4gbV9oYXNGYWxsYmFja0NvbnRlbnQ7IH0KIApAQCAtNjAsNiArNjEs
NyBAQCBwcml2YXRlOgogCiAgICAgU3RyaW5nIG1fcmVwbGFjZW1lbnRUZXh0OwogICAgIGJvb2wg
bV9oYXNGYWxsYmFja0NvbnRlbnQ7CisgICAgYm9vbCBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGlj
YXRvcjsKIH07CiAKIGlubGluZSBSZW5kZXJFbWJlZGRlZE9iamVjdCogdG9SZW5kZXJFbWJlZGRl
ZE9iamVjdChSZW5kZXJPYmplY3QqIG9iamVjdCkKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hh
bmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggYjc0OGVmYy4uMDhjOGExMSAxMDA2
NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyNCBAQAorMjAxMC0wNy0wMiAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1dHRA
YXBwbGUuY29tPgorCisgICAgICAgIFRoZSBtaXNzaW5nIHBsdWctaW4gaW5kaWNhdG9yIHNob3Vs
ZCBiZSBjbGlja2FibGUKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDE1NTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgxMzIxNjI+CisKKyAgICAg
ICAgRnJvbSBhbiBvcmlnaW5hbCBwYXRjaCBieSBLZXZpbiBEZWNrZXIuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuaDoKKyAgICAgICAgRGVjbGFyZSBhbiBvdmVycmlkZSBvZiBtaXNzaW5nUGx1
Z2luQnV0dG9uQ2xpY2tlZCgpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lm1tOgorICAgICAgICAoV2ViQ2hyb21lQ2xpZW50OjptaXNzaW5nUGx1Z2luQnV0dG9u
Q2xpY2tlZCk6CisgICAgICAgIENhbGwgdGhlIFVJIGRlbGVnYXRlJ3MgbWlzc2luZ1BsdWdpbkNs
aWNrZWQgZnVuY3Rpb24uCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRl
Lmg6CisgICAgICAgIERlY2xhcmUgZGlkUHJlc3NNaXNzaW5nUGx1Z2luQnV0dG9uLgorCiAyMDEw
LTA2LTI5ICBab2x0YW4gSGVyY3plZyAgPHpoZXJjemVnQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgTmlrb2xhcyBaaW1tZXJtYW5uLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaCBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggN2RlZWE3OS4uNDM5N2FiNyAxMDA2NDQKLS0tIGEv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9XZWJLaXQv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0xMDUsNiArMTA1LDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdlYkNvcmU6
OlN0cmluZyYpOwogCiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkg
Y29uc3QgeyB9CisgICAgdmlydHVhbCB2b2lkIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKGNv
bnN0IFdlYkNvcmU6OlN0cmluZyYsIGNvbnN0IFdlYkNvcmU6OlN0cmluZyYpIGNvbnN0OwogICAg
IHZpcnR1YWwgdm9pZCBtb3VzZURpZE1vdmVPdmVyRWxlbWVudChjb25zdCBXZWJDb3JlOjpIaXRU
ZXN0UmVzdWx0JiwgdW5zaWduZWQgbW9kaWZpZXJGbGFncyk7CiAKICAgICB2aXJ0dWFsIHZvaWQg
c2V0VG9vbFRpcChjb25zdCBXZWJDb3JlOjpTdHJpbmcmLCBXZWJDb3JlOjpUZXh0RGlyZWN0aW9u
KTsKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
Lm1tIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQubW0KaW5kZXgg
MGE1MmE5Zi4uYTMwN2YyOCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQubW0KKysrIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQubW0KQEAgLTUxNiw2ICs1MTYsMTEgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OnNj
cm9sbFJlY3RJbnRvVmlldyhjb25zdCBJbnRSZWN0JiByLCBjb25zdCBTY3JvbGxWaWV3KikgY28K
IAogLy8gRW5kIGhvc3Qgd2luZG93IG1ldGhvZHMuCiAKK3ZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpt
aXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tlZChjb25zdCBTdHJpbmcmIHNlcnZpY2VUeXBlLCBjb25z
dCBTdHJpbmcmIHBsdWdpblBhZ2VVUkwpIGNvbnN0Cit7CisgICAgQ2FsbFVJRGVsZWdhdGUobV93
ZWJWaWV3LCBAc2VsZWN0b3Iod2ViVmlldzptaXNzaW5nUGx1Z2luQ2xpY2tlZDpwbHVnaW5QYWdl
VVJMOiksIHNlcnZpY2VUeXBlLCBwbHVnaW5QYWdlVVJMKTsKK30KKwogdm9pZCBXZWJDaHJvbWVD
bGllbnQ6Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IEhpdFRlc3RSZXN1bHQmIHJlc3Vs
dCwgdW5zaWduZWQgbW9kaWZpZXJGbGFncykKIHsKICAgICBXZWJFbGVtZW50RGljdGlvbmFyeSAq
ZWxlbWVudCA9IFtbV2ViRWxlbWVudERpY3Rpb25hcnkgYWxsb2NdIGluaXRXaXRoSGl0VGVzdFJl
c3VsdDpyZXN1bHRdOwpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdh
dGVQcml2YXRlLmggYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaApp
bmRleCAzMjdhNzQ1Li4zOGU5ZjM0IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
VUlEZWxlZ2F0ZVByaXZhdGUuaAorKysgYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0
ZVByaXZhdGUuaApAQCAtMTE1LDYgKzExNSw3IEBAIGVudW0gewogLSAodm9pZCl3ZWJWaWV3OihX
ZWJWaWV3ICopc2VuZGVyIGNvbnRleHRNZW51SXRlbVNlbGVjdGVkOihOU01lbnVJdGVtICopaXRl
bSBmb3JFbGVtZW50OihOU0RpY3Rpb25hcnkgKillbGVtZW50OwogLSAodm9pZCl3ZWJWaWV3OihX
ZWJWaWV3ICopc2VuZGVyIHNhdmVGcmFtZVZpZXc6KFdlYkZyYW1lVmlldyAqKWZyYW1lVmlldyBz
aG93aW5nUGFuZWw6KEJPT0wpc2hvd2luZ1BhbmVsOwogLSAoQk9PTCl3ZWJWaWV3OihXZWJWaWV3
ICopc2VuZGVyIHNob3VsZEhhbHRQbHVnaW46KERPTU5vZGUgKilwbHVnaW5Ob2RlIGlzV2luZG93
ZWQ6KEJPT0wpaXNXaW5kb3dlZCBwbHVnaW5OYW1lOihOU1N0cmluZyAqKXBsdWdpbk5hbWU7Cist
IChCT09MKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgZGlkUHJlc3NNaXNzaW5nUGx1Z2luQnV0
dG9uOihOU1N0cmluZyAqKW1pbWVUeXBlIHBsdWdpblBhZ2VVUkw6KE5TU3RyaW5nICopcGx1Z2lu
UGFnZVVSTDsKIC8qIQogICAgIEBtZXRob2Qgd2ViVmlldzpmcmFtZTpleGNlZWRlZERhdGFiYXNl
UXVvdGFGb3JTZWN1cml0eU9yaWdpbjpkYXRhYmFzZToKICAgICBAcGFyYW0gc2VuZGVyIFRoZSBX
ZWJWaWV3IHNlbmRpbmcgdGhlIGRlbGVnYXRlIG1ldGhvZC4KZGlmZiAtLWdpdCBhL1dlYktpdC93
aW4vQ2hhbmdlTG9nIGIvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggMThmMmQ3My4uZWM0NmY3
MCAxMDA2NDQKLS0tIGEvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3dpbi9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyOSBAQAorMjAxMC0wNy0wMiAgSm9uIEhvbmV5Y3V0dCAgPGpob25l
eWN1dHRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBtaXNzaW5nIHBsdWctaW4gaW5kaWNhdG9y
IHNob3VsZCBiZSBjbGlja2FibGUKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDE1NTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzgxMzIxNjI+CisK
KyAgICAgICAgRnJvbSBhbiBvcmlnaW5hbCBwYXRjaCBieSBLZXZpbiBEZWNrZXIuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBJbnRlcmZhY2VzL0lX
ZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGw6CisgICAgICAgIEFkZGVkIGEgbmV3IGRlbGVnYXRlIGlu
dGVyZmFjZSwgYW5kIGRlY2xhcmUgYSBmdW5jdGlvbgorICAgICAgICBkaWRQcmVzc01pc3NpbmdQ
bHVnaW5CdXR0b24oKS4KKworICAgICAgICAqIEludGVyZmFjZXMvV2ViS2l0LmlkbDoKKyAgICAg
ICAgVG91Y2ggdGhpcyBmaWxlIHRvIGZvcmNlIGludGVyZmFjZXMgdG8gYmUgcmVidWlsdC4KKwor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAgIChX
ZWJDaHJvbWVDbGllbnQ6Om1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKToKKyAgICAgICAgR2V0
IHRoZSBVSSBkZWxlZ2F0ZSwgYW5kIHF1ZXJ5IGl0IGZvciBJV2ViVUlEZWxlZ2F0ZVByaXZhdGUz
LiBDYWxsIGl0cworICAgICAgICBkaWRQcmVzc01pc3NpbmdQbHVnaW5CdXR0b24oKSBmdW5jdGlv
bi4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oOgorICAgICAg
ICBEZWNsYXJlIGFuIG92ZXJyaWRlIG9mIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKCkuCisK
IDIwMTAtMDYtMjEgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBVbnJldmlld2VkLCBXaW5kb3dzIGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1dlYktpdC93aW4v
SW50ZXJmYWNlcy9JV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaWRsIGIvV2ViS2l0L3dpbi9JbnRlcmZh
Y2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGwKaW5kZXggMjE1YzQyNy4uMmM3YWUzOCAxMDA2
NDQKLS0tIGEvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGwK
KysrIGIvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGwKQEAg
LTk5LDMgKzk5LDE0IEBAIGludGVyZmFjZSBJV2ViVUlEZWxlZ2F0ZVByaXZhdGUyIDogSVdlYlVJ
RGVsZWdhdGVQcml2YXRlCiAKICAgICBIUkVTVUxUIGRlY2lkZVBvbGljeUZvckdlb2xvY2F0aW9u
UmVxdWVzdChbaW5dIElXZWJWaWV3KiBzZW5kZXIsIFtpbl0gSVdlYkZyYW1lKiBmcmFtZSwgW2lu
XSBJV2ViU2VjdXJpdHlPcmlnaW4qIG9yaWdpbiwgW2luXSBJV2ViR2VvbG9jYXRpb25Qb2xpY3lM
aXN0ZW5lciogbGlzdGVuZXIpOwogfQorCitbCisgICAgb2JqZWN0LAorICAgIG9sZWF1dG9tYXRp
b24sCisgICAgdXVpZChlOTgzNDg5MS0yMzNiLTQ4YTAtOTg0Yi04ZjhhMTlhYmRkMGYpLAorICAg
IHBvaW50ZXJfZGVmYXVsdCh1bmlxdWUpCitdCitpbnRlcmZhY2UgSVdlYlVJRGVsZWdhdGVQcml2
YXRlMyA6IElXZWJVSURlbGVnYXRlUHJpdmF0ZTIKK3sKKyAgICBIUkVTVUxUIGRpZFByZXNzTWlz
c2luZ1BsdWdpbkJ1dHRvbihbaW5dIEJTVFIgbWltZVR5cGUsIFtpbl0gQlNUUiBwbHVnaW5zUGFn
ZVVSTCk7Cit9CmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL0ludGVyZmFjZXMvV2ViS2l0LmlkbCBi
L1dlYktpdC93aW4vSW50ZXJmYWNlcy9XZWJLaXQuaWRsCmluZGV4IDk4ZjVkYTguLmNlMmYyMTMg
MTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vSW50ZXJmYWNlcy9XZWJLaXQuaWRsCisrKyBiL1dlYktp
dC93aW4vSW50ZXJmYWNlcy9XZWJLaXQuaWRsCkBAIC0yMCw3ICsyMCw3IEBACiAgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCiAgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKICAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAogICovCiAKIGNwcF9xdW90ZSgiLyoiKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbi9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDU4NzYzN2YuLjQ3OTc0ZGMgMTAwNjQ0Ci0tLSBh
L1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9XZWJL
aXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTUzNCw2ICs1MzQs
MTkgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0
IEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgdW5zaWcKICAgICB1aURlbGVnYXRlLT5tb3VzZURpZE1v
dmVPdmVyRWxlbWVudChtX3dlYlZpZXcsIGVsZW1lbnQuZ2V0KCksIG1vZGlmaWVyRmxhZ3MpOwog
fQogCit2b2lkIFdlYkNocm9tZUNsaWVudDo6bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoY29u
c3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgU3RyaW5nJiBwbHVnaW5zUGFnZVVSTCkgY29uc3QK
K3sKKyAgICBDT01QdHI8SVdlYlVJRGVsZWdhdGU+IHVpRGVsZWdhdGU7CisgICAgaWYgKEZBSUxF
RChtX3dlYlZpZXctPnVpRGVsZWdhdGUoJnVpRGVsZWdhdGUpKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgQ09NUHRyPElXZWJVSURlbGVnYXRlUHJpdmF0ZTM+IHVpRGVsZWdhdGVQcml2YXRlMyhR
dWVyeSwgdWlEZWxlZ2F0ZSk7CisgICAgaWYgKCF1aURlbGVnYXRlUHJpdmF0ZTMpCisgICAgICAg
IHJldHVybjsKKworICAgIHVpRGVsZWdhdGVQcml2YXRlMy0+ZGlkUHJlc3NNaXNzaW5nUGx1Z2lu
QnV0dG9uKEJTdHJpbmcobWltZVR5cGUpLCBCU3RyaW5nKHBsdWdpbnNQYWdlVVJMKSk7Cit9CisK
IHZvaWQgV2ViQ2hyb21lQ2xpZW50OjpzZXRUb29sVGlwKGNvbnN0IFN0cmluZyYgdG9vbFRpcCwg
VGV4dERpcmVjdGlvbikKIHsKICAgICBtX3dlYlZpZXctPnNldFRvb2xUaXAodG9vbFRpcCk7CmRp
ZmYgLS1naXQgYS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oIGIv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAppbmRleCA2OTU0ZmRl
Li43ZTU4Mjk5IDEwMDY0NAotLS0gYS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oCisrKyBiL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmgKQEAgLTEwNSw2ICsxMDUsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIHZvaWQgc2Nyb2xs
YmFyc01vZGVEaWRDaGFuZ2UoKSBjb25zdCB7IH0KICAgICB2aXJ0dWFsIHZvaWQgbW91c2VEaWRN
b3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1v
ZGlmaWVyRmxhZ3MpOworICAgIHZpcnR1YWwgdm9pZCBtaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tl
ZChjb25zdCBXZWJDb3JlOjpTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBXZWJDb3JlOjpTdHJpbmcm
IHBsdWdpbnNQYWdlVVJMKSBjb25zdDsKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRUb29sVGlwKGNv
bnN0IFdlYkNvcmU6OlN0cmluZyYsIFdlYkNvcmU6OlRleHREaXJlY3Rpb24pOwogCi0tIAoxLjYu
NS4yLjE0My5nOGNjNjIKCg==
</data>
<flag name="review"
          id="47903"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60446</attachid>
            <date>2010-07-03 04:14:40 -0700</date>
            <delta_ts>2010-07-03 10:43:22 -0700</delta_ts>
            <desc>patch v2</desc>
            <filename>0001-The-missing-plug-in-indicator-should-be-clickable.patch</filename>
            <type>text/plain</type>
            <size>16001</size>
            <attacher name="Jon Honeycutt">jhoneycutt</attacher>
            
              <data encoding="base64">RnJvbSAxNDg1MjdhY2U1NTRmMGIwMGY3MWJlNDBmMjVkZWU3NTg4Yzc2YTVmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gSG9uZXljdXR0IDxqaG9uZXljdXR0QGFwcGxlLmNvbT4K
RGF0ZTogU2F0LCAzIEp1bCAyMDEwIDAzOjU1OjA5IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gVGhl
IG1pc3NpbmcgcGx1Zy1pbiBpbmRpY2F0b3Igc2hvdWxkIGJlIGNsaWNrYWJsZQoKaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNTUwCjxyZGFyOi8vcHJvYmxlbS84MTMy
MTYyPgoKRnJvbSBhbiBvcmlnaW5hbCBwYXRjaCBieSBLZXZpbiBEZWNrZXIuCgpSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KCldlYkNvcmU6CgoqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3Bw
OgooV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgpJZiB0
aGUgcmVuZGVyZXIgaXMgYSBSZW5kZXJFbWJlZGRlZFdpZGdldCBzaG93aW5nIHRoZSBtaXNzaW5n
IHBsdWctaW4KaW5kaWNhdG9yLCBhbmQgdGhlIGV2ZW50IGlzIGEgY2xpY2sgZXZlbiwgY2FsbCB0
aGUgQ2hyb21lQ2xpZW50J3MKbWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoKSBmdW5jdGlvbi4K
CiogcGFnZS9DaHJvbWVDbGllbnQuaDoKKFdlYkNvcmU6OkNocm9tZUNsaWVudDo6bWlzc2luZ1Bs
dWdpbkJ1dHRvbkNsaWNrZWQpOgpEZWNsYXJlIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKCks
IGFuZCBzdHViIHRoZSBkZWZhdWx0CmltcGxlbWVudGF0aW9uLgoKKiByZW5kZXJpbmcvUmVuZGVy
RW1iZWRkZWRPYmplY3QuY3BwOgooV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmplY3Q6OlJlbmRl
ckVtYmVkZGVkT2JqZWN0KToKSW5pdGlhbGl6ZSBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRv
ci4KKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2JqZWN0OjpzZXRTaG93c01pc3NpbmdQbHVnaW5J
bmRpY2F0b3IpOgpBc3NlcnQgdGhhdCB3ZSdyZSBub3QgY3VycmVudGx5IHNob3dpbmcgYW55IHJl
cGxhY2VtZW50IHRleHQuIFNldAptX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvciBhZnRlciBz
ZXR0aW5nIHRoZSByZXBsYWNlbWVudCB0ZXh0LgooV2ViQ29yZTo6UmVuZGVyRW1iZWRkZWRPYmpl
Y3Q6OnNldFNob3dzQ3Jhc2hlZFBsdWdpbkluZGljYXRvcik6CkFkZCB0aGUgc2FtZSBhc3NlcnQg
YXMgYWJvdmUuCgoqIHJlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5oOgooV2ViQ29yZTo6
UmVuZGVyRW1iZWRkZWRPYmplY3Q6OnNob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvcik6CkdldHRl
ciBmb3IgbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IuCgpXZWJLaXQvbWFjOgoKKiBXZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKRGVjbGFyZSBhbiBvdmVycmlkZSBvZiBtaXNz
aW5nUGx1Z2luQnV0dG9uQ2xpY2tlZCgpLgoKKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQubW06CihXZWJDaHJvbWVDbGllbnQ6Om1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKToKQ2Fs
bCB0aGUgVUlEZWxlZ2F0ZSdzIG1ldGhvZC4KCiogV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0
ZS5oOgpEZWNsYXJlIGRpZFByZXNzTWlzc2luZ1BsdWdpbkJ1dHRvbi4KCldlYktpdC93aW46Cgoq
IEludGVyZmFjZXMvSVdlYlVJRGVsZWdhdGVQcml2YXRlLmlkbDoKQWRkZWQgYSBuZXcgZGVsZWdh
dGUgaW50ZXJmYWNlLCBhbmQgZGVjbGFyZSBhIGZ1bmN0aW9uCmRpZFByZXNzTWlzc2luZ1BsdWdp
bkJ1dHRvbigpLgoKKiBJbnRlcmZhY2VzL1dlYktpdC5pZGw6ClRvdWNoIHRoaXMgZmlsZSB0byBm
b3JjZSBpbnRlcmZhY2VzIHRvIGJlIHJlYnVpbHQuCgoqIFdlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHA6CihXZWJDaHJvbWVDbGllbnQ6Om1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2Vk
KToKR2V0IHRoZSBVSSBkZWxlZ2F0ZSwgYW5kIHF1ZXJ5IGl0IGZvciBJV2ViVUlEZWxlZ2F0ZVBy
aXZhdGUzLiBDYWxsIGl0cwpkaWRQcmVzc01pc3NpbmdQbHVnaW5CdXR0b24oKSBmdW5jdGlvbi4K
CiogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lmg6CkRlY2xhcmUgYW4gb3ZlcnJpZGUg
b2YgbWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoKS4KLS0tCiBXZWJDb3JlL0NoYW5nZUxvZyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMzUgKysrKysrKysrKysrKysrKysrKysr
KysKIFdlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAgICAgICAgICAgICAgIHwgICAx
NyArKysrKysrKysrKwogV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oICAgICAgICAgICAgICAg
ICAgICAgfCAgICAyICsKIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNw
cCAgICAgIHwgICAgNCArKwogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3Qu
aCAgICAgICAgfCAgICAyICsKIFdlYktpdC9tYWMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwgICAyMSArKysrKysrKysrKysrCiBXZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5oICAgICB8ICAgIDEgKwogV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQubW0gICAgfCAgICA1ICsrKwogV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlVJRGVsZWdhdGVQcml2YXRlLmggICAgICAgfCAgICAxICsKIFdlYktpdC93aW4vQ2hhbmdlTG9n
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyNiArKysrKysrKysrKysrKysrKwogV2Vi
S2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGwgfCAgIDExICsrKysr
KysKIFdlYktpdC93aW4vSW50ZXJmYWNlcy9XZWJLaXQuaWRsICAgICAgICAgICAgICAgIHwgICAg
MiArLQogV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwICAgfCAg
IDE1ICsrKysrKysrKysKIFdlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmggICAgIHwgICAgMSArCiAxNCBmaWxlcyBjaGFuZ2VkLCAxNDIgaW5zZXJ0aW9ucygrKSwgMSBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGQ4ZGRhOTkuLmMxZTFkZjYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzggQEAKKzIwMTAtMDctMDMg
IEpvbiBIb25leWN1dHQgIDxqaG9uZXljdXR0QGFwcGxlLmNvbT4KKworICAgICAgICBUaGUgbWlz
c2luZyBwbHVnLWluIGluZGljYXRvciBzaG91bGQgYmUgY2xpY2thYmxlCisKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNTUwCisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS84MTMyMTYyPgorCisgICAgICAgIEZyb20gYW4gb3JpZ2luYWwgcGF0Y2ggYnkg
S2V2aW4gRGVja2VyLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MUGx1Z0luRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CisgICAgICAgIElmIHRoZSBy
ZW5kZXJlciBpcyBhIFJlbmRlckVtYmVkZGVkV2lkZ2V0IHNob3dpbmcgdGhlIG1pc3NpbmcgcGx1
Zy1pbgorICAgICAgICBpbmRpY2F0b3IsIGFuZCB0aGUgZXZlbnQgaXMgYSBjbGljayBldmVuLCBj
YWxsIHRoZSBDaHJvbWVDbGllbnQncworICAgICAgICBtaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tl
ZCgpIGZ1bmN0aW9uLgorCisgICAgICAgICogcGFnZS9DaHJvbWVDbGllbnQuaDoKKyAgICAgICAg
KFdlYkNvcmU6OkNocm9tZUNsaWVudDo6bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQpOgorICAg
ICAgICBEZWNsYXJlIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKCksIGFuZCBzdHViIHRoZSBk
ZWZhdWx0CisgICAgICAgIGltcGxlbWVudGF0aW9uLgorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlckVtYmVkZGVkT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVk
T2JqZWN0OjpSZW5kZXJFbWJlZGRlZE9iamVjdCk6CisgICAgICAgIEluaXRpYWxpemUgbV9zaG93
c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRl
ZE9iamVjdDo6c2V0U2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKToKKyAgICAgICAgQXNzZXJ0
IHRoYXQgd2UncmUgbm90IGN1cnJlbnRseSBzaG93aW5nIGFueSByZXBsYWNlbWVudCB0ZXh0LiBT
ZXQKKyAgICAgICAgbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IgYWZ0ZXIgc2V0dGluZyB0
aGUgcmVwbGFjZW1lbnQgdGV4dC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpzZXRTaG93c0NyYXNoZWRQbHVnaW5JbmRpY2F0b3IpOgorICAgICAgICBBZGQgdGhlIHNh
bWUgYXNzZXJ0IGFzIGFib3ZlLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVk
T2JqZWN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJFbWJlZGRlZE9iamVjdDo6c2hvd3NN
aXNzaW5nUGx1Z2luSW5kaWNhdG9yKToKKyAgICAgICAgR2V0dGVyIGZvciBtX3Nob3dzTWlzc2lu
Z1BsdWdpbkluZGljYXRvci4KKwogMjAxMC0wNy0wMiAgS3dhbmcgWXVsIFNlbyAgPHNreXVsQGNv
bXBhbnkxMDAubmV0PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3Yu
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwIGIvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcAppbmRleCA3NjQ1NTIyLi45OTMxYjY2IDEwMDY0
NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUv
aHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAKQEAgLTI0LDYgKzI0LDggQEAKICNpbmNsdWRlICJI
VE1MUGx1Z0luRWxlbWVudC5oIgogCiAjaW5jbHVkZSAiQXR0cmlidXRlLmgiCisjaW5jbHVkZSAi
Q2hyb21lLmgiCisjaW5jbHVkZSAiQ2hyb21lQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ1NTUHJvcGVy
dHlOYW1lcy5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKQEAg
LTMxLDYgKzMzLDcgQEAKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJIVE1MTmFt
ZXMuaCIKICNpbmNsdWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3Qu
aCIKICNpbmNsdWRlICJSZW5kZXJXaWRnZXQuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVy
LmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKQEAgLTEzOCw2ICsxNDEsMjAgQEAgdm9pZCBIVE1M
UGx1Z0luRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCogZXZlbnQpCiAgICAgLy8g
RklYTUU6IE1vdXNlIGRvd24gYW5kIHNjcm9sbCBldmVudHMgYXJlIHBhc3NlZCBkb3duIHRvIHBs
dWctaW4gdmlhIGN1c3RvbSBjb2RlIGluIEV2ZW50SGFuZGxlcjsgdGhlc2UgY29kZSBwYXRocyBz
aG91bGQgYmUgdW5pdGVkLgogCiAgICAgUmVuZGVyT2JqZWN0KiByID0gcmVuZGVyZXIoKTsKKyAg
ICBpZiAociAmJiByLT5pc0VtYmVkZGVkT2JqZWN0KCkgJiYgdG9SZW5kZXJFbWJlZGRlZE9iamVj
dChyKS0+c2hvd3NNaXNzaW5nUGx1Z2luSW5kaWNhdG9yKCkpIHsKKyAgICAgICAgaWYgKGV2ZW50
LT50eXBlKCkgIT0gZXZlbnROYW1lcygpLmNsaWNrRXZlbnQpCisgICAgICAgICAgICByZXR1cm47
CisKKyAgICAgICAgUGFnZSogcGFnZSA9IGRvY3VtZW50KCktPnBhZ2UoKTsKKyAgICAgICAgaWYg
KCFwYWdlKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIENocm9tZUNsaWVudCogY2xp
ZW50ID0gcGFnZS0+Y2hyb21lKCktPmNsaWVudCgpOworICAgICAgICBjbGllbnQtPm1pc3NpbmdQ
bHVnaW5CdXR0b25DbGlja2VkKHRoaXMpOworCisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAg
ICBpZiAoIXIgfHwgIXItPmlzV2lkZ2V0KCkpCiAgICAgICAgIHJldHVybjsKICAgICBXaWRnZXQq
IHdpZGdldCA9IHRvUmVuZGVyV2lkZ2V0KHIpLT53aWRnZXQoKTsKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvcGFnZS9DaHJvbWVDbGllbnQuaCBiL1dlYkNvcmUvcGFnZS9DaHJvbWVDbGllbnQuaAppbmRl
eCBjOTNiM2M5Li5iZjIxMTYyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvQ2hyb21lQ2xpZW50
LmgKKysrIGIvV2ViQ29yZS9wYWdlL0Nocm9tZUNsaWVudC5oCkBAIC00Myw2ICs0Myw3IEBAIGNs
YXNzIE5TUmVzcG9uZGVyOwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgQXRvbWlj
U3RyaW5nOworICAgIGNsYXNzIEVsZW1lbnQ7CiAgICAgY2xhc3MgRmlsZUNob29zZXI7CiAgICAg
Y2xhc3MgRmxvYXRSZWN0OwogICAgIGNsYXNzIEZyYW1lOwpAQCAtMTQyLDYgKzE0Myw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgLy8gRW5kIG1ldGhvZHMgdXNlZCBieSBIb3N0V2lu
ZG93LgogCiAgICAgICAgIHZpcnR1YWwgdm9pZCBzY3JvbGxiYXJzTW9kZURpZENoYW5nZSgpIGNv
bnN0ID0gMDsKKyAgICAgICAgdmlydHVhbCB2b2lkIG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2Vk
KEVsZW1lbnQqKSBjb25zdCB7IH0KICAgICAgICAgdmlydHVhbCB2b2lkIG1vdXNlRGlkTW92ZU92
ZXJFbGVtZW50KGNvbnN0IEhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKSA9
IDA7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIHNldFRvb2xUaXAoY29uc3QgU3RyaW5nJiwgVGV4
dERpcmVjdGlvbikgPSAwOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1i
ZWRkZWRPYmplY3QuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3Qu
Y3BwCmluZGV4IDdhYjEyYTEuLjNkNjU3NWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcAorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJF
bWJlZGRlZE9iamVjdC5jcHAKQEAgLTY3LDYgKzY3LDcgQEAgc3RhdGljIGNvbnN0IGZsb2F0IHJl
cGxhY2VtZW50VGV4dFRleHRPcGFjaXR5ID0gMC41NWY7CiBSZW5kZXJFbWJlZGRlZE9iamVjdDo6
UmVuZGVyRW1iZWRkZWRPYmplY3QoRWxlbWVudCogZWxlbWVudCkKICAgICA6IFJlbmRlclBhcnQo
ZWxlbWVudCkKICAgICAsIG1faGFzRmFsbGJhY2tDb250ZW50KGZhbHNlKQorICAgICwgbV9zaG93
c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IoZmFsc2UpCiB7CiAgICAgdmlldygpLT5mcmFtZVZpZXco
KS0+c2V0SXNWaXN1YWxseU5vbkVtcHR5KCk7CiB9CkBAIC0zNDQsMTEgKzM0NSwxNCBAQCB2b2lk
IFJlbmRlckVtYmVkZGVkT2JqZWN0Ojp1cGRhdGVXaWRnZXQoYm9vbCBvbmx5Q3JlYXRlTm9uTmV0
c2NhcGVQbHVnaW5zKQogCiB2b2lkIFJlbmRlckVtYmVkZGVkT2JqZWN0OjpzZXRTaG93c01pc3Np
bmdQbHVnaW5JbmRpY2F0b3IoKQogeworICAgIEFTU0VSVChtX3JlcGxhY2VtZW50VGV4dC5pc0Vt
cHR5KCkpOwogICAgIG1fcmVwbGFjZW1lbnRUZXh0ID0gbWlzc2luZ1BsdWdpblRleHQoKTsKKyAg
ICBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvciA9IHRydWU7CiB9CiAKIHZvaWQgUmVuZGVy
RW1iZWRkZWRPYmplY3Q6OnNldFNob3dzQ3Jhc2hlZFBsdWdpbkluZGljYXRvcigpCiB7CisgICAg
QVNTRVJUKG1fcmVwbGFjZW1lbnRUZXh0LmlzRW1wdHkoKSk7CiAgICAgbV9yZXBsYWNlbWVudFRl
eHQgPSBjcmFzaGVkUGx1Z2luVGV4dCgpOwogfQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5oIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyRW1i
ZWRkZWRPYmplY3QuaAppbmRleCBiNjgxMDhkLi5iZmI3Yjk2IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5oCisrKyBiL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlckVtYmVkZGVkT2JqZWN0LmgKQEAgLTM3LDYgKzM3LDcgQEAgcHVibGljOgogICAgIHZv
aWQgdXBkYXRlV2lkZ2V0KGJvb2wgb25seUNyZWF0ZU5vbk5ldHNjYXBlUGx1Z2lucyk7CiAgICAg
dm9pZCBzZXRTaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3IoKTsKICAgICB2b2lkIHNldFNob3dz
Q3Jhc2hlZFBsdWdpbkluZGljYXRvcigpOworICAgIGJvb2wgc2hvd3NNaXNzaW5nUGx1Z2luSW5k
aWNhdG9yKCkgY29uc3QgeyByZXR1cm4gbV9zaG93c01pc3NpbmdQbHVnaW5JbmRpY2F0b3I7IH0K
IAogICAgIGJvb2wgaGFzRmFsbGJhY2tDb250ZW50KCkgY29uc3QgeyByZXR1cm4gbV9oYXNGYWxs
YmFja0NvbnRlbnQ7IH0KIApAQCAtNjAsNiArNjEsNyBAQCBwcml2YXRlOgogCiAgICAgU3RyaW5n
IG1fcmVwbGFjZW1lbnRUZXh0OwogICAgIGJvb2wgbV9oYXNGYWxsYmFja0NvbnRlbnQ7CisgICAg
Ym9vbCBtX3Nob3dzTWlzc2luZ1BsdWdpbkluZGljYXRvcjsKIH07CiAKIGlubGluZSBSZW5kZXJF
bWJlZGRlZE9iamVjdCogdG9SZW5kZXJFbWJlZGRlZE9iamVjdChSZW5kZXJPYmplY3QqIG9iamVj
dCkKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKaW5kZXggNTRhM2I2OS4uNmRhZjgxZiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMC0wNy0w
MyAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1dHRAYXBwbGUuY29tPgorCisgICAgICAgIFRoZSBt
aXNzaW5nIHBsdWctaW4gaW5kaWNhdG9yIHNob3VsZCBiZSBjbGlja2FibGUKKworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE1NTAKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzgxMzIxNjI+CisKKyAgICAgICAgRnJvbSBhbiBvcmlnaW5hbCBwYXRjaCBi
eSBLZXZpbiBEZWNrZXIuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaDoKKyAgICAgICAgRGVj
bGFyZSBhbiBvdmVycmlkZSBvZiBtaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tlZCgpLgorCisgICAg
ICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tOgorICAgICAgICAoV2ViQ2hy
b21lQ2xpZW50OjptaXNzaW5nUGx1Z2luQnV0dG9uQ2xpY2tlZCk6CisgICAgICAgIENhbGwgdGhl
IFVJRGVsZWdhdGUncyBtZXRob2QuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmg6CisgICAgICAgIERlY2xhcmUgZGlkUHJlc3NNaXNzaW5nUGx1Z2luQnV0dG9uLgor
CiAyMDEwLTA3LTAxICBUaW1vdGh5IEhhdGNoZXIgIDx0aW1vdGh5QGFwcGxlLmNvbT4KIAogICAg
ICAgICBQcm92aWRlIGEgV2ViVmlldyBwcmVmZXJlbmNlIHRvIGRpc2FibGUgRE5TIHByZWZldGNo
aW5nLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGll
bnQuaCBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXgg
N2RlZWE3OS4uNTU4N2E4ZCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuaAorKysgYi9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5oCkBAIC0xMDUsNiArMTA1LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBz
ZXRTdGF0dXNiYXJUZXh0KGNvbnN0IFdlYkNvcmU6OlN0cmluZyYpOwogCiAgICAgdmlydHVhbCB2
b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29uc3QgeyB9CisgICAgdmlydHVhbCB2b2lk
IG1pc3NpbmdQbHVnaW5CdXR0b25DbGlja2VkKFdlYkNvcmU6OkVsZW1lbnQqKSBjb25zdDsKICAg
ICB2aXJ0dWFsIHZvaWQgbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgV2ViQ29yZTo6SGl0
VGVzdFJlc3VsdCYsIHVuc2lnbmVkIG1vZGlmaWVyRmxhZ3MpOwogCiAgICAgdmlydHVhbCB2b2lk
IHNldFRvb2xUaXAoY29uc3QgV2ViQ29yZTo6U3RyaW5nJiwgV2ViQ29yZTo6VGV4dERpcmVjdGlv
bik7CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVu
dC5tbSBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50Lm1tCmluZGV4
IDBhNTJhOWYuLmU0MjZmMDUgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50Lm1tCisrKyBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50Lm1tCkBAIC01MTYsNiArNTE2LDExIEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpz
Y3JvbGxSZWN0SW50b1ZpZXcoY29uc3QgSW50UmVjdCYgciwgY29uc3QgU2Nyb2xsVmlldyopIGNv
CiAKIC8vIEVuZCBob3N0IHdpbmRvdyBtZXRob2RzLgogCit2b2lkIFdlYkNocm9tZUNsaWVudDo6
bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoRWxlbWVudCogZWxlbWVudCkgY29uc3QKK3sKKyAg
ICBDYWxsVUlEZWxlZ2F0ZShtX3dlYlZpZXcsIEBzZWxlY3Rvcih3ZWJWaWV3OmRpZFByZXNzTWlz
c2luZ1BsdWdpbkJ1dHRvbjopLCBraXQoZWxlbWVudCkpOworfQorCiB2b2lkIFdlYkNocm9tZUNs
aWVudDo6bW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQoY29uc3QgSGl0VGVzdFJlc3VsdCYgcmVzdWx0
LCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKQogewogICAgIFdlYkVsZW1lbnREaWN0aW9uYXJ5ICpl
bGVtZW50ID0gW1tXZWJFbGVtZW50RGljdGlvbmFyeSBhbGxvY10gaW5pdFdpdGhIaXRUZXN0UmVz
dWx0OnJlc3VsdF07CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0
ZVByaXZhdGUuaCBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCmlu
ZGV4IDMyN2E3NDUuLmVjY2IxMGYgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJV
SURlbGVnYXRlUHJpdmF0ZS5oCisrKyBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRl
UHJpdmF0ZS5oCkBAIC0xMTUsNiArMTE1LDcgQEAgZW51bSB7CiAtICh2b2lkKXdlYlZpZXc6KFdl
YlZpZXcgKilzZW5kZXIgY29udGV4dE1lbnVJdGVtU2VsZWN0ZWQ6KE5TTWVudUl0ZW0gKilpdGVt
IGZvckVsZW1lbnQ6KE5TRGljdGlvbmFyeSAqKWVsZW1lbnQ7CiAtICh2b2lkKXdlYlZpZXc6KFdl
YlZpZXcgKilzZW5kZXIgc2F2ZUZyYW1lVmlldzooV2ViRnJhbWVWaWV3ICopZnJhbWVWaWV3IHNo
b3dpbmdQYW5lbDooQk9PTClzaG93aW5nUGFuZWw7CiAtIChCT09MKXdlYlZpZXc6KFdlYlZpZXcg
KilzZW5kZXIgc2hvdWxkSGFsdFBsdWdpbjooRE9NTm9kZSAqKXBsdWdpbk5vZGUgaXNXaW5kb3dl
ZDooQk9PTClpc1dpbmRvd2VkIHBsdWdpbk5hbWU6KE5TU3RyaW5nICopcGx1Z2luTmFtZTsKKy0g
KEJPT0wpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciBkaWRQcmVzc01pc3NpbmdQbHVnaW5CdXR0
b246KERPTUVsZW1lbnQgKillbGVtZW50OwogLyohCiAgICAgQG1ldGhvZCB3ZWJWaWV3OmZyYW1l
OmV4Y2VlZGVkRGF0YWJhc2VRdW90YUZvclNlY3VyaXR5T3JpZ2luOmRhdGFiYXNlOgogICAgIEBw
YXJhbSBzZW5kZXIgVGhlIFdlYlZpZXcgc2VuZGluZyB0aGUgZGVsZWdhdGUgbWV0aG9kLgpkaWZm
IC0tZ2l0IGEvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9XZWJLaXQvd2luL0NoYW5nZUxvZwppbmRl
eCAzMDRmYjgwLi43YTJkNmNkIDEwMDY0NAotLS0gYS9XZWJLaXQvd2luL0NoYW5nZUxvZworKysg
Yi9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEwLTA3LTAzICBKb24g
SG9uZXljdXR0ICA8amhvbmV5Y3V0dEBhcHBsZS5jb20+CisKKyAgICAgICAgVGhlIG1pc3Npbmcg
cGx1Zy1pbiBpbmRpY2F0b3Igc2hvdWxkIGJlIGNsaWNrYWJsZQorCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTU1MAorICAgICAgICA8cmRhcjovL3By
b2JsZW0vODEzMjE2Mj4KKworICAgICAgICBGcm9tIGFuIG9yaWdpbmFsIHBhdGNoIGJ5IEtldmlu
IERlY2tlci4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIEludGVyZmFjZXMvSVdlYlVJRGVsZWdhdGVQcml2YXRlLmlkbDoKKyAgICAgICAgQWRkZWQg
YSBuZXcgZGVsZWdhdGUgaW50ZXJmYWNlLCBhbmQgZGVjbGFyZSBhIGZ1bmN0aW9uCisgICAgICAg
IGRpZFByZXNzTWlzc2luZ1BsdWdpbkJ1dHRvbigpLgorCisgICAgICAgICogSW50ZXJmYWNlcy9X
ZWJLaXQuaWRsOgorICAgICAgICBUb3VjaCB0aGlzIGZpbGUgdG8gZm9yY2UgaW50ZXJmYWNlcyB0
byBiZSByZWJ1aWx0LgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmNwcDoKKyAgICAgICAgKFdlYkNocm9tZUNsaWVudDo6bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNr
ZWQpOgorICAgICAgICBHZXQgdGhlIFVJIGRlbGVnYXRlLCBhbmQgcXVlcnkgaXQgZm9yIElXZWJV
SURlbGVnYXRlUHJpdmF0ZTMuIENhbGwgaXRzCisgICAgICAgIGRpZFByZXNzTWlzc2luZ1BsdWdp
bkJ1dHRvbigpIGZ1bmN0aW9uLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50Lmg6CisgICAgICAgIERlY2xhcmUgYW4gb3ZlcnJpZGUgb2YgbWlzc2luZ1BsdWdpbkJ1
dHRvbkNsaWNrZWQoKS4KKwogMjAxMC0wNy0wMSAgU3RldmUgRmFsa2VuYnVyZyAgPHNmYWxrZW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkZWxlIFBldGVyc29uLgpkaWZmIC0t
Z2l0IGEvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL0lXZWJVSURlbGVnYXRlUHJpdmF0ZS5pZGwgYi9X
ZWJLaXQvd2luL0ludGVyZmFjZXMvSVdlYlVJRGVsZWdhdGVQcml2YXRlLmlkbAppbmRleCAyMTVj
NDI3Li4xNDMxZGIyIDEwMDY0NAotLS0gYS9XZWJLaXQvd2luL0ludGVyZmFjZXMvSVdlYlVJRGVs
ZWdhdGVQcml2YXRlLmlkbAorKysgYi9XZWJLaXQvd2luL0ludGVyZmFjZXMvSVdlYlVJRGVsZWdh
dGVQcml2YXRlLmlkbApAQCAtOTksMyArOTksMTQgQEAgaW50ZXJmYWNlIElXZWJVSURlbGVnYXRl
UHJpdmF0ZTIgOiBJV2ViVUlEZWxlZ2F0ZVByaXZhdGUKIAogICAgIEhSRVNVTFQgZGVjaWRlUG9s
aWN5Rm9yR2VvbG9jYXRpb25SZXF1ZXN0KFtpbl0gSVdlYlZpZXcqIHNlbmRlciwgW2luXSBJV2Vi
RnJhbWUqIGZyYW1lLCBbaW5dIElXZWJTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBbaW5dIElXZWJH
ZW9sb2NhdGlvblBvbGljeUxpc3RlbmVyKiBsaXN0ZW5lcik7CiB9CisKK1sKKyAgICBvYmplY3Qs
CisgICAgb2xlYXV0b21hdGlvbiwKKyAgICB1dWlkKGU5ODM0ODkxLTIzM2ItNDhhMC05ODRiLThm
OGExOWFiZGQwZiksCisgICAgcG9pbnRlcl9kZWZhdWx0KHVuaXF1ZSkKK10KK2ludGVyZmFjZSBJ
V2ViVUlEZWxlZ2F0ZVByaXZhdGUzIDogSVdlYlVJRGVsZWdhdGVQcml2YXRlMgoreworICAgIEhS
RVNVTFQgZGlkUHJlc3NNaXNzaW5nUGx1Z2luQnV0dG9uKFtpbl0gSURPTUVsZW1lbnQqKTsKK30K
ZGlmZiAtLWdpdCBhL1dlYktpdC93aW4vSW50ZXJmYWNlcy9XZWJLaXQuaWRsIGIvV2ViS2l0L3dp
bi9JbnRlcmZhY2VzL1dlYktpdC5pZGwKaW5kZXggZDI1Y2RmZS4uODkzODUwMSAxMDA2NDQKLS0t
IGEvV2ViS2l0L3dpbi9JbnRlcmZhY2VzL1dlYktpdC5pZGwKKysrIGIvV2ViS2l0L3dpbi9JbnRl
cmZhY2VzL1dlYktpdC5pZGwKQEAgLTIwLDcgKzIwLDcgQEAKICAqIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKICAqIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAogICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCiAgKi8K
IAogY3BwX3F1b3RlKCIvKiIpCmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5jcHAgYi9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKaW5kZXggNTg3NjM3Zi4uZDQ1ZTEwYyAxMDA2NDQKLS0tIGEvV2ViS2l0L3dp
bi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1dlYktpdC93aW4vV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtMjgsNiArMjgsNyBAQAogCiAjaW5j
bHVkZSAiQ09NUHJvcGVydHlCYWcuaCIKICNpbmNsdWRlICJDT01WYXJpYW50U2V0dGVyLmgiCisj
aW5jbHVkZSAiRE9NQ29yZUNsYXNzZXMuaCIKICNpbmNsdWRlICJXZWJFbGVtZW50UHJvcGVydHlC
YWcuaCIKICNpbmNsdWRlICJXZWJGcmFtZS5oIgogI2luY2x1ZGUgIldlYkdlb2xvY2F0aW9uUG9s
aWN5TGlzdGVuZXIuaCIKQEAgLTUzNCw2ICs1MzUsMjAgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6
Om1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgdW5z
aWcKICAgICB1aURlbGVnYXRlLT5tb3VzZURpZE1vdmVPdmVyRWxlbWVudChtX3dlYlZpZXcsIGVs
ZW1lbnQuZ2V0KCksIG1vZGlmaWVyRmxhZ3MpOwogfQogCit2b2lkIFdlYkNocm9tZUNsaWVudDo6
bWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoRWxlbWVudCogZWxlbWVudCkgY29uc3QKK3sKKyAg
ICBDT01QdHI8SVdlYlVJRGVsZWdhdGU+IHVpRGVsZWdhdGU7CisgICAgaWYgKEZBSUxFRChtX3dl
YlZpZXctPnVpRGVsZWdhdGUoJnVpRGVsZWdhdGUpKSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
Q09NUHRyPElXZWJVSURlbGVnYXRlUHJpdmF0ZTM+IHVpRGVsZWdhdGVQcml2YXRlMyhRdWVyeSwg
dWlEZWxlZ2F0ZSk7CisgICAgaWYgKCF1aURlbGVnYXRlUHJpdmF0ZTMpCisgICAgICAgIHJldHVy
bjsKKworICAgIENPTVB0cjxJRE9NRWxlbWVudD4gZShBZG9wdENPTSwgRE9NRWxlbWVudDo6Y3Jl
YXRlSW5zdGFuY2UoZWxlbWVudCkpOworICAgIHVpRGVsZWdhdGVQcml2YXRlMy0+ZGlkUHJlc3NN
aXNzaW5nUGx1Z2luQnV0dG9uKGUuZ2V0KCkpOworfQorCiB2b2lkIFdlYkNocm9tZUNsaWVudDo6
c2V0VG9vbFRpcChjb25zdCBTdHJpbmcmIHRvb2xUaXAsIFRleHREaXJlY3Rpb24pCiB7CiAgICAg
bV93ZWJWaWV3LT5zZXRUb29sVGlwKHRvb2xUaXApOwpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbi9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaCBiL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViQ2hyb21lQ2xpZW50LmgKaW5kZXggNjk1NGZkZS4uYzhhOTQ1MSAxMDA2NDQKLS0tIGEv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuaAorKysgYi9XZWJLaXQv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5oCkBAIC0xMDUsNiArMTA1LDcgQEAg
cHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNjcm9sbGJhcnNNb2RlRGlkQ2hhbmdlKCkgY29u
c3QgeyB9CiAgICAgdmlydHVhbCB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50KGNvbnN0IFdl
YkNvcmU6OkhpdFRlc3RSZXN1bHQmLCB1bnNpZ25lZCBtb2RpZmllckZsYWdzKTsKKyAgICB2aXJ0
dWFsIHZvaWQgbWlzc2luZ1BsdWdpbkJ1dHRvbkNsaWNrZWQoV2ViQ29yZTo6RWxlbWVudCopIGNv
bnN0OwogCiAgICAgdmlydHVhbCB2b2lkIHNldFRvb2xUaXAoY29uc3QgV2ViQ29yZTo6U3RyaW5n
JiwgV2ViQ29yZTo6VGV4dERpcmVjdGlvbik7CiAKLS0gCjEuNi4yCgo=
</data>
<flag name="review"
          id="47948"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="47949"
          type_id="3"
          status="-"
          setter="jhoneycutt"
    />
          </attachment>
      

    </bug>

</bugzilla>