<?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>67190</bug_id>
          
          <creation_ts>2011-08-30 02:53:02 -0700</creation_ts>
          <short_desc>A Media Element ie: &lt;Audio&gt; or &lt;video&gt;,  without tabindex cannot be selected with keyboard (TAB Key).</short_desc>
          <delta_ts>2011-09-19 01:51:00 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://yves.vg/testcases/webkit/video.html</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>31786</blocked>
    
    <blocked>68341</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Deepak Sherveghar">bpwv64</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>hayato</cc>
    
    <cc>ian</cc>
    
    <cc>jer.noble</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>458805</commentid>
    <comment_count>0</comment_count>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-08-30 02:53:02 -0700</bug_when>
    <thetext>Filing a new bug as mentioned by Alexey Proskuryakov in bug : https://bugs.webkit.org/show_bug.cgi?id=31786 

Steps:
1. Go to the URL : http://yves.vg/testcases/webkit/video.html
2. Hit the TAB key to access a video or audio element without tab-index.

Expected Result:
Media element should be focused.

Since the W3C Draft categorizes video and audio in &quot;Interactive Content&quot;.
Link: http://www.w3.org/TR/html5/embedded-content-0.html#interactive-content</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458810</commentid>
    <comment_count>1</comment_count>
      <attachid>105605</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-08-30 03:00:55 -0700</bug_when>
    <thetext>Created attachment 105605
Proposed Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458812</commentid>
    <comment_count>2</comment_count>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-08-30 03:02:41 -0700</bug_when>
    <thetext>Override supportsfocus() and return true for HTMLMediaElement.
This is required to support focus for media elements without tab-index.
Media Elements like &lt;audio&gt; &lt;video&gt; should be focusable with keyboard (tab key) as per W3c Draft for Interactive Content video and audio.

Earlier even with spatial-navigation enabled (i.e. --enable-spatial-navigation=true), Media elements were not getting selected.
With this patch even that is working fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458815</commentid>
    <comment_count>3</comment_count>
      <attachid>105607</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-08-30 03:10:00 -0700</bug_when>
    <thetext>Created attachment 105607
updated Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458895</commentid>
    <comment_count>4</comment_count>
      <attachid>105607</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2011-08-30 07:45:55 -0700</bug_when>
    <thetext>Comment on attachment 105607
updated Patch.

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

&gt; Source/WebCore/html/HTMLMediaElement.cpp:227
&gt; +bool HTMLMediaElement::supportsFocus() const
&gt; +{
&gt; +    return true;
&gt; +}

This is not correct, the spec says a media element is only interactive when it has the &apos;controls&apos; attribute. From http://www.w3.org/TR/html5/embedded-content-0.html#interactive-content:

    Interactive content is content that is specifically intended for user interaction.

        =&gt; ... audio (if the controls attribute is present) ... video (if the controls attribute is present)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458941</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2011-08-30 09:12:29 -0700</bug_when>
    <thetext>Also, it&apos;s likely possible to make a regression test for this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>459436</commentid>
    <comment_count>6</comment_count>
    <who name="Ian &apos;Hixie&apos; Hickson">ian</who>
    <bug_when>2011-08-30 21:56:09 -0700</bug_when>
    <thetext>Whether something is &quot;interactive content&quot; or not has no bearing on whether it is focusable or not: the definition of focusable doesn&apos;t refer to whether something is &quot;interactive content&quot;:

   http://www.whatwg.org/specs/web-apps/current-work/complete.html#focusable

Whether something should be focusable or not is essentially up to the browser vendor (you). I would recommend making it possible to focus video controls if they are present, of course. But that&apos;s not a spec conformance matter, it&apos;s a usability matter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>461912</commentid>
    <comment_count>7</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-09-03 22:17:06 -0700</bug_when>
    <thetext>
&gt; Earlier even with spatial-navigation enabled (i.e. --enable-spatial-navigation=true), Media elements were not getting selected.
&gt; With this patch even that is working fine.

if we could add a spatial navigation test, it&apos;d be awesome.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>462143</commentid>
    <comment_count>8</comment_count>
      <attachid>106331</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-05 06:33:36 -0700</bug_when>
    <thetext>Created attachment 106331
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>462154</commentid>
    <comment_count>9</comment_count>
      <attachid>106331</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-09-05 07:18:27 -0700</bug_when>
    <thetext>Comment on attachment 106331
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        override supportsFocus for HTMLMediaElement.

*Override

&gt; Source/WebCore/ChangeLog:8
&gt; +        Test: accessibility/media-element-focus-tab.html

What about the spatial navigation test? :)

&gt; Source/WebCore/ChangeLog:10
&gt; +        return true from supportsFocus() if control&apos;s attribute is present or a tabindex is specified.

*Return</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>462156</commentid>
    <comment_count>10</comment_count>
      <attachid>106331</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-05 07:32:18 -0700</bug_when>
    <thetext>Comment on attachment 106331
Patch

Attachment 106331 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9595280

New failing tests:
fast/events/tabindex-focus-blur-all.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>462197</commentid>
    <comment_count>11</comment_count>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-05 11:21:06 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 106331 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=106331&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:3
&gt; &gt; +        override supportsFocus for HTMLMediaElement.
&gt; 
&gt; *Override

Ok :) 
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Test: accessibility/media-element-focus-tab.html
&gt; 
&gt; What about the spatial navigation test? :)

extremely sorry Antonio, have created it but forgot to submit with the patch :( .will submit a new patch along with your review comments incorporated.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:10
&gt; &gt; +        return true from supportsFocus() if control&apos;s attribute is present or a tabindex is specified.
&gt; 
&gt; *Return

Ok :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>462482</commentid>
    <comment_count>12</comment_count>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-06 06:38:18 -0700</bug_when>
    <thetext>Regarding the failing test-case : LayoutTests/fast/events/tabindex-focus-blur-all.html
Failing cases are as follows:
1. In LayoutTests/fast/events/resources/tabindex-focus-blur-all-frame1.html, Audio element without tab-index.
&lt;audio controls src=&quot;../../../media/content/test.wav&quot; id=&quot;audio1&quot;&gt;&lt;/audio&gt;&lt;br&gt;
2. In LayoutTests/fast/events/resources/tabindex-focus-blur-all-iframe2.html, Video element without tab-index.
&lt;video controls id=&quot;video4&quot;&gt;
  &lt;source src=&quot;../../../media/content/test.mp4&quot; type=&quot;video/mpeg&quot;id=&quot;source4&quot;&gt;
&lt;/video&gt;&lt;br&gt;

Test output for the above two element states that:
audio1 FAILED - was focused but focus wasn&apos;t expected
elemThatShouldFocus is null, focusedElem is &lt;AUDIO&gt; audio1

video4 FAILED - was focused but focus wasn&apos;t expected
elemThatShouldFocus is null, focusedElem is &lt;VIDEO&gt; video4

JS  LayoutTests/fast/events/resources/tabindex-focus-blur-all.js used in the test compares elem.tabIndex == elem.getAttribute(&quot;tabindex&quot;) to verify which element should be focused. In our case, media elements are focused as expected, but the above condition fails since no tab-index attribute is present on the media element and hence the FAILED messages. 

But media element should be focusable even though tab-index is not specified because control&apos;s attribute is present.

Not sure how to go about making this test case pass :( .
Any suggestions or pointers or approaches to resolve the above failing test case ???? 

On  a different note, I observed that without my patch, The expected results are little different.
ie: on my linux ubuntu machine with webkit GTK build, running the above test with DRT gave following output
===============================================================================
bpwv64@MIG-Workstation:~/projects/webkit_gtk/WebKit$ WebKitBuild/Debug/Programs/DumpRenderTree  LayoutTests/fast/events/tabindex-focus-blur-all.html
Gtk-Message: Failed to load module &quot;canberra-gtk-module&quot;
332 focus / 331 blur events dispatched, and should be 331 / 331 FAILED
Total of 0 focus test(s) failed. PASSED
#EOF
LEAK: 2889 WebCoreNode
LEAK: 2 CachedResource
bpwv64@MIG-Workstation:~/projects/webkit_gtk/WebKit$
===============================================================================</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>465475</commentid>
    <comment_count>13</comment_count>
    <who name="Hayato Ito">hayato</who>
    <bug_when>2011-09-11 21:12:18 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; 
&gt; But media element should be focusable even though tab-index is not specified because control&apos;s attribute is present.
&gt; 
&gt; Not sure how to go about making this test case pass :( .
&gt; Any suggestions or pointers or approaches to resolve the above failing test case ???? 

&gt; But media element should be focusable even though tab-index is not specified because control&apos;s attribute is present.

If your argument is right, the only way to pass the test is to update LayoutTests/fast/events/tabindex-focus-blur-all.html and the expected txt .
It looks that the test assumes media element should not be focusable if tab-index is not present, which conflicts this patch, doesn&apos;t it?

As Ian said, that&apos;s not a spec conformance matter, it&apos;s a usability matter, I guess.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466172</commentid>
    <comment_count>14</comment_count>
      <attachid>107149</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-13 00:28:22 -0700</bug_when>
    <thetext>Created attachment 107149
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466196</commentid>
    <comment_count>15</comment_count>
      <attachid>107149</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-13 01:54:25 -0700</bug_when>
    <thetext>Comment on attachment 107149
Updated patch

Attachment 107149 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/9657051

New failing tests:
fast/events/tabindex-focus-blur-all.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466218</commentid>
    <comment_count>16</comment_count>
      <attachid>107160</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-13 02:56:58 -0700</bug_when>
    <thetext>Created attachment 107160
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466273</commentid>
    <comment_count>17</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-09-13 07:02:01 -0700</bug_when>
    <thetext>Patch looks good to me, but since it would be changing a general behavior of all webkit based browsers (and according to the spec it is app to the UA to implement that or not), we could have a discussion in webkit-dev mailing list first.

Well, at least that would be my way of approaching the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>466966</commentid>
    <comment_count>18</comment_count>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-14 04:14:04 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; Patch looks good to me, but since it would be changing a general behavior of all webkit based browsers (and according to the spec it is app to the UA to implement that or not), we could have a discussion in webkit-dev mailing list first.
&gt; 
&gt; Well, at least that would be my way of approaching the problem.

Agreed.
Done. https://lists.webkit.org/pipermail/webkit-dev/2011-September/017957.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467087</commentid>
    <comment_count>19</comment_count>
      <attachid>107160</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-09-14 09:50:13 -0700</bug_when>
    <thetext>Comment on attachment 107160
Updated patch

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

&gt; LayoutTests/fast/events/media-element-focus-tab.html:1
&gt; +&lt;p&gt;This tests that a media element ie: &lt;code&gt;&amp;lt;Audio&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;video&amp;gt;&lt;/code&gt;, without tabindex can be selected with keyboard (TAB Key)&lt;/p&gt;

no DOCTYPE, html , &amp; body?

&gt; LayoutTests/fast/events/media-element-focus-tab.html:45
&gt; +        document.getElementById(&quot;console&quot;).innerHTML +=  mediaFocusedMsg + &quot; TEST: &quot; + fieldId + &quot;.\n&quot;;

Nit: two spaces after +=.

&gt; LayoutTests/fast/events/media-element-focus-tab.html:54
&gt; +test(&quot;WithTabIndexVideo&quot;, &quot;SUCCESS: Tab-Key did tab to the Media Element (video1).&quot;, &quot;FAIL: Tab-Key did not tab to the Media Element (video1).&quot;);
&gt; +test(&quot;WithoutTabIndexVideo&quot;, &quot;SUCCESS: Tab-Key did tab to the Media Element (video2).&quot;, &quot;FAIL: Tab-Key did not tab to the Media Element (video2).&quot;);
&gt; +test(&quot;WithoutControlsButWithTabIndexVideo&quot;, &quot;SUCCESS: Tab-Key did tab to the Media Element (video3).&quot;, &quot;FAIL: Tab-Key did not tab to the Media Element (video3).&quot;);
&gt; +test(&quot;WithoutTabIndexAudio&quot;, &quot;SUCCESS: Tab-Key did tab to the Media Element (audio1).&quot;, &quot;FAIL: Tab-Key did not tab to the Media Element (audio1).&quot;);
&gt; +test(&quot;WithoutControlaAndTabIndexAudio&quot;, &quot;FAIL: Tab-Key did tab to the Media Element (audio2).&quot;, &quot;SUCCESS: Tab-Key did not tab to the Media Element (audio2).&quot;);

Duplicating all these pass/fail messages seem inelegant to me.  You should be able to create one in test by string concatenations.

&gt; LayoutTests/fast/spatial-navigation/snav-media-elements.html:1
&gt; +&lt;html&gt;

No DOCTYPE?

&gt; LayoutTests/fast/spatial-navigation/snav-media-elements.html:8
&gt; +      [&quot;Down&quot;, &quot;v1&quot;],

Maybe up should try up first?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>467793</commentid>
    <comment_count>20</comment_count>
      <attachid>107160</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-09-15 07:31:25 -0700</bug_when>
    <thetext>Comment on attachment 107160
Updated patch

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

r=me. Please address Ryosuke&apos;s concerns before committing.

When you have a new patch, pre-fill &quot;Reviewed by Antonio Gomes&quot; field, and set cq? only. Then any committer can cq+ it.

&gt; LayoutTests/fast/events/tabindex-focus-blur-all-expected.txt:1
&gt; -331 focus / 331 blur events dispatched, and should be 331 / 331 PASSED
&gt; +333 focus / 333 blur events dispatched, and should be 333 / 333 PASSED

this part looks suspicious.

&gt; LayoutTests/fast/events/resources/tabindex-focus-blur-all.js:57
&gt; -    var resultSummary = focusCount+&quot; focus / &quot;+blurCount+&quot; blur events dispatched, and should be 331 / 331 &quot;;
&gt; +    var resultSummary = focusCount+&quot; focus / &quot;+blurCount+&quot; blur events dispatched, and should be 333 / 333 &quot;;

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>468463</commentid>
    <comment_count>21</comment_count>
      <attachid>107644</attachid>
    <who name="Deepak Sherveghar">bpwv64</who>
    <bug_when>2011-09-16 07:10:37 -0700</bug_when>
    <thetext>Created attachment 107644
Updated Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>469063</commentid>
    <comment_count>22</comment_count>
      <attachid>107644</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-17 03:56:23 -0700</bug_when>
    <thetext>Comment on attachment 107644
Updated Patch

Clearing flags on attachment: 107644

Committed r95381: &lt;http://trac.webkit.org/changeset/95381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>469064</commentid>
    <comment_count>23</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-09-17 03:56:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105605</attachid>
            <date>2011-08-30 03:00:55 -0700</date>
            <delta_ts>2011-08-30 03:10:00 -0700</delta_ts>
            <desc>Proposed Patch.</desc>
            <filename>patch_for_media_element_support_focus.patch</filename>
            <type>text/plain</type>
            <size>2879</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0MDYwKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDgtMzAgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBvdmVycmlkZSBzdXBw
b3J0c2ZvY3VzIGZvciBIVE1MTWVkaWFFbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjcxOTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBvdmVycmlkZSBzdXBwb3J0c2ZvY3VzIGZvciBIVE1MTWVk
aWFFbGVtZW50LCBSZXF1aXJlZCB0byBzdXBwb3J0IGZvY3VzIGZvcgorICAgICAgICBtZWRpYSBl
bGVtZW50cyB3aXRob3V0IHRhYmluZGV4LiBNZWRpYSBFbGVtZW50cyBsaWtlIDxhdWRpbz4gPHZp
ZGVvPiBzaG91bGQKKyAgICAgICAgYmUgZm9jdXNzYWJsZSB3aXRoIGtleWJvYXJkICh0YWIga2V5
KSBhcyBwZXIgVzNjIERyYWZ0IGZvciBJbnRlcmFjdGl2ZSBDb250ZW50CisgICAgICAgIHZpZGVv
IGFuZCBhdWRpby4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAq
IGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50OjpzdXBwb3J0c0ZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQu
aDoKKwogMjAxMS0wOC0yOSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBUb3VjaCBJbnRlcm5hbHMuY3BwIGluIGFuIGF0dGVtcHQgdG8gZml4IEdUSysgYnVpbGQu
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHJldmlzaW9u
IDkzMzg2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjIxLDYgKzIyMSwxMSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZE1vdmVUb05ld093bmVyCiAgICAgSFRNTEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1l
bnQoKTsKIH0KIAorYm9vbCBIVE1MTWVkaWFFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogdm9pZCBIVE1MTWVkaWFFbGVtZW50OjphdHRyaWJ1
dGVDaGFuZ2VkKEF0dHJpYnV0ZSogYXR0ciwgYm9vbCBwcmVzZXJ2ZURlY2xzKQogewogICAgIEhU
TUxFbGVtZW50OjphdHRyaWJ1dGVDaGFuZ2VkKGF0dHIsIHByZXNlcnZlRGVjbHMpOwpJbmRleDog
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHJldmlzaW9uIDkzMzg2KQorKysg
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAg
LTUxLDcgKzUxLDcgQEAgY2xhc3MgV2lkZ2V0OwogCiAvLyBGSVhNRTogVGhlIGluaGVyaXRhbmNl
IGZyb20gTWVkaWFQbGF5ZXJDbGllbnQgaGVyZSBzaG91bGQgYmUgcHJpdmF0ZSBpbmhlcml0YW5j
ZS4KIC8vIEJ1dCBpdCBjYW4ndCBiZSB1bnRpbCB0aGUgQ2hyb21pdW0gV2ViTWVkaWFQbGF5ZXJD
bGllbnRJbXBsIGNsYXNzIGlzIGZpeGVkIHNvIGl0Ci0vLyBubyBsb25nZXIgZGVwZW5kcyBvbiB0
eXBlY2FzdGluZyBhIE1lZGlhUGxheWVyQ2xpZW50IHRvIGFuIEhUTUxNZWRpYUVsZW1lbnQuCisv
LyBubyBsb25nZXIgZGVwZW5kcyBvbiB0eXBlY2FzdGluZyBhIE1lZGlhUGxheWVyQ2xuZW50IHRv
IGFuIEhUTUxNZWRpYUVsZW1lbnQuCiAKIGNsYXNzIEhUTUxNZWRpYUVsZW1lbnQgOiBwdWJsaWMg
SFRNTEVsZW1lbnQsIHB1YmxpYyBNZWRpYVBsYXllckNsaWVudCwgcHJpdmF0ZSBNZWRpYUNhblN0
YXJ0TGlzdGVuZXIsIHByaXZhdGUgQWN0aXZlRE9NT2JqZWN0IHsKIHB1YmxpYzoKQEAgLTY4LDcg
KzY4LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c0Z1bGxzY3JlZW4oKSBj
b25zdCB7IHJldHVybiBmYWxzZTsgfTsKIAogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1NhdmUo
KSBjb25zdDsKLSAgICAKKyAgIAogICAgIFBsYXRmb3JtTWVkaWEgcGxhdGZvcm1NZWRpYSgpIGNv
bnN0OwogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBQbGF0Zm9ybUxheWVy
KiBwbGF0Zm9ybUxheWVyKCkgY29uc3Q7CkBAIC0yMTksNiArMjE5LDcgQEAgcHJvdGVjdGVkOgog
ICAgIHZpcnR1YWwgYm9vbCBpc01lZGlhRWxlbWVudCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0K
IAogcHJpdmF0ZToKKyAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNGb2N1cygpIGNvbnN0OwogICAg
IHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFuZ2VkKEF0dHJpYnV0ZSosIGJvb2wgcHJlc2VydmVE
ZWNscyk7CiAgICAgdmlydHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgTm9kZVJlbmRl
cmluZ0NvbnRleHQmKTsKICAgICB2aXJ0dWFsIFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIo
UmVuZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSopOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105607</attachid>
            <date>2011-08-30 03:10:00 -0700</date>
            <delta_ts>2011-09-05 06:33:13 -0700</delta_ts>
            <desc>updated Patch.</desc>
            <filename>patch_for_media_element_support_focus.patch</filename>
            <type>text/plain</type>
            <size>2110</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0MDYwKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDgtMzAgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBvdmVycmlkZSBzdXBw
b3J0c2ZvY3VzIGZvciBIVE1MTWVkaWFFbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjcxOTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBvdmVycmlkZSBzdXBwb3J0c2ZvY3VzIGZvciBIVE1MTWVk
aWFFbGVtZW50LCBSZXF1aXJlZCB0byBzdXBwb3J0IGZvY3VzIGZvcgorICAgICAgICBtZWRpYSBl
bGVtZW50cyB3aXRob3V0IHRhYmluZGV4LiBNZWRpYSBFbGVtZW50cyBsaWtlIDxhdWRpbz4gPHZp
ZGVvPiBzaG91bGQKKyAgICAgICAgYmUgZm9jdXNzYWJsZSB3aXRoIGtleWJvYXJkICh0YWIga2V5
KSBhcyBwZXIgVzNjIERyYWZ0IGZvciBJbnRlcmFjdGl2ZSBDb250ZW50CisgICAgICAgIHZpZGVv
IGFuZCBhdWRpby4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKworICAgICAgICAq
IGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFF
bGVtZW50OjpzdXBwb3J0c0ZvY3VzKToKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQu
aDoKKwogMjAxMS0wOC0yOSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBUb3VjaCBJbnRlcm5hbHMuY3BwIGluIGFuIGF0dGVtcHQgdG8gZml4IEdUSysgYnVpbGQu
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHJldmlzaW9u
IDkzMzg2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjIxLDYgKzIyMSwxMSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZE1vdmVUb05ld093bmVyCiAgICAgSFRNTEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1l
bnQoKTsKIH0KIAorYm9vbCBIVE1MTWVkaWFFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogdm9pZCBIVE1MTWVkaWFFbGVtZW50OjphdHRyaWJ1
dGVDaGFuZ2VkKEF0dHJpYnV0ZSogYXR0ciwgYm9vbCBwcmVzZXJ2ZURlY2xzKQogewogICAgIEhU
TUxFbGVtZW50OjphdHRyaWJ1dGVDaGFuZ2VkKGF0dHIsIHByZXNlcnZlRGVjbHMpOwpJbmRleDog
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHJldmlzaW9uIDkzMzg2KQorKysg
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAg
LTIxOSw2ICsyMTksNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCBib29sIGlzTWVkaWFFbGVt
ZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCiBwcml2YXRlOgorICAgIHZpcnR1YWwgYm9v
bCBzdXBwb3J0c0ZvY3VzKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIGF0dHJpYnV0ZUNoYW5n
ZWQoQXR0cmlidXRlKiwgYm9vbCBwcmVzZXJ2ZURlY2xzKTsKICAgICB2aXJ0dWFsIGJvb2wgcmVu
ZGVyZXJJc05lZWRlZChjb25zdCBOb2RlUmVuZGVyaW5nQ29udGV4dCYpOwogICAgIHZpcnR1YWwg
UmVuZGVyT2JqZWN0KiBjcmVhdGVSZW5kZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>106331</attachid>
            <date>2011-09-05 06:33:36 -0700</date>
            <delta_ts>2011-09-13 00:28:22 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67190-20110905190331.patch</filename>
            <type>text/plain</type>
            <size>6340</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NTI3KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTEtMDktMDUgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBvdmVycmlkZSBzdXBw
b3J0c0ZvY3VzIGZvciBIVE1MTWVkaWFFbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjcxOTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBhY2Nlc3NpYmlsaXR5L21lZGlhLWVsZW1lbnQt
Zm9jdXMtdGFiLmh0bWwKKworICAgICAgICByZXR1cm4gdHJ1ZSBmcm9tIHN1cHBvcnRzRm9jdXMo
KSBpZiBjb250cm9sJ3MgYXR0cmlidXRlIGlzIHByZXNlbnQgb3IgYSB0YWJpbmRleCBpcyBzcGVj
aWZpZWQuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6c3VwcG9ydHNGb2N1cyk6CisgICAgICAgICogaHRt
bC9IVE1MTWVkaWFFbGVtZW50Lmg6CisKIDIwMTEtMDktMDUgIFNoZXJpZmYgQm90ICA8d2Via2l0
LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0
IHI5NDUyNS4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAko
cmV2aXNpb24gOTQ1MjcpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNDUsNiArMjQ1LDEyIEBAIHZvaWQgSFRNTE1lZGlhRWxl
bWVudDo6ZGlkTW92ZVRvTmV3T3duZXIKICAgICBIVE1MRWxlbWVudDo6ZGlkTW92ZVRvTmV3T3du
ZXJEb2N1bWVudCgpOwogfQogCitib29sIEhUTUxNZWRpYUVsZW1lbnQ6OnN1cHBvcnRzRm9jdXMo
KSBjb25zdAoreworICAgIC8vIElmIG5vIGNvbnRyb2xzIHNwZWNpZmllZCwgd2Ugc2hvdWxkIHN0
aWxsIGJlIGFibGUgdG8gZm9jdXMgdGhlIGVsZW1lbnQgaWYgaXQgaGFzIHRhYkluZGV4LgorICAg
IHJldHVybiBjb250cm9scygpIHx8ICBIVE1MRWxlbWVudDo6c3VwcG9ydHNGb2N1cygpOworfQor
CiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmF0dHJpYnV0ZUNoYW5nZWQoQXR0cmlidXRlKiBhdHRy
LCBib29sIHByZXNlcnZlRGVjbHMpCiB7CiAgICAgSFRNTEVsZW1lbnQ6OmF0dHJpYnV0ZUNoYW5n
ZWQoYXR0ciwgcHJlc2VydmVEZWNscyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuaAkocmV2aXNpb24gOTQ1MjcpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjQ4LDYgKzI0OCw3IEBAIHByb3RlY3Rl
ZDoKIHByaXZhdGU6CiAgICAgdm9pZCBjcmVhdGVNZWRpYVBsYXllcigpOwogCisgICAgdmlydHVh
bCBib29sIHN1cHBvcnRzRm9jdXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgYXR0cmlidXRl
Q2hhbmdlZChBdHRyaWJ1dGUqLCBib29sIHByZXNlcnZlRGVjbHMpOwogICAgIHZpcnR1YWwgYm9v
bCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IE5vZGVSZW5kZXJpbmdDb250ZXh0Jik7CiAgICAgdmly
dHVhbCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJlbmRlckFyZW5hKiwgUmVuZGVyU3R5
bGUqKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0NTI3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDktMDUgIERlZXBhayBTaGVy
dmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBvdmVycmlkZSBzdXBwb3J0
c2ZvY3VzIGZvciBIVE1MTWVkaWFFbGVtZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjcxOTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWVkaWEtZWxlbWVudC1mb2N1cy10
YWItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21lZGlhLWVs
ZW1lbnQtZm9jdXMtdGFiLmh0bWw6IEFkZGVkLgorCiAyMDExLTA5LTA1ICBLcmlzdG9mIEtvc3p0
eW8gPGtrcmlzdG9mQGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBbUXRdIFVwZGF0ZSBleHBl
Y3RlZCByZXN1bHQgYWZ0ZXIgcjk0NDI1CkluZGV4OiBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5
L21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLWV4cGVjdGVkLnR4
dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvbWVkaWEtZWxlbWVu
dC1mb2N1cy10YWItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE4IEBACitU
aGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBlbGVtZW50IGllOiA8QXVkaW8+IG9yIDx2aWRlbz4sIHdp
dGhvdXQgdGFiaW5kZXggY2FuIGJlIHNlbGVjdGVkIHdpdGgga2V5Ym9hcmQgKFRBQiBLZXkpCisK
K1NVQ0NFU1M6IFRhYi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8xKS4g
VEVTVDogV2l0aFRhYkluZGV4VmlkZW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCB0YWIgdG8gdGhl
IE1lZGlhIEVsZW1lbnQgKHZpZGVvMikuIFRFU1Q6IFdpdGhvdXRUYWJJbmRleFZpZGVvLgorU1VD
Q0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzMpLiBURVNU
OiBXaXRob3V0Q29udHJvbHNCdXRXaXRoVGFiSW5kZXhWaWRlby4KK1NVQ0NFU1M6IFRhYi1LZXkg
ZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAoYXVkaW8xKS4gVEVTVDogV2l0aG91dFRhYklu
ZGV4QXVkaW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVt
ZW50IChhdWRpbzIpLiBURVNUOiBXaXRob3V0Q29udHJvbGFBbmRUYWJJbmRleEF1ZGlvLgorIAor
IAorIAorIAorIAorIAorIAorIAorIAorCisKSW5kZXg6IExheW91dFRlc3RzL2FjY2Vzc2liaWxp
dHkvbWVkaWEtZWxlbWVudC1mb2N1cy10YWIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLmh0
bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNTcgQEAKKzxwPlRoaXMgdGVzdHMgdGhhdCBhIG1l
ZGlhIGVsZW1lbnQgaWU6IDxjb2RlPiZsdDtBdWRpbyZndDs8L2NvZGU+IG9yIDxjb2RlPiZsdDt2
aWRlbyZndDs8L2NvZGU+LCB3aXRob3V0IHRhYmluZGV4IGNhbiBiZSBzZWxlY3RlZCB3aXRoIGtl
eWJvYXJkIChUQUIgS2V5KTwvcD4KKzxwcmUgaWQ9ImNvbnNvbGUiPgorPC9wcmU+CisKKzxpbnB1
dCBpZD0iV2l0aFRhYkluZGV4VmlkZW8iIHR5cGU9dGV4dD4KKzxiciAvPgorPHZpZGVvIGlkPSJ2
aWRlbzEiIG9uZm9jdXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiBjb250cm9scyB0YWJp
bmRleD0iMCIgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorPGJyIC8+
CisKKzxpbnB1dCBpZD0iV2l0aG91dFRhYkluZGV4VmlkZW8iIHR5cGU9dGV4dD4KKzxiciAvPgor
PHZpZGVvIGlkPSJ2aWRlbzIiIG9uZm9jdXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiBj
b250cm9scyBzcmM9Ii4uL21lZGlhL2NvbnRlbnQvdGVzdC5tcDQiPgorPC92aWRlbz4KKzxiciAv
PgorCis8aW5wdXQgaWQ9IldpdGhvdXRDb250cm9sc0J1dFdpdGhUYWJJbmRleFZpZGVvIiB0eXBl
PXRleHQ+Cis8YnIgLz4KKzx2aWRlbyBpZD0idmlkZW8zIiBvbmZvY3VzPSJ3aW5kb3cubWVkaWFG
b2N1c2VkID0gdHJ1ZSIgdGFiaW5kZXg9IjAiIHNyYz0iLi4vbWVkaWEvY29udGVudC90ZXN0Lm1w
NCI+PC92aWRlbz4KKzxiciAvPgorCis8aW5wdXQgaWQ9IldpdGhvdXRUYWJJbmRleEF1ZGlvIiB0
eXBlPXRleHQ+Cis8YnIgLz4KKzxhdWRpbyBpZD0iYXVkaW8xIiBvbmZvY3VzPSJ3aW5kb3cubWVk
aWFGb2N1c2VkID0gdHJ1ZSIgY29udHJvbHMgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3Qud2F2
Ij48L2F1ZGlvPgorPGJyIC8+CisKKzxpbnB1dCBpZD0iV2l0aG91dENvbnRyb2xhQW5kVGFiSW5k
ZXhBdWRpbyIgdHlwZT10ZXh0PgorPGJyIC8+Cis8YXVkaW8gaWQ9ImF1ZGlvMiIgb25mb2N1cz0i
d2luZG93Lm1lZGlhRm9jdXNlZCA9IHRydWUiIHNyYz0iLi4vbWVkaWEvY29udGVudC90ZXN0Lm1w
NCI+PC9hdWRpbz4KKzxiciAvPgorCis8c2NyaXB0PgorCitpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVu
Y3Rpb24gdGVzdChmaWVsZElkLCBtZWRpYUZvY3VzZWRNc2csIG1lZGlhTm90Rm9jdXNlZE1zZykK
K3sKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikKKyAgICAgICAgcmV0dXJuOworCisgICAg
d2luZG93Lm1lZGlhRm9jdXNlZCA9IGZhbHNlOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KGZpZWxkSWQpLmZvY3VzKCk7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bignXHQnKTsKKyAgICBp
ZiAod2luZG93Lm1lZGlhRm9jdXNlZCkKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
ImNvbnNvbGUiKS5pbm5lckhUTUwgKz0gIG1lZGlhRm9jdXNlZE1zZyArICIgVEVTVDogIiArIGZp
ZWxkSWQgKyAiLlxuIjsKKyAgICBlbHNlCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjb25zb2xlIikuaW5uZXJIVE1MICs9IG1lZGlhTm90Rm9jdXNlZE1zZyArICIgVEVTVDogIiAr
IGZpZWxkSWQgKyAiLlxuIjsKK30KKwordGVzdCgiV2l0aFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VT
UzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzEpLiIsICJGQUlM
OiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzEpLiIpOwor
dGVzdCgiV2l0aG91dFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRv
IHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzIpLiIsICJGQUlMOiBUYWItS2V5IGRpZCBub3QgdGFi
IHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzIpLiIpOwordGVzdCgiV2l0aG91dENvbnRyb2xz
QnV0V2l0aFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBN
ZWRpYSBFbGVtZW50ICh2aWRlbzMpLiIsICJGQUlMOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRo
ZSBNZWRpYSBFbGVtZW50ICh2aWRlbzMpLiIpOwordGVzdCgiV2l0aG91dFRhYkluZGV4QXVkaW8i
LCAiU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRpbzEp
LiIsICJGQUlMOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRp
bzEpLiIpOwordGVzdCgiV2l0aG91dENvbnRyb2xhQW5kVGFiSW5kZXhBdWRpbyIsICJGQUlMOiBU
YWItS2V5IGRpZCB0YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKGF1ZGlvMikuIiwgIlNVQ0NFU1M6
IFRhYi1LZXkgZGlkIG5vdCB0YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKGF1ZGlvMikuIik7CisK
Kzwvc2NyaXB0PgorCg==
</data>
<flag name="commit-queue"
          id="102733"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107149</attachid>
            <date>2011-09-13 00:28:22 -0700</date>
            <delta_ts>2011-09-13 02:56:58 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>12457</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1MDIxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDktMTMgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBPdmVycmlkZSBzdXBw
b3J0c0ZvY3VzKCkgZm9yIEhUTUxNZWRpYUVsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFJldHVybiB0cnVlIGZyb20gc3VwcG9ydHNGb2N1cygp
IGlmIGNvbnRyb2wncyBhdHRyaWJ1dGUgaXMgcHJlc2VudCBvciBhIHRhYmluZGV4IGlzIHNwZWNp
ZmllZC4KKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKToKKyAgICAgICAgKiBodG1s
L0hUTUxNZWRpYUVsZW1lbnQuaDoKKwogMjAxMS0wOS0xMiAgU2hpbnlhIEthd2FuYWthICA8c2hp
bnlha0Bnb29nbGUuY29tPgogCiAgICAgICAgIENyYXNoZXMgaW4gV2ViQ29yZTo6SW5zZXJ0TGlz
dENvbW1hbmQ6OnVubGlzdGlmeVBhcmFncmFwaC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MTWVkaWFFbGVtZW50LmNwcAkocmV2aXNpb24gOTUwMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNDUsNiArMjQ1LDEy
IEBAIHZvaWQgSFRNTE1lZGlhRWxlbWVudDo6ZGlkTW92ZVRvTmV3T3duZXIKICAgICBIVE1MRWxl
bWVudDo6ZGlkTW92ZVRvTmV3T3duZXJEb2N1bWVudCgpOwogfQogCitib29sIEhUTUxNZWRpYUVs
ZW1lbnQ6OnN1cHBvcnRzRm9jdXMoKSBjb25zdAoreworICAgIC8vIElmIG5vIGNvbnRyb2xzIHNw
ZWNpZmllZCwgd2Ugc2hvdWxkIHN0aWxsIGJlIGFibGUgdG8gZm9jdXMgdGhlIGVsZW1lbnQgaWYg
aXQgaGFzIHRhYkluZGV4LgorICAgIHJldHVybiBjb250cm9scygpIHx8ICBIVE1MRWxlbWVudDo6
c3VwcG9ydHNGb2N1cygpOworfQorCiB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmF0dHJpYnV0ZUNo
YW5nZWQoQXR0cmlidXRlKiBhdHRyLCBib29sIHByZXNlcnZlRGVjbHMpCiB7CiAgICAgSFRNTEVs
ZW1lbnQ6OmF0dHJpYnV0ZUNoYW5nZWQoYXR0ciwgcHJlc2VydmVEZWNscyk7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNpb24gOTUwMTcpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjQ5
LDYgKzI0OSw3IEBAIHByb3RlY3RlZDoKIHByaXZhdGU6CiAgICAgdm9pZCBjcmVhdGVNZWRpYVBs
YXllcigpOwogCisgICAgdmlydHVhbCBib29sIHN1cHBvcnRzRm9jdXMoKSBjb25zdDsKICAgICB2
aXJ0dWFsIHZvaWQgYXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUqLCBib29sIHByZXNlcnZlRGVj
bHMpOwogICAgIHZpcnR1YWwgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IE5vZGVSZW5kZXJp
bmdDb250ZXh0Jik7CiAgICAgdmlydHVhbCBSZW5kZXJPYmplY3QqIGNyZWF0ZVJlbmRlcmVyKFJl
bmRlckFyZW5hKiwgUmVuZGVyU3R5bGUqKTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1MDIxKQorKysg
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIw
MTEtMDktMTMgIERlZXBhayBTaGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAg
ICAgICBPdmVycmlkZSBzdXBwb3J0c0ZvY3VzKCkgZm9yIEhUTUxNZWRpYUVsZW1lbnQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzE5MAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNpbmNlIG1lZGlhIGVs
ZW1lbnQgY2FuIHJlY2VpdmUgZm9jdXMgaWYgY29udHJvbCBhdHRyaWJ1dGUgaXMKKyAgICAgICAg
cHJlc2VudCwgaGVuY2UgY2hhbmdlZCB0YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcyBhbmQKKyAg
ICAgICAgdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwtZXhwZWN0ZWQudHh0LgorCisgICAgICAgICog
ZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWItZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwu
anM6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90YWJpbmRleC1mb2N1
cy1ibHVyLWFsbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9zcGF0aWFsLW5hdmlnYXRp
b24vc25hdi1tZWRpYS1lbGVtZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorCiAyMDExLTA5LTEy
ICBTaGlueWEgS2F3YW5ha2EgIDxzaGlueWFrQGdvb2dsZS5jb20+CiAKICAgICAgICAgW2Nocm9t
aXVtXSBmYXN0L2pzL3BhcnNlSW50Lmh0bWwgZG9lcyBub3QgZmFpbCBhbnkgbW9yZS4KSW5kZXg6
IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLWV4cGVjdGVk
LnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tZWRpYS1lbGVtZW50
LWZvY3VzLXRhYi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy9tZWRpYS1lbGVtZW50LWZvY3VzLXRhYi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMTggQEAKK1RoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGVsZW1lbnQgaWU6IDxB
dWRpbz4gb3IgPHZpZGVvPiwgd2l0aG91dCB0YWJpbmRleCBjYW4gYmUgc2VsZWN0ZWQgd2l0aCBr
ZXlib2FyZCAoVEFCIEtleSkKKworU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRp
YSBFbGVtZW50ICh2aWRlbzEpLiBURVNUOiBXaXRoVGFiSW5kZXhWaWRlby4KK1NVQ0NFU1M6IFRh
Yi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8yKS4gVEVTVDogV2l0aG91
dFRhYkluZGV4VmlkZW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCB0YWIgdG8gdGhlIE1lZGlhIEVs
ZW1lbnQgKHZpZGVvMykuIFRFU1Q6IFdpdGhvdXRDb250cm9sc0J1dFdpdGhUYWJJbmRleFZpZGVv
LgorU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRpbzEp
LiBURVNUOiBXaXRob3V0VGFiSW5kZXhBdWRpby4KK1NVQ0NFU1M6IFRhYi1LZXkgZGlkIG5vdCB0
YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKGF1ZGlvMikuIFRFU1Q6IFdpdGhvdXRDb250cm9sYUFu
ZFRhYkluZGV4QXVkaW8uCisgCisgCisgCisgCisgCisgCisgCisgCisgCisKKwpJbmRleDogTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWIuaHRtbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tZWRpYS1lbGVtZW50LWZvY3VzLXRhYi5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVu
dC1mb2N1cy10YWIuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw1NSBAQAorPHA+VGhpcyB0
ZXN0cyB0aGF0IGEgbWVkaWEgZWxlbWVudCBpZTogPGNvZGU+Jmx0O0F1ZGlvJmd0OzwvY29kZT4g
b3IgPGNvZGU+Jmx0O3ZpZGVvJmd0OzwvY29kZT4sIHdpdGhvdXQgdGFiaW5kZXggY2FuIGJlIHNl
bGVjdGVkIHdpdGgga2V5Ym9hcmQgKFRBQiBLZXkpPC9wPgorPHByZSBpZD0iY29uc29sZSI+Cis8
L3ByZT4KKworPGlucHV0IGlkPSJXaXRoVGFiSW5kZXhWaWRlbyIgdHlwZT10ZXh0PgorPGJyPgor
PHZpZGVvIGlkPSJ2aWRlbzEiIG9uZm9jdXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiBj
b250cm9scyB0YWJpbmRleD0iMCIgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L3Zp
ZGVvPgorPGJyPgorCis8aW5wdXQgaWQ9IldpdGhvdXRUYWJJbmRleFZpZGVvIiB0eXBlPXRleHQ+
Cis8YnI+Cis8dmlkZW8gaWQ9InZpZGVvMiIgb25mb2N1cz0id2luZG93Lm1lZGlhRm9jdXNlZCA9
IHRydWUiIGNvbnRyb2xzIHNyYz0iLi4vbWVkaWEvY29udGVudC90ZXN0Lm1wNCI+Cis8L3ZpZGVv
PgorPGJyPgorCis8aW5wdXQgaWQ9IldpdGhvdXRDb250cm9sc0J1dFdpdGhUYWJJbmRleFZpZGVv
IiB0eXBlPXRleHQ+Cis8YnI+Cis8dmlkZW8gaWQ9InZpZGVvMyIgb25mb2N1cz0id2luZG93Lm1l
ZGlhRm9jdXNlZCA9IHRydWUiIHRhYmluZGV4PSIwIiBzcmM9Ii4uL21lZGlhL2NvbnRlbnQvdGVz
dC5tcDQiPjwvdmlkZW8+Cis8YnI+CisKKzxpbnB1dCBpZD0iV2l0aG91dFRhYkluZGV4QXVkaW8i
IHR5cGU9dGV4dD4KKzxicj4KKzxhdWRpbyBpZD0iYXVkaW8xIiBvbmZvY3VzPSJ3aW5kb3cubWVk
aWFGb2N1c2VkID0gdHJ1ZSIgY29udHJvbHMgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3Qud2F2
Ij48L2F1ZGlvPgorPGJyPgorCis8aW5wdXQgaWQ9IldpdGhvdXRDb250cm9sYUFuZFRhYkluZGV4
QXVkaW8iIHR5cGU9dGV4dD4KKzxicj4KKzxhdWRpbyBpZD0iYXVkaW8yIiBvbmZvY3VzPSJ3aW5k
b3cubWVkaWFGb2N1c2VkID0gdHJ1ZSIgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48
L2F1ZGlvPgorPGJyPgorCis8c2NyaXB0PgorCitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworZnVuY3Rpb24g
dGVzdChmaWVsZElkLCBtZWRpYUZvY3VzZWRNc2csIG1lZGlhTm90Rm9jdXNlZE1zZykKK3sKKyAg
ICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikKKyAgICAgICAgcmV0dXJuOworCisgICAgd2luZG93
Lm1lZGlhRm9jdXNlZCA9IGZhbHNlOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGZpZWxk
SWQpLmZvY3VzKCk7CisgICAgZXZlbnRTZW5kZXIua2V5RG93bignXHQnKTsKKyAgICBpZiAod2lu
ZG93Lm1lZGlhRm9jdXNlZCkKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNv
bGUiKS5pbm5lckhUTUwgKz0gIG1lZGlhRm9jdXNlZE1zZyArICIgVEVTVDogIiArIGZpZWxkSWQg
KyAiLlxuIjsKKyAgICBlbHNlCisgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25z
b2xlIikuaW5uZXJIVE1MICs9IG1lZGlhTm90Rm9jdXNlZE1zZyArICIgVEVTVDogIiArIGZpZWxk
SWQgKyAiLlxuIjsKK30KKwordGVzdCgiV2l0aFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VTUzogVGFi
LUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzEpLiIsICJGQUlMOiBUYWIt
S2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzEpLiIpOwordGVzdCgi
V2l0aG91dFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBN
ZWRpYSBFbGVtZW50ICh2aWRlbzIpLiIsICJGQUlMOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRo
ZSBNZWRpYSBFbGVtZW50ICh2aWRlbzIpLiIpOwordGVzdCgiV2l0aG91dENvbnRyb2xzQnV0V2l0
aFRhYkluZGV4VmlkZW8iLCAiU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBF
bGVtZW50ICh2aWRlbzMpLiIsICJGQUlMOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRp
YSBFbGVtZW50ICh2aWRlbzMpLiIpOwordGVzdCgiV2l0aG91dFRhYkluZGV4QXVkaW8iLCAiU1VD
Q0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRpbzEpLiIsICJG
QUlMOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRpbzEpLiIp
OwordGVzdCgiV2l0aG91dENvbnRyb2xhQW5kVGFiSW5kZXhBdWRpbyIsICJGQUlMOiBUYWItS2V5
IGRpZCB0YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKGF1ZGlvMikuIiwgIlNVQ0NFU1M6IFRhYi1L
ZXkgZGlkIG5vdCB0YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKGF1ZGlvMikuIik7Cis8L3Njcmlw
dD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxs
LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90YWJp
bmRleC1mb2N1cy1ibHVyLWFsbC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDk1MDE3KQorKysgTGF5
b3V0VGVzdHMvZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwtZXhwZWN0ZWQudHh0
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDIgKzEsMiBAQAotMzMxIGZvY3VzIC8gMzMxIGJsdXIgZXZl
bnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzMxIC8gMzMxIFBBU1NFRAorMzM0IGZvY3Vz
IC8gMzMzIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzM0IC8gMzMzIFBB
U1NFRAogVG90YWwgb2YgMCBmb2N1cyB0ZXN0KHMpIGZhaWxlZC4gUEFTU0VECkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3VyY2VzL3RhYmluZGV4
LWZvY3VzLWJsdXItYWxsLmpzCShyZXZpc2lvbiA5NTAxNykKKysrIExheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3Jlc291cmNlcy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcwkod29ya2luZyBjb3B5
KQpAQCAtMTcsNyArMTcsOSBAQCB2YXIgdGFnTmFtZXNBbHdheXNGb2N1c2VkID0gWyJBIiwKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIklOUFVUIiwKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIklTSU5ERVgiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiU0VMRUNU
IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlRFWFRBUkVBIl07CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJURVhUQVJFQSIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICJWSURFTyIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJBVURJTyJdOwogCiB2
YXIgdGFnTmFtZXNUcmFuc2ZlckZvY3VzZWQgPSBbIkxBQkVMIl07IC8vIGxhYmVscyBhbHdheXMg
dHJhbnNmZXIgZm9jdXMgdG8gdGhlIGxhYmVsZWQgZWxlbWVudAogCkBAIC01Miw3ICs1NCw3IEBA
IGZ1bmN0aW9uIHRlc3QoKQogICAgIHZhciBob21lQmFzZSA9IHdpbmRvdy5mcmFtZXNbMV0uZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnaG9tZWJhc2UnKTsKICAgICBob21lQmFzZVsw
XS5mb2N1cygpOwogCi0gICAgdmFyIHJlc3VsdFN1bW1hcnkgPSBmb2N1c0NvdW50KyIgZm9jdXMg
LyAiK2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzMx
IC8gMzMxICI7CisgICAgdmFyIHJlc3VsdFN1bW1hcnkgPSBmb2N1c0NvdW50KyIgZm9jdXMgLyAi
K2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzM0IC8g
MzMzICI7CiAgICAgcmVzdWx0U3VtbWFyeSArPSAoZm9jdXNDb3VudD09Ymx1ckNvdW50KSA/ICI8
c3BhbiBzdHlsZT0nY29sb3I6Z3JlZW4nPlBBU1NFRDwvc3Bhbj48YnI+IiA6ICI8c3BhbiBzdHls
ZT0nY29sb3I6cmVkJz5GQUlMRUQ8L3NwYW4+PGJyPiI7CiAgICAgcmVzdWx0U3VtbWFyeSArPSAi
VG90YWwgb2YgIitmYWlsZWRUZXN0Q291bnQrIiBmb2N1cyB0ZXN0KHMpIGZhaWxlZC4iOwogICAg
IGlmIChmYWlsZWRUZXN0Q291bnQpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2
aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1lbnRzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1lbnRzLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3Qvc3BhdGlhbC1uYXZp
Z2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDI0IEBACitUaGlzIGlzIGEgbGluayBzdGFydCBvZiBUZXN0LgorCitUaGlzIGlzIGEg
bGluayBpMi4KKworVGhpcyBpcyBhIGxpbmsgaTQuCisKK1RoaXMgaXMgYSBsaW5rIGk2LgorCitU
aGlzIGlzIGEgbGluayBpOC4KKworVGhpcyBpcyBhIGxpbmsgRW5kIG9mIFRlc3QuCisKK1BBU1Mg
Z0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAidjEi
CitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikg
aXMgImkyIgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRl
KCJpZCIpIGlzICJ2MyIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0
dHJpYnV0ZSgiaWQiKSBpcyAiaTQiCitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVu
dC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgInY1IgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2
ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJpNiIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVu
dC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAiYTciCitQQVNTIGdGb2N1c2Vk
RG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgImk4IgorUEFTUyBn
Rm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJlbmQi
CitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikg
aXMgImk4IgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRl
KCJpZCIpIGlzICJlbmQiCitUaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBlbGVtZW50cyBpZTogPEF1
ZGlvPiBvciA8dmlkZW8+LCB3aXRob3V0IHRhYmluZGV4IGFyZSBhYmxlIHRvIGJlIHJlYWNoZWQg
dGhyb3VnaCBrZXlib2FyZCBhY2Nlc3MKSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qvc3BhdGlhbC1u
YXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1lbnRzLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1l
ZGlhLWVsZW1lbnRzLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNzMgQEAKKzxodG1sPgor
ICA8aGVhZD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKyAgICA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL3NwYXRpYWwtbmF2aWdhdGlv
bi11dGlscy5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCB0eXBlPSJhcHBsaWNhdGlvbi9qYXZh
c2NyaXB0Ij4KKworICAgIHZhciByZXN1bHRNYXAgPSBbCisgICAgICBbIkRvd24iLCAidjEiXSwK
KyAgICAgIFsiRG93biIsICJpMiJdLAorICAgICAgWyJEb3duIiwgInYzIl0sCisgICAgICBbIkRv
d24iLCAiaTQiXSwKKyAgICAgIFsiRG93biIsICJ2NSJdLAorICAgICAgWyJEb3duIiwgImk2Il0s
CisgICAgICBbIkRvd24iLCAiYTciXSwKKyAgICAgIFsiRG93biIsICJpOCJdLAorICAgICAgWyJE
b3duIiwgImVuZCJdLAorICAgICAgWyJVcCIsICJpOCJdLAorICAgICAgWyJEb3duIiwgImVuZCJd
LAorICAgICAgWyJET05FIiwgIkRPTkUiXQorICAgIF07CisKKyAgICBpZiAod2luZG93LmxheW91
dFRlc3RDb250cm9sbGVyKSB7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5zZXRTcGF0aWFsTmF2aWdhdGlvbkVuYWJs
ZWQodHJ1ZSk7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2Uo
IldlYktpdFRhYlRvTGlua3NQcmVmZXJlbmNlS2V5IiwgMSk7CisgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAgfQorCisgICAgZnVuY3Rpb24gcnVuVGVzdCgp
CisgICAgeworICAgICAgLy8gc3RhcnRpbmcgdGhlIHRlc3QgaXRzZWxmOiBnZXQgdG8gYSBrbm93
biBwbGFjZS4KKyAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdGFydCIpLmZvY3VzKCk7
CisKKyAgICAgIGluaXRUZXN0KHJlc3VsdE1hcCwgdGVzdENvbXBsZXRlZCk7CisgICAgfQorCisg
ICAgZnVuY3Rpb24gdGVzdENvbXBsZXRlZCgpCisgICAgeworICAgICAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9u
ZSgpOworICAgIH0KKworICAgIHdpbmRvdy5vbmxvYWQgPSBydW5UZXN0OworCisgICAgPC9zY3Jp
cHQ+CisgICAgPHNjcmlwdCBzcmM9ImpzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2Ny
aXB0PgorICA8L2hlYWQ+CisKKyAgPGJvZHkgaWQ9InNvbWUtY29udGVudCIgeG1sbnM9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgorCisgICAgPHA+VGhpcyBpcyBhIGxpbmsgPGEgaWQ9
InN0YXJ0IiBocmVmPSJhIj5zdGFydCBvZiBUZXN0PC9hPi48L3A+CisgICAgPHZpZGVvIGlkPSJ2
MSIgY29udHJvbHMgdGFiaW5kZXg9IjAiIHNyYz0iLi4vLi4vbWVkaWEvY29udGVudC90ZXN0Lm1w
NCI+PC92aWRlbz4KKworICAgIDxwPlRoaXMgaXMgYSBsaW5rIDxhIGlkPSJpMiIgaHJlZj0iYSI+
aTI8L2E+LjwvcD4KKyAgICA8dmlkZW8gaWQ9InYzIiBjb250cm9scyBzcmM9Ii4uLy4uL21lZGlh
L2NvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+CisKKyAgICA8cD5UaGlzIGlzIGEgbGluayA8YSBp
ZD0iaTQiIGhyZWY9ImEiPmk0PC9hPi48L3A+CisgICAgPHZpZGVvIGlkPSJ2NSIgdGFiaW5kZXg9
IjAiIHNyYz0iLi4vLi4vbWVkaWEvY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKworICAgIDxw
PlRoaXMgaXMgYSBsaW5rIDxhIGlkPSJpNiIgaHJlZj0iYSI+aTY8L2E+LjwvcD4KKyAgICA8YXVk
aW8gaWQ9ImE3IiBjb250cm9scyBzcmM9Ii4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdC53YXYiPjwv
YXVkaW8+CisKKyAgICA8cD5UaGlzIGlzIGEgbGluayA8YSBpZD0iaTgiIGhyZWY9ImEiPmk4PC9h
Pi48L3A+CisgICAgPCEtLSAnYTknIGlzIG5vdCBmb2N1c3NhYmxlOiBubyBjb250cm9scyBhdHRy
aWJ1dGUgYXMgd2VsbCBubyB0YWIgaW5kZXguCisgICAgS2V5IGRvd24gZnJvbSAnaTgnIHNob3Vs
ZCBnbyB0byAnZW5kJy4gLS0+CisgICAgPGF1ZGlvIGlkPSJhOSIgc3JjPSIuLi8uLi9tZWRpYS9j
b250ZW50L3Rlc3QubXA0Ij48L2F1ZGlvPgorCisgICAgPHA+VGhpcyBpcyBhIGxpbmsgPGEgaWQ9
ImVuZCIgaHJlZj0iYSI+RW5kIG9mIFRlc3Q8L2E+LjwvcD4KKworICAgIDxkaXYgaWQ9ImNvbnNv
bGUiPjwvZGl2PgorICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGVsZW1lbnRzIGllOiA8
Y29kZT4mbHQ7QXVkaW8mZ3Q7PC9jb2RlPiBvciA8Y29kZT4mbHQ7dmlkZW8mZ3Q7PC9jb2RlPiwg
d2l0aG91dCB0YWJpbmRleCBhcmUgYWJsZSB0byBiZSByZWFjaGVkIHRocm91Z2gga2V5Ym9hcmQg
YWNjZXNzPC9wPgorICA8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="commit-queue"
          id="103780"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107160</attachid>
            <date>2011-09-13 02:56:58 -0700</date>
            <delta_ts>2011-09-17 00:54:23 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>12716</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1MDIyKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMTMgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBPdmVycmlkZSBzdXBw
b3J0c0ZvY3VzKCkgZm9yIEhUTUxNZWRpYUVsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFJldHVybiB0cnVlIGZyb20gc3VwcG9ydHNGb2N1cygp
IGlmIGNvbnRyb2wncyBhdHRyaWJ1dGUgaXMgcHJlc2VudCBvciBhIHRhYmluZGV4IGlzIHNwZWNp
ZmllZC4KKworICAgICAgICBUZXN0czogZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10
YWIuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi1tZWRp
YS1lbGVtZW50cy5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6c3VwcG9ydHNGb2N1cyk6CisgICAg
ICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisKIDIwMTEtMDktMTIgIFNoaW55YSBLYXdh
bmFrYSAgPHNoaW55YWtAZ29vZ2xlLmNvbT4KIAogICAgICAgICBDcmFzaGVzIGluIFdlYkNvcmU6
Okluc2VydExpc3RDb21tYW5kOjp1bmxpc3RpZnlQYXJhZ3JhcGguCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHJldmlzaW9uIDk1MDIyKQorKysgU291cmNl
L1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQ1
LDYgKzI0NSwxMiBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyCiAg
ICAgSFRNTEVsZW1lbnQ6OmRpZE1vdmVUb05ld093bmVyRG9jdW1lbnQoKTsKIH0KIAorYm9vbCBI
VE1MTWVkaWFFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKCkgY29uc3QKK3sKKyAgICAvLyBJZiBubyBj
b250cm9scyBzcGVjaWZpZWQsIHdlIHNob3VsZCBzdGlsbCBiZSBhYmxlIHRvIGZvY3VzIHRoZSBl
bGVtZW50IGlmIGl0IGhhcyB0YWJJbmRleC4KKyAgICByZXR1cm4gY29udHJvbHMoKSB8fCAgSFRN
TEVsZW1lbnQ6OnN1cHBvcnRzRm9jdXMoKTsKK30KKwogdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojph
dHRyaWJ1dGVDaGFuZ2VkKEF0dHJpYnV0ZSogYXR0ciwgYm9vbCBwcmVzZXJ2ZURlY2xzKQogewog
ICAgIEhUTUxFbGVtZW50OjphdHRyaWJ1dGVDaGFuZ2VkKGF0dHIsIHByZXNlcnZlRGVjbHMpOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHJldmlzaW9uIDk1MDIy
KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI0OSw2ICsyNDksNyBAQCBwcm90ZWN0ZWQ6CiBwcml2YXRlOgogICAgIHZvaWQgY3Jl
YXRlTWVkaWFQbGF5ZXIoKTsKIAorICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c0ZvY3VzKCkgY29u
c3Q7CiAgICAgdmlydHVhbCB2b2lkIGF0dHJpYnV0ZUNoYW5nZWQoQXR0cmlidXRlKiwgYm9vbCBw
cmVzZXJ2ZURlY2xzKTsKICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBO
b2RlUmVuZGVyaW5nQ29udGV4dCYpOwogICAgIHZpcnR1YWwgUmVuZGVyT2JqZWN0KiBjcmVhdGVS
ZW5kZXJlcihSZW5kZXJBcmVuYSosIFJlbmRlclN0eWxlKik7CkluZGV4OiBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA5
NTAyMikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDIyIEBACisyMDExLTA5LTEzICBEZWVwYWsgU2hlcnZlZ2hhciAgPGJwd3Y2NEBtb3Rvcm9sYS5j
b20+CisKKyAgICAgICAgT3ZlcnJpZGUgc3VwcG9ydHNGb2N1cygpIGZvciBIVE1MTWVkaWFFbGVt
ZW50LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njcx
OTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaW5j
ZSBtZWRpYSBlbGVtZW50IGJlIGFibGUgdG8gcmVjZWl2ZSBmb2N1cyB3aXRob3V0IHRhYmluZGV4
IGlmCisgICAgICAgIGNvbnRyb2wgYXR0cmlidXRlIGlzIHByZXNlbnQsIGhlbmNlIGNoYW5nZWQK
KyAgICAgICAgdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwuanMgYW5kIHRhYmluZGV4LWZvY3VzLWJs
dXItYWxsLWV4cGVjdGVkLnR4dC4KKworICAgICAgICAqIGZhc3QvZXZlbnRzL21lZGlhLWVsZW1l
bnQtZm9jdXMtdGFiLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVudHMv
bWVkaWEtZWxlbWVudC1mb2N1cy10YWIuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9ldmVu
dHMvcmVzb3VyY2VzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLmpzOgorICAgICAgICAodGVzdCk6
CisgICAgICAgICogZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwtZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVu
dHMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3NwYXRpYWwtbmF2aWdhdGlv
bi9zbmF2LW1lZGlhLWVsZW1lbnRzLmh0bWw6IEFkZGVkLgorCiAyMDExLTA5LTEzICBSZW5hdGEg
SG9kb3ZhbiAgPHJlbmlAd2Via2l0Lm9yZz4KIAogICAgICAgICBldmVudFNlbmRlci5rZXlEb3du
IGlzIHVuaW1wbGVtZW50ZWQgKFdLVFIpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9t
ZWRpYS1lbGVtZW50LWZvY3VzLXRhYi1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWItZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1
cy10YWItZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE4IEBACitUaGlzIHRl
c3RzIHRoYXQgYSBtZWRpYSBlbGVtZW50IGllOiA8QXVkaW8+IG9yIDx2aWRlbz4sIHdpdGhvdXQg
dGFiaW5kZXggY2FuIGJlIHNlbGVjdGVkIHdpdGgga2V5Ym9hcmQgKFRBQiBLZXkpCisKK1NVQ0NF
U1M6IFRhYi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8xKS4gVEVTVDog
V2l0aFRhYkluZGV4VmlkZW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCB0YWIgdG8gdGhlIE1lZGlh
IEVsZW1lbnQgKHZpZGVvMikuIFRFU1Q6IFdpdGhvdXRUYWJJbmRleFZpZGVvLgorU1VDQ0VTUzog
VGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2aWRlbzMpLiBURVNUOiBXaXRo
b3V0Q29udHJvbHNCdXRXaXRoVGFiSW5kZXhWaWRlby4KK1NVQ0NFU1M6IFRhYi1LZXkgZGlkIHRh
YiB0byB0aGUgTWVkaWEgRWxlbWVudCAoYXVkaW8xKS4gVEVTVDogV2l0aG91dFRhYkluZGV4QXVk
aW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChh
dWRpbzIpLiBURVNUOiBXaXRob3V0Q29udHJvbGFBbmRUYWJJbmRleEF1ZGlvLgorIAorIAorIAor
IAorIAorIAorIAorIAorIAorCisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL21lZGlh
LWVsZW1lbnQtZm9jdXMtdGFiLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWIuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvZXZlbnRzL21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLmh0bWwJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsNTUgQEAKKzxwPlRoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGVsZW1lbnQg
aWU6IDxjb2RlPiZsdDtBdWRpbyZndDs8L2NvZGU+IG9yIDxjb2RlPiZsdDt2aWRlbyZndDs8L2Nv
ZGU+LCB3aXRob3V0IHRhYmluZGV4IGNhbiBiZSBzZWxlY3RlZCB3aXRoIGtleWJvYXJkIChUQUIg
S2V5KTwvcD4KKzxwcmUgaWQ9ImNvbnNvbGUiPgorPC9wcmU+CisKKzxpbnB1dCBpZD0iV2l0aFRh
YkluZGV4VmlkZW8iIHR5cGU9dGV4dD4KKzxicj4KKzx2aWRlbyBpZD0idmlkZW8xIiBvbmZvY3Vz
PSJ3aW5kb3cubWVkaWFGb2N1c2VkID0gdHJ1ZSIgY29udHJvbHMgdGFiaW5kZXg9IjAiIHNyYz0i
Li4vbWVkaWEvY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKzxicj4KKworPGlucHV0IGlkPSJX
aXRob3V0VGFiSW5kZXhWaWRlbyIgdHlwZT10ZXh0PgorPGJyPgorPHZpZGVvIGlkPSJ2aWRlbzIi
IG9uZm9jdXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiBjb250cm9scyBzcmM9Ii4uL21l
ZGlhL2NvbnRlbnQvdGVzdC5tcDQiPgorPC92aWRlbz4KKzxicj4KKworPGlucHV0IGlkPSJXaXRo
b3V0Q29udHJvbHNCdXRXaXRoVGFiSW5kZXhWaWRlbyIgdHlwZT10ZXh0PgorPGJyPgorPHZpZGVv
IGlkPSJ2aWRlbzMiIG9uZm9jdXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiB0YWJpbmRl
eD0iMCIgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorPGJyPgorCis8
aW5wdXQgaWQ9IldpdGhvdXRUYWJJbmRleEF1ZGlvIiB0eXBlPXRleHQ+Cis8YnI+Cis8YXVkaW8g
aWQ9ImF1ZGlvMSIgb25mb2N1cz0id2luZG93Lm1lZGlhRm9jdXNlZCA9IHRydWUiIGNvbnRyb2xz
IHNyYz0iLi4vbWVkaWEvY29udGVudC90ZXN0LndhdiI+PC9hdWRpbz4KKzxicj4KKworPGlucHV0
IGlkPSJXaXRob3V0Q29udHJvbGFBbmRUYWJJbmRleEF1ZGlvIiB0eXBlPXRleHQ+Cis8YnI+Cis8
YXVkaW8gaWQ9ImF1ZGlvMiIgb25mb2N1cz0id2luZG93Lm1lZGlhRm9jdXNlZCA9IHRydWUiIHNy
Yz0iLi4vbWVkaWEvY29udGVudC90ZXN0Lm1wNCI+PC9hdWRpbz4KKzxicj4KKworPHNjcmlwdD4K
KworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci5kdW1wQXNUZXh0KCk7CisKK2Z1bmN0aW9uIHRlc3QoZmllbGRJZCwgbWVkaWFGb2N1c2Vk
TXNnLCBtZWRpYU5vdEZvY3VzZWRNc2cpCit7CisgICAgaWYgKCF3aW5kb3cuZXZlbnRTZW5kZXIp
CisgICAgICAgIHJldHVybjsKKworICAgIHdpbmRvdy5tZWRpYUZvY3VzZWQgPSBmYWxzZTsKKyAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChmaWVsZElkKS5mb2N1cygpOworICAgIGV2ZW50U2Vu
ZGVyLmtleURvd24oJ1x0Jyk7CisgICAgaWYgKHdpbmRvdy5tZWRpYUZvY3VzZWQpCisgICAgICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MICs9ICBtZWRpYUZv
Y3VzZWRNc2cgKyAiIFRFU1Q6ICIgKyBmaWVsZElkICsgIi5cbiI7CisgICAgZWxzZQorICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpLmlubmVySFRNTCArPSBtZWRpYU5v
dEZvY3VzZWRNc2cgKyAiIFRFU1Q6ICIgKyBmaWVsZElkICsgIi5cbiI7Cit9CisKK3Rlc3QoIldp
dGhUYWJJbmRleFZpZGVvIiwgIlNVQ0NFU1M6IFRhYi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEg
RWxlbWVudCAodmlkZW8xKS4iLCAiRkFJTDogVGFiLUtleSBkaWQgbm90IHRhYiB0byB0aGUgTWVk
aWEgRWxlbWVudCAodmlkZW8xKS4iKTsKK3Rlc3QoIldpdGhvdXRUYWJJbmRleFZpZGVvIiwgIlNV
Q0NFU1M6IFRhYi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8yKS4iLCAi
RkFJTDogVGFiLUtleSBkaWQgbm90IHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8yKS4i
KTsKK3Rlc3QoIldpdGhvdXRDb250cm9sc0J1dFdpdGhUYWJJbmRleFZpZGVvIiwgIlNVQ0NFU1M6
IFRhYi1LZXkgZGlkIHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8zKS4iLCAiRkFJTDog
VGFiLUtleSBkaWQgbm90IHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8zKS4iKTsKK3Rl
c3QoIldpdGhvdXRUYWJJbmRleEF1ZGlvIiwgIlNVQ0NFU1M6IFRhYi1LZXkgZGlkIHRhYiB0byB0
aGUgTWVkaWEgRWxlbWVudCAoYXVkaW8xKS4iLCAiRkFJTDogVGFiLUtleSBkaWQgbm90IHRhYiB0
byB0aGUgTWVkaWEgRWxlbWVudCAoYXVkaW8xKS4iKTsKK3Rlc3QoIldpdGhvdXRDb250cm9sYUFu
ZFRhYkluZGV4QXVkaW8iLCAiRkFJTDogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVt
ZW50IChhdWRpbzIpLiIsICJTVUNDRVNTOiBUYWItS2V5IGRpZCBub3QgdGFiIHRvIHRoZSBNZWRp
YSBFbGVtZW50IChhdWRpbzIpLiIpOworPC9zY3JpcHQ+CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L2V2ZW50cy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiA5NTAyMikKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RhYmlu
ZGV4LWZvY3VzLWJsdXItYWxsLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMSwyICsx
LDIgQEAKLTMzMSBmb2N1cyAvIDMzMSBibHVyIGV2ZW50cyBkaXNwYXRjaGVkLCBhbmQgc2hvdWxk
IGJlIDMzMSAvIDMzMSBQQVNTRUQKKzMzMyBmb2N1cyAvIDMzMyBibHVyIGV2ZW50cyBkaXNwYXRj
aGVkLCBhbmQgc2hvdWxkIGJlIDMzMyAvIDMzMyBQQVNTRUQKIFRvdGFsIG9mIDAgZm9jdXMgdGVz
dChzKSBmYWlsZWQuIFBBU1NFRApJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvcmVzb3Vy
Y2VzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL3Jlc291cmNlcy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcwkocmV2aXNp
b24gOTUwMjIpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgt
Zm9jdXMtYmx1ci1hbGwuanMJKHdvcmtpbmcgY29weSkKQEAgLTE3LDcgKzE3LDkgQEAgdmFyIHRh
Z05hbWVzQWx3YXlzRm9jdXNlZCA9IFsiQSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICJJTlBVVCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJJU0lOREVYIiwKICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIlNFTEVDVCIsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICJURVhUQVJFQSJdOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVEVYVEFS
RUEiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVklERU8iLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAiQVVESU8iXTsKIAogdmFyIHRhZ05hbWVzVHJhbnNmZXJGb2N1c2Vk
ID0gWyJMQUJFTCJdOyAvLyBsYWJlbHMgYWx3YXlzIHRyYW5zZmVyIGZvY3VzIHRvIHRoZSBsYWJl
bGVkIGVsZW1lbnQKIApAQCAtNTIsNyArNTQsNyBAQCBmdW5jdGlvbiB0ZXN0KCkKICAgICB2YXIg
aG9tZUJhc2UgPSB3aW5kb3cuZnJhbWVzWzFdLmRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05h
bWUoJ2hvbWViYXNlJyk7CiAgICAgaG9tZUJhc2VbMF0uZm9jdXMoKTsKIAotICAgIHZhciByZXN1
bHRTdW1tYXJ5ID0gZm9jdXNDb3VudCsiIGZvY3VzIC8gIitibHVyQ291bnQrIiBibHVyIGV2ZW50
cyBkaXNwYXRjaGVkLCBhbmQgc2hvdWxkIGJlIDMzMSAvIDMzMSAiOworICAgIHZhciByZXN1bHRT
dW1tYXJ5ID0gZm9jdXNDb3VudCsiIGZvY3VzIC8gIitibHVyQ291bnQrIiBibHVyIGV2ZW50cyBk
aXNwYXRjaGVkLCBhbmQgc2hvdWxkIGJlIDMzMyAvIDMzMyAiOwogICAgIHJlc3VsdFN1bW1hcnkg
Kz0gKGZvY3VzQ291bnQ9PWJsdXJDb3VudCkgPyAiPHNwYW4gc3R5bGU9J2NvbG9yOmdyZWVuJz5Q
QVNTRUQ8L3NwYW4+PGJyPiIgOiAiPHNwYW4gc3R5bGU9J2NvbG9yOnJlZCc+RkFJTEVEPC9zcGFu
Pjxicj4iOwogICAgIHJlc3VsdFN1bW1hcnkgKz0gIlRvdGFsIG9mICIrZmFpbGVkVGVzdENvdW50
KyIgZm9jdXMgdGVzdChzKSBmYWlsZWQuIjsKICAgICBpZiAoZmFpbGVkVGVzdENvdW50KQpJbmRl
eDogTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi1tZWRpYS1lbGVtZW50
cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5h
dmlnYXRpb24vc25hdi1tZWRpYS1lbGVtZW50cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1lbnRz
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyNCBAQAorVGhpcyBpcyBhIGxp
bmsgc3RhcnQgb2YgVGVzdC4KKworVGhpcyBpcyBhIGxpbmsgaTIuCisKK1RoaXMgaXMgYSBsaW5r
IGk0LgorCitUaGlzIGlzIGEgbGluayBpNi4KKworVGhpcyBpcyBhIGxpbmsgaTguCisKK1RoaXMg
aXMgYSBsaW5rIEVuZCBvZiBUZXN0LgorCitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxl
bWVudC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgInYxIgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFj
dGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJpMiIKK1BBU1MgZ0ZvY3VzZWREb2N1
bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAidjMiCitQQVNTIGdGb2N1
c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgImk0IgorUEFT
UyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJ2
NSIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQi
KSBpcyAiaTYiCitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1
dGUoImlkIikgaXMgImE3IgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0
QXR0cmlidXRlKCJpZCIpIGlzICJpOCIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVt
ZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAiZW5kIgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFj
dGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJpOCIKK1BBU1MgZ0ZvY3VzZWREb2N1
bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAiZW5kIgorVGhpcyB0ZXN0
cyB0aGF0IGEgbWVkaWEgZWxlbWVudHMgaWU6IDxBdWRpbz4gb3IgPHZpZGVvPiwgd2l0aG91dCB0
YWJpbmRleCBhcmUgYWJsZSB0byBiZSByZWFjaGVkIHRocm91Z2gga2V5Ym9hcmQgYWNjZXNzCklu
ZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1l
bnRzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRp
b24vc25hdi1tZWRpYS1lbGVtZW50cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMv
ZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi1tZWRpYS1lbGVtZW50cy5odG1sCShyZXZpc2lv
biAwKQpAQCAtMCwwICsxLDczIEBACis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHNjcmlwdCBzcmM9
Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBz
cmM9InJlc291cmNlcy9zcGF0aWFsLW5hdmlnYXRpb24tdXRpbHMuanMiPjwvc2NyaXB0PgorICAg
IDxzY3JpcHQgdHlwZT0iYXBwbGljYXRpb24vamF2YXNjcmlwdCI+CisKKyAgICB2YXIgcmVzdWx0
TWFwID0gWworICAgICAgWyJEb3duIiwgInYxIl0sCisgICAgICBbIkRvd24iLCAiaTIiXSwKKyAg
ICAgIFsiRG93biIsICJ2MyJdLAorICAgICAgWyJEb3duIiwgImk0Il0sCisgICAgICBbIkRvd24i
LCAidjUiXSwKKyAgICAgIFsiRG93biIsICJpNiJdLAorICAgICAgWyJEb3duIiwgImE3Il0sCisg
ICAgICBbIkRvd24iLCAiaTgiXSwKKyAgICAgIFsiRG93biIsICJlbmQiXSwKKyAgICAgIFsiVXAi
LCAiaTgiXSwKKyAgICAgIFsiRG93biIsICJlbmQiXSwKKyAgICAgIFsiRE9ORSIsICJET05FIl0K
KyAgICBdOworCisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIuc2V0U3BhdGlhbE5hdmlnYXRpb25FbmFibGVkKHRydWUpOworICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRUYWJUb0xpbmtzUHJlZmVyZW5j
ZUtleSIsIDEpOworICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQorICAgIHsKKyAgICAgIC8vIHN0YXJ0aW5n
IHRoZSB0ZXN0IGl0c2VsZjogZ2V0IHRvIGEga25vd24gcGxhY2UuCisgICAgICBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgic3RhcnQiKS5mb2N1cygpOworCisgICAgICBpbml0VGVzdChyZXN1bHRN
YXAsIHRlc3RDb21wbGV0ZWQpOworICAgIH0KKworICAgIGZ1bmN0aW9uIHRlc3RDb21wbGV0ZWQo
KQorICAgIHsKKyAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICB9CisKKyAgICB3aW5kb3cu
b25sb2FkID0gcnVuVGVzdDsKKworICAgIDwvc2NyaXB0PgorICAgIDxzY3JpcHQgc3JjPSJqcy9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAgPC9oZWFkPgorCisgIDxib2R5
IGlkPSJzb21lLWNvbnRlbnQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4K
KworICAgIDxwPlRoaXMgaXMgYSBsaW5rIDxhIGlkPSJzdGFydCIgaHJlZj0iYSI+c3RhcnQgb2Yg
VGVzdDwvYT4uPC9wPgorICAgIDx2aWRlbyBpZD0idjEiIGNvbnRyb2xzIHRhYmluZGV4PSIwIiBz
cmM9Ii4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+CisKKyAgICA8cD5UaGlz
IGlzIGEgbGluayA8YSBpZD0iaTIiIGhyZWY9ImEiPmkyPC9hPi48L3A+CisgICAgPHZpZGVvIGlk
PSJ2MyIgY29udHJvbHMgc3JjPSIuLi8uLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVv
PgorCisgICAgPHA+VGhpcyBpcyBhIGxpbmsgPGEgaWQ9Imk0IiBocmVmPSJhIj5pNDwvYT4uPC9w
PgorICAgIDx2aWRlbyBpZD0idjUiIHRhYmluZGV4PSIwIiBzcmM9Ii4uLy4uL21lZGlhL2NvbnRl
bnQvdGVzdC5tcDQiPjwvdmlkZW8+CisKKyAgICA8cD5UaGlzIGlzIGEgbGluayA8YSBpZD0iaTYi
IGhyZWY9ImEiPmk2PC9hPi48L3A+CisgICAgPGF1ZGlvIGlkPSJhNyIgY29udHJvbHMgc3JjPSIu
Li8uLi9tZWRpYS9jb250ZW50L3Rlc3Qud2F2Ij48L2F1ZGlvPgorCisgICAgPHA+VGhpcyBpcyBh
IGxpbmsgPGEgaWQ9Imk4IiBocmVmPSJhIj5pODwvYT4uPC9wPgorICAgIDwhLS0gJ2E5JyBpcyBu
b3QgZm9jdXNzYWJsZTogbm8gY29udHJvbHMgYXR0cmlidXRlIGFzIHdlbGwgbm8gdGFiIGluZGV4
LgorICAgIEtleSBkb3duIGZyb20gJ2k4JyBzaG91bGQgZ28gdG8gJ2VuZCcuIC0tPgorICAgIDxh
dWRpbyBpZD0iYTkiIHNyYz0iLi4vLi4vbWVkaWEvY29udGVudC90ZXN0Lm1wNCI+PC9hdWRpbz4K
KworICAgIDxwPlRoaXMgaXMgYSBsaW5rIDxhIGlkPSJlbmQiIGhyZWY9ImEiPkVuZCBvZiBUZXN0
PC9hPi48L3A+CisKKyAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKyAgICA8cD5UaGlzIHRl
c3RzIHRoYXQgYSBtZWRpYSBlbGVtZW50cyBpZTogPGNvZGU+Jmx0O0F1ZGlvJmd0OzwvY29kZT4g
b3IgPGNvZGU+Jmx0O3ZpZGVvJmd0OzwvY29kZT4sIHdpdGhvdXQgdGFiaW5kZXggYXJlIGFibGUg
dG8gYmUgcmVhY2hlZCB0aHJvdWdoIGtleWJvYXJkIGFjY2VzczwvcD4KKyAgPC9ib2R5PgorPC9o
dG1sPgo=
</data>
<flag name="review"
          id="103790"
          type_id="1"
          status="+"
          setter="tonikitoo"
    />
    <flag name="commit-queue"
          id="103791"
          type_id="3"
          status="-"
          setter="tonikitoo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>107644</attachid>
            <date>2011-09-16 07:10:37 -0700</date>
            <delta_ts>2011-09-17 03:56:23 -0700</delta_ts>
            <desc>Updated Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>13258</size>
            <attacher name="Deepak Sherveghar">bpwv64</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk1Mjg5KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMDktMTYgIERlZXBhayBT
aGVydmVnaGFyICA8YnB3djY0QG1vdG9yb2xhLmNvbT4KKworICAgICAgICBPdmVycmlkZSBzdXBw
b3J0c0ZvY3VzKCkgZm9yIEhUTUxNZWRpYUVsZW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzE5MAorCisgICAgICAgIFJldmlld2VkIGJ5IEFu
dG9uaW8gR29tZXMuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvZXZlbnRzL21lZGlhLWVsZW1lbnQt
Zm9jdXMtdGFiLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3Nu
YXYtbWVkaWEtZWxlbWVudHMuaHRtbAorCisgICAgICAgIFJldHVybiB0cnVlIGZyb20gc3VwcG9y
dHNGb2N1cygpIGlmIGNvbnRyb2wncyBhdHRyaWJ1dGUgaXMgcHJlc2VudCBvciBhIHRhYmluZGV4
IGlzIHNwZWNpZmllZC4KKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKToKKyAgICAg
ICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKwogMjAxMS0wOS0xNiAgQW5kcmV5IEtvc3lh
a292ICA8Y2FzZXFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IFtFeHRl
bnNpb25zIEFQSV0gc3VwcG9ydCBleHRlbnNpb25zIGZvciByZW1vdGUgaW5zcGVjdG9yIGZyb250
LWVuZApJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCShyZXZp
c2lvbiA5NTI4OSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI0NSw2ICsyNDUsMTIgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpkaWRNb3ZlVG9OZXdPd25lcgogICAgIEhUTUxFbGVtZW50OjpkaWRNb3ZlVG9OZXdPd25lckRv
Y3VtZW50KCk7CiB9CiAKK2Jvb2wgSFRNTE1lZGlhRWxlbWVudDo6c3VwcG9ydHNGb2N1cygpIGNv
bnN0Cit7CisgICAgLy8gSWYgbm8gY29udHJvbHMgc3BlY2lmaWVkLCB3ZSBzaG91bGQgc3RpbGwg
YmUgYWJsZSB0byBmb2N1cyB0aGUgZWxlbWVudCBpZiBpdCBoYXMgdGFiSW5kZXguCisgICAgcmV0
dXJuIGNvbnRyb2xzKCkgfHwgIEhUTUxFbGVtZW50OjpzdXBwb3J0c0ZvY3VzKCk7Cit9CisKIHZv
aWQgSFRNTE1lZGlhRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChBdHRyaWJ1dGUqIGF0dHIsIGJv
b2wgcHJlc2VydmVEZWNscykKIHsKICAgICBIVE1MRWxlbWVudDo6YXR0cmlidXRlQ2hhbmdlZChh
dHRyLCBwcmVzZXJ2ZURlY2xzKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5oCShyZXZpc2lvbiA5NTI4OSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNDksNiArMjQ5LDcgQEAgcHJvdGVjdGVkOgog
cHJpdmF0ZToKICAgICB2b2lkIGNyZWF0ZU1lZGlhUGxheWVyKCk7CiAKKyAgICB2aXJ0dWFsIGJv
b2wgc3VwcG9ydHNGb2N1cygpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBhdHRyaWJ1dGVDaGFu
Z2VkKEF0dHJpYnV0ZSosIGJvb2wgcHJlc2VydmVEZWNscyk7CiAgICAgdmlydHVhbCBib29sIHJl
bmRlcmVySXNOZWVkZWQoY29uc3QgTm9kZVJlbmRlcmluZ0NvbnRleHQmKTsKICAgICB2aXJ0dWFs
IFJlbmRlck9iamVjdCogY3JlYXRlUmVuZGVyZXIoUmVuZGVyQXJlbmEqLCBSZW5kZXJTdHlsZSop
OwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkocmV2aXNpb24gOTUyODkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdv
cmtpbmcgY29weSkKQEAgLTEsMyArMSwyMiBAQAorMjAxMS0wOS0xNiAgRGVlcGFrIFNoZXJ2ZWdo
YXIgIDxicHd2NjRAbW90b3JvbGEuY29tPgorCisgICAgICAgIE92ZXJyaWRlIHN1cHBvcnRzRm9j
dXMoKSBmb3IgSFRNTE1lZGlhRWxlbWVudC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTY3MTkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50b25pbyBH
b21lcy4KKworICAgICAgICBGb3IgbWVkaWEgZWxlbWVudHMgYmUgYWJsZSB0byByZWNlaXZlIGZv
Y3VzIHdpdGhvdXQgdGFiaW5kZXggaWYKKyAgICAgICAgY29udHJvbCBhdHRyaWJ1dGUgaXMgcHJl
c2VudCwgaGVuY2UgY2hhbmdlZAorICAgICAgICB0YWJpbmRleC1mb2N1cy1ibHVyLWFsbC5qcyBh
bmQgdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwtZXhwZWN0ZWQudHh0LgorCisgICAgICAgICogZmFz
dC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWItZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2V2ZW50cy9tZWRpYS1lbGVtZW50LWZvY3VzLXRhYi5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFiaW5kZXgtZm9jdXMtYmx1ci1hbGwu
anM6CisgICAgICAgICh0ZXN0KToKKyAgICAgICAgKiBmYXN0L2V2ZW50cy90YWJpbmRleC1mb2N1
cy1ibHVyLWFsbC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9zcGF0aWFsLW5hdmlnYXRp
b24vc25hdi1tZWRpYS1lbGVtZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMuaHRtbDogQWRkZWQuCisK
IDIwMTEtMDktMTYgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQgdGVzdCBmaXggZm9yIHI5NTI4Ny4KSW5kZXg6IExheW91dFRlc3Rz
L2Zhc3QvZXZlbnRzL21lZGlhLWVsZW1lbnQtZm9jdXMtdGFiLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tZWRpYS1lbGVtZW50LWZvY3VzLXRhYi1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9tZWRp
YS1lbGVtZW50LWZvY3VzLXRhYi1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTggQEAKK1RoaXMgdGVzdHMgdGhhdCBhIG1lZGlhIGVsZW1lbnQgaWU6IDxBdWRpbz4gb3IgPHZp
ZGVvPiwgd2l0aG91dCB0YWJpbmRleCBjYW4gYmUgc2VsZWN0ZWQgd2l0aCBrZXlib2FyZCAoVEFC
IEtleSkKKworU1VDQ0VTUzogVGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50ICh2
aWRlbzEpLiBURVNUOiBXaXRoVGFiSW5kZXhWaWRlby4KK1NVQ0NFU1M6IFRhYi1LZXkgZGlkIHRh
YiB0byB0aGUgTWVkaWEgRWxlbWVudCAodmlkZW8yKS4gVEVTVDogV2l0aG91dFRhYkluZGV4Vmlk
ZW8uCitTVUNDRVNTOiBUYWItS2V5IGRpZCB0YWIgdG8gdGhlIE1lZGlhIEVsZW1lbnQgKHZpZGVv
MykuIFRFU1Q6IFdpdGhvdXRDb250cm9sc0J1dFdpdGhUYWJJbmRleFZpZGVvLgorU1VDQ0VTUzog
VGFiLUtleSBkaWQgdGFiIHRvIHRoZSBNZWRpYSBFbGVtZW50IChhdWRpbzEpLiBURVNUOiBXaXRo
b3V0VGFiSW5kZXhBdWRpby4KK1NVQ0NFU1M6IFRhYi1LZXkgZGlkIG5vdCB0YWIgdG8gdGhlIE1l
ZGlhIEVsZW1lbnQgKGF1ZGlvMikuIFRFU1Q6IFdpdGhvdXRDb250cm9sYUFuZFRhYkluZGV4QXVk
aW8uCisgCisgCisgCisgCisgCisgCisgCisgCisgCisKKwpJbmRleDogTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWIuaHRtbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy9tZWRpYS1lbGVtZW50LWZvY3VzLXRhYi5odG1sCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvbWVkaWEtZWxlbWVudC1mb2N1cy10YWIu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw3MSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+CisgIDxib2R5IGlkPSJib2R5Ij4KKyAg
ICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBtZWRpYSBlbGVtZW50IGllOiA8Y29kZT4mbHQ7QXVkaW8m
Z3Q7PC9jb2RlPiBvciA8Y29kZT4mbHQ7dmlkZW8mZ3Q7PC9jb2RlPiwgd2l0aG91dCB0YWJpbmRl
eCBjYW4gYmUgc2VsZWN0ZWQgd2l0aCBrZXlib2FyZCAoVEFCIEtleSk8L3A+CisgICAgPHByZSBp
ZD0iY29uc29sZSI+PC9wcmU+CisKKyAgICA8aW5wdXQgaWQ9IldpdGhUYWJJbmRleFZpZGVvIiB0
eXBlPXRleHQ+CisgICAgPGJyPgorICAgIDx2aWRlbyBpZD0idmlkZW8xIiBvbmZvY3VzPSJ3aW5k
b3cubWVkaWFGb2N1c2VkID0gdHJ1ZSIgY29udHJvbHMgdGFiaW5kZXg9IjAiIHNyYz0iLi4vbWVk
aWEvY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICA8YnI+CisKKyAgICA8aW5wdXQgaWQ9
IldpdGhvdXRUYWJJbmRleFZpZGVvIiB0eXBlPXRleHQ+CisgICAgPGJyPgorICAgIDx2aWRlbyBp
ZD0idmlkZW8yIiBvbmZvY3VzPSJ3aW5kb3cubWVkaWFGb2N1c2VkID0gdHJ1ZSIgY29udHJvbHMg
c3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorICAgIDxicj4KKworICAg
IDxpbnB1dCBpZD0iV2l0aG91dENvbnRyb2xzQnV0V2l0aFRhYkluZGV4VmlkZW8iIHR5cGU9dGV4
dD4KKyAgICA8YnI+CisgICAgPHZpZGVvIGlkPSJ2aWRlbzMiIG9uZm9jdXM9IndpbmRvdy5tZWRp
YUZvY3VzZWQgPSB0cnVlIiB0YWJpbmRleD0iMCIgc3JjPSIuLi9tZWRpYS9jb250ZW50L3Rlc3Qu
bXA0Ij48L3ZpZGVvPgorICAgIDxicj4KKworICAgIDxpbnB1dCBpZD0iV2l0aG91dFRhYkluZGV4
QXVkaW8iIHR5cGU9dGV4dD4KKyAgICA8YnI+CisgICAgPGF1ZGlvIGlkPSJhdWRpbzEiIG9uZm9j
dXM9IndpbmRvdy5tZWRpYUZvY3VzZWQgPSB0cnVlIiBjb250cm9scyBzcmM9Ii4uL21lZGlhL2Nv
bnRlbnQvdGVzdC53YXYiPjwvYXVkaW8+CisgICAgPGJyPgorCisgICAgPGlucHV0IGlkPSJXaXRo
b3V0Q29udHJvbGFBbmRUYWJJbmRleEF1ZGlvIiB0eXBlPXRleHQ+CisgICAgPGJyPgorICAgIDxh
dWRpbyBpZD0iYXVkaW8yIiBvbmZvY3VzPSJ3aW5kb3cubWVkaWFGb2N1c2VkID0gdHJ1ZSIgc3Jj
PSIuLi9tZWRpYS9jb250ZW50L3Rlc3QubXA0Ij48L2F1ZGlvPgorICAgIDxicj4KKworICAgIDxz
Y3JpcHQ+CisKKyAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAg
IGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgICAgZnVuY3Rpb24gdGVz
dChtZWRpYUlkLCBmaWVsZElkLCBzaG91bGJlZm9jdXNzZWQpCisgICAgICB7CisgICAgICAgIGlm
ICghd2luZG93LmV2ZW50U2VuZGVyKQorICAgICAgICAgIHJldHVybjsKKworICAgICAgICB2YXIg
bWVkaWFGb2N1c2VkUmVzdWx0LCBtZWRpYU5vdEZvY3VzZWRSZXN1bHQ7CisgICAgICAgIGlmIChz
aG91bGJlZm9jdXNzZWQpCisgICAgICAgIHsKKyAgICAgICAgICAgbWVkaWFGb2N1c2VkUmVzdWx0
ID0gIlNVQ0NFU1MiOworICAgICAgICAgICBtZWRpYU5vdEZvY3VzZWRSZXN1bHQgPSAiRkFJTCI7
CisgICAgICAgIH0KKyAgICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgbWVkaWFGb2N1
c2VkUmVzdWx0ID0gIkZBSUwiOworICAgICAgICAgIG1lZGlhTm90Rm9jdXNlZFJlc3VsdCA9ICJT
VUNDRVNTIjsKKyAgICAgICAgfQorCisgICAgICAgIHdpbmRvdy5tZWRpYUZvY3VzZWQgPSBmYWxz
ZTsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZmllbGRJZCkuZm9jdXMoKTsKKyAg
ICAgICAgZXZlbnRTZW5kZXIua2V5RG93bignXHQnKTsKKyAgICAgICAgaWYgKHdpbmRvdy5tZWRp
YUZvY3VzZWQpCisgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnNvbGUiKS5p
bm5lckhUTUwgKz0gbWVkaWFGb2N1c2VkUmVzdWx0ICsgIjogVGFiLUtleSBkaWQgdGFiIHRvIHRo
ZSBNZWRpYSBFbGVtZW50ICgiICsgbWVkaWFJZCArICIpLiBURVNUOiAiICsgZmllbGRJZCArICIu
XG4iOworICAgICAgICBlbHNlCisgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNv
bnNvbGUiKS5pbm5lckhUTUwgKz0gbWVkaWFOb3RGb2N1c2VkUmVzdWx0ICsgIjogVGFiLUtleSBk
aWQgbm90IHRhYiB0byB0aGUgTWVkaWEgRWxlbWVudCAoIiArIG1lZGlhSWQgKyAiKS4gVEVTVDog
IiArIGZpZWxkSWQgKyAiLlxuIjsKKyAgICAgIH0KKworICAgICAgdGVzdCgidmlkZW8xIiwgIldp
dGhUYWJJbmRleFZpZGVvIiwgdHJ1ZSk7CisgICAgICB0ZXN0KCJ2aWRlbzIiLCAiV2l0aG91dFRh
YkluZGV4VmlkZW8iLCB0cnVlKTsKKyAgICAgIHRlc3QoInZpZGVvMyIsICJXaXRob3V0Q29udHJv
bHNCdXRXaXRoVGFiSW5kZXhWaWRlbyIsIHRydWUpOworICAgICAgdGVzdCgiYXVkaW8xIiwgIldp
dGhvdXRUYWJJbmRleEF1ZGlvIiwgIlNVQ0NFU1MiLCB0cnVlKTsKKyAgICAgIHRlc3QoImF1ZGlv
MiIsICJXaXRob3V0Q29udHJvbGFBbmRUYWJJbmRleEF1ZGlvIiwgZmFsc2UpOworCisgICAgPC9z
Y3JpcHQ+CisgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZXZlbnRz
L3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9mYXN0L2V2ZW50cy90YWJpbmRleC1mb2N1cy1ibHVyLWFsbC1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDk1Mjg5KQorKysgTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdGFiaW5kZXgtZm9j
dXMtYmx1ci1hbGwtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0xLDIgKzEsMiBAQAot
MzMxIGZvY3VzIC8gMzMxIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFuZCBzaG91bGQgYmUgMzMx
IC8gMzMxIFBBU1NFRAorMzMzIGZvY3VzIC8gMzMzIGJsdXIgZXZlbnRzIGRpc3BhdGNoZWQsIGFu
ZCBzaG91bGQgYmUgMzMzIC8gMzMzIFBBU1NFRAogVG90YWwgb2YgMCBmb2N1cyB0ZXN0KHMpIGZh
aWxlZC4gUEFTU0VECkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9yZXNvdXJjZXMvdGFi
aW5kZXgtZm9jdXMtYmx1ci1hbGwuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9l
dmVudHMvcmVzb3VyY2VzL3RhYmluZGV4LWZvY3VzLWJsdXItYWxsLmpzCShyZXZpc2lvbiA5NTI4
OSkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Jlc291cmNlcy90YWJpbmRleC1mb2N1cy1i
bHVyLWFsbC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTcsNyArMTcsOSBAQCB2YXIgdGFnTmFtZXNB
bHdheXNGb2N1c2VkID0gWyJBIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIklOUFVU
IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIklTSU5ERVgiLAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAiU0VMRUNUIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IlRFWFRBUkVBIl07CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJURVhUQVJFQSIsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJBVURJTyIsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICJWSURFTyJdOwogCiB2YXIgdGFnTmFtZXNUcmFuc2ZlckZvY3VzZWQgPSBbIkxB
QkVMIl07IC8vIGxhYmVscyBhbHdheXMgdHJhbnNmZXIgZm9jdXMgdG8gdGhlIGxhYmVsZWQgZWxl
bWVudAogCkBAIC01Miw3ICs1NCw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgIHZhciBob21lQmFz
ZSA9IHdpbmRvdy5mcmFtZXNbMV0uZG9jdW1lbnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgnaG9t
ZWJhc2UnKTsKICAgICBob21lQmFzZVswXS5mb2N1cygpOwogCi0gICAgdmFyIHJlc3VsdFN1bW1h
cnkgPSBmb2N1c0NvdW50KyIgZm9jdXMgLyAiK2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3Bh
dGNoZWQsIGFuZCBzaG91bGQgYmUgMzMxIC8gMzMxICI7CisgICAgdmFyIHJlc3VsdFN1bW1hcnkg
PSBmb2N1c0NvdW50KyIgZm9jdXMgLyAiK2JsdXJDb3VudCsiIGJsdXIgZXZlbnRzIGRpc3BhdGNo
ZWQsIGFuZCBzaG91bGQgYmUgMzMzIC8gMzMzICI7CiAgICAgcmVzdWx0U3VtbWFyeSArPSAoZm9j
dXNDb3VudD09Ymx1ckNvdW50KSA/ICI8c3BhbiBzdHlsZT0nY29sb3I6Z3JlZW4nPlBBU1NFRDwv
c3Bhbj48YnI+IiA6ICI8c3BhbiBzdHlsZT0nY29sb3I6cmVkJz5GQUlMRUQ8L3NwYW4+PGJyPiI7
CiAgICAgcmVzdWx0U3VtbWFyeSArPSAiVG90YWwgb2YgIitmYWlsZWRUZXN0Q291bnQrIiBmb2N1
cyB0ZXN0KHMpIGZhaWxlZC4iOwogICAgIGlmIChmYWlsZWRUZXN0Q291bnQpCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVsZW1lbnRzLWV4cGVj
dGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlv
bi9zbmF2LW1lZGlhLWVsZW1lbnRzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBACitUaGlzIGlzIGEgbGluayBzdGFy
dCBvZiBUZXN0LgorCitUaGlzIGlzIGEgbGluayBpMi4KKworVGhpcyBpcyBhIGxpbmsgaTQuCisK
K1RoaXMgaXMgYSBsaW5rIGk2LgorCitUaGlzIGlzIGEgbGluayBpOC4KKworVGhpcyBpcyBhIGxp
bmsgRW5kIG9mIFRlc3QuCisKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVtZW50Lmdl
dEF0dHJpYnV0ZSgiaWQiKSBpcyAic3RhcnQiCitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZl
RWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgInYxIgorUEFTUyBnRm9jdXNlZERvY3VtZW50
LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJpMiIKK1BBU1MgZ0ZvY3VzZWRE
b2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAidjMiCitQQVNTIGdG
b2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoImlkIikgaXMgImk0Igor
UEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlz
ICJ2NSIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgi
aWQiKSBpcyAiaTYiCitQQVNTIGdGb2N1c2VkRG9jdW1lbnQuYWN0aXZlRWxlbWVudC5nZXRBdHRy
aWJ1dGUoImlkIikgaXMgImE3IgorUEFTUyBnRm9jdXNlZERvY3VtZW50LmFjdGl2ZUVsZW1lbnQu
Z2V0QXR0cmlidXRlKCJpZCIpIGlzICJpOCIKK1BBU1MgZ0ZvY3VzZWREb2N1bWVudC5hY3RpdmVF
bGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAiZW5kIgorUEFTUyBnRm9jdXNlZERvY3VtZW50
LmFjdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCJpZCIpIGlzICJpOCIKK1BBU1MgZ0ZvY3VzZWRE
b2N1bWVudC5hY3RpdmVFbGVtZW50LmdldEF0dHJpYnV0ZSgiaWQiKSBpcyAiZW5kIgorVGhpcyB0
ZXN0cyB0aGF0IGEgbWVkaWEgZWxlbWVudHMgaWU6IDxBdWRpbz4gb3IgPHZpZGVvPiwgd2l0aG91
dCB0YWJpbmRleCBhcmUgYWJsZSB0byBiZSByZWFjaGVkIHRocm91Z2gga2V5Ym9hcmQgYWNjZXNz
CkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3NwYXRpYWwtbmF2aWdhdGlvbi9zbmF2LW1lZGlhLWVs
ZW1lbnRzLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9zcGF0aWFsLW5hdmln
YXRpb24vc25hdi1tZWRpYS1lbGVtZW50cy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvZmFzdC9zcGF0aWFsLW5hdmlnYXRpb24vc25hdi1tZWRpYS1lbGVtZW50cy5odG1sCShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDc1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYv
L0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL2pz
L3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9InJl
c291cmNlcy9zcGF0aWFsLW5hdmlnYXRpb24tdXRpbHMuanMiPjwvc2NyaXB0PgorICAgIDxzY3Jp
cHQgdHlwZT0iYXBwbGljYXRpb24vamF2YXNjcmlwdCI+CisKKyAgICB2YXIgcmVzdWx0TWFwID0g
WworICAgICAgWyJVcCIsICJzdGFydCJdLAorICAgICAgWyJEb3duIiwgInYxIl0sCisgICAgICBb
IkRvd24iLCAiaTIiXSwKKyAgICAgIFsiRG93biIsICJ2MyJdLAorICAgICAgWyJEb3duIiwgImk0
Il0sCisgICAgICBbIkRvd24iLCAidjUiXSwKKyAgICAgIFsiRG93biIsICJpNiJdLAorICAgICAg
WyJEb3duIiwgImE3Il0sCisgICAgICBbIkRvd24iLCAiaTgiXSwKKyAgICAgIFsiRG93biIsICJl
bmQiXSwKKyAgICAgIFsiVXAiLCAiaTgiXSwKKyAgICAgIFsiRG93biIsICJlbmQiXSwKKyAgICAg
IFsiRE9ORSIsICJET05FIl0KKyAgICBdOworCisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgeworICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAg
ICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuc2V0U3BhdGlhbE5hdmlnYXRpb25FbmFibGVkKHRydWUp
OworICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCJXZWJLaXRU
YWJUb0xpbmtzUHJlZmVyZW5jZUtleSIsIDEpOworICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
d2FpdFVudGlsRG9uZSgpOworICAgIH0KKworICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQorICAgIHsK
KyAgICAgIC8vIHN0YXJ0aW5nIHRoZSB0ZXN0IGl0c2VsZjogZ2V0IHRvIGEga25vd24gcGxhY2Uu
CisgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhcnQiKS5mb2N1cygpOworCisgICAg
ICBpbml0VGVzdChyZXN1bHRNYXAsIHRlc3RDb21wbGV0ZWQpOworICAgIH0KKworICAgIGZ1bmN0
aW9uIHRlc3RDb21wbGV0ZWQoKQorICAgIHsKKyAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENv
bnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAg
ICB9CisKKyAgICB3aW5kb3cub25sb2FkID0gcnVuVGVzdDsKKworICAgIDwvc2NyaXB0PgorICAg
IDxzY3JpcHQgc3JjPSJqcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKyAg
PC9oZWFkPgorCisgIDxib2R5IGlkPSJzb21lLWNvbnRlbnQiIHhtbG5zPSJodHRwOi8vd3d3Lncz
Lm9yZy8xOTk5L3hodG1sIj4KKworICAgIDxwPlRoaXMgaXMgYSBsaW5rIDxhIGlkPSJzdGFydCIg
aHJlZj0iYSI+c3RhcnQgb2YgVGVzdDwvYT4uPC9wPgorICAgIDx2aWRlbyBpZD0idjEiIGNvbnRy
b2xzIHRhYmluZGV4PSIwIiBzcmM9Ii4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdC5tcDQiPjwvdmlk
ZW8+CisKKyAgICA8cD5UaGlzIGlzIGEgbGluayA8YSBpZD0iaTIiIGhyZWY9ImEiPmkyPC9hPi48
L3A+CisgICAgPHZpZGVvIGlkPSJ2MyIgY29udHJvbHMgc3JjPSIuLi8uLi9tZWRpYS9jb250ZW50
L3Rlc3QubXA0Ij48L3ZpZGVvPgorCisgICAgPHA+VGhpcyBpcyBhIGxpbmsgPGEgaWQ9Imk0IiBo
cmVmPSJhIj5pNDwvYT4uPC9wPgorICAgIDx2aWRlbyBpZD0idjUiIHRhYmluZGV4PSIwIiBzcmM9
Ii4uLy4uL21lZGlhL2NvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+CisKKyAgICA8cD5UaGlzIGlz
IGEgbGluayA8YSBpZD0iaTYiIGhyZWY9ImEiPmk2PC9hPi48L3A+CisgICAgPGF1ZGlvIGlkPSJh
NyIgY29udHJvbHMgc3JjPSIuLi8uLi9tZWRpYS9jb250ZW50L3Rlc3Qud2F2Ij48L2F1ZGlvPgor
CisgICAgPHA+VGhpcyBpcyBhIGxpbmsgPGEgaWQ9Imk4IiBocmVmPSJhIj5pODwvYT4uPC9wPgor
ICAgIDwhLS0gJ2E5JyBpcyBub3QgZm9jdXNzYWJsZTogbm8gY29udHJvbHMgYXR0cmlidXRlIGFz
IHdlbGwgbm8gdGFiIGluZGV4LgorICAgIEtleSBkb3duIGZyb20gJ2k4JyBzaG91bGQgZ28gdG8g
J2VuZCcuIC0tPgorICAgIDxhdWRpbyBpZD0iYTkiIHNyYz0iLi4vLi4vbWVkaWEvY29udGVudC90
ZXN0Lm1wNCI+PC9hdWRpbz4gCisKKyAgICA8cD5UaGlzIGlzIGEgbGluayA8YSBpZD0iZW5kIiBo
cmVmPSJhIj5FbmQgb2YgVGVzdDwvYT4uPC9wPgorCisgICAgPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+CisgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGEgbWVkaWEgZWxlbWVudHMgaWU6IDxjb2RlPiZs
dDtBdWRpbyZndDs8L2NvZGU+IG9yIDxjb2RlPiZsdDt2aWRlbyZndDs8L2NvZGU+LCB3aXRob3V0
IHRhYmluZGV4IGFyZSBhYmxlIHRvIGJlIHJlYWNoZWQgdGhyb3VnaCBrZXlib2FyZCBhY2Nlc3M8
L3A+CisgIDwvYm9keT4KKzwvaHRtbD4KClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3Rz
L2Zhc3Qvc3BhdGlhbC1uYXZpZ2F0aW9uL3NuYXYtbWVkaWEtZWxlbWVudHMuaHRtbApfX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fCkFkZGVkOiBzdm46ZXhlY3V0YWJsZQogICArICoKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>