<?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>28327</bug_id>
          
          <creation_ts>2009-08-14 15:50:12 -0700</creation_ts>
          <short_desc>Media layout tests should have a way to provide test files in different formats</short_desc>
          <delta_ts>2009-09-21 14:33:26 -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>Layout and Rendering</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Hin-Chung Lam">hclam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>eric</cc>
    
    <cc>levin</cc>
    
    <cc>scherkus</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>140368</commentid>
    <comment_count>0</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-08-14 15:50:12 -0700</bug_when>
    <thetext>All media/ layout tests are now using hard-coded file names, and the test files are mostly H264/AAC, if a port doesn&apos;t support such formats, the tests will all fail. We should provide a method to swap in test files with different formats easily.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>140491</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-08-15 16:16:16 -0700</bug_when>
    <thetext>How about a function in the shared js file that takes a string and returns a file name appropriate for the current platform? For example &quot;test&quot; would return &quot;test.mp4&quot; for platforms that support MPEG-4.   Many of the older tests would have to be restructured, but we can switch them gradually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>140762</commentid>
    <comment_count>2</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-08-17 11:02:16 -0700</bug_when>
    <thetext>(In reply to comment #1)
That sounds like a good idea, we could set up a platform specific list of test files and a lookup method. For example:

var safariTests=new Array(&quot;test.mp4&quot;,&quot;sound.m4a&quot;);
var chromiumTests=new Array(&quot;test.ogv&quot;,&quot;sound.ogg&quot;);

function find(name) {
  if (platform == &quot;safari&quot;) { /* find in safariTests */}
  if (platform == &quot;chromium&quot;) { /* find in chromiumTests */}
}

The question is how can we determine which platform we are in?

In terms of modifying the tests, I can help with the effort.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144549</commentid>
    <comment_count>3</comment_count>
      <attachid>38997</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-03 11:22:22 -0700</bug_when>
    <thetext>Created attachment 38997
First round of changes - 10 tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145543</commentid>
    <comment_count>4</comment_count>
      <attachid>38997</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-08 14:39:48 -0700</bug_when>
    <thetext>Comment on attachment 38997
First round of changes - 10 tests

&gt; +++ b/LayoutTests/media/controls-strict.html
&gt; +++ b/LayoutTests/media/controls-styling.html
&gt; +++ b/LayoutTests/media/video-aspect-ratio.html
&gt; +++ b/LayoutTests/media/video-controls-rendering.html
&gt; +++ b/LayoutTests/media/video-layer-crash.html
&gt; +++ b/LayoutTests/media/video-transformed.html
&gt; +++ b/LayoutTests/media/video-zoom-controls.html

  Passing the media file path to init() will only work as long as every pixel tests use a single media file. I think it would make more sense to add a function to each test file to set the src attribute for each video element before calling the existing init().

&gt; +++ b/LayoutTests/media/media-file.js

&gt; +function findMediaFile(type, name) {
&gt; +    var codecs;
&gt; +    if (type == &quot;audio&quot;)
&gt; +        codecs = audioCodecs;
&gt; +    else
&gt; +        codecs = videoCodecs;
&gt; +
&gt; +    var element = document.createElement(type);
&gt; +    for (var i = 0; i &lt; codecs.length; ++i) {
&gt; +        if (element.canPlayType(codecs[i][0]))
&gt; +            return name + &quot;.&quot; + codecs[i][1];
&gt; +    }
&gt; +
&gt; +    return &quot;&quot;;
&gt; +}

  
  It should be more efficient to call canPlayType() on an existing element if there is one. I would check to see if one exists before creating a new one.


&gt; --- a/LayoutTests/media/video-append-source.html

&gt;  &lt;script&gt;
&gt;      testExpected(&quot;video.currentSrc&quot;, &quot;&quot;);
&gt;      var source = document.createElement(&quot;source&quot;);
&gt; -    source.setAttribute(&quot;src&quot;, &quot;content/test.mp4&quot;);
&gt; +    source.setAttribute(&quot;src&quot;, findMediaFile(&quot;video&quot;, &quot;content/test&quot;));
&gt;      video.appendChild(source);
&gt;  
&gt;      testExpected(&quot;video.currentSrc&quot;, &quot;&quot;);
&gt;  
&gt;      waitForEvent(&quot;load&quot;, function () {
&gt; -        testExpected(&quot;relativeURL(video.currentSrc) &quot;, &quot;content/test.mp4&quot;);
&gt; +        testExpected(&quot;relativeURL(video.currentSrc) &quot;, findMediaFile(&quot;video&quot;, &quot;content/test&quot;));
&gt;          endTest();
&gt;      });

  &apos;findMediaFile(&quot;video&quot;, &quot;content/test&quot;)&apos; will always return the same result, you should only call it once.

+++ b/LayoutTests/media/video-paint-test.js
@@ -1,6 +1,11 @@
-function init()
+function init(videoFile)
 {
-    var totalCount = document.getElementsByTagName(&apos;video&apos;).length;
+    var videos = document.getElementsByTagName(&apos;video&apos;);
+    var totalCount = videos.length;
+    for (var i = 0; i &lt; totalCount; ++i) {
+        videos[i].src = videoFile;
+    }

  These changes aren&apos;t necessary with the first suggestion above.

r+ if you make these changes (or convince me they aren&apos;t necessary).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145576</commentid>
    <comment_count>5</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 15:44:10 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 38997 [details])
&gt; &gt; +++ b/LayoutTests/media/controls-strict.html
&gt; &gt; +++ b/LayoutTests/media/controls-styling.html
&gt; &gt; +++ b/LayoutTests/media/video-aspect-ratio.html
&gt; &gt; +++ b/LayoutTests/media/video-controls-rendering.html
&gt; &gt; +++ b/LayoutTests/media/video-layer-crash.html
&gt; &gt; +++ b/LayoutTests/media/video-transformed.html
&gt; &gt; +++ b/LayoutTests/media/video-zoom-controls.html
&gt; 
&gt;   Passing the media file path to init() will only work as long as every pixel
&gt; tests use a single media file. I think it would make more sense to add a
&gt; function to each test file to set the src attribute for each video element
&gt; before calling the existing init().

As far as I can tell, all tests that use init() are using the same test file: test.mp4. If it makes more sense to you I can add two helper methods to media-file.js:

// Sets src for all tags of name &quot;tagName&quot;
function setSrcByTagName(tagName, src)

// Sets src of tag of id &quot;id&quot;
function setSrcById(id, src)

&gt; 
&gt; &gt; +++ b/LayoutTests/media/media-file.js
&gt; 
&gt; &gt; +function findMediaFile(type, name) {
&gt; &gt; +    var codecs;
&gt; &gt; +    if (type == &quot;audio&quot;)
&gt; &gt; +        codecs = audioCodecs;
&gt; &gt; +    else
&gt; &gt; +        codecs = videoCodecs;
&gt; &gt; +
&gt; &gt; +    var element = document.createElement(type);
&gt; &gt; +    for (var i = 0; i &lt; codecs.length; ++i) {
&gt; &gt; +        if (element.canPlayType(codecs[i][0]))
&gt; &gt; +            return name + &quot;.&quot; + codecs[i][1];
&gt; &gt; +    }
&gt; &gt; +
&gt; &gt; +    return &quot;&quot;;
&gt; &gt; +}
&gt; 
&gt; 
&gt;   It should be more efficient to call canPlayType() on an existing element if
&gt; there is one. I would check to see if one exists before creating a new one.
&gt; 
&gt; 
&gt; &gt; --- a/LayoutTests/media/video-append-source.html
&gt; 
&gt; &gt;  &lt;script&gt;
&gt; &gt;      testExpected(&quot;video.currentSrc&quot;, &quot;&quot;);
&gt; &gt;      var source = document.createElement(&quot;source&quot;);
&gt; &gt; -    source.setAttribute(&quot;src&quot;, &quot;content/test.mp4&quot;);
&gt; &gt; +    source.setAttribute(&quot;src&quot;, findMediaFile(&quot;video&quot;, &quot;content/test&quot;));
&gt; &gt;      video.appendChild(source);
&gt; &gt;  
&gt; &gt;      testExpected(&quot;video.currentSrc&quot;, &quot;&quot;);
&gt; &gt;  
&gt; &gt;      waitForEvent(&quot;load&quot;, function () {
&gt; &gt; -        testExpected(&quot;relativeURL(video.currentSrc) &quot;, &quot;content/test.mp4&quot;);
&gt; &gt; +        testExpected(&quot;relativeURL(video.currentSrc) &quot;, findMediaFile(&quot;video&quot;, &quot;content/test&quot;));
&gt; &gt;          endTest();
&gt; &gt;      });
&gt; 
&gt;   &apos;findMediaFile(&quot;video&quot;, &quot;content/test&quot;)&apos; will always return the same result,
&gt; you should only call it once.
&gt; 
&gt; +++ b/LayoutTests/media/video-paint-test.js
&gt; @@ -1,6 +1,11 @@
&gt; -function init()
&gt; +function init(videoFile)
&gt;  {
&gt; -    var totalCount = document.getElementsByTagName(&apos;video&apos;).length;
&gt; +    var videos = document.getElementsByTagName(&apos;video&apos;);
&gt; +    var totalCount = videos.length;
&gt; +    for (var i = 0; i &lt; totalCount; ++i) {
&gt; +        videos[i].src = videoFile;
&gt; +    }
&gt; 
&gt;   These changes aren&apos;t necessary with the first suggestion above.
&gt; 
&gt; r+ if you make these changes (or convince me they aren&apos;t necessary).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145595</commentid>
    <comment_count>6</comment_count>
      <attachid>39232</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 17:19:40 -0700</bug_when>
    <thetext>Created attachment 39232
Patch to be submitted</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145598</commentid>
    <comment_count>7</comment_count>
      <attachid>39232</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 17:25:50 -0700</bug_when>
    <thetext>Comment on attachment 39232
Patch to be submitted

oops.. uploaded a different patch..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145612</commentid>
    <comment_count>8</comment_count>
      <attachid>39238</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 18:14:04 -0700</bug_when>
    <thetext>Created attachment 39238
Fixes for 10 tests

Thanks for the review!

I have updated the tests to not use init(file), but instead use a helper method setSrcByTagName to set src for all video tags. They all use a single test file for testing, i.e. test.mp4. So using a helper method to set them altogether is safe. I added another helper method, setSrcById() to set the src for individual media tags in case it is needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145613</commentid>
    <comment_count>9</comment_count>
      <attachid>39239</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 18:15:20 -0700</bug_when>
    <thetext>Created attachment 39239
Fixes for 10 tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145614</commentid>
    <comment_count>10</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 18:16:48 -0700</bug_when>
    <thetext>The new patch is good for another look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145662</commentid>
    <comment_count>11</comment_count>
      <attachid>39239</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-08 23:17:00 -0700</bug_when>
    <thetext>Comment on attachment 39239
Fixes for 10 tests

media-file.js and video-paint-test.js are both missing from the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145664</commentid>
    <comment_count>12</comment_count>
      <attachid>39249</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 23:29:07 -0700</bug_when>
    <thetext>Created attachment 39249
10 layout tests change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145665</commentid>
    <comment_count>13</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 23:31:29 -0700</bug_when>
    <thetext>Added back media-file.js, video-paint-test.js is not modified any more. Please take another look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145670</commentid>
    <comment_count>14</comment_count>
      <attachid>39249</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-08 23:55:01 -0700</bug_when>
    <thetext>Comment on attachment 39249
10 layout tests change


&gt; +function findMediaFile(type, name) {
&gt; +function setSrcByTagName(tagName, src) {

  It would be clearer to use the same parameter names for the element type for both functions, I think &quot;tagName&quot; is clearer than &quot;type&quot;.
  

&gt; +function setSrcById(id, src) {
&gt; +    var elements = document.getElementById(id);
&gt; +    if (elements)
&gt; +        id.src = src;

  getElementById can only return a single element, so &quot;elements&quot; doesn&apos;t need to be plural.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145671</commentid>
    <comment_count>15</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-08 23:57:34 -0700</bug_when>
    <thetext>Thanks for the review. I&apos;ll address them before I commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145857</commentid>
    <comment_count>16</comment_count>
      <attachid>39282</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 11:18:09 -0700</bug_when>
    <thetext>Created attachment 39282
Updated patch for 10 layout tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145858</commentid>
    <comment_count>17</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 11:18:59 -0700</bug_when>
    <thetext>Uploaded a new patch that addresses Eric&apos;s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145860</commentid>
    <comment_count>18</comment_count>
      <attachid>39282</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-09 11:25:12 -0700</bug_when>
    <thetext>Comment on attachment 39282
Updated patch for 10 layout tests

&gt; +        * media/video-paint-test.js: Changed init() to take a file name and sets src of all video elements.
&gt; +        (init):

  This comment in the change log is no longer true and can be removed. Sorry I missed this in the previous review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145863</commentid>
    <comment_count>19</comment_count>
      <attachid>39284</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 11:28:29 -0700</bug_when>
    <thetext>Created attachment 39284
Updated patch for layout tests (again)

doh! The previous one I manually removed those two lines from chagelog, forgot to do it this time..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145866</commentid>
    <comment_count>20</comment_count>
      <attachid>39284</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-09 11:34:25 -0700</bug_when>
    <thetext>Comment on attachment 39284
Updated patch for layout tests (again)

Rejecting patch 39284 from commit-queue.

hclam@google.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/modules/committers.py.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145937</commentid>
    <comment_count>21</comment_count>
      <attachid>39284</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-09 14:26:05 -0700</bug_when>
    <thetext>Comment on attachment 39284
Updated patch for layout tests (again)

Rejecting patch 39284 from commit-queue.

This patch will require manual commit. [&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145942</commentid>
    <comment_count>22</comment_count>
      <attachid>39284</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 14:40:49 -0700</bug_when>
    <thetext>Comment on attachment 39284
Updated patch for layout tests (again)

I suspect that you have been bitten by the infamous bug 28845.
media/controls-strict.html -&gt; failed

But maybe this is a real failure from this patch, since it touches media stuff.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145944</commentid>
    <comment_count>23</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 14:43:18 -0700</bug_when>
    <thetext>I just ran it locally, the failure I think is due to that I added a &lt;script&gt;&lt;/script&gt; that inserts an additional RenderText block? If this is the case the new result should correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145948</commentid>
    <comment_count>24</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 14:50:31 -0700</bug_when>
    <thetext>Yup, I just confirmed, there&apos;s three failures of layout tests:
media/controls-strict.html
media/controls-styling.html
media/video-aspect-ratio.html

They failed because this change is to modify the tests, and that additional &quot;&lt;script&gt;&lt;/script&gt;&quot; inserts a RenderText block. The results is actually correct. Sorry this change slipped in through my updated patch, I&apos;ll produce another one that doesn&apos;t have such problems.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145951</commentid>
    <comment_count>25</comment_count>
      <attachid>39284</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-09 14:51:15 -0700</bug_when>
    <thetext>Comment on attachment 39284
Updated patch for layout tests (again)

Rejecting patch 39284 from commit-queue.

This patch will require manual commit. [&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145952</commentid>
    <comment_count>26</comment_count>
      <attachid>39284</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-09 14:51:53 -0700</bug_when>
    <thetext>Comment on attachment 39284
Updated patch for layout tests (again)

Looks like there is a real failure for this patch:
media/controls-strict.html -&gt; failed
when running on a Mac in release mode.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145959</commentid>
    <comment_count>27</comment_count>
      <attachid>39304</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 14:56:20 -0700</bug_when>
    <thetext>Created attachment 39304
Updated patch for 10 layout tests

Updated this patch to fix the failures. The failures slipped in my previous updated patch when I added a &lt;script&gt;&lt;/script&gt; to the test. This inserts an additional RenderText block which makes the render tree different.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>145960</commentid>
    <comment_count>28</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 14:58:37 -0700</bug_when>
    <thetext>I removed the &lt;script&gt;&lt;/script&gt; block and moved the script to onload of body. So this won&apos;t change the full text dump.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146001</commentid>
    <comment_count>29</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-09 16:32:06 -0700</bug_when>
    <thetext>Thanks for the review! :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146012</commentid>
    <comment_count>30</comment_count>
      <attachid>39304</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-09 16:55:17 -0700</bug_when>
    <thetext>Comment on attachment 39304
Updated patch for 10 layout tests

Clearing flags on attachment: 39304

Committed r48237: &lt;http://trac.webkit.org/changeset/48237&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146014</commentid>
    <comment_count>31</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-09 16:55:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146438</commentid>
    <comment_count>32</comment_count>
      <attachid>39403</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-10 19:46:36 -0700</bug_when>
    <thetext>Created attachment 39403
Second round of changes - 20 tests

Second round changes to the layout tests. Changing 20 tests at a time.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146440</commentid>
    <comment_count>33</comment_count>
      <attachid>39405</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-10 19:54:49 -0700</bug_when>
    <thetext>Created attachment 39405
Second round of changes - 20 tests

Added ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146465</commentid>
    <comment_count>34</comment_count>
      <attachid>39405</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-10 23:38:30 -0700</bug_when>
    <thetext>Comment on attachment 39405
Second round of changes - 20 tests

&gt; -                // controller should still be visible after a second
&gt; -                setTimeout(function() { layoutTestController.notifyDone(); } , 1000);
&gt; -            }
&gt; +                setTimeout(function() {
&gt; +                    if (window.layoutTestController)
&gt; +                        layoutTestController.notifyDone();
&gt; +                } , 1000);

Is there any reason to remove the comment about what the 1 second timeout is for?

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146468</commentid>
    <comment_count>35</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-10 23:56:32 -0700</bug_when>
    <thetext>I want to keep this bug open until all layout tests are changed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146473</commentid>
    <comment_count>36</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-11 00:25:36 -0700</bug_when>
    <thetext>(In reply to comment #34)
&gt; (From update of attachment 39405 [details])
&gt; &gt; -                // controller should still be visible after a second
&gt; &gt; -                setTimeout(function() { layoutTestController.notifyDone(); } , 1000);
&gt; &gt; -            }
&gt; &gt; +                setTimeout(function() {
&gt; &gt; +                    if (window.layoutTestController)
&gt; &gt; +                        layoutTestController.notifyDone();
&gt; &gt; +                } , 1000);
&gt; 
&gt; Is there any reason to remove the comment about what the 1 second timeout is
&gt; for?
&gt; 
&gt; r=me

This comment is not relavent any more since it&apos;s refering to that using layoutTestController is safe given that it is within an if statement that checks layoutTestController. In the new code I check for layoutTestController explicitly within the timeout function so the statement is not accurate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146652</commentid>
    <comment_count>37</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-11 11:06:03 -0700</bug_when>
    <thetext>&gt; This comment is not relavent any more since it&apos;s refering to that using
&gt; layoutTestController is safe given that it is within an if statement that
&gt; checks layoutTestController. In the new code I check for layoutTestController
&gt; explicitly within the timeout function so the statement is not accurate.

Not true! The controller for a &lt;video&gt; element normally hides when a movie is playing, but this movie has only audio media so we want it to always remain visible. To test this we start the movie playing, move the mouse out of the &lt;video&gt; element, and set a timer to end the test in one second. The controller visibility is reflected in the test results because we have it dump as text, so we know if the behavior is correct or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146657</commentid>
    <comment_count>38</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-11 11:15:10 -0700</bug_when>
    <thetext>(In reply to comment #37)
&gt; &gt; This comment is not relavent any more since it&apos;s refering to that using
&gt; &gt; layoutTestController is safe given that it is within an if statement that
&gt; &gt; checks layoutTestController. In the new code I check for layoutTestController
&gt; &gt; explicitly within the timeout function so the statement is not accurate.
&gt; 
&gt; Not true! The controller for a &lt;video&gt; element normally hides when a movie is
&gt; playing, but this movie has only audio media so we want it to always remain
&gt; visible. To test this we start the movie playing, move the mouse out of the
&gt; &lt;video&gt; element, and set a timer to end the test in one second. The controller
&gt; visibility is reflected in the test results because we have it dump as text, so
&gt; we know if the behavior is correct or not.

Aha! I thought the comment is referring to &quot;layoutTestController&quot;, I&apos;ll add the comment back and submit another patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146686</commentid>
    <comment_count>39</comment_count>
      <attachid>39461</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-11 11:48:45 -0700</bug_when>
    <thetext>Created attachment 39461
Second round of changes - 20 tests

Added back the comments and corrected my previous change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147698</commentid>
    <comment_count>40</comment_count>
      <attachid>39674</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-16 18:24:47 -0700</bug_when>
    <thetext>Created attachment 39674
Third round of changes - 25 tests

This is the third round of changes to 25 tests. This depends on the previous change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147793</commentid>
    <comment_count>41</comment_count>
      <attachid>39461</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-17 07:30:07 -0700</bug_when>
    <thetext>Comment on attachment 39461
Second round of changes - 20 tests

&gt; --- a/LayoutTests/media/video-controls-visible-audio-only.html

&gt; -        &lt;video id=&quot;no-video-media&quot; controls loop src=&quot;content/test.wav&quot; onload=&quot;start()&quot;&gt;&lt;/video&gt;
&gt; +        &lt;video id=&quot;no-video-media&quot; controls loop&gt;&lt;/video&gt;

&gt; +        &lt;script&gt;
&gt; +            setSrcById(&quot;fr&quot;, findMediaFile(&quot;audio&quot;, &quot;content/test&quot;));
&gt; +            start();
&gt; +        &lt;/script&gt;

Calling start() immediately after setting the src attribute instead of triggering it from the &lt;video&gt; element&apos;s &apos;load&apos; event makes it extremely timing dependent as the test assumes the movie has been loaded and parsed. You should be able to leave the onload attribute on the &lt;video&gt; element even though you set the src attribute later.



&gt; --- a/LayoutTests/media/video-display-toggle.html

&gt; -    &lt;body onload=&quot;test()&quot;&gt;
&gt; +    &lt;body onload=&quot;setSrcById(&apos;vid&apos;, findMediaFile(&apos;video&apos;, &apos;content/test&apos;)); test()&quot;&gt;

It would be cleaner to call setSrcById(...) from inside of the test function, since it is already triggered on load.


&gt; --- a/LayoutTests/media/video-document-types-expected.txt

&gt;  
&gt; -This tests that a standalone MPEG-4 file with &apos;sdsm&apos; and &apos;odsm&apos; tracks is opened in a MediaDocument.
&gt; +This tests that a standalone video file is opened in a MediaDocument.

This test is specific to MPEG-4 files with &apos;sdsm&apos; and &apos;odsm&apos; tracks. I think it makes more sense to skip it on platforms that don&apos;t support MPEG-4 instead of running it with another file type.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147812</commentid>
    <comment_count>42</comment_count>
      <attachid>39674</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-17 09:08:54 -0700</bug_when>
    <thetext>Comment on attachment 39674
Third round of changes - 25 tests


&gt; --- a/LayoutTests/ChangeLog

&gt; +
&gt; +        Updating 20 media layout tests to use media files based on supported codecs.
&gt; +
&gt; +        * media/media-file.js: Swap the order of audio file extension preference.

Please expand the comment to say why the preferred order was changed.


&gt; +++ b/LayoutTests/media/video-played-reset.html

&gt;  
&gt; -                run(&quot;video.src = \&quot;content/test.mp4\&quot;&quot;);
&gt; +                run(&quot;video.src = \&quot;&quot; + findMediaFile(&quot;video&quot;, &quot;content/test&quot;) + &quot;\&quot;&quot;);

I think the pattern you used in the previous patch, where the media file path is put into a local variable in a case like this:

                var mediaFile = findMediaFile(&quot;video&quot;, &quot;content/test&quot;);
                run(&quot;video.src = \&quot;&quot; + mediaFile + &quot;\&quot;&quot;);

would make it easier to read this test.


&gt; --- a/LayoutTests/media/video-seek-past-end-paused.html

&gt; -    run(&quot;video.src = &apos;content/test.mp4&apos;&quot;);
&gt; +    run(&quot;video.src = &apos;&quot; + findMediaFile(&quot;video&quot;, &quot;content/test&quot;) + &quot;&apos;&quot;);

Ditto.

&gt; --- a/LayoutTests/media/video-seek-past-end-playing.html

&gt; -    run(&quot;video.src = &apos;content/test.mp4&apos;&quot;);
&gt; +    run(&quot;video.src = &apos;&quot; + findMediaFile(&quot;video&quot;, &quot;content/test&quot;) + &quot;&apos;&quot;);

Ditto.


&gt; --- a/LayoutTests/media/video-source.html
&gt; +++ b/LayoutTests/media/video-source.html

I really hate tests like this that use a document fragment and put script in the body for no obvious reason, so I try to clean them up when I have to change them anyway. It obviously isn&apos;t necessary for what you are fixing with this patch, but taking a few extra minutes to tidy up ugly tests like this would be good for everyone. Something like the following is what I would prefer (warning, I haven&apos;t actually tested this):

&lt;html&gt;
    &lt;head&gt;
        &lt;script src=media-file.js&gt;&lt;/script&gt;
        &lt;script src=video-test.js&gt;&lt;/script&gt;
        &lt;script&gt;
            function loadStart()
            {
                testExpected(&quot;relativeURL(video.currentSrc) &quot;, &quot;content/test.mp4&quot;);
                endTest();
            }

            function setup()
            {
                video = mediaElement = document.getElementsByTagName(&apos;video&apos;)[0];

                var source = document.createElement(&apos;source&apos;); 
                source.src = findMediaFile(&quot;video&quot;, &quot;content/test&quot;);
                video.appendChild(source);
            }
        &lt;/script&gt;
    &lt;/head&gt;
    &lt;body onload=&quot;setup()&quot;&gt;
        &lt;video controls onloadstart=&quot;loadStart()&quot;&gt; &lt;/video&gt;
    &lt;/body&gt;
&lt;/html&gt;


&gt; +++ a/LayoutTests/media/video-src-invalid-remove.html

Looking at this test I see that it is already quite timing dependent, so it would be nice to restructure it up as long as you are changing it. I suggest you include an empty &lt;video&gt; element, and set the &apos;src&apos; and add the &lt;source&gt; element in a body onload handler so the listeners are setup before the file can load. Maybe something like this (again, not tested):

&lt;html&gt;
    &lt;head&gt;
        &lt;script src=media-file.js&gt;&lt;/script&gt;
        &lt;script src=video-test.js&gt;&lt;/script&gt;
        &lt;script&gt;
            var loadCount = 0;
            var mediaFile = findMediaFile(&quot;video&quot;, &quot;content/test&quot;);;

            function loadStart() { [code goes here] }
            function loadedmetadata() { [code goes here] }
            function errorEvent() { [code goes here] }

            function setup()
            {
                video = mediaElement = document.getElementsByTagName(&apos;video&apos;)[0];

                consoleWrite(&quot;&quot;);
                waitForEvent(&apos;loadedmetadata&apos;, loadedmetadata);
                waitForEvent(&apos;loadstart&apos;, loadStart );
                waitForEvent(&apos;error&apos;, errorEvent);

                video.src = &quot;bogus.mov&quot;

                var source = document.createElement(&apos;source&apos;); 
                source.src = mediaFile;
                video.appendChild(source);
            }
        &lt;/script&gt;
    &lt;/head&gt;
    &lt;body onload=&quot;setup()&quot;&gt;
        &lt;video controls &gt; &lt;/video&gt;
        &lt;p&gt;Test that removing invalid &apos;src&apos; attribute triggers load of &amp;lt;source&amp;gt; elements&lt;/p&gt;
    &lt;/body&gt;
&lt;/html&gt;


&gt; --- a/LayoutTests/media/video-src-remove.html

&gt; -    &lt;video src=content/silence.mpg controls onloadedmetadata=&quot;loadedmetadata()&quot; &gt;
&gt; -        &lt;source src=content/test.mp4&gt;
&gt; -    &lt;/video&gt;
&gt; +    &lt;div id=panel&gt;&lt;/div&gt;
&gt; +    &lt;script&gt;
&gt; +        var panel = document.getElementById(&quot;panel&quot;);
&gt; +        var mediaFile = findMediaFile(&quot;video&quot;, &quot;content/test&quot;);
&gt; +        panel.innerHTML = &quot;&lt;video src=&quot; + mediaFile + &quot; controls onloadedmetadata=&apos;loadedmetadata()&apos;&gt;&lt;source src=content/counting.mp4&gt;&lt;/video&gt;&quot;;
&gt; +    &lt;/script&gt;

I would prefer to see the video element set up with DOM calls instead innerHTML.


&gt; --- a/LayoutTests/media/video-src-source.html

&gt; -&lt;video src=content/test.mp4 controls&gt;
&gt; -    &lt;source src=content/error.mpeg&gt;
&gt; -&lt;/video&gt;
&gt; +&lt;div id=panel&gt;&lt;/div&gt;
&gt; +&lt;script&gt;
&gt; +    var panel = document.getElementById(&quot;panel&quot;);
&gt; +    var mediaFile = findMediaFile(&quot;video&quot;, &quot;content/test&quot;);
&gt; +    panel.innerHTML = &quot;&lt;video src=&quot; + mediaFile + &quot; controls&gt;&lt;source src=content/error.mpeg&gt;&lt;/video&gt;&quot;;
&gt; +&lt;/script&gt;

Same here.


&gt; --- a/LayoutTests/media/video-zoom.html

&gt; -&lt;body onload=&quot;init()&quot;&gt;
&gt; +&lt;body onload=&quot;setSrcByTagName(&apos;video&apos;, findMediaFile(&apos;video&apos;, &apos;content/test&apos;)); init();&quot;&gt;

It would be cleaner to call setSrcByTagName() in the init() function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147871</commentid>
    <comment_count>43</comment_count>
      <attachid>39715</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-17 11:45:43 -0700</bug_when>
    <thetext>Created attachment 39715
Second round of changes - 19 tests

Fixing my second round of changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147917</commentid>
    <comment_count>44</comment_count>
      <attachid>39715</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-17 13:29:07 -0700</bug_when>
    <thetext>Comment on attachment 39715
Second round of changes - 19 tests

&gt; +        * media/media-file.js: Swap the order of audio formats to prefer .wav.

Looks like this change snuck its way in from the https://bugs.webkit.org/attachment.cgi?id=39674, so like I noted in that review it would be helpful to expand the comment to say why the preferred order was changed.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147928</commentid>
    <comment_count>45</comment_count>
      <attachid>39721</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-17 13:43:23 -0700</bug_when>
    <thetext>Created attachment 39721
Second round of changes - 19 tests

Fixed only the ChangeLog by explaining why .wav is preferred over other formats.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147931</commentid>
    <comment_count>46</comment_count>
      <attachid>39721</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-17 13:49:32 -0700</bug_when>
    <thetext>Comment on attachment 39721
Second round of changes - 19 tests

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147959</commentid>
    <comment_count>47</comment_count>
      <attachid>39721</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-17 15:48:44 -0700</bug_when>
    <thetext>Comment on attachment 39721
Second round of changes - 19 tests

Clearing flags on attachment: 39721

Committed r48494: &lt;http://trac.webkit.org/changeset/48494&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147960</commentid>
    <comment_count>48</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-17 15:48:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147961</commentid>
    <comment_count>49</comment_count>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-17 15:50:16 -0700</bug_when>
    <thetext>&gt; &gt; --- a/LayoutTests/media/video-source.html
&gt; &gt; +++ b/LayoutTests/media/video-source.html
&gt; 
&gt; I really hate tests like this that use a document fragment and put script in
&gt; the body for no obvious reason, so I try to clean them up when I have to change
&gt; them anyway. It obviously isn&apos;t necessary for what you are fixing with this
&gt; patch, but taking a few extra minutes to tidy up ugly tests like this would be
&gt; good for everyone. Something like the following is what I would prefer
&gt; (warning, I haven&apos;t actually tested this):

&gt; &gt; +++ a/LayoutTests/media/video-src-invalid-remove.html
&gt; &gt; --- a/LayoutTests/media/video-src-remove.html
&gt; &gt; --- a/LayoutTests/media/video-src-source.html

The reason why I&apos;m coding the tests to use innerHTML instead of setting .src or
appendChild() is that these are supposed to be testing the attributes /
&lt;source&gt; from their text / tag form.

You&apos;ll find tests for changing .src, appendChild() already in:
video-src.html
video-src-set.html
video-append-source.html

I think if we are not testing src and &lt;source&gt; in their &quot;src=&quot; / &lt;source&gt; form
we&apos;ll be missing some test cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147967</commentid>
    <comment_count>50</comment_count>
      <attachid>39732</attachid>
    <who name="Andrew Scherkus">scherkus</who>
    <bug_when>2009-09-17 16:06:02 -0700</bug_when>
    <thetext>Created attachment 39732
First round of changes - 8 patches</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148230</commentid>
    <comment_count>51</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-18 10:33:03 -0700</bug_when>
    <thetext>&gt; The reason why I&apos;m coding the tests to use innerHTML instead of setting .src or
&gt; appendChild() is that these are supposed to be testing the attributes /
&gt; &lt;source&gt; from their text / tag form.

Fair enough!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148238</commentid>
    <comment_count>52</comment_count>
      <attachid>39732</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-18 10:50:47 -0700</bug_when>
    <thetext>Comment on attachment 39732
First round of changes - 8 patches

&gt; +++ b/LayoutTests/ChangeLog

&gt; +        * media/progress-event-total-expected.txt: Ditto

The only change to the expected results is to include the new event.total value.

&gt; +        * media/progress-event-total.html: Ditto

Accomodates new file duration as well as switching to findMediaFile().


&gt; +++ b/LayoutTests/media/event-attributes.html

&gt;  
&gt;      &lt;body onload=&quot;start()&quot;&gt;
&gt;  
&gt; -        &lt;video controls src=&quot;content/test.mp4&quot; 
&gt; +        &lt;video controls
&gt;              onabort=&quot;eventHandler()&quot;
&gt;              oncanplay=&quot;eventHandler()&quot;
&gt;              oncanplaythrough=&quot;eventHandler()&quot;
&gt; @@ -97,5 +99,9 @@
&gt;              &gt;
&gt;          &lt;/video&gt;
&gt;  
&gt; +        &lt;script&gt;
&gt; +            setSrcByTagName(&quot;video&quot;, findMediaFile(&quot;video&quot;, &quot;content/test&quot;));
&gt; +        &lt;/script&gt;

Again, I would really prefer to have this done in the (existing) body load event handler
instead of adding another script element.

r=me with these minor fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148316</commentid>
    <comment_count>53</comment_count>
    <who name="Andrew Scherkus">scherkus</who>
    <bug_when>2009-09-18 12:43:16 -0700</bug_when>
    <thetext>Sounds good -- I&apos;ll keep those in mind for the next round.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148321</commentid>
    <comment_count>54</comment_count>
      <attachid>39779</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-18 12:46:47 -0700</bug_when>
    <thetext>Created attachment 39779
Third round of changes by alpha - 25 tests

Fixed the style nits, but I leave 4 tests using innerHTML since they are used to test the tag attributes in html form.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148363</commentid>
    <comment_count>55</comment_count>
      <attachid>39779</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2009-09-18 13:37:08 -0700</bug_when>
    <thetext>Comment on attachment 39779
Third round of changes by alpha - 25 tests

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148388</commentid>
    <comment_count>56</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-18 14:20:12 -0700</bug_when>
    <thetext>You should feel free to set both r=? and cq=? at the same time if you are going to want auto commit.  Then the reviewer can set both when reviewing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148422</commentid>
    <comment_count>57</comment_count>
      <attachid>39779</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-18 15:20:09 -0700</bug_when>
    <thetext>Comment on attachment 39779
Third round of changes by alpha - 25 tests

Clearing flags on attachment: 39779

Committed r48539: &lt;http://trac.webkit.org/changeset/48539&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148423</commentid>
    <comment_count>58</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-09-18 15:20:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148826</commentid>
    <comment_count>59</comment_count>
      <attachid>39877</attachid>
    <who name="Hin-Chung Lam">hclam</who>
    <bug_when>2009-09-21 14:26:56 -0700</bug_when>
    <thetext>Created attachment 39877
Test files for ogg and theora, transcoded from originals

As the layout tests conversion are close to finish, I&apos;m uploading the test files for ogg and theora.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>148830</commentid>
    <comment_count>60</comment_count>
      <attachid>39877</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-21 14:33:26 -0700</bug_when>
    <thetext>Comment on attachment 39877
Test files for ogg and theora, transcoded from originals

This bug is closed, so we shouldn&apos;t be adding more patches to it.  Also, I don&apos;t think the commit-queue can handle these patches, because svn-apply (which is what it uses) can&apos;t handle git binary patches.  Maybe it can handle git binary adds, I can&apos;t remember.  see bug 26830 and bug 28456.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38997</attachid>
            <date>2009-09-03 11:22:22 -0700</date>
            <delta_ts>2009-09-08 18:14:04 -0700</delta_ts>
            <desc>First round of changes - 10 tests</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>12091</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjM2E5OTg3Li41NWZmNTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMDktMDkt
MDMgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tcGFpbnQtdGVzdC5qczogQ2hhbmdlZCBpbml0KCkgdG8gdGFr
ZSBhIGZpbGUgbmFtZSBhbmQgc2V0cyBzcmMgb2YgYWxsIHZpZGVvIGVsZW1lbnRzLgorICAgICAg
ICAoaW5pdCk6CisgICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZp
bmRNZWRpYUZpbGUodHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250
cm9scy5odG1sOiBkaXR0by4KKwogMjAwOS0wOS0wMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZWMzMDhiYiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTEgQEAKIDwhRE9DVFlQ
RSBIVE1MPgogPGh0bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1m
aWxlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+Cisg
ICAgPGJvZHkgb25sb2FkPSJpbml0KGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVz
dCcpKSI+CiAgICAgICAgIDxwPkRyYXdpbmcgdGhlIGNvbnRyb2xzIGluIHN0cmljdCBtb2RlLjwv
cD4KLSAgICAgICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRl
bz4KKyAgICAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPC9ib2R5PgogPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3R5bGluZy5odG1sIGIv
TGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3R5bGluZy5odG1sCmluZGV4IDliYjMwNmIuLmMx
MDVlMmIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9jb250cm9scy1zdHlsaW5nLmh0bWwKQEAgLTEsNSAr
MSw2IEBACiA8aHRtbD4KIDxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48
L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+
CiAgICAgPHN0eWxlPgogICAgIC5vdmVycmlkZSB7CkBAIC0xNCwxMSArMTUsMTEgQEAKICAgICB9
CiAgICAgPC9zdHlsZT4KIDwvaGVhZD4KLTxib2R5IG9ubG9hZD0iaW5pdCgpIj4KKzxib2R5IG9u
bG9hZD0iaW5pdChmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSkiPgogPHA+
VGhlIGxvb2sgb2YgdGhlIGNvbnRyb2xzIHNob3VsZCBub3QgY2hhbmdlLjwvcD4KIDxkaXYgY2xh
c3M9Im92ZXJyaWRlIj4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0
Ij48L3ZpZGVvPgorICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPC9kaXY+Ci08dmlkZW8g
Y29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorPHZpZGVvIGNvbnRyb2xz
PjwvdmlkZW8+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRp
YS9tZWRpYS1maWxlLmpzIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcwpuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43N2Q3NjYyCi0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcwpAQCAtMCwwICsxLDI5IEBACit2YXIgYXVk
aW9Db2RlY3MgPSBbCisgICAgWyJhdWRpby9hYWMiLCAibTRhIl0sCisgICAgWyJhdWRpby9tcGVn
IiwgIm1wMyJdLAorICAgIFsiYXVkaW8vd2F2IiwgIndhdiJdLAorICAgIFsiYXVkaW8vb2dnIiwg
Im9nZyJdCitdOworCit2YXIgdmlkZW9Db2RlY3MgPSBbCisgICAgWyJ2aWRlby9tcDQiLCAibXA0
Il0sCisgICAgWyJ2aWRlby9tcGVnIiwgIm1wZyJdLAorICAgIFsidmlkZW8vcXVpY2t0aW1lIiwg
Im1vdiJdLAorICAgIFsidmlkZW8vb2dnIiwgIm9nZyJdCitdOworCitmdW5jdGlvbiBmaW5kTWVk
aWFGaWxlKHR5cGUsIG5hbWUpIHsKKyAgICB2YXIgY29kZWNzOworICAgIGlmICh0eXBlID09ICJh
dWRpbyIpCisgICAgICAgIGNvZGVjcyA9IGF1ZGlvQ29kZWNzOworICAgIGVsc2UKKyAgICAgICAg
Y29kZWNzID0gdmlkZW9Db2RlY3M7CisKKyAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQodHlwZSk7CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjb2RlY3MubGVuZ3RoOyAr
K2kpIHsKKyAgICAgICAgaWYgKGVsZW1lbnQuY2FuUGxheVR5cGUoY29kZWNzW2ldWzBdKSkKKyAg
ICAgICAgICAgIHJldHVybiBuYW1lICsgIi4iICsgY29kZWNzW2ldWzFdOworICAgIH0KKworICAg
IHJldHVybiAiIjsKK30KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFwcGVu
ZC1zb3VyY2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRt
bAppbmRleCA1MDE4Mjc0Li5lYmVlM2YxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1hcHBlbmQtc291cmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXBw
ZW5kLXNvdXJjZS5odG1sCkBAIC0xLDE2ICsxLDE3IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRl
bz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRl
by10ZXN0LmpzPjwvc2NyaXB0PgogCiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
Y3VycmVudFNyYyIsICIiKTsKICAgICB2YXIgc291cmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgic291cmNlIik7Ci0gICAgc291cmNlLnNldEF0dHJpYnV0ZSgic3JjIiwgImNvbnRlbnQvdGVz
dC5tcDQiKTsKKyAgICBzb3VyY2Uuc2V0QXR0cmlidXRlKCJzcmMiLCBmaW5kTWVkaWFGaWxlKCJ2
aWRlbyIsICJjb250ZW50L3Rlc3QiKSk7CiAgICAgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKTsK
IAogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKIAogICAgIHdhaXRG
b3JFdmVudCgibG9hZCIsIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxh
dGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAg
ICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpICIsIGZpbmRNZWRp
YUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAg
IH0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hc3BlY3QtcmF0aW8u
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sCmluZGV4IDZh
ZmZlZDMuLmZmMGVkZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFzcGVj
dC1yYXRpby5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5o
dG1sCkBAIC0xLDIxICsxLDIyIEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08Ym9keSBv
bmxvYWQ9ImluaXQoKSI+Cis8Ym9keSBvbmxvYWQ9ImluaXQoZmluZE1lZGlhRmlsZSgndmlkZW8n
LCAnY29udGVudC90ZXN0JykpIj4KIDxwPlRlc3QgdmlkZW8gc2l6aW5nLiBZb3Ugc2hvdWxkIHNl
ZSBvbmUgYmlnZ2VyIGltYWdlIChwYXVzZWQgdmlkZW8pIGFuZCA3IHNtYWxsIG9uZXMgb2YgMS80
IGl0cyBzaXplLiA8L3A+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPjxi
cj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJ3aWR0aDogMTYwcHg7IGhl
aWdodDoxMjBweCI+Cis8dmlkZW8+PC92aWRlbz48YnI+Cis8dmlkZW8gc3R5bGU9IndpZHRoOiAx
NjBweDsgaGVpZ2h0OjEyMHB4Ij4KIAogPC92aWRlbz48ZGl2IHN0eWxlPSJkaXNwbGF5OmlubGlu
ZS1ibG9jayI+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0id2lkdGg6IDE2
MHB4OyI+Ci08L3ZpZGVvPjx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWln
aHQ6IDEyMHB4OyI+Cis8dmlkZW8gc3R5bGU9IndpZHRoOiAxNjBweDsiPgorPC92aWRlbz48dmlk
ZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7Ij4KIDwvdmlkZW8+CiAKIDwvZGl2PjxkaXYgc3R5bGU9
IndpZHRoOiAzMjBweDsgaGVpZ2h0OjEyMHB4OyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2lu
OiAwIj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7
Ij4KLTwvdmlkZW8+PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiA1
MCU7Ij48L3ZpZGVvPgorPHZpZGVvIHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KKzwvdmlkZW8+PHZp
ZGVvIHN0eWxlPSJ3aWR0aDogNTAlOyI+PC92aWRlbz4KIAogPC9kaXY+PGRpdiBzdHlsZT0id2lk
dGg6IDMyMHB4OyBoZWlnaHQ6MTIwcHg7cG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5l
LWJsb2NrOyBtYXJnaW46IDAiPgotPHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9
ImhlaWdodDogMTIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPjwvdmlkZW8+Ci08dmlkZW8gc3Jj
PSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0ibGVmdDogMTYwcHg7IHdpZHRoOiAxNjBweDsgcG9z
aXRpb246IGFic29sdXRlOyI+Cis8dmlkZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7IHBvc2l0aW9u
OiBhYnNvbHV0ZTsiPjwvdmlkZW8+Cis8dmlkZW8gc3R5bGU9ImxlZnQ6IDE2MHB4OyB3aWR0aDog
MTYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPgogPC92aWRlbz4KIDwvZGl2PgogPC9ib2R5Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwKaW5kZXggMDRkMjIwMC4uZTFkOGJhMiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sCkBAIC0xLDkgKzEsMTAgQEAKIDx2
aWRlbyBhdXRvcGxheSBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5q
cz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKIDxzY3Jp
cHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5hdXRvcGxheSIsIHRydWUpOwogICAgIHRlc3RF
eHBlY3RlZCgidmlkZW8uZ2V0QXR0cmlidXRlKCdhdXRvcGxheScpIiwgbnVsbCwgJyE9Jyk7CiAg
ICAgd2FpdEZvckV2ZW50KCdwbGF5JywgZnVuY3Rpb24gKCkgeyB0ZXN0RXhwZWN0ZWQoInZpZGVv
LnBhdXNlZCIsIGZhbHNlKTsgZW5kVGVzdCgpOyB9ICk7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRl
bnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNv
bnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1idWZmZXJlZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRt
bAppbmRleCBjYThkMGFhLi42YjZiN2IyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1idWZmZXJlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZlcmVk
Lmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwv
c2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmJ1ZmZlcmVkLmxlbmd0
aCIsIDApOwpAQCAtMTksNSArMjAsNSBAQAogICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAg
ICB9CiAgICAgKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlk
ZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3Njcmlw
dD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmlu
Zy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVyaW5nLmh0bWwK
aW5kZXggMjFjZDA0Yy4uMzJkZjk4NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY29udHJvbHMtcmVuZGVyaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
Y29udHJvbHMtcmVuZGVyaW5nLmh0bWwKQEAgLTEsMTMgKzEsMTQgQEAKKzxzY3JpcHQgc3JjPSJt
ZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0Lmpz
Ij48L3NjcmlwdD4KLTxib2R5IG9ubG9hZD0iaW5pdCgpIj4KKzxib2R5IG9ubG9hZD0iaW5pdChm
aW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSkiPgogPHA+VGVzdCBjb250cm9s
cyBwbGFjZW1lbnQuIDwvcD4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVu
dC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDwvZGl2
PgogPGRpdj4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHls
ZT0id2lkdGg6IDMyMHB4OyI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9Indp
ZHRoOiAzMjBweDsiPjwvdmlkZW8+CiA8L2Rpdj4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xz
IHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6
IDMyMHB4OyI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9InBvc2l0aW9uOiBh
YnNvbHV0ZTsgd2lkdGg6IDMyMHB4OyI+PC92aWRlbz4KIDwvZGl2PgogPC9ib2R5PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbCBiL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKaW5kZXggZmE3ZTc2YS4uMTRlN2FlNyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFzaC5odG1sCkBAIC0xLDEwICsxLDEx
IEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
dmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08Ym9keSBvbmxvYWQ9ImRvY3VtZW50LmJv
ZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29uZScpKTsgZG9jdW1lbnQu
Ym9keS5vZmZzZXRMZWZ0OyBpbml0KCkiPgorPGJvZHkgb25sb2FkPSJkb2N1bWVudC5ib2R5LnJl
bW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvbmUnKSk7IGRvY3VtZW50LmJvZHku
b2Zmc2V0TGVmdDsgaW5pdChmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSki
PgogPHN0eWxlPgogdmlkZW8geyB3aWR0aDoyMDBweDsgYm9yZGVyOiAzcHggc29saWQgcmVkOyAt
d2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyA1cHg7IH0KIDwvc3R5bGU+CiA8cD5UZXN0IGR5bmFt
aWMgcmVtb3ZhbCBvZiB0cmFuc2Zvcm1lZCBhbmQgcmVmbGVjdGVkIHZpZGVvIDwvcD4KLSZuYnNw
Ozx2aWRlbyBpZD0ib25lIiBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRy
YW5zZm9ybTpyb3RhdGUoMjBkZWcpIj48L3ZpZGVvPjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNv
bnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3Zp
ZGVvPjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Vi
a2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gaWQ9
Im9uZSIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZykiPjwvdmlkZW8+PGJy
PgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3Zp
ZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2tldygyMGRl
ZykiPjwvdmlkZW8+PGJyPgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tcGFpbnQtdGVzdC5qcyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBhaW50LXRlc3Qu
anMKaW5kZXggMTM0YTAxMy4uNjBiNzNjZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tcGFpbnQtdGVzdC5qcworKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wYWludC10
ZXN0LmpzCkBAIC0xLDYgKzEsMTEgQEAKLWZ1bmN0aW9uIGluaXQoKQorZnVuY3Rpb24gaW5pdCh2
aWRlb0ZpbGUpCiB7Ci0gICAgdmFyIHRvdGFsQ291bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgndmlkZW8nKS5sZW5ndGg7CisgICAgdmFyIHZpZGVvcyA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCd2aWRlbycpOworICAgIHZhciB0b3RhbENvdW50ID0gdmlkZW9zLmxl
bmd0aDsKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRvdGFsQ291bnQ7ICsraSkgeworICAgICAg
ICB2aWRlb3NbaV0uc3JjID0gdmlkZW9GaWxlOworICAgIH0KKwogICAgIHZhciBjb3VudCA9IHRv
dGFsQ291bnQ7CiAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxheXRocm91Z2gi
LCBmdW5jdGlvbiAoKSB7CiAgICAgICAgIGlmICghLS1jb3VudCkgewpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwKaW5kZXggMzc0Yjg2NS4uNmFhYjg5OSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby10cmFuc2Zvcm1lZC5odG1sCkBAIC0xLDEwICsxLDExIEBACis8c2Ny
aXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFp
bnQtdGVzdC5qcyI+PC9zY3JpcHQ+Ci08Ym9keSBvbmxvYWQ9ImluaXQoKSI+Cis8Ym9keSBvbmxv
YWQ9ImluaXQoZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpIj4KIDxzdHls
ZT4KIHZpZGVvIHsgd2lkdGg6MjAwcHg7IGJvcmRlcjogM3B4IHNvbGlkIHJlZDsgfQogPC9zdHls
ZT4KIDxwPlRlc3QgcGFpbnRpbmcgb2YgdHJhbnNmb3JtZWQgdmlkZW8gPC9wPgotJm5ic3A7PHZp
ZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0
ZSgyMGRlZykiPjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1w
NCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgotJm5i
c3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3Jt
OnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10
cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9
Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVv
IHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+CiA8L2Jv
ZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLWNvbnRyb2xzLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLWNvbnRyb2xzLmh0bWwKaW5kZXggN2Vj
NTFjYy4uOTIyMjZjOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1j
b250cm9scy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMu
aHRtbApAQCAtMTAsMTEgKzEwLDEyIEBACiAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3Rh
dGUoMTBkZWcpOwogICAgICAgfQogICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Im1lZGlh
LWZpbGUuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0Lmpz
Ij48L3NjcmlwdD4KIDwvaGVhZD4KLTxib2R5IG9ubG9hZD0iaW5pdCgpIj4KKzxib2R5IG9ubG9h
ZD0iaW5pdChmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSkiPgogICAgIDxw
Plpvb21lZCB2aWRlbyB3aXRoIGNvbnRyb2xzLjwvcD4KLSAgICA8dmlkZW8gc3JjPSJjb250ZW50
L3Rlc3QubXA0IiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KLSAg
ICA8dmlkZW8gY2xhc3M9InJvdGF0ZWQiIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgd2lkdGg9IjE2
MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHZpZGVvIHdpZHRoPSIxNjAi
IGhlaWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVvPgorICAgIDx2aWRlbyBjbGFzcz0icm90YXRl
ZCIgd2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CiA8L2JvZHk+CiA8
L2h0bWw+Cg==
</data>
<flag name="review"
          id="20016"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39232</attachid>
            <date>2009-09-08 17:19:40 -0700</date>
            <delta_ts>2009-09-08 17:25:50 -0700</delta_ts>
            <desc>Patch to be submitted</desc>
            <filename>webkit-buffered.patch</filename>
            <type>text/plain</type>
            <size>16833</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MzEwN2FjMi4uYTljODE1NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw1OCBAQAorMjAwOS0wOS0wOCAgQWxwaGEgTGFtICA8
aGNsYW1AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEhUTUxNZWRpYUVsZW1lbnQgYnVmZmVyZWQgYXR0cmlidXRlIHNob3VsZCBy
ZXBvcnQgYSBsaXN0IG9mIHRpbWUgcmFuZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yOTA0MQorCisgICAgICAgIENoYW5nZWQgTWVkaWFQbGF5ZXJQ
cml2YXRlSW50ZXJmYWNlIGFuZCBNZWRpYVBsYXllcidzIGRlZmluaXRpb24gdG8KKyAgICAgICAg
cmVwb3J0IGEgbGlzdCBvZiBidWZmZXJlZCB0aW1lIHJhbmdlcyBhcyBXZWJDb3JlOjpUaW1lUmFu
Z2VzLiBUaGlzCisgICAgICAgIGNoYW5nZSBhbHNvIGdvdCByaWQgb2YgdGhlIG1heFRpbWVCdWZm
ZXJlZCgpIG1ldGhvZC4KKworICAgICAgICBObyBuZXcgdGVzdHMgc2luY2UgdGhpcyBpcyBhIEFQ
SSBjaGFuZ2UuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6cGVyY2VudExvYWRlZCk6CisgICAgICAgIFVz
ZSBNZWRpYVBsYWllcjo6YnVmZmVyZWQoKSBpbnN0ZWFkIG9mIG1heFRpbWVCdWZmZXJlZCgpLgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTE1lZGlhRWxlbWVudDo6YnVmZmVyZWQpOgorICAgICAgICBk
aXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpOdWxsTWVkaWFQbGF5ZXJQcml2YXRlOjpidWZmZXJlZCk6CisgICAgICAg
IFVzZSBNZWRpYVBsYXllclByaXZhdGVJbnRlcmZhY2U6OmJ1ZmZlcmVkKCkgaW5zdGVhZCBvZiBt
YXhUaW1lQnVmZmVyZWQoKS4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyOjpidWZmZXJl
ZCk6CisgICAgICAgIGRpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyLmg6CisgICAgICAgIFJlbW92ZWQgbWF4VGltZUJ1ZmZlcmVkKCkgYW5kIGRlZmluZXMgUGFz
c1JlZlB0cjxUaW1lUmFuZ2VzPiBidWZmZXJlZCgpLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oOgorICAgICAgICBkaXR0by4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcDoKKyAgICAg
ICAgSW1wbGVtZW50cyBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IGJ1ZmZlcmVkKCk7CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oOgor
ICAgICAgICBSZW1vdmVkIG1heFRpbWVCdWZmZXJlZCgpIGFuZCBkZWZpbmVzIFBhc3NSZWZQdHI8
VGltZVJhbmdlcz4gYnVmZmVyZWQoKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMv
TWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaDoKKyAgICAgICAgUmVtb3ZlZCBtYXhUaW1lQnVmZmVy
ZWQoKSBhbmQgZGVmaW5lcyBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IGJ1ZmZlcmVkKCkuCisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0Lm1tOgor
ICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlOjpidWZmZXJlZCk6CisgICAgICAg
IEltcGxlbWVudGF0aW9uIG9mIGJ1ZmZlcmVkKCkuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvcXQvTWVkaWFQbGF5ZXJQcml2YXRlUGhvbm9uLmNwcDoKKyAgICAgICAgSW1wbGVtZW50cyBQ
YXNzUmVmUHRyPFRpbWVSYW5lZ3M+IGJ1ZmZlcmVkKCkuCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvcXQvTWVkaWFQbGF5ZXJQcml2YXRlUGhvbm9uLmg6CisgICAgICAgIFJlbW92ZWQgbWF4
VGltZUJ1ZmZlcmVkKCkgYW5kIGRlZmluZXMgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBidWZmZXJl
ZCgpLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3dpbi9NZWRpYVBsYXllclByaXZhdGVR
dWlja1RpbWVXaW4uY3BwOgorICAgICAgICBJbXBsZW1lbnRzIFBhc3NSZWZQdHI8VGltZVJhbmdl
cz4gYnVmZmVyZWQoKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5
ZXJQcml2YXRlUXVpY2tUaW1lV2luLmg6CisgICAgICAgIFJlbW92ZWQgbWF4VGltZUJ1ZmZlcmVk
KCkgYW5kIGRlZmluZXMgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBidWZmZXJlZCgpLgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL01lZGlhUGxheWVyUHJpdmF0ZVdpbmNlLmg6Cisg
ICAgICAgIGRpdHRvLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFj
Lm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6cGFpbnRNZWRp
YVNsaWRlclRyYWNrKToKKyAgICAgICAgVXNlIGJ1ZmZlcmVkKCkgaW5zdGVhZCBvZiBtYXhUaW1l
QnVmZmVyZWQoKS4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEu
Y3BwOgorICAgICAgICBkaXR0by4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMu
bW06CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1hYzo6cGFpbnRNZWRpYVNsaWRlclRy
YWNrKToKKyAgICAgICAgZGl0dG8uCisKIDIwMDktMDktMDggIERhdmUgSHlhdHQgIDxoeWF0dEBh
cHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFyayBSb3dlLgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuY3BwCmluZGV4IDIxNDM5MTguLjZmNTgzNzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAKQEAgLTEyODcsNyArMTI4NywxNSBAQCBmbG9hdCBIVE1MTWVkaWFFbGVtZW50Ojpw
ZXJjZW50TG9hZGVkKCkgY29uc3QKICAgICBpZiAoIW1fcGxheWVyKQogICAgICAgICByZXR1cm4g
MDsKICAgICBmbG9hdCBkdXJhdGlvbiA9IG1fcGxheWVyLT5kdXJhdGlvbigpOwotICAgIHJldHVy
biBkdXJhdGlvbiA/IG1fcGxheWVyLT5tYXhUaW1lQnVmZmVyZWQoKSAvIGR1cmF0aW9uIDogMDsK
KyAgICBmbG9hdCBidWZmZXJlZCA9IDA7CisgICAgUmVmUHRyPFRpbWVSYW5nZXM+IHRpbWVSYW5n
ZXMgPSBtX3BsYXllci0+YnVmZmVyZWQoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
dGltZVJhbmdlcy0+bGVuZ3RoKCk7ICsraSkgeworICAgICAgICBFeGNlcHRpb25Db2RlIGlnbm9y
ZWRFeGNlcHRpb247CisgICAgICAgIGZsb2F0IHN0YXJ0ID0gdGltZVJhbmdlcy0+c3RhcnQoaSwg
aWdub3JlZEV4Y2VwdGlvbik7CisgICAgICAgIGZsb2F0IGVuZCA9IHRpbWVSYW5nZXMtPmVuZChp
LCBpZ25vcmVkRXhjZXB0aW9uKTsKKyAgICAgICAgYnVmZmVyZWQgKz0gZW5kIC0gc3RhcnQ7Cisg
ICAgfQorICAgIHJldHVybiBkdXJhdGlvbiA/IGJ1ZmZlcmVkIC8gZHVyYXRpb24gOiAwOwogfQog
CiBib29sIEhUTUxNZWRpYUVsZW1lbnQ6OmhhdmVQb3RlbnRpYWxTb3VyY2VDaGlsZCgpCkBAIC0x
NDY2LDEwICsxNDc0LDkgQEAgR3JhcGhpY3NMYXllciogSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQ
bGF5ZXJHcmFwaGljc0xheWVyKE1lZGlhUGxheWVyKikKIAogUGFzc1JlZlB0cjxUaW1lUmFuZ2Vz
PiBIVE1MTWVkaWFFbGVtZW50OjpidWZmZXJlZCgpIGNvbnN0CiB7Ci0gICAgLy8gRklYTUUgcmVh
bCByYW5nZXMgc3VwcG9ydAotICAgIGlmICghbV9wbGF5ZXIgfHwgIW1fcGxheWVyLT5tYXhUaW1l
QnVmZmVyZWQoKSkKKyAgICBpZiAoIW1fcGxheWVyKQogICAgICAgICByZXR1cm4gVGltZVJhbmdl
czo6Y3JlYXRlKCk7Ci0gICAgcmV0dXJuIFRpbWVSYW5nZXM6OmNyZWF0ZSgwLCBtX3BsYXllci0+
bWF4VGltZUJ1ZmZlcmVkKCkpOworICAgIHJldHVybiBtX3BsYXllci0+YnVmZmVyZWQoKTsKIH0K
IAogUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBIVE1MTWVkaWFFbGVtZW50OjpwbGF5ZWQoKSBjb25z
dApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAg
Yi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAppbmRleCAxM2FiM2Zi
Li4yMGRiYzAwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcApA
QCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkZyYW1lVmlldy5oIgogI2luY2x1ZGUgIkZyYW1l
LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKKyNpbmNsdWRlICJUaW1lUmFuZ2VzLmgiCiAKICNp
ZiBQTEFURk9STShNQUMpCiAjaW5jbHVkZSAiTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaCIKQEAg
LTkxLDcgKzkyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgTWVkaWFQbGF5ZXI6OlJlYWR5U3Rh
dGUgcmVhZHlTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIE1lZGlhUGxheWVyOjpIYXZlTm90aGluZzsg
fQogCiAgICAgdmlydHVhbCBmbG9hdCBtYXhUaW1lU2Vla2FibGUoKSBjb25zdCB7IHJldHVybiAw
OyB9Ci0gICAgdmlydHVhbCBmbG9hdCBtYXhUaW1lQnVmZmVyZWQoKSBjb25zdCB7IHJldHVybiAw
OyB9CisgICAgdmlydHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IGJ1ZmZlcmVkKCkgY29uc3Qg
eyByZXR1cm4gVGltZVJhbmdlczo6Y3JlYXRlKCk7IH0KIAogICAgIHZpcnR1YWwgaW50IGRhdGFS
YXRlKCkgY29uc3QgeyByZXR1cm4gMDsgfQogCkBAIC0zOTAsOSArMzkxLDkgQEAgdm9pZCBNZWRp
YVBsYXllcjo6c2V0RW5kVGltZShmbG9hdCB0aW1lKQogICAgIG1fcHJpdmF0ZS0+c2V0RW5kVGlt
ZSh0aW1lKTsKIH0KIAotZmxvYXQgTWVkaWFQbGF5ZXI6Om1heFRpbWVCdWZmZXJlZCgpCitQYXNz
UmVmUHRyPFRpbWVSYW5nZXM+IE1lZGlhUGxheWVyOjpidWZmZXJlZCgpCiB7Ci0gICAgcmV0dXJu
IG1fcHJpdmF0ZS0+bWF4VGltZUJ1ZmZlcmVkKCk7CisgICAgcmV0dXJuIG1fcHJpdmF0ZS0+YnVm
ZmVyZWQoKTsKIH0KIAogZmxvYXQgTWVkaWFQbGF5ZXI6Om1heFRpbWVTZWVrYWJsZSgpCmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmggYi9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKaW5kZXggNzQ3NjM2MC4uNGM1ZWU1YiAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCisrKyBi
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaApAQCAtNDgsNiArNDgsNyBA
QCBjbGFzcyBJbnRTaXplOwogY2xhc3MgTWVkaWFQbGF5ZXI7CiBjbGFzcyBNZWRpYVBsYXllclBy
aXZhdGVJbnRlcmZhY2U7CiBjbGFzcyBTdHJpbmc7CitjbGFzcyBUaW1lUmFuZ2VzOwogCiAjaWYg
VVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQogY2xhc3MgR3JhcGhpY3NMYXllcjsKQEAgLTE0
Niw3ICsxNDcsNyBAQCBwdWJsaWM6CiAgICAgYm9vbCBwcmVzZXJ2ZXNQaXRjaCgpIGNvbnN0OyAg
ICAKICAgICB2b2lkIHNldFByZXNlcnZlc1BpdGNoKGJvb2wpOwogICAgIAotICAgIGZsb2F0IG1h
eFRpbWVCdWZmZXJlZCgpOworICAgIFBhc3NSZWZQdHI8VGltZVJhbmdlcz4gYnVmZmVyZWQoKTsK
ICAgICBmbG9hdCBtYXhUaW1lU2Vla2FibGUoKTsKIAogICAgIHVuc2lnbmVkIGJ5dGVzTG9hZGVk
KCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJp
dmF0ZS5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaApp
bmRleCA2M2FkYWM2Li45Y2M4OWM1IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXJQcml2YXRlLmgKQEAgLTc3LDcgKzc3LDcgQEAgcHVibGljOgogICAgIHZpcnR1
YWwgTWVkaWFQbGF5ZXI6OlJlYWR5U3RhdGUgcmVhZHlTdGF0ZSgpIGNvbnN0ID0gMDsKIAogICAg
IHZpcnR1YWwgZmxvYXQgbWF4VGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwotICAgIHZpcnR1YWwg
ZmxvYXQgbWF4VGltZUJ1ZmZlcmVkKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgUGFzc1JlZlB0
cjxUaW1lUmFuZ2VzPiBidWZmZXJlZCgpIGNvbnN0ID0gMDsKIAogICAgIHZpcnR1YWwgaW50IGRh
dGFSYXRlKCkgY29uc3QgPSAwOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2d0ay9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ndGsvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmNwcAppbmRleCBjNTcx
NWQ4Li4xZmM0ZjQ1IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTM3NywxMSArMzc3
LDEzIEBAIE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlIE1lZGlhUGxheWVyUHJpdmF0ZTo6cmVhZHlT
dGF0ZSgpIGNvbnN0CiAgICAgcmV0dXJuIG1fcmVhZHlTdGF0ZTsKIH0KIAotZmxvYXQgTWVkaWFQ
bGF5ZXJQcml2YXRlOjptYXhUaW1lQnVmZmVyZWQoKSBjb25zdAorUGFzc1JlZlB0cjxUaW1lUmFu
Z2VzPiBNZWRpYVBsYXllclByaXZhdGU6OmJ1ZmZlcmVkKCkgY29uc3Q7CiB7Ci0gICAgaWYgKG1f
ZXJyb3JPY2N1cmVkKQotICAgICAgICByZXR1cm4gMC4wOwotICAgIHJldHVybiBtX2lzU3RyZWFt
aW5nID8gMCA6IG1heFRpbWVMb2FkZWQoKTsKKyAgICBSZWZQdHI8VGltZVJhbmdlcz4gdGltZVJh
bmdlcyA9IFRpbWVSYW5nZXM6OmNyZWF0ZSgpOworICAgIGZsb2F0IGxvYWRlZCA9IG1heFRpbWVM
b2FkZWQoKTsKKyAgICBpZiAoIW1fZXJyb3JPY2N1cmVkICYmICFtX2lzU3RyZWFtaW5nICYmIGxv
YWRlZCA+IDApCisgICAgICAgIHRpbWVSYW5nZXMtPmFkZCgwLCBsb2FkZWQpOworICAgIHJldHVy
biB0aW1lUmFuZ2VzLnJlbGVhc2UoKTsKIH0KIAogZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlOjpt
YXhUaW1lU2Vla2FibGUoKSBjb25zdApAQCAtNzMwLDQgKzczMiwzIEBAIHZvaWQgTWVkaWFQbGF5
ZXJQcml2YXRlOjpjcmVhdGVHU1RQbGF5QmluKFN0cmluZyB1cmwpCiB9CiAKICNlbmRpZgotCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9NZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXIuaCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5oCmluZGV4IDZmOGQ5NzEuLmQzMDU3NTkgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5o
CisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5oCkBAIC04MSw3ICs4MSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
ICAgIE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGUgbmV0d29ya1N0YXRlKCkgY29uc3Q7CiAgICAg
ICAgICAgICBNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSByZWFkeVN0YXRlKCkgY29uc3Q7CiAKLSAg
ICAgICAgICAgIGZsb2F0IG1heFRpbWVCdWZmZXJlZCgpIGNvbnN0OworICAgICAgICAgICAgUGFz
c1JlZlB0cjxUaW1lUmFuZ2VzPiBidWZmZXJlZCgpIGNvbnN0OwogICAgICAgICAgICAgZmxvYXQg
bWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CiAgICAgICAgICAgICB1bnNpZ25lZCBieXRlc0xvYWRl
ZCgpIGNvbnN0OwogICAgICAgICAgICAgYm9vbCB0b3RhbEJ5dGVzS25vd24oKSBjb25zdDsKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0
ZVFUS2l0LmggYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZh
dGVRVEtpdC5oCmluZGV4IDk3NGRiZWIuLmJmYWJhOWEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvbWFjL01lZGlhUGxheWVyUHJpdmF0ZVFUS2l0LmgKKysrIGIvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQuaApAQCAtMTA1
LDcgKzEwNSw3IEBAIHByaXZhdGU6CiAgICAgTWVkaWFQbGF5ZXI6Ok5ldHdvcmtTdGF0ZSBuZXR3
b3JrU3RhdGUoKSBjb25zdCB7IHJldHVybiBtX25ldHdvcmtTdGF0ZTsgfQogICAgIE1lZGlhUGxh
eWVyOjpSZWFkeVN0YXRlIHJlYWR5U3RhdGUoKSBjb25zdCB7IHJldHVybiBtX3JlYWR5U3RhdGU7
IH0KICAgICAKLSAgICBmbG9hdCBtYXhUaW1lQnVmZmVyZWQoKSBjb25zdDsKKyAgICBQYXNzUmVm
UHRyPFRpbWVSYW5nZXM+IGJ1ZmZlcmVkKCkgY29uc3Q7CiAgICAgZmxvYXQgbWF4VGltZVNlZWth
YmxlKCkgY29uc3Q7CiAgICAgdW5zaWduZWQgYnl0ZXNMb2FkZWQoKSBjb25zdDsKICAgICBib29s
IHRvdGFsQnl0ZXNLbm93bigpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9tYWMvTWVkaWFQbGF5ZXJQcml2YXRlUVRLaXQubW0gYi9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL21hYy9NZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbQppbmRleCBkM2I1M2U1Li41
YTVjMDMxIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9NZWRpYVBs
YXllclByaXZhdGVRVEtpdC5tbQorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9N
ZWRpYVBsYXllclByaXZhdGVRVEtpdC5tbQpAQCAtMzksNiArMzksNyBAQAogI2ltcG9ydCAiS1VS
TC5oIgogI2ltcG9ydCAiTUlNRVR5cGVSZWdpc3RyeS5oIgogI2ltcG9ydCAiU29mdExpbmtpbmcu
aCIKKyNpbXBvcnQgIlRpbWVSYW5nZXMuaCIKICNpbXBvcnQgIldlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2UuaCIKICNpbXBvcnQgPFFUS2l0L1FUS2l0Lmg+CiAjaW1wb3J0IDxvYmpjL29iamMtcnVudGlt
ZS5oPgpAQCAtNzY1LDEwICs3NjYsMTMgQEAgaW50IE1lZGlhUGxheWVyUHJpdmF0ZTo6ZGF0YVJh
dGUoKSBjb25zdAogICAgIHJldHVybiB3a1FUTW92aWVEYXRhUmF0ZShtX3F0TW92aWUuZ2V0KCkp
OyAKIH0KIAotCi1mbG9hdCBNZWRpYVBsYXllclByaXZhdGU6Om1heFRpbWVCdWZmZXJlZCgpIGNv
bnN0CitQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IE1lZGlhUGxheWVyUHJpdmF0ZTo6YnVmZmVyZWQo
KSBjb25zdAogewotICAgIHJldHVybiBtYXhUaW1lTG9hZGVkKCk7CisgICAgUmVmUHRyPFRpbWVS
YW5nZXM+IHRpbWVSYW5nZXMgPSBUaW1lUmFuZ2VzOjpjcmVhdGUoKTsKKyAgICBmbG9hdCBsb2Fk
ZWQgPSBtYXhUaW1lTG9hZGVkKCk7CisgICAgaWYgKGxvYWRlZCA+IDApCisgICAgICAgIHRpbWVS
YW5nZXMtPmFkZCgwLCBsb2FkZWQpOworICAgIHJldHVybiB0aW1lUmFuZ2VzLnJlbGVhc2UoKTsK
IH0KIAogZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlOjptYXhUaW1lU2Vla2FibGUoKSBjb25zdApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9NZWRpYVBsYXllclByaXZh
dGVQaG9ub24uY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9NZWRpYVBsYXllclBy
aXZhdGVQaG9ub24uY3BwCmluZGV4IDgxNjk1M2QuLjQxNWY0NTUgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvTWVkaWFQbGF5ZXJQcml2YXRlUGhvbm9uLmNwcAorKysg
Yi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L01lZGlhUGxheWVyUHJpdmF0ZVBob25vbi5j
cHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKICNpbmNsdWRlICJH
cmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1ZGUg
IlRpbWVSYW5nZXMuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNl
dC5oPgogCkBAIC0yNjAsMTAgKzI2MSwxMCBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZTo6c2V0
RW5kVGltZShmbG9hdCBlbmRUaW1lKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLWZsb2F0
IE1lZGlhUGxheWVyUHJpdmF0ZTo6bWF4VGltZUJ1ZmZlcmVkKCkgY29uc3QKK1Bhc3NSZWZQdHI8
VGltZVJhbmdlcz4gTWVkaWFQbGF5ZXJQcml2YXRlOjpidWZmZXJlZCgpIGNvbnN0OwogewogICAg
IG5vdEltcGxlbWVudGVkKCk7Ci0gICAgcmV0dXJuIDAuMGY7CisgICAgcmV0dXJuIFRpbWVSYW5n
ZXM6OmNyZWF0ZSgpOwogfQogCiBmbG9hdCBNZWRpYVBsYXllclByaXZhdGU6Om1heFRpbWVTZWVr
YWJsZSgpIGNvbnN0CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L01l
ZGlhUGxheWVyUHJpdmF0ZVBob25vbi5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9N
ZWRpYVBsYXllclByaXZhdGVQaG9ub24uaAppbmRleCAwNDJmNWIyLi5lMTE5M2I2IDEwMDY0NAot
LS0gYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L01lZGlhUGxheWVyUHJpdmF0ZVBob25v
bi5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvTWVkaWFQbGF5ZXJQcml2YXRl
UGhvbm9uLmgKQEAgLTEwNSw3ICsxMDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGUgbmV0d29ya1N0YXRlKCkgY29uc3Q7CiAgICAgICAg
IE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlIHJlYWR5U3RhdGUoKSBjb25zdDsKIAotICAgICAgICBm
bG9hdCBtYXhUaW1lQnVmZmVyZWQoKSBjb25zdDsKKyAgICAgICAgUGFzc1JlZlB0cjxUaW1lUmFu
Z2VzPiBidWZmZXJlZCgpIGNvbnN0OwogICAgICAgICBmbG9hdCBtYXhUaW1lU2Vla2FibGUoKSBj
b25zdDsKICAgICAgICAgdW5zaWduZWQgYnl0ZXNMb2FkZWQoKSBjb25zdDsKICAgICAgICAgYm9v
bCB0b3RhbEJ5dGVzS25vd24oKSBjb25zdDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVdpbi5jcHAgYi9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9NZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVXaW4uY3Bw
CmluZGV4IGFiZjRmNmIuLjJkN2ZjYjkgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVdpbi5jcHAKKysrIGIvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vTWVkaWFQbGF5ZXJQcml2YXRlUXVpY2tUaW1lV2luLmNw
cApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgIlFUTW92aWVXaW4uaCIKICNpbmNsdWRlICJT
Y3JvbGxWaWV3LmgiCiAjaW5jbHVkZSAiU3RyaW5nSGFzaC5oIgorI2luY2x1ZGUgIlRpbWVSYW5n
ZXMuaCIKICNpbmNsdWRlICJUaW1lci5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CiAjaW5j
bHVkZSA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTMyMywxMCArMzI0LDE0IEBAIGludCBNZWRpYVBs
YXllclByaXZhdGU6OmRhdGFSYXRlKCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAotZmxvYXQg
TWVkaWFQbGF5ZXJQcml2YXRlOjptYXhUaW1lQnVmZmVyZWQoKSBjb25zdAorUGFzc1JlZlB0cjxU
aW1lUmFuZ2VzPiBNZWRpYVBsYXllclByaXZhdGU6OmJ1ZmZlcmVkKCkgY29uc3Q7CiB7CisgICAg
UmVmUHRyPFRpbWVSYW5nZXM+IHRpbWVSYW5nZXMgPSBUaW1lUmFuZ2VzOjpjcmVhdGUoKTsKKyAg
ICBmbG9hdCBsb2FkZWQgPSBtYXhUaW1lTG9hZGVkKCk7CiAgICAgLy8gcnRzcCBzdHJlYW1zIGFy
ZSBub3QgYnVmZmVyZWQKLSAgICByZXR1cm4gbV9pc1N0cmVhbWluZyA/IDAgOiBtYXhUaW1lTG9h
ZGVkKCk7CisgICAgaWYgKCFtX2lzU3RyZWFtaW5nICYmIGxvYWRlZCA+IDApCisgICAgICAgIHRp
bWVSYW5nZXMtPmFkZCgwLCBsb2FkZWQpOworICAgIHJldHVybiB0aW1lUmFuZ2VzLnJlbGVhc2Uo
KTsKIH0KIAogZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlOjptYXhUaW1lU2Vla2FibGUoKSBjb25z
dApAQCAtNjMwLDQgKzYzNSwzIEBAIGJvb2wgTWVkaWFQbGF5ZXJQcml2YXRlOjpoYXNTaW5nbGVT
ZWN1cml0eU9yaWdpbigpIGNvbnN0CiB9CiAKICNlbmRpZgotCmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9NZWRpYVBsYXllclByaXZhdGVRdWlja1RpbWVXaW4uaCBi
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGlt
ZVdpbi5oCmluZGV4IDBjOTllYTYuLjRhM2EyOGUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVdpbi5oCisrKyBiL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL01lZGlhUGxheWVyUHJpdmF0ZVF1aWNrVGltZVdp
bi5oCkBAIC03Nyw3ICs3Nyw3IEBAIHB1YmxpYzoKICAgICBNZWRpYVBsYXllcjo6TmV0d29ya1N0
YXRlIG5ldHdvcmtTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmV0d29ya1N0YXRlOyB9CiAgICAg
TWVkaWFQbGF5ZXI6OlJlYWR5U3RhdGUgcmVhZHlTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVh
ZHlTdGF0ZTsgfQogICAgIAotICAgIGZsb2F0IG1heFRpbWVCdWZmZXJlZCgpIGNvbnN0OworICAg
IFBhc3NSZWZQdHI8VGltZVJhbmdlcz4gYnVmZmVyZWQoKSBjb25zdDsKICAgICBmbG9hdCBtYXhU
aW1lU2Vla2FibGUoKSBjb25zdDsKICAgICB1bnNpZ25lZCBieXRlc0xvYWRlZCgpIGNvbnN0Owog
ICAgIGJvb2wgdG90YWxCeXRlc0tub3duKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL3dpbmNlL01lZGlhUGxheWVyUHJpdmF0ZVdpbmNlLmggYi9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL3dpbmNlL01lZGlhUGxheWVyUHJpdmF0ZVdpbmNlLmgKaW5kZXgg
ZmYzOGFkYS4uMmQ2YzM1OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93
aW5jZS9NZWRpYVBsYXllclByaXZhdGVXaW5jZS5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvd2luY2UvTWVkaWFQbGF5ZXJQcml2YXRlV2luY2UuaApAQCAtNzEsNyArNzEsNyBAQCBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIE1lZGlhUGxheWVyOjpOZXR3b3JrU3RhdGUgbmV0
d29ya1N0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9uZXR3b3JrU3RhdGU7IH0KICAgICAgICAgTWVk
aWFQbGF5ZXI6OlJlYWR5U3RhdGUgcmVhZHlTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmVhZHlT
dGF0ZTsgfQogCi0gICAgICAgIGZsb2F0IG1heFRpbWVCdWZmZXJlZCgpIGNvbnN0OworICAgICAg
ICBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IGJ1ZmZlcmVkKCkgY29uc3Q7CiAgICAgICAgIGZsb2F0
IG1heFRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAgICAgICB1bnNpZ25lZCBieXRlc0xvYWRlZCgp
IGNvbnN0OwogICAgICAgICBib29sIHRvdGFsQnl0ZXNLbm93bigpIGNvbnN0OwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5tbSBiL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1NYWMubW0KaW5kZXggNDJlMmFjYS4uYjMyM2U3
NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bU1hYy5t
bQorKysgYi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtTWFjLm1tCkBAIC0x
OTMxLDE0ICsxOTMxLDEzIEBAIGJvb2wgUmVuZGVyVGhlbWVDaHJvbWl1bU1hYzo6cGFpbnRNZWRp
YVNsaWRlclRyYWNrKFJlbmRlck9iamVjdCogbywgY29uc3QgUmVuZGVyCiAgICAgaWYgKCFtZWRp
YUVsZW1lbnQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGZsb2F0IHRpbWVMb2FkZWQg
PSAwOwotICAgIGZsb2F0IGN1cnJlbnRUaW1lID0gMDsKLSAgICBmbG9hdCBkdXJhdGlvbiA9IDA7
Ci0gICAgaWYgKE1lZGlhUGxheWVyKiBwbGF5ZXIgPSBtZWRpYUVsZW1lbnQtPnBsYXllcigpKSB7
Ci0gICAgICAgIGR1cmF0aW9uID0gcGxheWVyLT5kdXJhdGlvbigpOwotICAgICAgICB0aW1lTG9h
ZGVkID0gcGxheWVyLT5tYXhUaW1lQnVmZmVyZWQoKTsKLSAgICAgICAgY3VycmVudFRpbWUgPSBw
bGF5ZXItPmN1cnJlbnRUaW1lKCk7Ci0gICAgfQorICAgIFJlZlB0cjxUaW1lUmFuZ2VzPiB0aW1l
UmFuZ2VzID0gbWVkaWFFbGVtZW50LT5idWZmZXJlZCgpOworICAgIEV4Y2VwdGlvbkNvZGUgaWdu
b3JlZEV4Y2VwdGlvbjsKKyAgICBmbG9hdCB0aW1lTG9hZGVkID0gdGltZVJhbmdlcy0+bGVuZ3Ro
KCkgPyB0aW1lUmFuZ2VzLT5lbmQoMCwgaWdub3JlZEV4Y2VwdGlvbikgOiAwOworICAgIGZsb2F0
IGN1cnJlbnRUaW1lID0gbWVkaWFFbGVtZW50LT5jdXJyZW50VGltZSgpOworICAgIGZsb2F0IGR1
cmF0aW9uID0gbWVkaWFFbGVtZW50LT5kdXJhdGlvbigpOworICAgIGlmIChpc25hbihkdXJhdGlv
bikpCisgICAgICAgIGR1cmF0aW9uID0gMDsKIAogICAgIGJvb2wgc2hvdWxkRHJhd0VuZENhcHMg
PSAhdG9SZW5kZXJNZWRpYShtZWRpYUVsZW1lbnQtPnJlbmRlcmVyKCkpLT5zaG91bGRTaG93VGlt
ZURpc3BsYXlDb250cm9scygpOwogICAgIHdrRHJhd01lZGlhU2xpZGVyVHJhY2soTWVkaWFDb250
cm9sbGVyVGhlbWVDbGFzc2ljLCBwYWludEluZm8uY29udGV4dC0+cGxhdGZvcm1Db250ZXh0KCks
IHIsIHRpbWVMb2FkZWQsIGN1cnJlbnRUaW1lLCBkdXJhdGlvbiwgc2hvdWxkRHJhd0VuZENhcHMg
PyBNZWRpYVVJUGFydERyYXdFbmRDYXBzRmxhZyA6IDApOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuY3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWVDaHJvbWl1bVNraWEuY3BwCmluZGV4IDUxMmMzMGIuLmUyNWVlZDMgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lQ2hyb21pdW1Ta2lhLmNwcAorKysg
Yi9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUNocm9taXVtU2tpYS5jcHAKQEAgLTM2LDYg
KzM2LDcgQEAKICNpbmNsdWRlICJSZW5kZXJPYmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJTbGlk
ZXIuaCIKICNpbmNsdWRlICJTY3JvbGxiYXJUaGVtZS5oIgorI2luY2x1ZGUgIlRpbWVSYW5nZXMu
aCIKICNpbmNsdWRlICJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oIgogI2luY2x1ZGUgIlVzZXJBZ2Vu
dFN0eWxlU2hlZXRzLmgiCiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRo
ZW1lTWFjLm1tIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KaW5kZXggMzY1
MjkyZS4uNWY0YWUyNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVN
YWMubW0KKysrIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KQEAgLTM4LDYg
KzM4LDcgQEAKICNpbXBvcnQgIlJlbmRlclNsaWRlci5oIgogI2ltcG9ydCAiUmVuZGVyVmlldy5o
IgogI2ltcG9ydCAiU2hhcmVkQnVmZmVyLmgiCisjaW1wb3J0ICJUaW1lUmFuZ2VzLmgiCiAjaW1w
b3J0ICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgiCiAjaW1wb3J0ICJVc2VyQWdlbnRTdHlsZVNo
ZWV0cy5oIgogI2ltcG9ydCA8Q2FyYm9uL0NhcmJvbi5oPgpAQCAtMTYwMCwxNCArMTYwMSwxMyBA
QCBib29sIFJlbmRlclRoZW1lTWFjOjpwYWludE1lZGlhU2xpZGVyVHJhY2soUmVuZGVyT2JqZWN0
KiBvLCBjb25zdCBSZW5kZXJPYmplY3Q6OgogICAgIGlmICghbWVkaWFFbGVtZW50KQogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAKLSAgICBmbG9hdCB0aW1lTG9hZGVkID0gMDsKLSAgICBmbG9hdCBj
dXJyZW50VGltZSA9IDA7Ci0gICAgZmxvYXQgZHVyYXRpb24gPSAwOwotICAgIGlmIChNZWRpYVBs
YXllciogcGxheWVyID0gbWVkaWFFbGVtZW50LT5wbGF5ZXIoKSkgewotICAgICAgICBkdXJhdGlv
biA9IHBsYXllci0+ZHVyYXRpb24oKTsKLSAgICAgICAgdGltZUxvYWRlZCA9IHBsYXllci0+bWF4
VGltZUJ1ZmZlcmVkKCk7Ci0gICAgICAgIGN1cnJlbnRUaW1lID0gcGxheWVyLT5jdXJyZW50VGlt
ZSgpOwotICAgIH0KKyAgICBSZWZQdHI8VGltZVJhbmdlcz4gdGltZVJhbmdlcyA9IG1lZGlhRWxl
bWVudC0+YnVmZmVyZWQoKTsKKyAgICBFeGNlcHRpb25Db2RlIGlnbm9yZWRFeGNlcHRpb247Cisg
ICAgZmxvYXQgdGltZUxvYWRlZCA9IHRpbWVSYW5nZXMtPmxlbmd0aCgpID8gdGltZVJhbmdlcy0+
ZW5kKDAsIGlnbm9yZWRFeGNlcHRpb24pIDogMDsKKyAgICBmbG9hdCBjdXJyZW50VGltZSA9IG1l
ZGlhRWxlbWVudC0+Y3VycmVudFRpbWUoKTsKKyAgICBmbG9hdCBkdXJhdGlvbiA9IG1lZGlhRWxl
bWVudC0+ZHVyYXRpb24oKTsKKyAgICBpZiAoaXNuYW4oZHVyYXRpb24pKQorICAgICAgICBkdXJh
dGlvbiA9IDA7CiAgCiAgICAgcGFpbnRJbmZvLmNvbnRleHQtPnNhdmUoKTsKICAgICBGbG9hdFJl
Y3QgdW56b29tZWRSZWN0ID0gZ2V0VW56b29tZWRSZWN0QW5kQWRqdXN0Q3VycmVudENvbnRleHQo
bywgcGFpbnRJbmZvLCByKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39238</attachid>
            <date>2009-09-08 18:14:04 -0700</date>
            <delta_ts>2009-09-08 18:16:02 -0700</delta_ts>
            <desc>Fixes for 10 tests</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>1524</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">OjEwMDY0NCAxMDA2NDQgYTM0NmVmYWI5N2MxMWY4NTAwOTZhYjE0N2UwYmE3NjIxNDQyZmY4OCBh
YWZjZTQwMjg2Y2M4Y2JiOTlmNzJiODI1YWE0NjZiZWYwZjQ3YWZiIE0JTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCjoxMDA2NDQgMTAwNjQ0IGQ1MDQ2NDgxYWQzZWMwODgxZTZlZjI1NDk0OGE0MDYxNzlj
MmU0NjEgZDc5Y2YxNjRmZGY4ODUyMjY0MTE4NjM5M2ZkZTg3ZTkxMWY3MjdkMCBNCUxheW91dFRl
c3RzL21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sCjoxMDA2NDQgMTAwNjQ0IDliYjMwNmIxNjhj
Y2E2ZTgxNGQyNTkyMzc1NzM1ZDhlZjA3MmNiYWYgMTU4ZWVlZDhkODAyNGEzMmRhMjIwMWZjOGVi
ZmJlY2Y1NjdiY2NhMiBNCUxheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbAo6
MTAwNjQ0IDEwMDY0NCA1MDE4Mjc0N2M1YWNiYWJlZDg5YTM4YjAyMzI2NWZiOTI5MTRjZGRmIDg2
MTY5OTdmNjI1ZTA3NjViNzExZmIxZWU0YmRmZjVlYjI3YTM4ODUgTQlMYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1hcHBlbmQtc291cmNlLmh0bWwKOjEwMDY0NCAxMDA2NDQgNmFmZmVkMzEzMzcyYzI5
YzgyMzcwYWQxMzllNzAyYTExNmVlMGI0OSA2MWVmN2FmN2I2MGFjNzFhMzE1MWNmZThmNDYzMWFl
MzY1ZWExYTZiIE0JTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKOjEw
MDY0NCAxMDA2NDQgMDRkMjIwMDY2MDg4ZDk5M2VjOWM1MjI2YjE1ODI5ODg2ZDRhNTc5MCBlMWQ4
YmEyMTFhNjE1YzUwYjg0M2MyMjFmMjM0MzNkM2FmOTFmNGJmIE0JTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tYXV0b3BsYXkuaHRtbAo6MTAwNjQ0IDEwMDY0NCBjYThkMGFhNzEyMTRhMzg5MDI2MTc3
YmU4NTY4NGUwNjllYzJiMDIwIDZiNmI3YjI4NDMxOTE1NTE4NGU4YmU5M2Y3MGRhNWNkNGRkYTMw
OWMgTQlMYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5odG1sCjoxMDA2NDQgMTAwNjQ0
IDIxY2QwNGM2MGI4MmU2NjVjZWJmYzNhMjdhYTlmZGUzMTlmOTg2YzkgZGM3MGIxMWUxNmY0MjVi
N2NiMWMxM2I1ZDNiM2UxZDZhZmQxMDFhZSBNCUxheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRy
b2xzLXJlbmRlcmluZy5odG1sCjoxMDA2NDQgMTAwNjQ0IGZhN2U3NmExYTYxY2M3NTIwMjIzMGZm
MGU4NGU0ZDc1NWE1ODc2OTEgZTRmMmE3ODg5MzQzYzA0NDcwODE0ZWJlYzllOTUxMGE1YjY5NDgy
YiBNCUxheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKOjEwMDY0NCAxMDA2
NDQgMzc0Yjg2NWYxMDMyOTllMDdjMzAzNGIzNTU3ZDlhNDFhOTJkNDQ4ZiBkM2FiMjYzMzc3OWZi
NGViMjQ5NzdjN2JkYTg1NTljMWQ0ZWQyOTQ5IE0JTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tdHJh
bnNmb3JtZWQuaHRtbAo6MTAwNjQ0IDEwMDY0NCA3ZWM1MWNjMTMxMGM4NThjMTIxY2UzMzg2YzI2
YjlhY2Q2NWY3M2QwIDFlNWQ1NjNjYzBlYWI1NGY0MzcyMTk4NmY4ZGY4NTljNzZlZmIyNjAgTQlM
YXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLWNvbnRyb2xzLmh0bWwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39239</attachid>
            <date>2009-09-08 18:15:20 -0700</date>
            <delta_ts>2009-09-08 23:29:07 -0700</delta_ts>
            <desc>Fixes for 10 tests</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>10648</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMzQ2ZWZhLi5hYWZjZTQwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMDktMDkt
MDggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tcGFpbnQtdGVzdC5qczogQ2hhbmdlZCBpbml0KCkgdG8gdGFr
ZSBhIGZpbGUgbmFtZSBhbmQgc2V0cyBzcmMgb2YgYWxsIHZpZGVvIGVsZW1lbnRzLgorICAgICAg
ICAoaW5pdCk6CisgICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZp
bmRNZWRpYUZpbGUodHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250
cm9scy5odG1sOiBkaXR0by4KKwogMjAwOS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZDc5Y2YxNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKIDwhRE9DVFlQ
RSBIVE1MPgogPGh0bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1m
aWxlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KICAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiAg
ICAgICAgIDxwPkRyYXdpbmcgdGhlIGNvbnRyb2xzIGluIHN0cmljdCBtb2RlLjwvcD4KLSAgICAg
ICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICAg
ICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgICAgIDxzY3JpcHQ+c2V0U3JjQnlUYWdO
YW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2Ny
aXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L2NvbnRyb2xzLXN0eWxpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxp
bmcuaHRtbAppbmRleCA5YmIzMDZiLi4xNThlZWVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS9jb250cm9scy1zdHlsaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJv
bHMtc3R5bGluZy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiA8aGVhZD4KKyAgICA8c2Ny
aXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVv
LXBhaW50LXRlc3QuanMiPjwvc2NyaXB0PgogICAgIDxzdHlsZT4KICAgICAub3ZlcnJpZGUgewpA
QCAtMTcsOCArMTgsOSBAQAogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGhlIGxvb2sgb2Yg
dGhlIGNvbnRyb2xzIHNob3VsZCBub3QgY2hhbmdlLjwvcD4KIDxkaXYgY2xhc3M9Im92ZXJyaWRl
Ij4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgor
ICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPC9kaXY+Ci08dmlkZW8gY29udHJvbHMgc3Jj
PSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8
c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdj
b250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRtbAppbmRleCA1MDE4Mjc0Li44NjE2OTk3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hcHBlbmQtc291cmNlLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sCkBAIC0xLDE2ICsxLDE4
IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogCiA8c2NyaXB0
PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKKyAgICB2YXIgbWVk
aWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgdmFy
IHNvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNvdXJjZSIpOwotICAgIHNvdXJjZS5z
ZXRBdHRyaWJ1dGUoInNyYyIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgc291cmNlLnNldEF0
dHJpYnV0ZSgic3JjIiwgbWVkaWFGaWxlKTsKICAgICB2aWRlby5hcHBlbmRDaGlsZChzb3VyY2Up
OwogCiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOwogCiAgICAgd2Fp
dEZvckV2ZW50KCJsb2FkIiwgZnVuY3Rpb24gKCkgewotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJl
bGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpICIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAg
ICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgbWVkaWFG
aWxlKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1hc3BlY3QtcmF0aW8uaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWFzcGVjdC1yYXRpby5odG1sCmluZGV4IDZhZmZlZDMuLjYxZWY3YWYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sCisrKyBiL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sCkBAIC0xLDIxICsxLDIzIEBACis8c2Ny
aXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFp
bnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiA8cD5UZXN0IHZp
ZGVvIHNpemluZy4gWW91IHNob3VsZCBzZWUgb25lIGJpZ2dlciBpbWFnZSAocGF1c2VkIHZpZGVv
KSBhbmQgNyBzbWFsbCBvbmVzIG9mIDEvNCBpdHMgc2l6ZS4gPC9wPgotPHZpZGVvIHNyYz0iY29u
dGVudC90ZXN0Lm1wNCI+PC92aWRlbz48YnI+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0
IiBzdHlsZT0id2lkdGg6IDE2MHB4OyBoZWlnaHQ6MTIwcHgiPgorPHZpZGVvPjwvdmlkZW8+PGJy
PgorPHZpZGVvIHN0eWxlPSJ3aWR0aDogMTYwcHg7IGhlaWdodDoxMjBweCI+CiAKIDwvdmlkZW8+
PGRpdiBzdHlsZT0iZGlzcGxheTppbmxpbmUtYmxvY2siPgotPHZpZGVvIHNyYz0iY29udGVudC90
ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiAxNjBweDsiPgotPC92aWRlbz48dmlkZW8gc3JjPSJjb250
ZW50L3Rlc3QubXA0IiBzdHlsZT0iaGVpZ2h0OiAxMjBweDsiPgorPHZpZGVvIHN0eWxlPSJ3aWR0
aDogMTYwcHg7Ij4KKzwvdmlkZW8+PHZpZGVvIHN0eWxlPSJoZWlnaHQ6IDEyMHB4OyI+CiA8L3Zp
ZGVvPgogCiA8L2Rpdj48ZGl2IHN0eWxlPSJ3aWR0aDogMzIwcHg7IGhlaWdodDoxMjBweDsgZGlz
cGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbjogMCI+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3Qu
bXA0IiBzdHlsZT0iaGVpZ2h0OiAxMDAlOyI+Ci08L3ZpZGVvPjx2aWRlbyBzcmM9ImNvbnRlbnQv
dGVzdC5tcDQiIHN0eWxlPSJ3aWR0aDogNTAlOyI+PC92aWRlbz4KKzx2aWRlbyBzdHlsZT0iaGVp
Z2h0OiAxMDAlOyI+Cis8L3ZpZGVvPjx2aWRlbyBzdHlsZT0id2lkdGg6IDUwJTsiPjwvdmlkZW8+
CiAKIDwvZGl2PjxkaXYgc3R5bGU9IndpZHRoOiAzMjBweDsgaGVpZ2h0OjEyMHB4O3Bvc2l0aW9u
OnJlbGF0aXZlOyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2luOiAwIj4KLTx2aWRlbyBzcmM9
ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEyMHB4OyBwb3NpdGlvbjogYWJzb2x1
dGU7Ij48L3ZpZGVvPgotPHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9ImxlZnQ6
IDE2MHB4OyB3aWR0aDogMTYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPgorPHZpZGVvIHN0eWxl
PSJoZWlnaHQ6IDEyMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7Ij48L3ZpZGVvPgorPHZpZGVvIHN0
eWxlPSJsZWZ0OiAxNjBweDsgd2lkdGg6IDE2MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7Ij4KIDwv
dmlkZW8+CiA8L2Rpdj4KKzxzY3JpcHQ+c2V0U3JjQnlUYWdOYW1lKCd2aWRlbycsIGZpbmRNZWRp
YUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbCBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwKaW5kZXggMDRkMjIwMC4uZTFkOGJhMiAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sCkBAIC0xLDkgKzEsMTAgQEAKIDx2aWRlbyBh
dXRvcGxheSBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKIDxzY3JpcHQ+CiAg
ICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5hdXRvcGxheSIsIHRydWUpOwogICAgIHRlc3RFeHBlY3Rl
ZCgidmlkZW8uZ2V0QXR0cmlidXRlKCdhdXRvcGxheScpIiwgbnVsbCwgJyE9Jyk7CiAgICAgd2Fp
dEZvckV2ZW50KCdwbGF5JywgZnVuY3Rpb24gKCkgeyB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNl
ZCIsIGZhbHNlKTsgZW5kVGVzdCgpOyB9ICk7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVz
dC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQv
dGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1i
dWZmZXJlZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRtbAppbmRl
eCBjYThkMGFhLi42YjZiN2IyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1i
dWZmZXJlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZlcmVkLmh0bWwK
QEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1l
ZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0
PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmJ1ZmZlcmVkLmxlbmd0aCIsIDAp
OwpAQCAtMTksNSArMjAsNSBAQAogICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICB9CiAg
ICAgKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3Jj
ID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmluZy5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVyaW5nLmh0bWwKaW5kZXgg
MjFjZDA0Yy4uZGM3MGIxMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29u
dHJvbHMtcmVuZGVyaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJv
bHMtcmVuZGVyaW5nLmh0bWwKQEAgLTEsMTMgKzEsMTUgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1m
aWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3Nj
cmlwdD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KIDxwPlRlc3QgY29udHJvbHMgcGxhY2VtZW50
LiA8L3A+CiA8ZGl2PgotICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQi
PjwvdmlkZW8+CisgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8L2Rpdj4KIDxkaXY+Ci0g
ICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiAz
MjBweDsiPjwvdmlkZW8+CisgICAgPHZpZGVvIGNvbnRyb2xzIHN0eWxlPSJ3aWR0aDogMzIwcHg7
Ij48L3ZpZGVvPgogPC9kaXY+CiA8ZGl2PgotICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRl
bnQvdGVzdC5tcDQiIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAzMjBweDsiPjwv
dmlkZW8+CisgICAgPHZpZGVvIGNvbnRyb2xzIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHdp
ZHRoOiAzMjBweDsiPjwvdmlkZW8+CiA8L2Rpdj4KKzxzY3JpcHQ+c2V0U3JjQnlUYWdOYW1lKCd2
aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2NyaXB0Pgog
PC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2gu
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKaW5kZXggZmE3
ZTc2YS4uZTRmMmE3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXIt
Y3Jhc2guaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFzaC5odG1s
CkBAIC0xLDEwICsxLDEyIEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8Ym9keSBvbmxv
YWQ9ImRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29u
ZScpKTsgZG9jdW1lbnQuYm9keS5vZmZzZXRMZWZ0OyBpbml0KCkiPgogPHN0eWxlPgogdmlkZW8g
eyB3aWR0aDoyMDBweDsgYm9yZGVyOiAzcHggc29saWQgcmVkOyAtd2Via2l0LWJveC1yZWZsZWN0
OiBiZWxvdyA1cHg7IH0KIDwvc3R5bGU+CiA8cD5UZXN0IGR5bmFtaWMgcmVtb3ZhbCBvZiB0cmFu
c2Zvcm1lZCBhbmQgcmVmbGVjdGVkIHZpZGVvIDwvcD4KLSZuYnNwOzx2aWRlbyBpZD0ib25lIiBz
cmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjBk
ZWcpIj48L3ZpZGVvPjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0
eWxlPSItd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3ZpZGVvPjxicj4KLSZuYnNwOzx2
aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3
KDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gaWQ9Im9uZSIgc3R5bGU9Ii13ZWJr
aXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZykiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0
eWxlPSItd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2
aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2tldygyMGRlZykiPjwvdmlkZW8+PGJyPgor
PHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAn
Y29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby10cmFuc2Zvcm1lZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
dHJhbnNmb3JtZWQuaHRtbAppbmRleCAzNzRiODY1Li5kM2FiMjYzIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby10cmFuc2Zvcm1lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKKzxzY3JpcHQgc3Jj
PSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0
LmpzIj48L3NjcmlwdD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KIDxzdHlsZT4KIHZpZGVvIHsg
d2lkdGg6MjAwcHg7IGJvcmRlcjogM3B4IHNvbGlkIHJlZDsgfQogPC9zdHlsZT4KIDxwPlRlc3Qg
cGFpbnRpbmcgb2YgdHJhbnNmb3JtZWQgdmlkZW8gPC9wPgotJm5ic3A7PHZpZGVvIHNyYz0iY29u
dGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZykiPjwv
dmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13
ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNy
Yz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNrZXcoMjBkZWcp
Ij48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90
YXRlKDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9Ii13ZWJraXQtdHJh
bnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Vi
a2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+Cis8c2NyaXB0PnNldFNyY0J5
VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk8
L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpv
b20tY29udHJvbHMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMu
aHRtbAppbmRleCA3ZWM1MWNjLi4xZTVkNTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby16b29tLWNvbnRyb2xzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
em9vbS1jb250cm9scy5odG1sCkBAIC0xMCwxMSArMTAsMTMgQEAKICAgICAgICAgLXdlYmtpdC10
cmFuc2Zvcm06IHJvdGF0ZSgxMGRlZyk7CiAgICAgICB9CiAgICAgPC9zdHlsZT4KKyAgICA8c2Ny
aXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVv
LXBhaW50LXRlc3QuanMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJpbml0KCki
PgogICAgIDxwPlpvb21lZCB2aWRlbyB3aXRoIGNvbnRyb2xzLjwvcD4KLSAgICA8dmlkZW8gc3Jj
PSJjb250ZW50L3Rlc3QubXA0IiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92
aWRlbz4KLSAgICA8dmlkZW8gY2xhc3M9InJvdGF0ZWQiIHNyYz0iY29udGVudC90ZXN0Lm1wNCIg
d2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHZpZGVvIHdp
ZHRoPSIxNjAiIGhlaWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVvPgorICAgIDx2aWRlbyBjbGFz
cz0icm90YXRlZCIgd2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+Cisg
ICAgPHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8n
LCAnY29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2JvZHk+CiA8L2h0bWw+Cg==
</data>
<flag name="review"
          id="20302"
          type_id="1"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39249</attachid>
            <date>2009-09-08 23:29:07 -0700</date>
            <delta_ts>2009-09-09 11:18:09 -0700</delta_ts>
            <desc>10 layout tests change</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>11831</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMzQ2ZWZhLi5hYWZjZTQwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMDktMDkt
MDggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUo
dHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250cm9scy5odG1sOiBk
aXR0by4KKwogMjAwOS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMt
c3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZDc5Y2YxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29u
dHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKIDwhRE9DVFlQRSBIVE1MPgogPGh0
bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMiPjwvc2NyaXB0
PgogICAgIDwvaGVhZD4KICAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiAgICAgICAgIDxwPkRy
YXdpbmcgdGhlIGNvbnRyb2xzIGluIHN0cmljdCBtb2RlLjwvcD4KLSAgICAgICAgPHZpZGVvIGNv
bnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICAgICAgPHZpZGVvIGNv
bnRyb2xzPjwvdmlkZW8+CisgICAgICAgIDxzY3JpcHQ+c2V0U3JjQnlUYWdOYW1lKCd2aWRlbycs
IGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2NyaXB0PgogICAgIDwv
Ym9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0
eWxpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbAppbmRl
eCA5YmIzMDZiLi4xNThlZWVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9jb250cm9s
cy1zdHlsaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3R5bGluZy5o
dG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiA8aGVhZD4KKyAgICA8c2NyaXB0IHNyYz0ibWVk
aWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogICAgIDxzdHlsZT4KICAgICAub3ZlcnJpZGUgewpAQCAtMTcsOCArMTgs
OSBAQAogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGhlIGxvb2sgb2YgdGhlIGNvbnRyb2xz
IHNob3VsZCBub3QgY2hhbmdlLjwvcD4KIDxkaXYgY2xhc3M9Im92ZXJyaWRlIj4KLSAgICA8dmlk
ZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorICAgIDx2aWRlbyBj
b250cm9scz48L3ZpZGVvPgogPC9kaXY+Ci08dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rl
c3QubXA0Ij48L3ZpZGVvPgorPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0PnNldFNy
Y0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3Qn
KSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL21lZGlhLWZpbGUuanMgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE0NjU5M2YKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCkBAIC0wLDAgKzEsNDkgQEAKK3ZhciBh
dWRpb0NvZGVjcyA9IFsKKyAgICBbImF1ZGlvL2FhYyIsICJtNGEiXSwKKyAgICBbImF1ZGlvL21w
ZWciLCAibXAzIl0sCisgICAgWyJhdWRpby93YXYiLCAid2F2Il0sCisgICAgWyJhdWRpby9vZ2ci
LCAib2dnIl0KK107CisKK3ZhciB2aWRlb0NvZGVjcyA9IFsKKyAgICBbInZpZGVvL21wNCIsICJt
cDQiXSwKKyAgICBbInZpZGVvL21wZWciLCAibXBnIl0sCisgICAgWyJ2aWRlby9xdWlja3RpbWUi
LCAibW92Il0sCisgICAgWyJ2aWRlby9vZ2ciLCAib2dnIl0KK107CisKK2Z1bmN0aW9uIGZpbmRN
ZWRpYUZpbGUodHlwZSwgbmFtZSkgeworICAgIHZhciBjb2RlY3M7CisgICAgaWYgKHR5cGUgPT0g
ImF1ZGlvIikKKyAgICAgICAgY29kZWNzID0gYXVkaW9Db2RlY3M7CisgICAgZWxzZQorICAgICAg
ICBjb2RlY3MgPSB2aWRlb0NvZGVjczsKKworICAgIHZhciBlbGVtZW50OworICAgIHRyeSB7Cisg
ICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0eXBlKVswXTsK
KyAgICB9IGNhdGNoIChleCkgeworICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCh0eXBlKTsKKyAgICB9CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvZGVjcy5sZW5n
dGg7ICsraSkgeworICAgICAgICBpZiAoZWxlbWVudC5jYW5QbGF5VHlwZShjb2RlY3NbaV1bMF0p
KQorICAgICAgICAgICAgcmV0dXJuIG5hbWUgKyAiLiIgKyBjb2RlY3NbaV1bMV07CisgICAgfQor
CisgICAgcmV0dXJuICIiOworfQorCitmdW5jdGlvbiBzZXRTcmNCeVRhZ05hbWUodGFnTmFtZSwg
c3JjKSB7CisgICAgdmFyIGVsZW1lbnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUo
dGFnTmFtZSk7CisgICAgaWYgKGVsZW1lbnRzKSB7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgZWxlbWVudHMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBlbGVtZW50c1tpXS5zcmMgPSBz
cmM7CisgICAgfQorfQorCitmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBzcmMpIHsKKyAgICB2YXIg
ZWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7CisgICAgaWYgKGVsZW1lbnRz
KQorICAgICAgICBpZC5zcmMgPSBzcmM7Cit9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1hcHBlbmQtc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hcHBl
bmQtc291cmNlLmh0bWwKaW5kZXggNTAxODI3NC4uODYxNjk5NyAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRtbApAQCAtMSwxNiArMSwxOCBAQAogPHZpZGVvIGNv
bnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogPHNjcmlwdD4KICAgICB0ZXN0RXhw
ZWN0ZWQoInZpZGVvLmN1cnJlbnRTcmMiLCAiIik7CisgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIHZhciBzb3VyY2UgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJzb3VyY2UiKTsKLSAgICBzb3VyY2Uuc2V0QXR0cmlidXRlKCJz
cmMiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgIHNvdXJjZS5zZXRBdHRyaWJ1dGUoInNyYyIs
IG1lZGlhRmlsZSk7CiAgICAgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKTsKIAogICAgIHRlc3RF
eHBlY3RlZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKIAogICAgIHdhaXRGb3JFdmVudCgibG9h
ZCIsIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRl
by5jdXJyZW50U3JjKSAiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhwZWN0
ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpICIsIG1lZGlhRmlsZSk7CiAgICAgICAg
IGVuZFRlc3QoKTsKICAgICB9KTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tYXNwZWN0LXJhdGlvLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hc3BlY3QtcmF0
aW8uaHRtbAppbmRleCA2YWZmZWQzLi42MWVmN2FmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1hc3BlY3QtcmF0aW8uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1hc3BlY3QtcmF0aW8uaHRtbApAQCAtMSwyMSArMSwyMyBAQAorPHNjcmlwdCBzcmM9Im1lZGlh
LWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMiPjwv
c2NyaXB0PgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGVzdCB2aWRlbyBzaXppbmcuIFlv
dSBzaG91bGQgc2VlIG9uZSBiaWdnZXIgaW1hZ2UgKHBhdXNlZCB2aWRlbykgYW5kIDcgc21hbGwg
b25lcyBvZiAxLzQgaXRzIHNpemUuIDwvcD4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQi
PjwvdmlkZW8+PGJyPgotPHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRo
OiAxNjBweDsgaGVpZ2h0OjEyMHB4Ij4KKzx2aWRlbz48L3ZpZGVvPjxicj4KKzx2aWRlbyBzdHls
ZT0id2lkdGg6IDE2MHB4OyBoZWlnaHQ6MTIwcHgiPgogCiA8L3ZpZGVvPjxkaXYgc3R5bGU9ImRp
c3BsYXk6aW5saW5lLWJsb2NrIj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxl
PSJ3aWR0aDogMTYwcHg7Ij4KLTwvdmlkZW8+PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIg
c3R5bGU9ImhlaWdodDogMTIwcHg7Ij4KKzx2aWRlbyBzdHlsZT0id2lkdGg6IDE2MHB4OyI+Cis8
L3ZpZGVvPjx2aWRlbyBzdHlsZT0iaGVpZ2h0OiAxMjBweDsiPgogPC92aWRlbz4KIAogPC9kaXY+
PGRpdiBzdHlsZT0id2lkdGg6IDMyMHB4OyBoZWlnaHQ6MTIwcHg7IGRpc3BsYXk6aW5saW5lLWJs
b2NrOyBtYXJnaW46IDAiPgotPHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Imhl
aWdodDogMTAwJTsiPgotPC92aWRlbz48dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHls
ZT0id2lkdGg6IDUwJTsiPjwvdmlkZW8+Cis8dmlkZW8gc3R5bGU9ImhlaWdodDogMTAwJTsiPgor
PC92aWRlbz48dmlkZW8gc3R5bGU9IndpZHRoOiA1MCU7Ij48L3ZpZGVvPgogCiA8L2Rpdj48ZGl2
IHN0eWxlPSJ3aWR0aDogMzIwcHg7IGhlaWdodDoxMjBweDtwb3NpdGlvbjpyZWxhdGl2ZTsgZGlz
cGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbjogMCI+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3Qu
bXA0IiBzdHlsZT0iaGVpZ2h0OiAxMjBweDsgcG9zaXRpb246IGFic29sdXRlOyI+PC92aWRlbz4K
LTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJsZWZ0OiAxNjBweDsgd2lkdGg6
IDE2MHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7Ij4KKzx2aWRlbyBzdHlsZT0iaGVpZ2h0OiAxMjBw
eDsgcG9zaXRpb246IGFic29sdXRlOyI+PC92aWRlbz4KKzx2aWRlbyBzdHlsZT0ibGVmdDogMTYw
cHg7IHdpZHRoOiAxNjBweDsgcG9zaXRpb246IGFic29sdXRlOyI+CiA8L3ZpZGVvPgogPC9kaXY+
Cis8c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycs
ICdjb250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1h
dXRvcGxheS5odG1sCmluZGV4IDA0ZDIyMDAuLmUxZDhiYTIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tYXV0b3BsYXkuaHRtbApAQCAtMSw5ICsxLDEwIEBACiA8dmlkZW8gYXV0b3BsYXkgY29udHJv
bHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogCiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3Rl
ZCgidmlkZW8uYXV0b3BsYXkiLCB0cnVlKTsKICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmdldEF0
dHJpYnV0ZSgnYXV0b3BsYXknKSIsIG51bGwsICchPScpOwogICAgIHdhaXRGb3JFdmVudCgncGxh
eScsIGZ1bmN0aW9uICgpIHsgdGVzdEV4cGVjdGVkKCJ2aWRlby5wYXVzZWQiLCBmYWxzZSk7IGVu
ZFRlc3QoKTsgfSApOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2
aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZlcmVkLmh0bWwKaW5kZXggY2E4ZDBhYS4uNmI2
YjdiMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5odG1sCkBAIC0xLDQgKzEsNSBA
QAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAg
ICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5idWZmZXJlZC5sZW5ndGgiLCAwKTsKQEAgLTE5LDUgKzIw
LDUgQEAKICAgICAgICAgICAgIGVuZFRlc3QoKTsKICAgICAgICAgfQogICAgICk7Ci0gICAgdmlk
ZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZp
bGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbCBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmluZy5odG1sCmluZGV4IDIxY2QwNGMuLmRjNzBi
MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmlu
Zy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmluZy5o
dG1sCkBAIC0xLDEzICsxLDE1IEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8Ym9keSBv
bmxvYWQ9ImluaXQoKSI+CiA8cD5UZXN0IGNvbnRyb2xzIHBsYWNlbWVudC4gPC9wPgogPGRpdj4K
LSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorICAg
IDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPC9kaXY+CiA8ZGl2PgotICAgIDx2aWRlbyBjb250
cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJ3aWR0aDogMzIwcHg7Ij48L3ZpZGVv
PgorICAgIDx2aWRlbyBjb250cm9scyBzdHlsZT0id2lkdGg6IDMyMHB4OyI+PC92aWRlbz4KIDwv
ZGl2PgogPGRpdj4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0IiBz
dHlsZT0icG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMzIwcHg7Ij48L3ZpZGVvPgorICAgIDx2
aWRlbyBjb250cm9scyBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyB3aWR0aDogMzIwcHg7Ij48
L3ZpZGVvPgogPC9kaXY+Cis8c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVk
aWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFzaC5odG1sCmluZGV4IGZhN2U3NmEuLmU0ZjJhNzgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbApAQCAtMSwxMCArMSwx
MiBAQAorPHNjcmlwdCBzcmM9Im1lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
InZpZGVvLXBhaW50LXRlc3QuanMiPjwvc2NyaXB0PgogPGJvZHkgb25sb2FkPSJkb2N1bWVudC5i
b2R5LnJlbW92ZUNoaWxkKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdvbmUnKSk7IGRvY3VtZW50
LmJvZHkub2Zmc2V0TGVmdDsgaW5pdCgpIj4KIDxzdHlsZT4KIHZpZGVvIHsgd2lkdGg6MjAwcHg7
IGJvcmRlcjogM3B4IHNvbGlkIHJlZDsgLXdlYmtpdC1ib3gtcmVmbGVjdDogYmVsb3cgNXB4OyB9
CiA8L3N0eWxlPgogPHA+VGVzdCBkeW5hbWljIHJlbW92YWwgb2YgdHJhbnNmb3JtZWQgYW5kIHJl
ZmxlY3RlZCB2aWRlbyA8L3A+Ci0mbmJzcDs8dmlkZW8gaWQ9Im9uZSIgc3JjPSJjb250ZW50L3Rl
c3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+PC92aWRlbz48
YnI+Ci0mbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10
cmFuc2Zvcm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+Ci0mbmJzcDs8dmlkZW8gc3JjPSJjb250
ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2tldygyMGRlZykiPjwvdmlk
ZW8+PGJyPgorJm5ic3A7PHZpZGVvIGlkPSJvbmUiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpy
b3RhdGUoMjBkZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10
cmFuc2Zvcm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9Ii13
ZWJraXQtdHJhbnNmb3JtOnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxicj4KKzxzY3JpcHQ+c2V0U3Jj
QnlUYWdOYW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcp
KTwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
dHJhbnNmb3JtZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0
bWwKaW5kZXggMzc0Yjg2NS4uZDNhYjI2MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tdHJhbnNmb3JtZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby10cmFu
c2Zvcm1lZC5odG1sCkBAIC0xLDEwICsxLDEyIEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5q
cyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+
CiA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiA8c3R5bGU+CiB2aWRlbyB7IHdpZHRoOjIwMHB4OyBi
b3JkZXI6IDNweCBzb2xpZCByZWQ7IH0KIDwvc3R5bGU+CiA8cD5UZXN0IHBhaW50aW5nIG9mIHRy
YW5zZm9ybWVkIHZpZGVvIDwvcD4KLSZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQi
IHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjBkZWcpIj48L3ZpZGVvPjxicj4KLSZu
YnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9y
bTpzY2FsZSgwLjUpIj48L3ZpZGVvPjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVz
dC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+
CismbmJzcDs8dmlkZW8gc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZykiPjwv
dmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgw
LjUpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06
c2tldygyMGRlZykiPjwvdmlkZW8+PGJyPgorPHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVv
JywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2Jv
ZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLWNvbnRyb2xzLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLWNvbnRyb2xzLmh0bWwKaW5kZXggN2Vj
NTFjYy4uMWU1ZDU2MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1j
b250cm9scy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMu
aHRtbApAQCAtMTAsMTEgKzEwLDEzIEBACiAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3Rh
dGUoMTBkZWcpOwogICAgICAgfQogICAgIDwvc3R5bGU+CisgICAgPHNjcmlwdCBzcmM9Im1lZGlh
LWZpbGUuanMiPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0Lmpz
Ij48L3NjcmlwdD4KIDwvaGVhZD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KICAgICA8cD5ab29t
ZWQgdmlkZW8gd2l0aCBjb250cm9scy48L3A+Ci0gICAgPHZpZGVvIHNyYz0iY29udGVudC90ZXN0
Lm1wNCIgd2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+Ci0gICAgPHZp
ZGVvIGNsYXNzPSJyb3RhdGVkIiBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHdpZHRoPSIxNjAiIGhl
aWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVvPgorICAgIDx2aWRlbyB3aWR0aD0iMTYwIiBoZWln
aHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KKyAgICA8dmlkZW8gY2xhc3M9InJvdGF0ZWQiIHdp
ZHRoPSIxNjAiIGhlaWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVvPgorICAgIDxzY3JpcHQ+c2V0
U3JjQnlUYWdOYW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVz
dCcpKTwvc2NyaXB0PgogPC9ib2R5PgogPC9odG1sPgo=
</data>
<flag name="review"
          id="20313"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39282</attachid>
            <date>2009-09-09 11:18:09 -0700</date>
            <delta_ts>2009-09-09 11:28:29 -0700</delta_ts>
            <desc>Updated patch for 10 layout tests</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>11967</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMzQ2ZWZhLi5hYWZjZTQwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMDktMDkt
MDggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tcGFpbnQtdGVzdC5qczogQ2hhbmdlZCBpbml0KCkgdG8gdGFr
ZSBhIGZpbGUgbmFtZSBhbmQgc2V0cyBzcmMgb2YgYWxsIHZpZGVvIGVsZW1lbnRzLgorICAgICAg
ICAoaW5pdCk6CisgICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZp
bmRNZWRpYUZpbGUodHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250
cm9scy5odG1sOiBkaXR0by4KKwogMjAwOS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQu
b3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZDc5Y2YxNiAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKIDwhRE9DVFlQ
RSBIVE1MPgogPGh0bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1m
aWxlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KICAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiAg
ICAgICAgIDxwPkRyYXdpbmcgdGhlIGNvbnRyb2xzIGluIHN0cmljdCBtb2RlLjwvcD4KLSAgICAg
ICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICAg
ICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgICAgIDxzY3JpcHQ+c2V0U3JjQnlUYWdO
YW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2Ny
aXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L2NvbnRyb2xzLXN0eWxpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxp
bmcuaHRtbAppbmRleCA5YmIzMDZiLi4xNThlZWVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS9jb250cm9scy1zdHlsaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJv
bHMtc3R5bGluZy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiA8aGVhZD4KKyAgICA8c2Ny
aXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVv
LXBhaW50LXRlc3QuanMiPjwvc2NyaXB0PgogICAgIDxzdHlsZT4KICAgICAub3ZlcnJpZGUgewpA
QCAtMTcsOCArMTgsOSBAQAogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGhlIGxvb2sgb2Yg
dGhlIGNvbnRyb2xzIHNob3VsZCBub3QgY2hhbmdlLjwvcD4KIDxkaXYgY2xhc3M9Im92ZXJyaWRl
Ij4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgor
ICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPC9kaXY+Ci08dmlkZW8gY29udHJvbHMgc3Jj
PSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8
c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdj
b250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1m
aWxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4NTY5Y2YKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCkBAIC0wLDAgKzEs
NDkgQEAKK3ZhciBhdWRpb0NvZGVjcyA9IFsKKyAgICBbImF1ZGlvL2FhYyIsICJtNGEiXSwKKyAg
ICBbImF1ZGlvL21wZWciLCAibXAzIl0sCisgICAgWyJhdWRpby93YXYiLCAid2F2Il0sCisgICAg
WyJhdWRpby9vZ2ciLCAib2dnIl0KK107CisKK3ZhciB2aWRlb0NvZGVjcyA9IFsKKyAgICBbInZp
ZGVvL21wNCIsICJtcDQiXSwKKyAgICBbInZpZGVvL21wZWciLCAibXBnIl0sCisgICAgWyJ2aWRl
by9xdWlja3RpbWUiLCAibW92Il0sCisgICAgWyJ2aWRlby9vZ2ciLCAib2dnIl0KK107CisKK2Z1
bmN0aW9uIGZpbmRNZWRpYUZpbGUodGFnTmFtZSwgbmFtZSkgeworICAgIHZhciBjb2RlY3M7Cisg
ICAgaWYgKHRhZ05hbWUgPT0gImF1ZGlvIikKKyAgICAgICAgY29kZWNzID0gYXVkaW9Db2RlY3M7
CisgICAgZWxzZQorICAgICAgICBjb2RlY3MgPSB2aWRlb0NvZGVjczsKKworICAgIHZhciBlbGVt
ZW50OworICAgIHRyeSB7CisgICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSh0YWdOYW1lKVswXTsKKyAgICB9IGNhdGNoIChleCkgeworICAgICAgICBlbGVtZW50
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTsKKyAgICB9CisKKyAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IGNvZGVjcy5sZW5ndGg7ICsraSkgeworICAgICAgICBpZiAoZWxlbWVudC5j
YW5QbGF5VHlwZShjb2RlY3NbaV1bMF0pKQorICAgICAgICAgICAgcmV0dXJuIG5hbWUgKyAiLiIg
KyBjb2RlY3NbaV1bMV07CisgICAgfQorCisgICAgcmV0dXJuICIiOworfQorCitmdW5jdGlvbiBz
ZXRTcmNCeVRhZ05hbWUodGFnTmFtZSwgc3JjKSB7CisgICAgdmFyIGVsZW1lbnRzID0gZG9jdW1l
bnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUodGFnTmFtZSk7CisgICAgaWYgKGVsZW1lbnRzKSB7Cisg
ICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyArK2kpCisgICAgICAg
ICAgICBlbGVtZW50c1tpXS5zcmMgPSBzcmM7CisgICAgfQorfQorCitmdW5jdGlvbiBzZXRTcmNC
eUlkKGlkLCBzcmMpIHsKKyAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KGlkKTsKKyAgICBpZiAoZWxlbWVudCkKKyAgICAgICAgaWQuc3JjID0gc3JjOworfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sCmluZGV4IDUwMTgyNzQuLjg2MTY5
OTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hcHBlbmQtc291cmNlLmh0bWwKQEAgLTEs
MTYgKzEsMTggQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEt
ZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAK
IDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOworICAg
IHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsK
ICAgICB2YXIgc291cmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic291cmNlIik7Ci0gICAg
c291cmNlLnNldEF0dHJpYnV0ZSgic3JjIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICBzb3Vy
Y2Uuc2V0QXR0cmlidXRlKCJzcmMiLCBtZWRpYUZpbGUpOwogICAgIHZpZGVvLmFwcGVuZENoaWxk
KHNvdXJjZSk7CiAKICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmN1cnJlbnRTcmMiLCAiIik7CiAK
ICAgICB3YWl0Rm9yRXZlbnQoImxvYWQiLCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RFeHBl
Y3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgImNvbnRlbnQvdGVzdC5tcDQi
KTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAi
LCBtZWRpYUZpbGUpOwogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKaW5kZXggNmFmZmVkMy4uNjFlZjdhZiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKQEAgLTEsMjEgKzEsMjMg
QEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2
aWRlby1wYWludC10ZXN0LmpzIj48L3NjcmlwdD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KIDxw
PlRlc3QgdmlkZW8gc2l6aW5nLiBZb3Ugc2hvdWxkIHNlZSBvbmUgYmlnZ2VyIGltYWdlIChwYXVz
ZWQgdmlkZW8pIGFuZCA3IHNtYWxsIG9uZXMgb2YgMS80IGl0cyBzaXplLiA8L3A+Ci08dmlkZW8g
c3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPjxicj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQv
dGVzdC5tcDQiIHN0eWxlPSJ3aWR0aDogMTYwcHg7IGhlaWdodDoxMjBweCI+Cis8dmlkZW8+PC92
aWRlbz48YnI+Cis8dmlkZW8gc3R5bGU9IndpZHRoOiAxNjBweDsgaGVpZ2h0OjEyMHB4Ij4KIAog
PC92aWRlbz48ZGl2IHN0eWxlPSJkaXNwbGF5OmlubGluZS1ibG9jayI+Ci08dmlkZW8gc3JjPSJj
b250ZW50L3Rlc3QubXA0IiBzdHlsZT0id2lkdGg6IDE2MHB4OyI+Ci08L3ZpZGVvPjx2aWRlbyBz
cmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEyMHB4OyI+Cis8dmlkZW8gc3R5
bGU9IndpZHRoOiAxNjBweDsiPgorPC92aWRlbz48dmlkZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7
Ij4KIDwvdmlkZW8+CiAKIDwvZGl2PjxkaXYgc3R5bGU9IndpZHRoOiAzMjBweDsgaGVpZ2h0OjEy
MHB4OyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2luOiAwIj4KLTx2aWRlbyBzcmM9ImNvbnRl
bnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KLTwvdmlkZW8+PHZpZGVvIHNyYz0i
Y29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiA1MCU7Ij48L3ZpZGVvPgorPHZpZGVvIHN0
eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KKzwvdmlkZW8+PHZpZGVvIHN0eWxlPSJ3aWR0aDogNTAlOyI+
PC92aWRlbz4KIAogPC9kaXY+PGRpdiBzdHlsZT0id2lkdGg6IDMyMHB4OyBoZWlnaHQ6MTIwcHg7
cG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46IDAiPgotPHZp
ZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9ImhlaWdodDogMTIwcHg7IHBvc2l0aW9u
OiBhYnNvbHV0ZTsiPjwvdmlkZW8+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHls
ZT0ibGVmdDogMTYwcHg7IHdpZHRoOiAxNjBweDsgcG9zaXRpb246IGFic29sdXRlOyI+Cis8dmlk
ZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPjwvdmlkZW8+Cis8
dmlkZW8gc3R5bGU9ImxlZnQ6IDE2MHB4OyB3aWR0aDogMTYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0
ZTsiPgogPC92aWRlbz4KIDwvZGl2PgorPHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywg
ZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2JvZHk+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbAppbmRleCAwNGQyMjAwLi5lMWQ4YmEy
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sCisrKyBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwKQEAgLTEsOSArMSwxMCBAQAog
PHZpZGVvIGF1dG9wbGF5IGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogPHNj
cmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmF1dG9wbGF5IiwgdHJ1ZSk7CiAgICAgdGVz
dEV4cGVjdGVkKCJ2aWRlby5nZXRBdHRyaWJ1dGUoJ2F1dG9wbGF5JykiLCBudWxsLCAnIT0nKTsK
ICAgICB3YWl0Rm9yRXZlbnQoJ3BsYXknLCBmdW5jdGlvbiAoKSB7IHRlc3RFeHBlY3RlZCgidmlk
ZW8ucGF1c2VkIiwgZmFsc2UpOyBlbmRUZXN0KCk7IH0gKTsKLSAgICB2aWRlby5zcmMgPSAiY29u
dGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAi
Y29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWJ1ZmZlcmVkLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5o
dG1sCmluZGV4IGNhOGQwYWEuLjZiNmI3YjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWJ1ZmZlcmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVy
ZWQuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlw
dCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+
PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uYnVmZmVyZWQubGVu
Z3RoIiwgMCk7CkBAIC0xOSw1ICsyMCw1IEBACiAgICAgICAgICAgICBlbmRUZXN0KCk7CiAgICAg
ICAgIH0KICAgICApOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2
aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVy
aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRt
bAppbmRleCAyMWNkMDRjLi5kYzcwYjExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1jb250cm9scy1yZW5kZXJpbmcuaHRtbApAQCAtMSwxMyArMSwxNSBAQAorPHNjcmlwdCBzcmM9
Im1lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGVzdCBjb250cm9scyBw
bGFjZW1lbnQuIDwvcD4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90
ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDwvZGl2Pgog
PGRpdj4KLSAgICA8dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0i
d2lkdGg6IDMyMHB4OyI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9IndpZHRo
OiAzMjBweDsiPjwvdmlkZW8+CiA8L2Rpdj4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xzIHNy
Yz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDMy
MHB4OyI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9InBvc2l0aW9uOiBhYnNv
bHV0ZTsgd2lkdGg6IDMyMHB4OyI+PC92aWRlbz4KIDwvZGl2PgorPHNjcmlwdD5zZXRTcmNCeVRh
Z05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpPC9z
Y3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXll
ci1jcmFzaC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbApp
bmRleCBmYTdlNzZhLi5lNGYyYTc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1sYXllci1jcmFzaC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNy
YXNoLmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3NjcmlwdD4KIDxi
b2R5IG9ubG9hZD0iZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnb25lJykpOyBkb2N1bWVudC5ib2R5Lm9mZnNldExlZnQ7IGluaXQoKSI+CiA8c3R5bGU+
CiB2aWRlbyB7IHdpZHRoOjIwMHB4OyBib3JkZXI6IDNweCBzb2xpZCByZWQ7IC13ZWJraXQtYm94
LXJlZmxlY3Q6IGJlbG93IDVweDsgfQogPC9zdHlsZT4KIDxwPlRlc3QgZHluYW1pYyByZW1vdmFs
IG9mIHRyYW5zZm9ybWVkIGFuZCByZWZsZWN0ZWQgdmlkZW8gPC9wPgotJm5ic3A7PHZpZGVvIGlk
PSJvbmUiIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJv
dGF0ZSgyMGRlZykiPjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0
Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgot
Jm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNm
b3JtOnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBpZD0ib25lIiBzdHls
ZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8
dmlkZW8gc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgor
Jm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRl
bz48YnI+Cis8c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2
aWRlbycsICdjb250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby10cmFuc2Zvcm1lZC5odG1sCmluZGV4IDM3NGI4NjUuLmQzYWIyNjMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbApAQCAtMSwxMCArMSwxMiBAQAorPHNj
cmlwdCBzcmM9Im1lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXBh
aW50LXRlc3QuanMiPjwvc2NyaXB0PgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHN0eWxlPgog
dmlkZW8geyB3aWR0aDoyMDBweDsgYm9yZGVyOiAzcHggc29saWQgcmVkOyB9CiA8L3N0eWxlPgog
PHA+VGVzdCBwYWludGluZyBvZiB0cmFuc2Zvcm1lZCB2aWRlbyA8L3A+Ci0mbmJzcDs8dmlkZW8g
c3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDIw
ZGVnKSI+PC92aWRlbz48YnI+Ci0mbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBz
dHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+Ci0mbmJzcDs8
dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2tl
dygyMGRlZykiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5z
Zm9ybTpyb3RhdGUoMjBkZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdl
YmtpdC10cmFuc2Zvcm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5
bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxicj4KKzxzY3JpcHQ+
c2V0U3JjQnlUYWdOYW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQv
dGVzdCcpKTwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tem9vbS1jb250cm9scy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1j
b250cm9scy5odG1sCmluZGV4IDdlYzUxY2MuLjFlNWQ1NjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby16b29tLWNvbnRyb2xzLmh0bWwKQEAgLTEwLDExICsxMCwxMyBAQAogICAgICAgICAt
d2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEwZGVnKTsKICAgICAgIH0KICAgICA8L3N0eWxlPgor
ICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9
ImluaXQoKSI+CiAgICAgPHA+Wm9vbWVkIHZpZGVvIHdpdGggY29udHJvbHMuPC9wPgotICAgIDx2
aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHdpZHRoPSIxNjAiIGhlaWdodD0iMTIwIiBjb250
cm9scz48L3ZpZGVvPgotICAgIDx2aWRlbyBjbGFzcz0icm90YXRlZCIgc3JjPSJjb250ZW50L3Rl
c3QubXA0IiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KKyAgICA8
dmlkZW8gd2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHZp
ZGVvIGNsYXNzPSJyb3RhdGVkIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92
aWRlbz4KKyAgICA8c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxl
KCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39284</attachid>
            <date>2009-09-09 11:28:29 -0700</date>
            <delta_ts>2009-09-09 14:56:20 -0700</delta_ts>
            <desc>Updated patch for layout tests (again)</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>11841</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMzQ2ZWZhLi4xMWNkMDMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMDktMDkt
MDggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUo
dHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250cm9scy5odG1sOiBk
aXR0by4KKwogMjAwOS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMt
c3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZDc5Y2YxNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29u
dHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKIDwhRE9DVFlQRSBIVE1MPgogPGh0
bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMiPjwvc2NyaXB0
PgogICAgIDwvaGVhZD4KICAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiAgICAgICAgIDxwPkRy
YXdpbmcgdGhlIGNvbnRyb2xzIGluIHN0cmljdCBtb2RlLjwvcD4KLSAgICAgICAgPHZpZGVvIGNv
bnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICAgICAgPHZpZGVvIGNv
bnRyb2xzPjwvdmlkZW8+CisgICAgICAgIDxzY3JpcHQ+c2V0U3JjQnlUYWdOYW1lKCd2aWRlbycs
IGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2NyaXB0PgogICAgIDwv
Ym9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0
eWxpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbAppbmRl
eCA5YmIzMDZiLi4xNThlZWVkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9jb250cm9s
cy1zdHlsaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3R5bGluZy5o
dG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiA8aGVhZD4KKyAgICA8c2NyaXB0IHNyYz0ibWVk
aWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogICAgIDxzdHlsZT4KICAgICAub3ZlcnJpZGUgewpAQCAtMTcsOCArMTgs
OSBAQAogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGhlIGxvb2sgb2YgdGhlIGNvbnRyb2xz
IHNob3VsZCBub3QgY2hhbmdlLjwvcD4KIDxkaXYgY2xhc3M9Im92ZXJyaWRlIj4KLSAgICA8dmlk
ZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorICAgIDx2aWRlbyBj
b250cm9scz48L3ZpZGVvPgogPC9kaXY+Ci08dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rl
c3QubXA0Ij48L3ZpZGVvPgorPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0PnNldFNy
Y0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3Qn
KSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL21lZGlhLWZpbGUuanMgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4NTY5Y2YKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCkBAIC0wLDAgKzEsNDkgQEAKK3ZhciBh
dWRpb0NvZGVjcyA9IFsKKyAgICBbImF1ZGlvL2FhYyIsICJtNGEiXSwKKyAgICBbImF1ZGlvL21w
ZWciLCAibXAzIl0sCisgICAgWyJhdWRpby93YXYiLCAid2F2Il0sCisgICAgWyJhdWRpby9vZ2ci
LCAib2dnIl0KK107CisKK3ZhciB2aWRlb0NvZGVjcyA9IFsKKyAgICBbInZpZGVvL21wNCIsICJt
cDQiXSwKKyAgICBbInZpZGVvL21wZWciLCAibXBnIl0sCisgICAgWyJ2aWRlby9xdWlja3RpbWUi
LCAibW92Il0sCisgICAgWyJ2aWRlby9vZ2ciLCAib2dnIl0KK107CisKK2Z1bmN0aW9uIGZpbmRN
ZWRpYUZpbGUodGFnTmFtZSwgbmFtZSkgeworICAgIHZhciBjb2RlY3M7CisgICAgaWYgKHRhZ05h
bWUgPT0gImF1ZGlvIikKKyAgICAgICAgY29kZWNzID0gYXVkaW9Db2RlY3M7CisgICAgZWxzZQor
ICAgICAgICBjb2RlY3MgPSB2aWRlb0NvZGVjczsKKworICAgIHZhciBlbGVtZW50OworICAgIHRy
eSB7CisgICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdO
YW1lKVswXTsKKyAgICB9IGNhdGNoIChleCkgeworICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCh0YWdOYW1lKTsKKyAgICB9CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8
IGNvZGVjcy5sZW5ndGg7ICsraSkgeworICAgICAgICBpZiAoZWxlbWVudC5jYW5QbGF5VHlwZShj
b2RlY3NbaV1bMF0pKQorICAgICAgICAgICAgcmV0dXJuIG5hbWUgKyAiLiIgKyBjb2RlY3NbaV1b
MV07CisgICAgfQorCisgICAgcmV0dXJuICIiOworfQorCitmdW5jdGlvbiBzZXRTcmNCeVRhZ05h
bWUodGFnTmFtZSwgc3JjKSB7CisgICAgdmFyIGVsZW1lbnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUodGFnTmFtZSk7CisgICAgaWYgKGVsZW1lbnRzKSB7CisgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgZWxlbWVudHMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBlbGVtZW50
c1tpXS5zcmMgPSBzcmM7CisgICAgfQorfQorCitmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBzcmMp
IHsKKyAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKKyAgICBp
ZiAoZWxlbWVudCkKKyAgICAgICAgaWQuc3JjID0gc3JjOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tYXBwZW5kLXNvdXJjZS5odG1sCmluZGV4IDUwMTgyNzQuLjg2MTY5OTcgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1hcHBlbmQtc291cmNlLmh0bWwKQEAgLTEsMTYgKzEsMTggQEAK
IDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKIDxzY3JpcHQ+CiAg
ICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOworICAgIHZhciBtZWRpYUZp
bGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICB2YXIgc291
cmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic291cmNlIik7Ci0gICAgc291cmNlLnNldEF0
dHJpYnV0ZSgic3JjIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICBzb3VyY2Uuc2V0QXR0cmli
dXRlKCJzcmMiLCBtZWRpYUZpbGUpOwogICAgIHZpZGVvLmFwcGVuZENoaWxkKHNvdXJjZSk7CiAK
ICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmN1cnJlbnRTcmMiLCAiIik7CiAKICAgICB3YWl0Rm9y
RXZlbnQoImxvYWQiLCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRp
dmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAg
dGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAiLCBtZWRpYUZpbGUp
OwogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
YXNwZWN0LXJhdGlvLmh0bWwKaW5kZXggNmFmZmVkMy4uNjFlZjdhZiAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKQEAgLTEsMjEgKzEsMjMgQEAKKzxzY3JpcHQg
c3JjPSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10
ZXN0LmpzIj48L3NjcmlwdD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KIDxwPlRlc3QgdmlkZW8g
c2l6aW5nLiBZb3Ugc2hvdWxkIHNlZSBvbmUgYmlnZ2VyIGltYWdlIChwYXVzZWQgdmlkZW8pIGFu
ZCA3IHNtYWxsIG9uZXMgb2YgMS80IGl0cyBzaXplLiA8L3A+Ci08dmlkZW8gc3JjPSJjb250ZW50
L3Rlc3QubXA0Ij48L3ZpZGVvPjxicj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0
eWxlPSJ3aWR0aDogMTYwcHg7IGhlaWdodDoxMjBweCI+Cis8dmlkZW8+PC92aWRlbz48YnI+Cis8
dmlkZW8gc3R5bGU9IndpZHRoOiAxNjBweDsgaGVpZ2h0OjEyMHB4Ij4KIAogPC92aWRlbz48ZGl2
IHN0eWxlPSJkaXNwbGF5OmlubGluZS1ibG9jayI+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3Qu
bXA0IiBzdHlsZT0id2lkdGg6IDE2MHB4OyI+Ci08L3ZpZGVvPjx2aWRlbyBzcmM9ImNvbnRlbnQv
dGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEyMHB4OyI+Cis8dmlkZW8gc3R5bGU9IndpZHRoOiAx
NjBweDsiPgorPC92aWRlbz48dmlkZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7Ij4KIDwvdmlkZW8+
CiAKIDwvZGl2PjxkaXYgc3R5bGU9IndpZHRoOiAzMjBweDsgaGVpZ2h0OjEyMHB4OyBkaXNwbGF5
OmlubGluZS1ibG9jazsgbWFyZ2luOiAwIj4KLTx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQi
IHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KLTwvdmlkZW8+PHZpZGVvIHNyYz0iY29udGVudC90ZXN0
Lm1wNCIgc3R5bGU9IndpZHRoOiA1MCU7Ij48L3ZpZGVvPgorPHZpZGVvIHN0eWxlPSJoZWlnaHQ6
IDEwMCU7Ij4KKzwvdmlkZW8+PHZpZGVvIHN0eWxlPSJ3aWR0aDogNTAlOyI+PC92aWRlbz4KIAog
PC9kaXY+PGRpdiBzdHlsZT0id2lkdGg6IDMyMHB4OyBoZWlnaHQ6MTIwcHg7cG9zaXRpb246cmVs
YXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46IDAiPgotPHZpZGVvIHNyYz0iY29u
dGVudC90ZXN0Lm1wNCIgc3R5bGU9ImhlaWdodDogMTIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsi
PjwvdmlkZW8+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0ibGVmdDogMTYw
cHg7IHdpZHRoOiAxNjBweDsgcG9zaXRpb246IGFic29sdXRlOyI+Cis8dmlkZW8gc3R5bGU9Imhl
aWdodDogMTIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPjwvdmlkZW8+Cis8dmlkZW8gc3R5bGU9
ImxlZnQ6IDE2MHB4OyB3aWR0aDogMTYwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPgogPC92aWRl
bz4KIDwvZGl2PgorPHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmls
ZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvdmlkZW8tYXV0b3BsYXkuaHRtbAppbmRleCAwNGQyMjAwLi5lMWQ4YmEyIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1hdXRvcGxheS5odG1sCisrKyBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWF1dG9wbGF5Lmh0bWwKQEAgLTEsOSArMSwxMCBAQAogPHZpZGVvIGF1dG9w
bGF5IGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogPHNjcmlwdD4KICAgICB0
ZXN0RXhwZWN0ZWQoInZpZGVvLmF1dG9wbGF5IiwgdHJ1ZSk7CiAgICAgdGVzdEV4cGVjdGVkKCJ2
aWRlby5nZXRBdHRyaWJ1dGUoJ2F1dG9wbGF5JykiLCBudWxsLCAnIT0nKTsKICAgICB3YWl0Rm9y
RXZlbnQoJ3BsYXknLCBmdW5jdGlvbiAoKSB7IHRlc3RFeHBlY3RlZCgidmlkZW8ucGF1c2VkIiwg
ZmFsc2UpOyBlbmRUZXN0KCk7IH0gKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1w
NCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZl
cmVkLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5odG1sCmluZGV4IGNh
OGQwYWEuLjZiNmI3YjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZl
cmVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRtbApAQCAt
MSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEt
ZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8
c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uYnVmZmVyZWQubGVuZ3RoIiwgMCk7CkBA
IC0xOSw1ICsyMCw1IEBACiAgICAgICAgICAgICBlbmRUZXN0KCk7CiAgICAgICAgIH0KICAgICAp
OwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBm
aW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVyaW5nLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbAppbmRleCAyMWNk
MDRjLi5kYzcwYjExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9s
cy1yZW5kZXJpbmcuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy1y
ZW5kZXJpbmcuaHRtbApAQCAtMSwxMyArMSwxNSBAQAorPHNjcmlwdCBzcmM9Im1lZGlhLWZpbGUu
anMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMiPjwvc2NyaXB0
PgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHA+VGVzdCBjb250cm9scyBwbGFjZW1lbnQuIDwv
cD4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92
aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDwvZGl2PgogPGRpdj4KLSAgICA8
dmlkZW8gY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0id2lkdGg6IDMyMHB4
OyI+PC92aWRlbz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9IndpZHRoOiAzMjBweDsiPjwv
dmlkZW8+CiA8L2Rpdj4KIDxkaXY+Ci0gICAgPHZpZGVvIGNvbnRyb2xzIHNyYz0iY29udGVudC90
ZXN0Lm1wNCIgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6IDMyMHB4OyI+PC92aWRl
bz4KKyAgICA8dmlkZW8gY29udHJvbHMgc3R5bGU9InBvc2l0aW9uOiBhYnNvbHV0ZTsgd2lkdGg6
IDMyMHB4OyI+PC92aWRlbz4KIDwvZGl2PgorPHNjcmlwdD5zZXRTcmNCeVRhZ05hbWUoJ3ZpZGVv
JywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpPC9zY3JpcHQ+CiA8L2Jv
ZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFzaC5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbAppbmRleCBmYTdlNzZh
Li5lNGYyYTc4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFz
aC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKQEAg
LTEsMTAgKzEsMTIgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxz
Y3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3NjcmlwdD4KIDxib2R5IG9ubG9hZD0i
ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb25lJykp
OyBkb2N1bWVudC5ib2R5Lm9mZnNldExlZnQ7IGluaXQoKSI+CiA8c3R5bGU+CiB2aWRlbyB7IHdp
ZHRoOjIwMHB4OyBib3JkZXI6IDNweCBzb2xpZCByZWQ7IC13ZWJraXQtYm94LXJlZmxlY3Q6IGJl
bG93IDVweDsgfQogPC9zdHlsZT4KIDxwPlRlc3QgZHluYW1pYyByZW1vdmFsIG9mIHRyYW5zZm9y
bWVkIGFuZCByZWZsZWN0ZWQgdmlkZW8gPC9wPgotJm5ic3A7PHZpZGVvIGlkPSJvbmUiIHNyYz0i
Y29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZyki
PjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9
Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVv
IHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNrZXcoMjBk
ZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBpZD0ib25lIiBzdHlsZT0iLXdlYmtpdC10
cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9
Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVv
IHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+Cis8c2Ny
aXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250
ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby10cmFu
c2Zvcm1lZC5odG1sCmluZGV4IDM3NGI4NjUuLmQzYWIyNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLXRyYW5zZm9ybWVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tdHJhbnNmb3JtZWQuaHRtbApAQCAtMSwxMCArMSwxMiBAQAorPHNjcmlwdCBzcmM9Im1l
ZGlhLWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMi
Pjwvc2NyaXB0PgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogPHN0eWxlPgogdmlkZW8geyB3aWR0
aDoyMDBweDsgYm9yZGVyOiAzcHggc29saWQgcmVkOyB9CiA8L3N0eWxlPgogPHA+VGVzdCBwYWlu
dGluZyBvZiB0cmFuc2Zvcm1lZCB2aWRlbyA8L3A+Ci0mbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50
L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+PC92aWRl
bz48YnI+Ci0mbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtp
dC10cmFuc2Zvcm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+Ci0mbmJzcDs8dmlkZW8gc3JjPSJj
b250ZW50L3Rlc3QubXA0IiBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06c2tldygyMGRlZykiPjwv
dmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUo
MjBkZWcpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zv
cm06c2NhbGUoMC41KSI+PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9Ii13ZWJraXQt
dHJhbnNmb3JtOnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxicj4KKzxzY3JpcHQ+c2V0U3JjQnlUYWdO
YW1lKCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2Ny
aXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1j
b250cm9scy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1jb250cm9scy5odG1s
CmluZGV4IDdlYzUxY2MuLjFlNWQ1NjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXpvb20tY29udHJvbHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29t
LWNvbnRyb2xzLmh0bWwKQEAgLTEwLDExICsxMCwxMyBAQAogICAgICAgICAtd2Via2l0LXRyYW5z
Zm9ybTogcm90YXRlKDEwZGVnKTsKICAgICAgIH0KICAgICA8L3N0eWxlPgorICAgIDxzY3JpcHQg
c3JjPSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz0idmlkZW8tcGFp
bnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CiAg
ICAgPHA+Wm9vbWVkIHZpZGVvIHdpdGggY29udHJvbHMuPC9wPgotICAgIDx2aWRlbyBzcmM9ImNv
bnRlbnQvdGVzdC5tcDQiIHdpZHRoPSIxNjAiIGhlaWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVv
PgotICAgIDx2aWRlbyBjbGFzcz0icm90YXRlZCIgc3JjPSJjb250ZW50L3Rlc3QubXA0IiB3aWR0
aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KKyAgICA8dmlkZW8gd2lkdGg9
IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHZpZGVvIGNsYXNzPSJy
b3RhdGVkIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KKyAgICA8
c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdj
b250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4K
</data>
<flag name="review"
          id="20354"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
    <flag name="commit-queue"
          id="20356"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39304</attachid>
            <date>2009-09-09 14:56:20 -0700</date>
            <delta_ts>2009-09-17 11:47:10 -0700</delta_ts>
            <desc>Updated patch for 10 layout tests</desc>
            <filename>webkit-codecs-1.patch</filename>
            <type>text/plain</type>
            <size>11890</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMzQ2ZWZhLi4xMWNkMDMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMDktMDkt
MDggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIEFkZGVkIG1lZGlhLWZpbGUuanMgd2hpY2ggaGFzIGEgZmluZE1lZGlhRmlsZSh0eXBlLCBu
YW1lKSBtZXRob2QKKyAgICAgICAgdG8gZmluZCBhIHByb3BlciBtZWRpYSBmaWxlIHRvIGxvYWQg
YWNjb3JkaW5nIHRvIHN1cHBvcnRlZCBjb2RlY3MuCisKKyAgICAgICAgQWxzbyBjaGFuZ2VkIDEw
IGxheW91dCB0ZXN0cyB0byB1c2UgYWJvdmUgbWV0aG9kIHRvIGxvY2F0ZSB0aGUgdGVzdCBmaWxl
LgorCisgICAgICAgICogbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWw6IFVzZSBmaW5kTWVkaWFG
aWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvbWVkaWEtZmlsZS5qczogQWRkZWQuIFByb3ZpZGUgZmlu
ZE1lZGlhRmlsZSh0eXBlLCBuYW1lKS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1hcHBlbmQtc291
cmNlLmh0bWw6IFVzZSBmaW5kTWVkaWFGaWxlKHR5cGUsIG5hbWUpLgorICAgICAgICAqIG1lZGlh
L3ZpZGVvLWFzcGVjdC1yYXRpby5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1h
dXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1idWZmZXJlZC5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy1yZW5kZXJpbmcuaHRtbDog
ZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUo
dHlwZSwgbmFtZSkuCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS1jb250cm9scy5odG1sOiBk
aXR0by4KKwogMjAwOS0wOS0wOCAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL2NvbnRyb2xzLXN0cmljdC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMt
c3RyaWN0Lmh0bWwKaW5kZXggZDUwNDY0OC4uZGU1YjRkZSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvbWVkaWEvY29udHJvbHMtc3RyaWN0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29u
dHJvbHMtc3RyaWN0Lmh0bWwKQEAgLTEsMTAgKzEsMTEgQEAKIDwhRE9DVFlQRSBIVE1MPgogPGh0
bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3QuanMiPjwvc2NyaXB0
PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9ImluaXQoKSI+CisgICAgPGJvZHkgb25s
b2FkPSJzZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29u
dGVudC90ZXN0JykpOyBpbml0KCkiPgogICAgICAgICA8cD5EcmF3aW5nIHRoZSBjb250cm9scyBp
biBzdHJpY3QgbW9kZS48L3A+Ci0gICAgICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQv
dGVzdC5tcDQiPjwvdmlkZW8+CisgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAg
IDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xz
LXN0eWxpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL2NvbnRyb2xzLXN0eWxpbmcuaHRtbApp
bmRleCA5YmIzMDZiLi40NTNhZTQ2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9jb250
cm9scy1zdHlsaW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvY29udHJvbHMtc3R5bGlu
Zy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiA8aGVhZD4KKyAgICA8c2NyaXB0IHNyYz0i
bWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRl
c3QuanMiPjwvc2NyaXB0PgogICAgIDxzdHlsZT4KICAgICAub3ZlcnJpZGUgewpAQCAtMTQsMTEg
KzE1LDExIEBACiAgICAgfQogICAgIDwvc3R5bGU+CiA8L2hlYWQ+Ci08Ym9keSBvbmxvYWQ9Imlu
aXQoKSI+Cis8Ym9keSBvbmxvYWQ9InNldFNyY0J5VGFnTmFtZSgndmlkZW8nLCBmaW5kTWVkaWFG
aWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk7IGluaXQoKSI+CiA8cD5UaGUgbG9vayBvZiB0
aGUgY29udHJvbHMgc2hvdWxkIG5vdCBjaGFuZ2UuPC9wPgogPGRpdiBjbGFzcz0ib3ZlcnJpZGUi
PgotICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+Cisg
ICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8L2Rpdj4KLTx2aWRlbyBjb250cm9scyBzcmM9
ImNvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+Cis8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDwv
Ym9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUu
anMgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLmE4NTY5Y2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1maWxlLmpzCkBAIC0wLDAgKzEsNDkgQEAKK3ZhciBhdWRpb0NvZGVjcyA9IFsK
KyAgICBbImF1ZGlvL2FhYyIsICJtNGEiXSwKKyAgICBbImF1ZGlvL21wZWciLCAibXAzIl0sCisg
ICAgWyJhdWRpby93YXYiLCAid2F2Il0sCisgICAgWyJhdWRpby9vZ2ciLCAib2dnIl0KK107CisK
K3ZhciB2aWRlb0NvZGVjcyA9IFsKKyAgICBbInZpZGVvL21wNCIsICJtcDQiXSwKKyAgICBbInZp
ZGVvL21wZWciLCAibXBnIl0sCisgICAgWyJ2aWRlby9xdWlja3RpbWUiLCAibW92Il0sCisgICAg
WyJ2aWRlby9vZ2ciLCAib2dnIl0KK107CisKK2Z1bmN0aW9uIGZpbmRNZWRpYUZpbGUodGFnTmFt
ZSwgbmFtZSkgeworICAgIHZhciBjb2RlY3M7CisgICAgaWYgKHRhZ05hbWUgPT0gImF1ZGlvIikK
KyAgICAgICAgY29kZWNzID0gYXVkaW9Db2RlY3M7CisgICAgZWxzZQorICAgICAgICBjb2RlY3Mg
PSB2aWRlb0NvZGVjczsKKworICAgIHZhciBlbGVtZW50OworICAgIHRyeSB7CisgICAgICAgIGVs
ZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdOYW1lKVswXTsKKyAgICB9
IGNhdGNoIChleCkgeworICAgICAgICBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0
YWdOYW1lKTsKKyAgICB9CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNvZGVjcy5sZW5ndGg7
ICsraSkgeworICAgICAgICBpZiAoZWxlbWVudC5jYW5QbGF5VHlwZShjb2RlY3NbaV1bMF0pKQor
ICAgICAgICAgICAgcmV0dXJuIG5hbWUgKyAiLiIgKyBjb2RlY3NbaV1bMV07CisgICAgfQorCisg
ICAgcmV0dXJuICIiOworfQorCitmdW5jdGlvbiBzZXRTcmNCeVRhZ05hbWUodGFnTmFtZSwgc3Jj
KSB7CisgICAgdmFyIGVsZW1lbnRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUodGFn
TmFtZSk7CisgICAgaWYgKGVsZW1lbnRzKSB7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
ZWxlbWVudHMubGVuZ3RoOyArK2kpCisgICAgICAgICAgICBlbGVtZW50c1tpXS5zcmMgPSBzcmM7
CisgICAgfQorfQorCitmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBzcmMpIHsKKyAgICB2YXIgZWxl
bWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKKyAgICBpZiAoZWxlbWVudCkKKyAg
ICAgICAgaWQuc3JjID0gc3JjOworfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tYXBwZW5kLXNvdXJjZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXBwZW5kLXNv
dXJjZS5odG1sCmluZGV4IDUwMTgyNzQuLjg2MTY5OTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWFwcGVuZC1zb3VyY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1hcHBlbmQtc291cmNlLmh0bWwKQEAgLTEsMTYgKzEsMTggQEAKIDx2aWRlbyBjb250cm9s
cz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVk
KCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOworICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICB2YXIgc291cmNlID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgic291cmNlIik7Ci0gICAgc291cmNlLnNldEF0dHJpYnV0ZSgic3JjIiwg
ImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICBzb3VyY2Uuc2V0QXR0cmlidXRlKCJzcmMiLCBtZWRp
YUZpbGUpOwogICAgIHZpZGVvLmFwcGVuZENoaWxkKHNvdXJjZSk7CiAKICAgICB0ZXN0RXhwZWN0
ZWQoInZpZGVvLmN1cnJlbnRTcmMiLCAiIik7CiAKICAgICB3YWl0Rm9yRXZlbnQoImxvYWQiLCBm
dW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3Vy
cmVudFNyYykgIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJy
ZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAiLCBtZWRpYUZpbGUpOwogICAgICAgICBlbmRU
ZXN0KCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWFz
cGVjdC1yYXRpby5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNwZWN0LXJhdGlvLmh0
bWwKaW5kZXggNmFmZmVkMy4uZmZkOTVhOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tYXNwZWN0LXJhdGlvLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYXNw
ZWN0LXJhdGlvLmh0bWwKQEAgLTEsMjEgKzEsMjIgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxl
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3Njcmlw
dD4KLTxib2R5IG9ubG9hZD0iaW5pdCgpIj4KKzxib2R5IG9ubG9hZD0ic2V0U3JjQnlUYWdOYW1l
KCd2aWRlbycsIGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTsgaW5pdCgp
Ij4KIDxwPlRlc3QgdmlkZW8gc2l6aW5nLiBZb3Ugc2hvdWxkIHNlZSBvbmUgYmlnZ2VyIGltYWdl
IChwYXVzZWQgdmlkZW8pIGFuZCA3IHNtYWxsIG9uZXMgb2YgMS80IGl0cyBzaXplLiA8L3A+Ci08
dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPjxicj4KLTx2aWRlbyBzcmM9ImNv
bnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJ3aWR0aDogMTYwcHg7IGhlaWdodDoxMjBweCI+Cis8dmlk
ZW8+PC92aWRlbz48YnI+Cis8dmlkZW8gc3R5bGU9IndpZHRoOiAxNjBweDsgaGVpZ2h0OjEyMHB4
Ij4KIAogPC92aWRlbz48ZGl2IHN0eWxlPSJkaXNwbGF5OmlubGluZS1ibG9jayI+Ci08dmlkZW8g
c3JjPSJjb250ZW50L3Rlc3QubXA0IiBzdHlsZT0id2lkdGg6IDE2MHB4OyI+Ci08L3ZpZGVvPjx2
aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEyMHB4OyI+Cis8dmlk
ZW8gc3R5bGU9IndpZHRoOiAxNjBweDsiPgorPC92aWRlbz48dmlkZW8gc3R5bGU9ImhlaWdodDog
MTIwcHg7Ij4KIDwvdmlkZW8+CiAKIDwvZGl2PjxkaXYgc3R5bGU9IndpZHRoOiAzMjBweDsgaGVp
Z2h0OjEyMHB4OyBkaXNwbGF5OmlubGluZS1ibG9jazsgbWFyZ2luOiAwIj4KLTx2aWRlbyBzcmM9
ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KLTwvdmlkZW8+PHZpZGVv
IHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiA1MCU7Ij48L3ZpZGVvPgorPHZp
ZGVvIHN0eWxlPSJoZWlnaHQ6IDEwMCU7Ij4KKzwvdmlkZW8+PHZpZGVvIHN0eWxlPSJ3aWR0aDog
NTAlOyI+PC92aWRlbz4KIAogPC9kaXY+PGRpdiBzdHlsZT0id2lkdGg6IDMyMHB4OyBoZWlnaHQ6
MTIwcHg7cG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW46IDAi
PgotPHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9ImhlaWdodDogMTIwcHg7IHBv
c2l0aW9uOiBhYnNvbHV0ZTsiPjwvdmlkZW8+Ci08dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0
IiBzdHlsZT0ibGVmdDogMTYwcHg7IHdpZHRoOiAxNjBweDsgcG9zaXRpb246IGFic29sdXRlOyI+
Cis8dmlkZW8gc3R5bGU9ImhlaWdodDogMTIwcHg7IHBvc2l0aW9uOiBhYnNvbHV0ZTsiPjwvdmlk
ZW8+Cis8dmlkZW8gc3R5bGU9ImxlZnQ6IDE2MHB4OyB3aWR0aDogMTYwcHg7IHBvc2l0aW9uOiBh
YnNvbHV0ZTsiPgogPC92aWRlbz4KIDwvZGl2PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWF1dG9wbGF5Lmh0bWwKaW5kZXggMDRkMjIwMC4uZTFkOGJhMiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tYXV0b3BsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1hdXRvcGxheS5odG1sCkBAIC0xLDkgKzEsMTAgQEAKIDx2aWRlbyBhdXRvcGxheSBjb250
cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVj
dGVkKCJ2aWRlby5hdXRvcGxheSIsIHRydWUpOwogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uZ2V0
QXR0cmlidXRlKCdhdXRvcGxheScpIiwgbnVsbCwgJyE9Jyk7CiAgICAgd2FpdEZvckV2ZW50KCdw
bGF5JywgZnVuY3Rpb24gKCkgeyB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIsIGZhbHNlKTsg
ZW5kVGVzdCgpOyB9ICk7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAg
IHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tYnVmZmVyZWQuaHRtbAppbmRleCBjYThkMGFhLi42
YjZiN2IyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1idWZmZXJlZC5odG1s
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWJ1ZmZlcmVkLmh0bWwKQEAgLTEsNCArMSw1
IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4K
ICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmJ1ZmZlcmVkLmxlbmd0aCIsIDApOwpAQCAtMTksNSAr
MjAsNSBAQAogICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICB9CiAgICAgKTsKLSAgICB2
aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlh
RmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXJlbmRlcmluZy5odG1sIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVyaW5nLmh0bWwKaW5kZXggMjFjZDA0Yy4uZGM3
MGIxMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVy
aW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtcmVuZGVyaW5n
Lmh0bWwKQEAgLTEsMTMgKzEsMTUgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3NjcmlwdD4KIDxib2R5
IG9ubG9hZD0iaW5pdCgpIj4KIDxwPlRlc3QgY29udHJvbHMgcGxhY2VtZW50LiA8L3A+CiA8ZGl2
PgotICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+Cisg
ICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8L2Rpdj4KIDxkaXY+Ci0gICAgPHZpZGVvIGNv
bnRyb2xzIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9IndpZHRoOiAzMjBweDsiPjwvdmlk
ZW8+CisgICAgPHZpZGVvIGNvbnRyb2xzIHN0eWxlPSJ3aWR0aDogMzIwcHg7Ij48L3ZpZGVvPgog
PC9kaXY+CiA8ZGl2PgotICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQi
IHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAzMjBweDsiPjwvdmlkZW8+CisgICAg
PHZpZGVvIGNvbnRyb2xzIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IHdpZHRoOiAzMjBweDsi
PjwvdmlkZW8+CiA8L2Rpdj4KKzxzY3JpcHQ+c2V0U3JjQnlUYWdOYW1lKCd2aWRlbycsIGZpbmRN
ZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTwvc2NyaXB0PgogPC9ib2R5PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWxheWVyLWNyYXNoLmh0bWwKaW5kZXggZmE3ZTc2YS4uZTRmMmE3
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbGF5ZXItY3Jhc2guaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sYXllci1jcmFzaC5odG1sCkBAIC0xLDEwICsx
LDEyIEBACis8c2NyaXB0IHNyYz0ibWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNy
Yz0idmlkZW8tcGFpbnQtdGVzdC5qcyI+PC9zY3JpcHQ+CiA8Ym9keSBvbmxvYWQ9ImRvY3VtZW50
LmJvZHkucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29uZScpKTsgZG9jdW1l
bnQuYm9keS5vZmZzZXRMZWZ0OyBpbml0KCkiPgogPHN0eWxlPgogdmlkZW8geyB3aWR0aDoyMDBw
eDsgYm9yZGVyOiAzcHggc29saWQgcmVkOyAtd2Via2l0LWJveC1yZWZsZWN0OiBiZWxvdyA1cHg7
IH0KIDwvc3R5bGU+CiA8cD5UZXN0IGR5bmFtaWMgcmVtb3ZhbCBvZiB0cmFuc2Zvcm1lZCBhbmQg
cmVmbGVjdGVkIHZpZGVvIDwvcD4KLSZuYnNwOzx2aWRlbyBpZD0ib25lIiBzcmM9ImNvbnRlbnQv
dGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMjBkZWcpIj48L3ZpZGVv
Pjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0
LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3ZpZGVvPjxicj4KLSZuYnNwOzx2aWRlbyBzcmM9ImNv
bnRlbnQvdGVzdC5tcDQiIHN0eWxlPSItd2Via2l0LXRyYW5zZm9ybTpza2V3KDIwZGVnKSI+PC92
aWRlbz48YnI+CismbmJzcDs8dmlkZW8gaWQ9Im9uZSIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3Jt
OnJvdGF0ZSgyMGRlZykiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0
LXRyYW5zZm9ybTpzY2FsZSgwLjUpIj48L3ZpZGVvPjxicj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0i
LXdlYmtpdC10cmFuc2Zvcm06c2tldygyMGRlZykiPjwvdmlkZW8+PGJyPgorPHNjcmlwdD5zZXRT
cmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0
JykpPC9zY3JpcHQ+CiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by10cmFuc2Zvcm1lZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tdHJhbnNmb3JtZWQu
aHRtbAppbmRleCAzNzRiODY1Li5kM2FiMjYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby10cmFuc2Zvcm1lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXRy
YW5zZm9ybWVkLmh0bWwKQEAgLTEsMTAgKzEsMTIgQEAKKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxl
LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby1wYWludC10ZXN0LmpzIj48L3Njcmlw
dD4KIDxib2R5IG9ubG9hZD0iaW5pdCgpIj4KIDxzdHlsZT4KIHZpZGVvIHsgd2lkdGg6MjAwcHg7
IGJvcmRlcjogM3B4IHNvbGlkIHJlZDsgfQogPC9zdHlsZT4KIDxwPlRlc3QgcGFpbnRpbmcgb2Yg
dHJhbnNmb3JtZWQgdmlkZW8gPC9wPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1w
NCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyMGRlZykiPjwvdmlkZW8+PGJyPgot
Jm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNm
b3JtOnNjYWxlKDAuNSkiPjwvdmlkZW8+PGJyPgotJm5ic3A7PHZpZGVvIHNyYz0iY29udGVudC90
ZXN0Lm1wNCIgc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNrZXcoMjBkZWcpIj48L3ZpZGVvPjxi
cj4KKyZuYnNwOzx2aWRlbyBzdHlsZT0iLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDIwZGVnKSI+
PC92aWRlbz48YnI+CismbmJzcDs8dmlkZW8gc3R5bGU9Ii13ZWJraXQtdHJhbnNmb3JtOnNjYWxl
KDAuNSkiPjwvdmlkZW8+PGJyPgorJm5ic3A7PHZpZGVvIHN0eWxlPSItd2Via2l0LXRyYW5zZm9y
bTpza2V3KDIwZGVnKSI+PC92aWRlbz48YnI+Cis8c2NyaXB0PnNldFNyY0J5VGFnTmFtZSgndmlk
ZW8nLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk8L3NjcmlwdD4KIDwv
Ym9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMu
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXpvb20tY29udHJvbHMuaHRtbAppbmRleCA3
ZWM1MWNjLi4xZTVkNTYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29t
LWNvbnRyb2xzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS1jb250cm9s
cy5odG1sCkBAIC0xMCwxMSArMTAsMTMgQEAKICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJv
dGF0ZSgxMGRlZyk7CiAgICAgICB9CiAgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0IHNyYz0ibWVk
aWEtZmlsZS5qcyI+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9InZpZGVvLXBhaW50LXRlc3Qu
anMiPjwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJpbml0KCkiPgogICAgIDxwPlpv
b21lZCB2aWRlbyB3aXRoIGNvbnRyb2xzLjwvcD4KLSAgICA8dmlkZW8gc3JjPSJjb250ZW50L3Rl
c3QubXA0IiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjEyMCIgY29udHJvbHM+PC92aWRlbz4KLSAgICA8
dmlkZW8gY2xhc3M9InJvdGF0ZWQiIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgd2lkdGg9IjE2MCIg
aGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHZpZGVvIHdpZHRoPSIxNjAiIGhl
aWdodD0iMTIwIiBjb250cm9scz48L3ZpZGVvPgorICAgIDx2aWRlbyBjbGFzcz0icm90YXRlZCIg
d2lkdGg9IjE2MCIgaGVpZ2h0PSIxMjAiIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgPHNjcmlwdD5z
ZXRTcmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90
ZXN0JykpPC9zY3JpcHQ+CiA8L2JvZHk+CiA8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39403</attachid>
            <date>2009-09-10 19:46:36 -0700</date>
            <delta_ts>2009-09-10 19:54:49 -0700</delta_ts>
            <desc>Second round of changes - 20 tests</desc>
            <filename>webkit-codecs-2.patch</filename>
            <type>text/plain</type>
            <size>18423</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMgYi9MYXlvdXRUZXN0
cy9tZWRpYS9tZWRpYS1maWxlLmpzCmluZGV4IGE4NTY5Y2YuLmM0Zjc5MTYgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
bWVkaWEtZmlsZS5qcwpAQCAtMiwxNCArMiwxNCBAQCB2YXIgYXVkaW9Db2RlY3MgPSBbCiAgICAg
WyJhdWRpby9hYWMiLCAibTRhIl0sCiAgICAgWyJhdWRpby9tcGVnIiwgIm1wMyJdLAogICAgIFsi
YXVkaW8vd2F2IiwgIndhdiJdLAotICAgIFsiYXVkaW8vb2dnIiwgIm9nZyJdCisgICAgWyJhdWRp
by9vZ2ciLCAib2dhIl0KIF07CiAKIHZhciB2aWRlb0NvZGVjcyA9IFsKICAgICBbInZpZGVvL21w
NCIsICJtcDQiXSwKICAgICBbInZpZGVvL21wZWciLCAibXBnIl0sCiAgICAgWyJ2aWRlby9xdWlj
a3RpbWUiLCAibW92Il0sCi0gICAgWyJ2aWRlby9vZ2ciLCAib2dnIl0KKyAgICBbInZpZGVvL29n
ZyIsICJvZ3YiXQogXTsKIAogZnVuY3Rpb24gZmluZE1lZGlhRmlsZSh0YWdOYW1lLCBuYW1lKSB7
CkBAIC0xOSwxMiArMTksOSBAQCBmdW5jdGlvbiBmaW5kTWVkaWFGaWxlKHRhZ05hbWUsIG5hbWUp
IHsKICAgICBlbHNlCiAgICAgICAgIGNvZGVjcyA9IHZpZGVvQ29kZWNzOwogCi0gICAgdmFyIGVs
ZW1lbnQ7Ci0gICAgdHJ5IHsKLSAgICAgICAgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKHRhZ05hbWUpWzBdOwotICAgIH0gY2F0Y2ggKGV4KSB7CisgICAgdmFyIGVsZW1l
bnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdOYW1lKVswXTsKKyAgICBpZiAo
IWVsZW1lbnQpCiAgICAgICAgIGVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05h
bWUpOwotICAgIH0KIAogICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY29kZWNzLmxlbmd0aDsgKytp
KSB7CiAgICAgICAgIGlmIChlbGVtZW50LmNhblBsYXlUeXBlKGNvZGVjc1tpXVswXSkpCkBAIC00
NSw1ICs0Miw1IEBAIGZ1bmN0aW9uIHNldFNyY0J5VGFnTmFtZSh0YWdOYW1lLCBzcmMpIHsKIGZ1
bmN0aW9uIHNldFNyY0J5SWQoaWQsIHNyYykgewogICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoaWQpOwogICAgIGlmIChlbGVtZW50KQotICAgICAgICBpZC5zcmMgPSBz
cmM7CisgICAgICAgIGVsZW1lbnQuc3JjID0gc3JjOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tY2FudmFzLXNvdXJjZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY2FudmFzLXNvdXJjZS5odG1sCmluZGV4IGNmODliM2MuLjdmZDAyZTUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1jYW52YXMtc291cmNlLmh0bWwKQEAgLTIsNiArMiw3IEBACiAgICAg
PGhlYWQ+CiAgICAgICAgIDx0aXRsZT5EcmF3aW5nIHRvIGNhbnZhcyB1c2luZyB2aWRlbyB3aXRo
IHNvdXJjZSBlbGVtZW50IGRvZXMgbm90IHRhaW50IGNhbnZhczwvdGl0bGU+CiAgICAgICAgIDxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgICAgICA8c2Ny
aXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0PgpAQCAtMjcsNyArMjgsOCBAQAogICAgICAgICAgICAgICAgIGZpbmRN
ZWRpYUVsZW1lbnQoKTsKICAgICAgICAgICAgICAgICBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVt
ZW50c0J5VGFnTmFtZSgnY2FudmFzJylbMF07CiAgICAgICAgICAgICAgICAgd2FpdEZvckV2ZW50
KCdsb2FkJywgdmlkZW9Mb2FkZWQpOwotICAgICAgICAgICAgICAgIHJ1bigidmFyIHNvdXJjZSA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJjZScpOyBzb3VyY2Uuc3JjID0gJ2NvbnRlbnQv
Y291bnRpbmcubXA0JzsgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKSIpOworICAgICAgICAgICAg
ICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L2NvdW50
aW5nIik7CisgICAgICAgICAgICAgICAgcnVuKCJ2YXIgc291cmNlID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnc291cmNlJyk7IHNvdXJjZS5zcmMgPSAnIiArIG1lZGlhRmlsZSArICInOyB2aWRl
by5hcHBlbmRDaGlsZChzb3VyY2UpIik7CiAgICAgICAgICAgICB9CiAgICAgICAgIDwvc2NyaXB0
PgogICAgIDwvaGVhZD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNsaWNr
LWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNsaWNr
LWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbAppbmRleCBjNTA3NmYyLi41OTYwOGE2IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2xpY2stZGJsY2tpY2stc3RhbmRhbG9u
ZS5odG1sCkBAIC0xLDYgKzEsMTIgQEAKIDxodG1sPgogICAgIDxoZWFkPgorICAgICAgICA8c2Ny
aXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgorICAgICAg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJv
bGxlci53YWl0VW50aWxEb25lKCk7CisgICAgICAgIH0KKwogICAgICAgICB2YXIgdmlkZW87CiAg
ICAgICAgIGZ1bmN0aW9uIGxvZyhtc2cpCiAgICAgICAgIHsKQEAgLTksMTAgKzE1LDYgQEAKICAg
ICAgICAgCiAgICAgICAgIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICB7Ci0gICAgICAgICAgICBp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgICAgICAgICAgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAgICAgIGxheW91dFRlc3RD
b250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKLSAgICAgICAgICAgIH0KICAgICAgICAgICAgIHZp
ZGVvID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZyJykuY29udGVudERvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCd2aWRlbycpWzBdOwogICAgICAgICAgICAgdmlkZW8uYWRkRXZlbnRM
aXN0ZW5lcignY2FucGxheXRocm91Z2gnLCB0ZXN0Mik7CiAgICAgICAgIH0KQEAgLTM4LDggKzQw
LDEzIEBACiAgICAgICAgIH0KICAgICAgICAgPC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxi
b2R5IG9ubG9hZD0idGVzdCgpIj4KLSAgICA8aWZyYW1lIHNyYz0iY29udGVudC90ZXN0Lm1wNCIg
aWQ9ImZyIj48L2lmcmFtZT4KKyAgICA8Ym9keT4KKyAgICA8aWZyYW1lIGlkPSJmciI+PC9pZnJh
bWU+CisgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIGZyYW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoImZyIik7CisgICAgICAgIGZyYW1lLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwg
ImNvbnRlbnQvdGVzdCIpOworICAgICAgICBmcmFtZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
dGVzdCk7CisgICAgPC9zY3JpcHQ+CiAgICAgPHA+VGhpcyB0ZXN0cyB0aGF0IGNsaWNraW5nIG9u
IGEgc3RhbmRhbG9uZSB2aWRlbyB3aWxsIHBhdXNlIGFuZCBkb3VibGUtY2xpY2tpbmcgd2lsbCBw
bGF5LjwvcD4KICAgICA8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KICAgICA8L2JvZHk+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbAppbmRl
eCBhMzQ0MWU4Li5jMzk5NDgzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1j
b250cm9scy10cmFuc2Zvcm1lZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNv
bnRyb2xzLXRyYW5zZm9ybWVkLmh0bWwKQEAgLTEyLDYgKzEyLDcgQEAKICAgICA8dmlkZW8gY29u
dHJvbHM+PC92aWRlbz4KICAgICA8cD5UZXN0IGNvbnRyb2xzIG9uIHRyYW5zZm9ybWVkIHZpZGVv
LjwvcD4KICAgICA8cD5UaGlzIHRlc3Qgb25seSBydW5zIGluIERSVCE8L3A+CisgICAgPHNjcmlw
dCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
Y29udHJvbHMiLCBudWxsLCAnIT0nKTsKQEAgLTI1LDkgKzI2LDcgQEAKICAgICAgICAgICAgIHRl
c3RFeHBlY3RlZCgidmlkZW8ucGF1c2VkIiwgZmFsc2UpOwogICAgICAgICAgICAgZW5kVGVzdCgp
OwogICAgICAgICB9ICk7Ci0gICAgICAgIHZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JzsK
KyAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Iik7CiAgICAgPC9zY3JpcHQ+CiA8L2JvZHk+CiA8L2h0bWw+Ci0KLQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbApp
bmRleCA3M2E0ZjhjLi45MGJjZjk4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbApAQCAtNCw3ICs0LDEyIEBA
CiAgICAgICAgICAgICAjbm8tdmlkZW8tbWVkaWEgeyBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7
IHdpZHRoOiAzMjBweDsgaGVpZ2h0OiAxMDBweDt9IAogICAgICAgICAgICAgI21vdXNlLXBhcmtp
bmc6aG92ZXIgeyBwYWRkaW5nOjg7IGJhY2tncm91bmQtY29sb3I6IGJsdWU7IH0KICAgICAgICAg
PC9zdHlsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpIHsKKyAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7
CisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgICAgICAgICAgfQogCiAgICAgICAgICAgICB2YXIgdmlkZW87CiAKQEAgLTQyLDEzICs0Nywx
MSBAQAogICAgICAgICAgICAgICAgIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJt
b3VzZS1wYXJraW5nIik7CiAgICAgICAgICAgICAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
dGFyZ2V0Lm9mZnNldExlZnQgKyA0LCB0YXJnZXQub2Zmc2V0VG9wICsgNCk7CiAKLSAgICAgICAg
ICAgICAgICAvLyBjb250cm9sbGVyIHNob3VsZCBzdGlsbCBiZSB2aXNpYmxlIGFmdGVyIGEgc2Vj
b25kCi0gICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsgbGF5b3V0VGVzdENv
bnRyb2xsZXIubm90aWZ5RG9uZSgpOyB9ICwgMTAwMCk7Ci0gICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgICAgICAgICAgICAgICAgICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKKyAgICAgICAgICAgICAgICB9ICwgMTAw
MCk7CiAKLSAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAg
ICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0gICAgICAg
ICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAg
ICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7IAogICAgICAgICAgICAgICAgICAgICBkb2N1
bWVudC5ib2R5LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdGQUlMJykpOyAK
ICAgICAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAg
LTY1LDcgKzY4LDExIEBACiAKICAgICAgICAgPHA+PHNwYW4gaWQ9Im1vdXNlLXBhcmtpbmciPm1v
dXNlIHBhcmtzIGhlcmUsIGFtIEkgYmx1ZT88L3NwYW4+PC9wPgogCi0gICAgICAgIDx2aWRlbyBp
ZD0ibm8tdmlkZW8tbWVkaWEiIGNvbnRyb2xzIGxvb3Agc3JjPSJjb250ZW50L3Rlc3Qud2F2IiBv
bmxvYWQ9InN0YXJ0KCkiPjwvdmlkZW8+CisgICAgICAgIDx2aWRlbyBpZD0ibm8tdmlkZW8tbWVk
aWEiIGNvbnRyb2xzIGxvb3A+PC92aWRlbz4KICAgICAgICAgPGJyPjxicj48ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldFNyY0J5SWQoImZy
IiwgZmluZE1lZGlhRmlsZSgiYXVkaW8iLCAiY29udGVudC90ZXN0IikpOworICAgICAgICAgICAg
c3RhcnQoKTsKKyAgICAgICAgPC9zY3JpcHQ+CiAgICAgPC9ib2R5PgogPC9odG1sPgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbAppbmRleCA2NjQwNmRjLi5k
YjJiODcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29t
ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRt
bApAQCAtNiw2ICs2LDcgQEAKICAgICAgIG1hcmdpbjogNTBweDsKICAgICB9CiAgIDwvc3R5bGU+
CisgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgIDxzY3JpcHQgdHlwZT0i
dGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CiAgICAgZnVuY3Rpb24gcnVuVGVzdCgp
CiAgICAgewpAQCAtMzMsNyArMzQsNyBAQAogICAgICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBm
dW5jdGlvbigpIHsKICAgICAgICAgICAgIHJ1blRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAg
ICB2aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZp
bmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9i
b2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJv
bHMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLmh0bWwKaW5kZXggODdh
MTU4My4uMzY3ZDM0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJv
bHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy5odG1sCkBAIC0x
LDUgKzEsNiBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0ICdjb250cm9scycg
YXR0cmlidXRlPHA+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVk
KCJ2aWRlby5jb250cm9scyIsIG51bGwsICchPScpOwpAQCAtMjAsNSArMjEsNSBAQAogICAgICAg
ICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7CiAgICAgICAgIGVu
ZFRlc3QoKTsKICAgICB9ICk7Ci0gICAgdmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVzdC5tcDQnOwor
ICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwog
PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGlt
ZS1zZXQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNldC5odG1s
CmluZGV4IGI4MWRmMTIuLjNkMjM1OTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWN1cnJlbnRUaW1lLXNldC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1
cnJlbnRUaW1lLXNldC5odG1sCkBAIC01LDYgKzUsNyBAQAogICAgIAogICAgIDxwPlRlc3QgdGhh
dCBzZXR0aW5nIGN1cnJlbnRUaW1lIGNoYW5nZXMgdGhlIHRpbWUsIGFuZCB0aGF0ICdlbmRlZCcg
ZXZlbnQgaXMgZmlyZWQgaW4gYSByZWFzb25hYmxlIGFtb3VudCBvZiB0aW1lPC9wPgogICAgIAor
ICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9
dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVudCgn
bG9hZCcsICAKQEAgLTIwLDcgKzIxLDcgQEAKICAgICAgICAgdmFyIHRpbWVvdXQgPSA4MDA7CiAg
ICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgeyBsb2dSZXN1bHQoIk5vICdlbmRlZCcgZXZl
bnQgaW4gIiArIHRpbWVvdXQvMTAwMCAgKyAic2Vjb25kcyIsIGZhbHNlKTsgfSwgdGltZW91dCk7
CiAgICAgfSk7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVv
LnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2Ny
aXB0PgogCiA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJy
ZW50VGltZS1zZXQyLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1z
ZXQyLmh0bWwKaW5kZXggMGExMGZmZi4uNDg0MDM3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0Mi5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWN1cnJlbnRUaW1lLXNldDIuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250
cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVu
dCgnbG9hZCcsICAKQEAgLTEwLDUgKzExLDUgQEAKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRl
by5jdXJyZW50VGltZS50b0ZpeGVkKDEpIiwgMy4xKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAg
IH0pOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMg
PSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwKaW5kZXggYWUzYTMzOS4uODUwYTQ1
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS5odG1sCkBAIC0xLDQgKzEs
NSBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpz
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+
CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50VGltZSIsIDApCkBAIC0xMCw1ICsxMSw1
IEBACiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFRpbWUiLCAwLCAnPicpCiAg
ICAgICAgIGVuZFRlc3QoKTsKICAgICB9Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5t
cDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVz
dCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNw
bGF5LW5vbmUtY3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktbm9u
ZS1jcmFzaC5odG1sCmluZGV4IDMxYTYzMjMuLjRmNjZjMWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCisrKyBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCkBAIC0xLDggKzEsOSBAQAogPHZp
ZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgcGF1c2UoKSBhZnRlciBjaGFuZ2lu
ZyBkaXNwbGF5IHRvICJub25lIiBkb2Vzbid0IGNhdXNlIGEgY3Jhc2guPC9wPgorPHNjcmlwdCBz
cmM9Im1lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXRlc3QuanMi
Pjwvc2NyaXB0PgogPHNjcmlwdD4KLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7
CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7
CiAgICAgdmlkZW8ucGxheSgpOwogICAgIHZpZGVvLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CiAg
ICAgdmlkZW8ucGF1c2UoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRp
c3BsYXktdG9nZ2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LXRvZ2ds
ZS5odG1sCmluZGV4IGJlYTdlMzguLmE5MzQ4NjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tZGlzcGxheS10b2dnbGUuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDxodG1sPgogICAgIDxoZWFk
PgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8
c2NyaXB0PgogICAgICAgICAgICAgZnVuY3Rpb24gdG9nZ2xlRGlzcGxheSgpCiAgICAgICAgICAg
ICB7CkBAIC0yNiw4ICsyNyw4IEBACiAgICAgICAgICAgICB9CiAgICAgICAgIDwvc2NyaXB0Pgog
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CisgICAgPGJvZHkgb25sb2Fk
PSJzZXRTcmNCeUlkKCd2aWQnLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3Qn
KSk7IHRlc3QoKSI+CiAgICAgICAgIFRoaXMgdGVzdHMgdGhhdCB0b2dnbGluZyB0aGUgZGlzcGxh
eSBwcm9wZXJ0eSB3b24ndCBtYWtlIHRoZSBjb250cm9scyBkaXNhcHBlYXIuPGJyPgotICAgICAg
ICA8dmlkZW8gaWQ9InZpZCIgY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVv
PgorICAgICAgICA8dmlkZW8gaWQ9InZpZCIgY29udHJvbHM+PC92aWRlbz4KICAgICA8L2JvZHk+
CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVudC10
eXBlcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBl
cy1leHBlY3RlZC50eHQKaW5kZXggZWY1YzBjMS4uMDAwMzZjZCAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tZG9jdW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWRvY3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsx
LDUgQEAKIAotVGhpcyB0ZXN0cyB0aGF0IGEgc3RhbmRhbG9uZSBNUEVHLTQgZmlsZSB3aXRoICdz
ZHNtJyBhbmQgJ29kc20nIHRyYWNrcyBpcyBvcGVuZWQgaW4gYSBNZWRpYURvY3VtZW50LgorVGhp
cyB0ZXN0cyB0aGF0IGEgc3RhbmRhbG9uZSB2aWRlbyBmaWxlIGlzIG9wZW5lZCBpbiBhIE1lZGlh
RG9jdW1lbnQuCiAKIFBBU1M6IDx2aWRlbz4gdXNlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBlcy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tZG9jdW1lbnQtdHlwZXMuaHRtbAppbmRleCBjZDZiMWU3Li4xZjcxY2RkIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBlcy5odG1sCisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWRvY3VtZW50LXR5cGVzLmh0bWwKQEAgLTEsNSArMSw2IEBACiA8
aHRtbD4KICAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgewogICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OwpAQCAtMjYsOCArMjcsMTEgQEAKICAgICAgICAgPC9zY3JpcHQ+CiAgICAgPC9oZWFkPgogICAg
IDxib2R5IG9ubG9hZD0ic2V0VGltZW91dCh0ZXN0LCAyNTApIj4KLSAgICAgICAgPGlmcmFtZSBz
cmM9ImNvbnRlbnQvY291bnRpbmcubXA0IiBpZD0iZnIiIHdpZHRoPTM4MCBoZWlnaHQ9MzMwPjwv
aWZyYW1lPgotICAgICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBzdGFuZGFsb25lIE1QRUctNCBm
aWxlIHdpdGggJ3Nkc20nIGFuZCAnb2RzbScgdHJhY2tzIGlzIG9wZW5lZCBpbiBhIE1lZGlhRG9j
dW1lbnQuPC9wPgorICAgICAgICA8aWZyYW1lIGlkPSJmciIgd2lkdGg9MzgwIGhlaWdodD0zMzA+
PC9pZnJhbWU+CisgICAgICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIHN0YW5kYWxvbmUgdmlkZW8g
ZmlsZSBpcyBvcGVuZWQgaW4gYSBNZWRpYURvY3VtZW50LjwvcD4KICAgICAgICAgPHByZSBpZD0i
Y29uc29sZSI+PC9wcmU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXRTcmNCeUlk
KCJmciIsIGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvY291bnRpbmciKSk7CisgICAg
ICAgIDwvc2NyaXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRvcGxheS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tZG9tLWF1dG9wbGF5Lmh0bWwKaW5kZXggZDA1MjNjOS4uMTJmYTU2OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8g
Y29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8
c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhw
ZWN0ZWQoInZpZGVvLmF1dG9wbGF5IiwgZmFsc2UpOwpAQCAtMTAsNSArMTEsNSBAQAogICAgICAg
ICBlbmRUZXN0KCk7CiAgICAgfSApOwogCi0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5t
cDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVz
dCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20t
c3JjLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tc3JjLmh0bWwKaW5kZXggNjI2
MDc2Ny4uYjIwNDMzNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLXNy
Yy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1zcmMuaHRtbApAQCAtMSwx
MiArMSwxNCBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1m
aWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxz
Y3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOwotICAgIHZp
ZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgdmlkZW8uc3JjID0gbWVkaWFG
aWxlOwogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKIAogICAgIHdh
aXRGb3JFdmVudCgnbG9hZCcsIGZ1bmN0aW9uICgpIHsgCi0gICAgICAgIHRlc3RFeHBlY3RlZCgi
cmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAg
ICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgbWVkaWFG
aWxlKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0gKTsKICAgICAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWVycm9yLWFib3J0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1lcnJvci1hYm9ydC5odG1sCmluZGV4IGRjZjNhZWMuLjU1YTkyMzMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWVycm9yLWFib3J0Lmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tZXJyb3ItYWJvcnQuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRl
byBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4K
IDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RF
eHBlY3RlZCgidmlkZW8uZXJyb3IiLCBudWxsKTsKQEAgLTEzLDUgKzE0LDUgQEAKICAgICAgICAg
ZW5kVGVzdCgpOwogICAgIH0gKTsKIAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0
IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3Qi
KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1u
ZXR3b3JrU3RhdGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0
YXRlLmh0bWwKaW5kZXggZDhkZDQ0NC4uYTRhYjUxYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3RhdGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgIGV2ZW50
cyBhbmQgZW5kIHVwIHdpdGggbmV0d29ya1N0YXRlID49IE5FVFdPUktfTE9BRElORy4KICAgICAg
PC9wPgogICAgIAorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAg
PHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgICAg
ICBmdW5jdGlvbiB0ZXN0TmV0d29ya1N0YXRlKGV4cGVjdGVkLCBlbmRpdCwgb3ApCkBAIC0zMSw3
ICszMiw4IEBACiAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogCiAgICAgICAgICAgICAv
LyBub3cgc2V0IGEgdmFsaWQgdXJsCi0gICAgICAgICAgICBydW4oInZpZGVvLnNyYyA9ICdjb250
ZW50L3Rlc3QubXA0JyIpOworICAgICAgICAgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZp
bGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMg
PSAnIiArIG1lZGlhRmlsZSArICInIik7CiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIC8v
IGZpcnN0IHNldCB0aGUgc3JjIHRvIGEgYm9ndXMgdXJsLCBpdCBzaG91bGQgYXR0ZW1wdCBhIGxv
YWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRlLmh0bWwKaW5kZXgg
NjQxYjZlNC4uZDA0MDJhYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9h
ZC1yZWFkeVN0YXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFk
eVN0YXRlLmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxz
Y3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICBmdW5jdGlvbiB0ZXN0UmVhZHlTdGF0ZShleHBl
Y3RlZCwgZW5kaXQsIG9wKQpAQCAtMTcsNSArMTgsNSBAQAogICAgIHdhaXRGb3JFdmVudEFuZEZh
aWwoInBsYXlpbmciKTsKICAgICB3YWl0Rm9yRXZlbnQoImNhbnBsYXl0aHJvdWdoIiwgZnVuY3Rp
b24gKCkgeyB0ZXN0UmVhZHlTdGF0ZShIVE1MTWVkaWFFbGVtZW50LkhBVkVfRU5PVUdIX0RBVEEs
IHRydWUgKTsgfSApOwogCi0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAg
IHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29wLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29wLmh0bWwKaW5kZXggNTAyYjg5NC4uYzcyOGFhMSAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9vcC5odG1sCisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLWxvb3AuaHRtbApAQCAtMiw2ICsyLDcgQEAKIAogICAgIDx2aWRl
byBjb250cm9scyBhdXRvcGxheSA+PC92aWRlbz4KIAorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZp
bGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4K
IAogICAgIDxzY3JpcHQ+CkBAIC01NSwxMCArNTYsMTEgQEAKICAgICAKICAgICAgICAgY29uc29s
ZVdyaXRlKCIiKTsKICAgICAgICAgcnVuKCJ2aWRlby5sb29wID0gdHJ1ZSIpOwotICAgICAgICBy
dW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JyIpOworICAgICAgICB2YXIgbWVkaWFG
aWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgICAgIHJ1
bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJyIpOwogICAgICAgICBjb25zb2xlV3Jp
dGUoIiIpOwogICAgIDwvc2NyaXB0PgogCiAgICAgPC9oZWFkPgogCi08L2h0bWw+ClwgTm8gbmV3
bGluZSBhdCBlbmQgb2YgZmlsZQorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdmlkZW8tbXV0ZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwK
aW5kZXggNTEzNmQ4Zi4uYTgxOThkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tbXV0ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1tdXRlZC5odG1sCkBA
IC0xLDExICsxLDEyIEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDxwPlRlc3QgJ211dGVk
JyBhdHRyaWJ1dGU8cD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0
ZWQoInZpZGVvLm11dGVkIiwgZmFsc2UpOwogICAgIHJ1bigidmlkZW8ubXV0ZWQgPSB0cnVlIik7
CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRlZCIsIHRydWUpOwotICAgIHZpZGVvLnNyYyA9
ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKTsKICAgICBydW4oInZpZGVvLmxvYWQoKSIpOwogICAgIHdhaXRG
b3JFdmVudCgibG9hZCIsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRl
by5tdXRlZCIsIHRydWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8t
YXV0b3BsYXkuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwK
aW5kZXggZGI4YjU2OC4uZDljYTUxMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tbm8tYXV0b3BsYXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1uby1hdXRv
cGxheS5odG1sCkBAIC0xLDUgKzEsNiBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5U
ZXN0IHRoYXQgcGxheSBldmVudCBkb2VzIG5vdCBmaXJlIHdoZW4gInNyYyIgc2V0IHdpdGggbm8g
YXV0b3BsYXkgYXR0cmlidXRlLjwvcD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0
ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIsIHRydWUpOwpAQCAtMTYsNSArMTcsNSBAQAogICAg
IH0KICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBmdW5jdGlvbiAoKSB7IHNldFRpbWVvdXQodGVz
dFBhdXNlZCwgNTAwKTt9ICk7CiAKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7
CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7
CiA8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39405</attachid>
            <date>2009-09-10 19:54:49 -0700</date>
            <delta_ts>2009-09-11 11:48:45 -0700</delta_ts>
            <desc>Second round of changes - 20 tests</desc>
            <filename>webkit-codecs-2.patch</filename>
            <type>text/plain</type>
            <size>20278</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlN2E4ZWEzLi5hZDIzNzcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMDktMDkt
MTAgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDIwIG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL21lZGlhLWZpbGUuanM6
CisgICAgICAgIChzZXRTcmNCeUlkKTogRml4aW5nIGJ1ZyBpbiBjb2RlLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSB0byBsb2Nh
dGUgYSBtZWRpYSBmaWxlIGJhc2VkIG9uIHN1cHBvcnRlZCB0eXBlcy4KKyAgICAgICAgKiBtZWRp
YS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWw6IGRpdHRvLgorICAgICAgICAq
IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWw6IGRpdHRvLgorICAgICAgICAq
IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sOiBkaXR0by4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbDogZGl0dG8uCisgICAgICAg
ICogbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlk
ZW8tY3VycmVudFRpbWUtc2V0Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWN1
cnJlbnRUaW1lLXNldDIuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY3VycmVu
dFRpbWUuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZGlzcGxheS1ub25lLWNy
YXNoLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0
bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRvY3VtZW50LXR5cGVzLWV4cGVjdGVk
LnR4dDogVXBkYXRlZCB0ZXN0IHJlc3VsdHMuCisgICAgICAgICogbWVkaWEvdmlkZW8tZG9jdW1l
bnQtdHlwZXMuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSB0byBsb2NhdGUgYSBtZWRpYSBmaWxl
IGJhc2VkIG9uIHN1cHBvcnRlZCB0eXBlcy4KKyAgICAgICAgKiBtZWRpYS92aWRlby1kb20tYXV0
b3BsYXkuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sOiBk
aXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1lcnJvci1hYm9ydC5odG1sOiBkaXR0by4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1sOiBkaXR0by4KKyAgICAg
ICAgKiBtZWRpYS92aWRlby1sb2FkLXJlYWR5U3RhdGUuaHRtbDogZGl0dG8uCisgICAgICAgICog
bWVkaWEvdmlkZW8tbG9vcC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1tdXRl
ZC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sOiBk
aXR0by4KKwogMjAwOS0wOS0xMCAgSmlhbiBMaSAgPGppYW5saUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1maWxlLmpzIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcwppbmRl
eCBhODU2OWNmLi5jNGY3OTE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1m
aWxlLmpzCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMKQEAgLTIsMTQgKzIs
MTQgQEAgdmFyIGF1ZGlvQ29kZWNzID0gWwogICAgIFsiYXVkaW8vYWFjIiwgIm00YSJdLAogICAg
IFsiYXVkaW8vbXBlZyIsICJtcDMiXSwKICAgICBbImF1ZGlvL3dhdiIsICJ3YXYiXSwKLSAgICBb
ImF1ZGlvL29nZyIsICJvZ2ciXQorICAgIFsiYXVkaW8vb2dnIiwgIm9nYSJdCiBdOwogCiB2YXIg
dmlkZW9Db2RlY3MgPSBbCiAgICAgWyJ2aWRlby9tcDQiLCAibXA0Il0sCiAgICAgWyJ2aWRlby9t
cGVnIiwgIm1wZyJdLAogICAgIFsidmlkZW8vcXVpY2t0aW1lIiwgIm1vdiJdLAotICAgIFsidmlk
ZW8vb2dnIiwgIm9nZyJdCisgICAgWyJ2aWRlby9vZ2ciLCAib2d2Il0KIF07CiAKIGZ1bmN0aW9u
IGZpbmRNZWRpYUZpbGUodGFnTmFtZSwgbmFtZSkgewpAQCAtMTksMTIgKzE5LDkgQEAgZnVuY3Rp
b24gZmluZE1lZGlhRmlsZSh0YWdOYW1lLCBuYW1lKSB7CiAgICAgZWxzZQogICAgICAgICBjb2Rl
Y3MgPSB2aWRlb0NvZGVjczsKIAotICAgIHZhciBlbGVtZW50OwotICAgIHRyeSB7Ci0gICAgICAg
IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdOYW1lKVswXTsKLSAg
ICB9IGNhdGNoIChleCkgeworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWUodGFnTmFtZSlbMF07CisgICAgaWYgKCFlbGVtZW50KQogICAgICAgICBlbGVtZW50
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTsKLSAgICB9CiAKICAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IGNvZGVjcy5sZW5ndGg7ICsraSkgewogICAgICAgICBpZiAoZWxlbWVudC5j
YW5QbGF5VHlwZShjb2RlY3NbaV1bMF0pKQpAQCAtNDUsNSArNDIsNSBAQCBmdW5jdGlvbiBzZXRT
cmNCeVRhZ05hbWUodGFnTmFtZSwgc3JjKSB7CiBmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBzcmMp
IHsKICAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKICAgICBp
ZiAoZWxlbWVudCkKLSAgICAgICAgaWQuc3JjID0gc3JjOworICAgICAgICBlbGVtZW50LnNyYyA9
IHNyYzsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3Vy
Y2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbAppbmRl
eCBjZjg5YjNjLi43ZmQwMmU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1j
YW52YXMtc291cmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2FudmFzLXNv
dXJjZS5odG1sCkBAIC0yLDYgKzIsNyBAQAogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+RHJh
d2luZyB0byBjYW52YXMgdXNpbmcgdmlkZW8gd2l0aCBzb3VyY2UgZWxlbWVudCBkb2VzIG5vdCB0
YWludCBjYW52YXM8L3RpdGxlPgogICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlw
dCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KQEAgLTI3LDcg
KzI4LDggQEAKICAgICAgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CiAgICAgICAgICAg
ICAgICAgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2NhbnZhcycpWzBd
OwogICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsIHZpZGVvTG9hZGVkKTsKLSAg
ICAgICAgICAgICAgICBydW4oInZhciBzb3VyY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdz
b3VyY2UnKTsgc291cmNlLnNyYyA9ICdjb250ZW50L2NvdW50aW5nLm1wNCc7IHZpZGVvLmFwcGVu
ZENoaWxkKHNvdXJjZSkiKTsKKyAgICAgICAgICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC9jb3VudGluZyIpOworICAgICAgICAgICAgICAgIHJ1
bigidmFyIHNvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJjZScpOyBzb3VyY2Uu
c3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJzsgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKSIpOwog
ICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KICAgICA8L2hlYWQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWwg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWwK
aW5kZXggYzUwNzZmMi4uNTk2MDhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY2xpY2stZGJsY2tpY2stc3RhbmRhbG9uZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWNsaWNrLWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbApAQCAtMSw2ICsxLDEyIEBACiA8
aHRtbD4KICAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgeworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAg
ICAgICB9CisKICAgICAgICAgdmFyIHZpZGVvOwogICAgICAgICBmdW5jdGlvbiBsb2cobXNnKQog
ICAgICAgICB7CkBAIC05LDEwICsxNSw2IEBACiAgICAgICAgIAogICAgICAgICBmdW5jdGlvbiB0
ZXN0KCkKICAgICAgICAgewotICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewotICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKLSAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICB2aWRlbyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdmcicpLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndmlkZW8nKVsw
XTsKICAgICAgICAgICAgIHZpZGVvLmFkZEV2ZW50TGlzdGVuZXIoJ2NhbnBsYXl0aHJvdWdoJywg
dGVzdDIpOwogICAgICAgICB9CkBAIC0zOCw4ICs0MCwxMyBAQAogICAgICAgICB9CiAgICAgICAg
IDwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAg
PGlmcmFtZSBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIGlkPSJmciI+PC9pZnJhbWU+CisgICAgPGJv
ZHk+CisgICAgPGlmcmFtZSBpZD0iZnIiPjwvaWZyYW1lPgorICAgIDxzY3JpcHQ+CisgICAgICAg
IHZhciBmcmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmciIpOworICAgICAgICBmcmFt
ZS5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAgICAg
ZnJhbWUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHRlc3QpOworICAgIDwvc2NyaXB0PgogICAg
IDxwPlRoaXMgdGVzdHMgdGhhdCBjbGlja2luZyBvbiBhIHN0YW5kYWxvbmUgdmlkZW8gd2lsbCBw
YXVzZSBhbmQgZG91YmxlLWNsaWNraW5nIHdpbGwgcGxheS48L3A+CiAgICAgPHByZSBpZD0iY29u
c29sZSI+PC9wcmU+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWwKaW5kZXggYTM0NDFlOC4uYzM5OTQ4MyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1sCkBA
IC0xMiw2ICsxMiw3IEBACiAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPHA+VGVz
dCBjb250cm9scyBvbiB0cmFuc2Zvcm1lZCB2aWRlby48L3A+CiAgICAgPHA+VGhpcyB0ZXN0IG9u
bHkgcnVucyBpbiBEUlQhPC9wPgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0
PgogICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7CkBA
IC0yNSw5ICsyNiw3IEBACiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIs
IGZhbHNlKTsKICAgICAgICAgICAgIGVuZFRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAgICB2
aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9ib2R5
PgogPC9odG1sPgotCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRy
b2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29u
dHJvbHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwKaW5kZXggNzNhNGY4Yy4uOTBiY2Y5OCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1hdWRpby1v
bmx5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1h
dWRpby1vbmx5Lmh0bWwKQEAgLTQsNyArNCwxMiBAQAogICAgICAgICAgICAgI25vLXZpZGVvLW1l
ZGlhIHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OyB3aWR0aDogMzIwcHg7IGhlaWdodDogMTAw
cHg7fSAKICAgICAgICAgICAgICNtb3VzZS1wYXJraW5nOmhvdmVyIHsgcGFkZGluZzo4OyBiYWNr
Z3JvdW5kLWNvbG9yOiBibHVlOyB9CiAgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgICAgIGxheW91dFRl
c3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgIH0KIAogICAgICAgICAg
ICAgdmFyIHZpZGVvOwogCkBAIC00MiwxMyArNDcsMTEgQEAKICAgICAgICAgICAgICAgICB0YXJn
ZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW91c2UtcGFya2luZyIpOwogICAgICAgICAg
ICAgICAgIGV2ZW50U2VuZGVyLm1vdXNlTW92ZVRvKHRhcmdldC5vZmZzZXRMZWZ0ICsgNCwgdGFy
Z2V0Lm9mZnNldFRvcCArIDQpOwogCi0gICAgICAgICAgICAgICAgLy8gY29udHJvbGxlciBzaG91
bGQgc3RpbGwgYmUgdmlzaWJsZSBhZnRlciBhIHNlY29uZAotICAgICAgICAgICAgICAgIHNldFRp
bWVvdXQoZnVuY3Rpb24oKSB7IGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsgfSAs
IDEwMDApOwotICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rp
b24oKSB7CisgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xs
ZXIpCisgICAgICAgICAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlE
b25lKCk7CisgICAgICAgICAgICAgICAgfSAsIDEwMDApOwogCi0gICAgICAgICAgICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7Ci0gICAgICAgICAgICAgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLndhaXRVbnRpbERvbmUoKTsKICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9u
KCkgeyAKICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZSgnRkFJTCcpKTsgCiAgICAgICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCkBAIC02NSw3ICs2OCwxMSBAQAogCiAgICAgICAg
IDxwPjxzcGFuIGlkPSJtb3VzZS1wYXJraW5nIj5tb3VzZSBwYXJrcyBoZXJlLCBhbSBJIGJsdWU/
PC9zcGFuPjwvcD4KIAotICAgICAgICA8dmlkZW8gaWQ9Im5vLXZpZGVvLW1lZGlhIiBjb250cm9s
cyBsb29wIHNyYz0iY29udGVudC90ZXN0LndhdiIgb25sb2FkPSJzdGFydCgpIj48L3ZpZGVvPgor
ICAgICAgICA8dmlkZW8gaWQ9Im5vLXZpZGVvLW1lZGlhIiBjb250cm9scyBsb29wPjwvdmlkZW8+
CiAgICAgICAgIDxicj48YnI+PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisgICAgICAgIDxzY3Jp
cHQ+CisgICAgICAgICAgICBzZXRTcmNCeUlkKCJmciIsIGZpbmRNZWRpYUZpbGUoImF1ZGlvIiwg
ImNvbnRlbnQvdGVzdCIpKTsKKyAgICAgICAgICAgIHN0YXJ0KCk7CisgICAgICAgIDwvc2NyaXB0
PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWNvbnRyb2xzLXpvb21lZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJv
bHMtem9vbWVkLmh0bWwKaW5kZXggNjY0MDZkYy4uZGIyYjg3MiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwKQEAgLTYsNiArNiw3IEBACiAgICAgICBt
YXJnaW46IDUwcHg7CiAgICAgfQogICA8L3N0eWxlPgorICA8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0i
dXRmLTgiPgogICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQogICAgIHsKQEAgLTMzLDcgKzM0LDcgQEAK
ICAgICAgICAgd2FpdEZvckV2ZW50KCdsb2FkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICBy
dW5UZXN0KCk7CiAgICAgICAgIH0gKTsKLSAgICAgICAgdmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVz
dC5tcDQnOworICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250
ZW50L3Rlc3QiKTsKICAgICA8L3NjcmlwdD4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1jb250cm9scy5odG1sCmluZGV4IDg3YTE1ODMuLjM2N2QzNDggMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDx2aWRlbyBjb250cm9s
cz48L3ZpZGVvPgogPHA+VGVzdCAnY29udHJvbHMnIGF0dHJpYnV0ZTxwPgorPHNjcmlwdCBzcmM9
bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3Jp
cHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY29udHJvbHMiLCBudWxsLCAn
IT0nKTsKQEAgLTIwLDUgKzIxLDUgQEAKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jb250
cm9scyIsIG51bGwsICchPScpOwogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSApOwotICAgIHZp
ZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JzsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRtbAppbmRleCBiODFkZjEyLi4zZDIzNTk4IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRtbApAQCAtNSw2
ICs1LDcgQEAKICAgICAKICAgICA8cD5UZXN0IHRoYXQgc2V0dGluZyBjdXJyZW50VGltZSBjaGFu
Z2VzIHRoZSB0aW1lLCBhbmQgdGhhdCAnZW5kZWQnIGV2ZW50IGlzIGZpcmVkIGluIGEgcmVhc29u
YWJsZSBhbW91bnQgb2YgdGltZTwvcD4KICAgICAKKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAg
ICAgPHNjcmlwdD4KICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCAgCkBAIC0yMCw3ICsyMSw3IEBA
CiAgICAgICAgIHZhciB0aW1lb3V0ID0gODAwOwogICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9u
ICgpIHsgbG9nUmVzdWx0KCJObyAnZW5kZWQnIGV2ZW50IGluICIgKyB0aW1lb3V0LzEwMDAgICsg
InNlY29uZHMiLCBmYWxzZSk7IH0sIHRpbWVvdXQpOwogICAgIH0pOwotICAgIHZpZGVvLnNyYyA9
ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKTsKICAgICA8L3NjcmlwdD4KIAogPC9ib2R5PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0Mi5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0Mi5odG1sCmluZGV4IDBhMTBmZmYuLjQ4
NDAzNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNl
dDIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQyLmh0
bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3Jj
PW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2Ny
aXB0PgogPHNjcmlwdD4KICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCAgCkBAIC0xMCw1ICsxMSw1
IEBACiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFRpbWUudG9GaXhlZCgxKSIs
IDMuMSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9KTsKLSAgICB2aWRlby5zcmMgPSAiY29u
dGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAi
Y29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50
VGltZS5odG1sCmluZGV4IGFlM2EzMzkuLjg1MGE0NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY3VycmVudFRpbWUuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3Zp
ZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZp
ZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
Y3VycmVudFRpbWUiLCAwKQpAQCAtMTAsNSArMTEsNSBAQAogICAgICAgICB0ZXN0RXhwZWN0ZWQo
InZpZGVvLmN1cnJlbnRUaW1lIiwgMCwgJz4nKQogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfQot
ICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5k
TWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxheS1ub25lLWNyYXNoLmh0bWwgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUtY3Jhc2guaHRtbAppbmRleCAzMWE2MzIz
Li40ZjY2YzFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5v
bmUtY3Jhc2guaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUt
Y3Jhc2guaHRtbApAQCAtMSw4ICsxLDkgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+
VGVzdCB0aGF0IHBhdXNlKCkgYWZ0ZXIgY2hhbmdpbmcgZGlzcGxheSB0byAibm9uZSIgZG9lc24n
dCBjYXVzZSBhIGNyYXNoLjwvcD4KKzxzY3JpcHQgc3JjPSJtZWRpYS1maWxlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJ2aWRlby10ZXN0LmpzIj48L3NjcmlwdD4KIDxzY3JpcHQ+Ci0gICAg
dmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRp
YUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIHZpZGVvLnBsYXkoKTsKICAgICB2
aWRlby5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwogICAgIHZpZGVvLnBhdXNlKCk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LXRvZ2dsZS5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxheS10b2dnbGUuaHRtbAppbmRleCBiZWE3ZTM4Li5hOTM0
ODY5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LXRvZ2dsZS5o
dG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0bWwKQEAg
LTEsNSArMSw2IEBACiA8aHRtbD4KICAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVk
aWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgIGZ1bmN0
aW9uIHRvZ2dsZURpc3BsYXkoKQogICAgICAgICAgICAgewpAQCAtMjYsOCArMjcsOCBAQAogICAg
ICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25s
b2FkPSJ0ZXN0KCkiPgorICAgIDxib2R5IG9ubG9hZD0ic2V0U3JjQnlJZCgndmlkJywgZmluZE1l
ZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0JykpOyB0ZXN0KCkiPgogICAgICAgICBUaGlz
IHRlc3RzIHRoYXQgdG9nZ2xpbmcgdGhlIGRpc3BsYXkgcHJvcGVydHkgd29uJ3QgbWFrZSB0aGUg
Y29udHJvbHMgZGlzYXBwZWFyLjxicj4KLSAgICAgICAgPHZpZGVvIGlkPSJ2aWQiIGNvbnRyb2xz
IHNyYz0iY29udGVudC90ZXN0Lm1wNCI+PC92aWRlbz4KKyAgICAgICAgPHZpZGVvIGlkPSJ2aWQi
IGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9jdW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tZG9jdW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CmluZGV4IGVmNWMw
YzEuLjAwMDM2Y2QgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvY3VtZW50
LXR5cGVzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVu
dC10eXBlcy1leHBlY3RlZC50eHQKQEAgLTEsNSArMSw1IEBACiAKLVRoaXMgdGVzdHMgdGhhdCBh
IHN0YW5kYWxvbmUgTVBFRy00IGZpbGUgd2l0aCAnc2RzbScgYW5kICdvZHNtJyB0cmFja3MgaXMg
b3BlbmVkIGluIGEgTWVkaWFEb2N1bWVudC4KK1RoaXMgdGVzdHMgdGhhdCBhIHN0YW5kYWxvbmUg
dmlkZW8gZmlsZSBpcyBvcGVuZWQgaW4gYSBNZWRpYURvY3VtZW50LgogCiBQQVNTOiA8dmlkZW8+
IHVzZWQKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9jdW1lbnQtdHlw
ZXMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvY3VtZW50LXR5cGVzLmh0bWwKaW5k
ZXggY2Q2YjFlNy4uMWY3MWNkZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
ZG9jdW1lbnQtdHlwZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVu
dC10eXBlcy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPGh0bWw+CiAgICAgPGhlYWQ+CisgICAgICAg
IDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CiAg
ICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKICAgICAgICAgICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKQEAgLTI2LDggKzI3LDExIEBACiAgICAg
ICAgIDwvc2NyaXB0PgogICAgIDwvaGVhZD4KICAgICA8Ym9keSBvbmxvYWQ9InNldFRpbWVvdXQo
dGVzdCwgMjUwKSI+Ci0gICAgICAgIDxpZnJhbWUgc3JjPSJjb250ZW50L2NvdW50aW5nLm1wNCIg
aWQ9ImZyIiB3aWR0aD0zODAgaGVpZ2h0PTMzMD48L2lmcmFtZT4KLSAgICAgICAgPHA+VGhpcyB0
ZXN0cyB0aGF0IGEgc3RhbmRhbG9uZSBNUEVHLTQgZmlsZSB3aXRoICdzZHNtJyBhbmQgJ29kc20n
IHRyYWNrcyBpcyBvcGVuZWQgaW4gYSBNZWRpYURvY3VtZW50LjwvcD4KKyAgICAgICAgPGlmcmFt
ZSBpZD0iZnIiIHdpZHRoPTM4MCBoZWlnaHQ9MzMwPjwvaWZyYW1lPgorICAgICAgICA8cD5UaGlz
IHRlc3RzIHRoYXQgYSBzdGFuZGFsb25lIHZpZGVvIGZpbGUgaXMgb3BlbmVkIGluIGEgTWVkaWFE
b2N1bWVudC48L3A+CiAgICAgICAgIDxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgorICAgICAgICA8
c2NyaXB0PgorICAgICAgICAgICAgc2V0U3JjQnlJZCgiZnIiLCBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L2NvdW50aW5nIikpOworICAgICAgICA8L3NjcmlwdD4KICAgICA8L2JvZHk+
CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tYXV0b3Bs
YXkuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRvcGxheS5odG1sCmluZGV4
IGQwNTIzYzkuLjEyZmE1NjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRv
bS1hdXRvcGxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRvcGxh
eS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0
IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48
L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5hdXRvcGxheSIsIGZh
bHNlKTsKQEAgLTEwLDUgKzExLDUgQEAKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0gKTsKIAot
ICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5k
TWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvdmlkZW8tZG9tLXNyYy5odG1sCmluZGV4IDYyNjA3NjcuLmIyMDQzMzQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1zcmMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1kb20tc3JjLmh0bWwKQEAgLTEsMTIgKzEsMTQgQEAKIDx2aWRlbyBjb250cm9s
cz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgi
dmlkZW8uY3VycmVudFNyYyIsICIiKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1w
NCI7CisgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQv
dGVzdCIpOworICAgIHZpZGVvLnNyYyA9IG1lZGlhRmlsZTsKICAgICB0ZXN0RXhwZWN0ZWQoInZp
ZGVvLmN1cnJlbnRTcmMiLCAiIik7CiAKICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBmdW5jdGlv
biAoKSB7IAotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRT
cmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2
ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsIG1lZGlhRmlsZSk7CiAgICAgICAgIGVuZFRlc3QoKTsK
ICAgICB9ICk7CiAgICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1lcnJv
ci1hYm9ydC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZXJyb3ItYWJvcnQuaHRtbApp
bmRleCBkY2YzYWVjLi41NWE5MjMzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1lcnJvci1hYm9ydC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWVycm9yLWFi
b3J0Lmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0Lmpz
Pjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmVycm9yIiwgbnVs
bCk7CkBAIC0xMyw1ICsxNCw1IEBACiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9ICk7CiAKLSAg
ICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0YXRlLmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1sCmluZGV4IGQ4ZGQ0NDQuLmE0
YWI1MWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0
YXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3RhdGUu
aHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICBldmVudHMgYW5kIGVuZCB1cCB3aXRoIG5ldHdvcmtT
dGF0ZSA+PSBORVRXT1JLX0xPQURJTkcuCiAgICAgIDwvcD4KICAgICAKKyAgICA8c2NyaXB0IHNy
Yz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+
PC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gdGVzdE5ldHdvcmtTdGF0
ZShleHBlY3RlZCwgZW5kaXQsIG9wKQpAQCAtMzEsNyArMzIsOCBAQAogICAgICAgICAgICAgY29u
c29sZVdyaXRlKCIiKTsKIAogICAgICAgICAgICAgLy8gbm93IHNldCBhIHZhbGlkIHVybAotICAg
ICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCciKTsKKyAgICAgICAg
ICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3Qi
KTsKKyAgICAgICAgICAgIHJ1bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJyIpOwog
ICAgICAgICB9CiAgICAgICAgIAogICAgICAgICAvLyBmaXJzdCBzZXQgdGhlIHNyYyB0byBhIGJv
Z3VzIHVybCwgaXQgc2hvdWxkIGF0dGVtcHQgYSBsb2FkCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1sb2FkLXJlYWR5U3RhdGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCmluZGV4IDY0MWI2ZTQuLmQwNDAyYWMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCkBAIC0xLDQgKzEsNSBA
QAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAg
ICAgZnVuY3Rpb24gdGVzdFJlYWR5U3RhdGUoZXhwZWN0ZWQsIGVuZGl0LCBvcCkKQEAgLTE3LDUg
KzE4LDUgQEAKICAgICB3YWl0Rm9yRXZlbnRBbmRGYWlsKCJwbGF5aW5nIik7CiAgICAgd2FpdEZv
ckV2ZW50KCJjYW5wbGF5dGhyb3VnaCIsIGZ1bmN0aW9uICgpIHsgdGVzdFJlYWR5U3RhdGUoSFRN
TE1lZGlhRWxlbWVudC5IQVZFX0VOT1VHSF9EQVRBLCB0cnVlICk7IH0gKTsKIAotICAgIHZpZGVv
LnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxl
KCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tbG9vcC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9v
cC5odG1sCmluZGV4IDUwMmI4OTQuLmM3MjhhYTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWxvb3AuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29wLmh0
bWwKQEAgLTIsNiArMiw3IEBACiAKICAgICA8dmlkZW8gY29udHJvbHMgYXV0b3BsYXkgPjwvdmlk
ZW8+CiAKKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3Jp
cHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKICAgICA8c2NyaXB0PgpAQCAtNTUsMTAg
KzU2LDExIEBACiAgICAgCiAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAgIHJ1bigi
dmlkZW8ubG9vcCA9IHRydWUiKTsKLSAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVudC90
ZXN0Lm1wNCciKTsKKyAgICAgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVv
IiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICBydW4oInZpZGVvLnNyYyA9ICciICsgbWVkaWFG
aWxlICsgIiciKTsKICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAgICA8L3NjcmlwdD4KIAog
ICAgIDwvaGVhZD4KIAotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1tdXRlZC5odG1sCmluZGV4IDUxMzZkOGYuLmE4MTk4ZDMgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tbXV0ZWQuaHRtbApAQCAtMSwxMSArMSwxMiBAQAogPHZpZGVvIGNv
bnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0ICdtdXRlZCcgYXR0cmlidXRlPHA+Cis8c2NyaXB0IHNy
Yz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3Nj
cmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRlZCIsIGZhbHNlKTsK
ICAgICBydW4oInZpZGVvLm11dGVkID0gdHJ1ZSIpOwogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
bXV0ZWQiLCB0cnVlKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAg
dmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAg
cnVuKCJ2aWRlby5sb2FkKCkiKTsKICAgICB3YWl0Rm9yRXZlbnQoImxvYWQiLCBmdW5jdGlvbiAo
KSB7CiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ubXV0ZWQiLCB0cnVlKTsKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sCmluZGV4IGRiOGI1NjguLmQ5Y2E1MTEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3BsYXkuaHRtbApAQCAtMSw1ICsxLDYgQEAK
IDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IHBsYXkgZXZlbnQgZG9lcyBu
b3QgZmlyZSB3aGVuICJzcmMiIHNldCB3aXRoIG5vIGF1dG9wbGF5IGF0dHJpYnV0ZS48L3A+Cis8
c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVz
dC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5wYXVzZWQi
LCB0cnVlKTsKQEAgLTE2LDUgKzE3LDUgQEAKICAgICB9CiAgICAgd2FpdEZvckV2ZW50KCdsb2Fk
JywgZnVuY3Rpb24gKCkgeyBzZXRUaW1lb3V0KHRlc3RQYXVzZWQsIDUwMCk7fSApOwogCi0gICAg
dmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRp
YUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+Cg==
</data>
<flag name="review"
          id="20501"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39461</attachid>
            <date>2009-09-11 11:48:45 -0700</date>
            <delta_ts>2009-09-17 11:45:43 -0700</delta_ts>
            <desc>Second round of changes - 20 tests</desc>
            <filename>webkit-codecs-2.patch</filename>
            <type>text/plain</type>
            <size>19779</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlN2E4ZWEzLi5hZDIzNzcyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMDktMDkt
MTAgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDIwIG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL21lZGlhLWZpbGUuanM6
CisgICAgICAgIChzZXRTcmNCeUlkKTogRml4aW5nIGJ1ZyBpbiBjb2RlLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSB0byBsb2Nh
dGUgYSBtZWRpYSBmaWxlIGJhc2VkIG9uIHN1cHBvcnRlZCB0eXBlcy4KKyAgICAgICAgKiBtZWRp
YS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWw6IGRpdHRvLgorICAgICAgICAq
IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWw6IGRpdHRvLgorICAgICAgICAq
IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sOiBkaXR0by4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbDogZGl0dG8uCisgICAgICAg
ICogbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlk
ZW8tY3VycmVudFRpbWUtc2V0Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWN1
cnJlbnRUaW1lLXNldDIuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY3VycmVu
dFRpbWUuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZGlzcGxheS1ub25lLWNy
YXNoLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0
bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRvY3VtZW50LXR5cGVzLWV4cGVjdGVk
LnR4dDogVXBkYXRlZCB0ZXN0IHJlc3VsdHMuCisgICAgICAgICogbWVkaWEvdmlkZW8tZG9jdW1l
bnQtdHlwZXMuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSB0byBsb2NhdGUgYSBtZWRpYSBmaWxl
IGJhc2VkIG9uIHN1cHBvcnRlZCB0eXBlcy4KKyAgICAgICAgKiBtZWRpYS92aWRlby1kb20tYXV0
b3BsYXkuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sOiBk
aXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1lcnJvci1hYm9ydC5odG1sOiBkaXR0by4KKyAg
ICAgICAgKiBtZWRpYS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1sOiBkaXR0by4KKyAgICAg
ICAgKiBtZWRpYS92aWRlby1sb2FkLXJlYWR5U3RhdGUuaHRtbDogZGl0dG8uCisgICAgICAgICog
bWVkaWEvdmlkZW8tbG9vcC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1tdXRl
ZC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sOiBk
aXR0by4KKwogMjAwOS0wOS0xMCAgSmlhbiBMaSAgPGppYW5saUBjaHJvbWl1bS5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS9tZWRpYS1maWxlLmpzIGIvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcwppbmRl
eCBhODU2OWNmLi5jNGY3OTE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1m
aWxlLmpzCisrKyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMKQEAgLTIsMTQgKzIs
MTQgQEAgdmFyIGF1ZGlvQ29kZWNzID0gWwogICAgIFsiYXVkaW8vYWFjIiwgIm00YSJdLAogICAg
IFsiYXVkaW8vbXBlZyIsICJtcDMiXSwKICAgICBbImF1ZGlvL3dhdiIsICJ3YXYiXSwKLSAgICBb
ImF1ZGlvL29nZyIsICJvZ2ciXQorICAgIFsiYXVkaW8vb2dnIiwgIm9nYSJdCiBdOwogCiB2YXIg
dmlkZW9Db2RlY3MgPSBbCiAgICAgWyJ2aWRlby9tcDQiLCAibXA0Il0sCiAgICAgWyJ2aWRlby9t
cGVnIiwgIm1wZyJdLAogICAgIFsidmlkZW8vcXVpY2t0aW1lIiwgIm1vdiJdLAotICAgIFsidmlk
ZW8vb2dnIiwgIm9nZyJdCisgICAgWyJ2aWRlby9vZ2ciLCAib2d2Il0KIF07CiAKIGZ1bmN0aW9u
IGZpbmRNZWRpYUZpbGUodGFnTmFtZSwgbmFtZSkgewpAQCAtMTksMTIgKzE5LDkgQEAgZnVuY3Rp
b24gZmluZE1lZGlhRmlsZSh0YWdOYW1lLCBuYW1lKSB7CiAgICAgZWxzZQogICAgICAgICBjb2Rl
Y3MgPSB2aWRlb0NvZGVjczsKIAotICAgIHZhciBlbGVtZW50OwotICAgIHRyeSB7Ci0gICAgICAg
IGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdOYW1lKVswXTsKLSAg
ICB9IGNhdGNoIChleCkgeworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWUodGFnTmFtZSlbMF07CisgICAgaWYgKCFlbGVtZW50KQogICAgICAgICBlbGVtZW50
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTsKLSAgICB9CiAKICAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IGNvZGVjcy5sZW5ndGg7ICsraSkgewogICAgICAgICBpZiAoZWxlbWVudC5j
YW5QbGF5VHlwZShjb2RlY3NbaV1bMF0pKQpAQCAtNDUsNSArNDIsNSBAQCBmdW5jdGlvbiBzZXRT
cmNCeVRhZ05hbWUodGFnTmFtZSwgc3JjKSB7CiBmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBzcmMp
IHsKICAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKICAgICBp
ZiAoZWxlbWVudCkKLSAgICAgICAgaWQuc3JjID0gc3JjOworICAgICAgICBlbGVtZW50LnNyYyA9
IHNyYzsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3Vy
Y2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbAppbmRl
eCBjZjg5YjNjLi43ZmQwMmU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1j
YW52YXMtc291cmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2FudmFzLXNv
dXJjZS5odG1sCkBAIC0yLDYgKzIsNyBAQAogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+RHJh
d2luZyB0byBjYW52YXMgdXNpbmcgdmlkZW8gd2l0aCBzb3VyY2UgZWxlbWVudCBkb2VzIG5vdCB0
YWludCBjYW52YXM8L3RpdGxlPgogICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNjcmlw
dCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KQEAgLTI3LDcg
KzI4LDggQEAKICAgICAgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CiAgICAgICAgICAg
ICAgICAgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2NhbnZhcycpWzBd
OwogICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsIHZpZGVvTG9hZGVkKTsKLSAg
ICAgICAgICAgICAgICBydW4oInZhciBzb3VyY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdz
b3VyY2UnKTsgc291cmNlLnNyYyA9ICdjb250ZW50L2NvdW50aW5nLm1wNCc7IHZpZGVvLmFwcGVu
ZENoaWxkKHNvdXJjZSkiKTsKKyAgICAgICAgICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC9jb3VudGluZyIpOworICAgICAgICAgICAgICAgIHJ1
bigidmFyIHNvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJjZScpOyBzb3VyY2Uu
c3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJzsgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKSIpOwog
ICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KICAgICA8L2hlYWQ+CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWwg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWwK
aW5kZXggYzUwNzZmMi4uNTk2MDhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY2xpY2stZGJsY2tpY2stc3RhbmRhbG9uZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWNsaWNrLWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbApAQCAtMSw2ICsxLDEyIEBACiA8
aHRtbD4KICAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgeworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgp
OworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAg
ICAgICB9CisKICAgICAgICAgdmFyIHZpZGVvOwogICAgICAgICBmdW5jdGlvbiBsb2cobXNnKQog
ICAgICAgICB7CkBAIC05LDEwICsxNSw2IEBACiAgICAgICAgIAogICAgICAgICBmdW5jdGlvbiB0
ZXN0KCkKICAgICAgICAgewotICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJv
bGxlcikgewotICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKLSAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7
Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICB2aWRlbyA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdmcicpLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndmlkZW8nKVsw
XTsKICAgICAgICAgICAgIHZpZGVvLmFkZEV2ZW50TGlzdGVuZXIoJ2NhbnBsYXl0aHJvdWdoJywg
dGVzdDIpOwogICAgICAgICB9CkBAIC0zOCw4ICs0MCwxMyBAQAogICAgICAgICB9CiAgICAgICAg
IDwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0gICAg
PGlmcmFtZSBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIGlkPSJmciI+PC9pZnJhbWU+CisgICAgPGJv
ZHk+CisgICAgPGlmcmFtZSBpZD0iZnIiPjwvaWZyYW1lPgorICAgIDxzY3JpcHQ+CisgICAgICAg
IHZhciBmcmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmciIpOworICAgICAgICBmcmFt
ZS5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAgICAg
ZnJhbWUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHRlc3QpOworICAgIDwvc2NyaXB0PgogICAg
IDxwPlRoaXMgdGVzdHMgdGhhdCBjbGlja2luZyBvbiBhIHN0YW5kYWxvbmUgdmlkZW8gd2lsbCBw
YXVzZSBhbmQgZG91YmxlLWNsaWNraW5nIHdpbGwgcGxheS48L3A+CiAgICAgPHByZSBpZD0iY29u
c29sZSI+PC9wcmU+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWwKaW5kZXggYTM0NDFlOC4uYzM5OTQ4MyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1sCkBA
IC0xMiw2ICsxMiw3IEBACiAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPHA+VGVz
dCBjb250cm9scyBvbiB0cmFuc2Zvcm1lZCB2aWRlby48L3A+CiAgICAgPHA+VGhpcyB0ZXN0IG9u
bHkgcnVucyBpbiBEUlQhPC9wPgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0
PgogICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7CkBA
IC0yNSw5ICsyNiw3IEBACiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIs
IGZhbHNlKTsKICAgICAgICAgICAgIGVuZFRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAgICB2
aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9ib2R5
PgogPC9odG1sPgotCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRy
b2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29u
dHJvbHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwKaW5kZXggNzNhNGY4Yy4uMWRhYWE2ZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1hdWRpby1v
bmx5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1h
dWRpby1vbmx5Lmh0bWwKQEAgLTQsNyArNCwxMiBAQAogICAgICAgICAgICAgI25vLXZpZGVvLW1l
ZGlhIHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OyB3aWR0aDogMzIwcHg7IGhlaWdodDogMTAw
cHg7fSAKICAgICAgICAgICAgICNtb3VzZS1wYXJraW5nOmhvdmVyIHsgcGFkZGluZzo4OyBiYWNr
Z3JvdW5kLWNvbG9yOiBibHVlOyB9CiAgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAg
ICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgICAgIGxheW91dFRl
c3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgIH0KIAogICAgICAgICAg
ICAgdmFyIHZpZGVvOwogCkBAIC00Nyw4ICs1Miw2IEBACiAgICAgICAgICAgICB9CiAKICAgICAg
ICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICAgICAgICAgICAg
ICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICAgICAgbGF5
b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgIHNldFRp
bWVvdXQoZnVuY3Rpb24oKSB7IAogICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFw
cGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdGQUlMJykpOyAKICAgICAgICAgICAg
ICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAgLTY1LDcgKzY4LDEx
IEBACiAKICAgICAgICAgPHA+PHNwYW4gaWQ9Im1vdXNlLXBhcmtpbmciPm1vdXNlIHBhcmtzIGhl
cmUsIGFtIEkgYmx1ZT88L3NwYW4+PC9wPgogCi0gICAgICAgIDx2aWRlbyBpZD0ibm8tdmlkZW8t
bWVkaWEiIGNvbnRyb2xzIGxvb3Agc3JjPSJjb250ZW50L3Rlc3Qud2F2IiBvbmxvYWQ9InN0YXJ0
KCkiPjwvdmlkZW8+CisgICAgICAgIDx2aWRlbyBpZD0ibm8tdmlkZW8tbWVkaWEiIGNvbnRyb2xz
IGxvb3A+PC92aWRlbz4KICAgICAgICAgPGJyPjxicj48ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4K
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldFNyY0J5SWQoImZyIiwgZmluZE1lZGlh
RmlsZSgiYXVkaW8iLCAiY29udGVudC90ZXN0IikpOworICAgICAgICAgICAgc3RhcnQoKTsKKyAg
ICAgICAgPC9zY3JpcHQ+CiAgICAgPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1jb250cm9scy16b29tZWQuaHRtbAppbmRleCA2NjQwNmRjLi5kYjJiODcyIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbApAQCAtNiw2ICs2
LDcgQEAKICAgICAgIG1hcmdpbjogNTBweDsKICAgICB9CiAgIDwvc3R5bGU+CisgIDxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny
aXB0IiBjaGFyc2V0PSJ1dGYtOCI+CiAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgewpAQCAt
MzMsNyArMzQsNyBAQAogICAgICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBmdW5jdGlvbigpIHsK
ICAgICAgICAgICAgIHJ1blRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAgICB2aWRlby5zcmMg
PSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUo
InZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9ib2R5PgogPC9odG1s
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLmh0bWwKaW5kZXggODdhMTU4My4uMzY3ZDM0
OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy5odG1sCkBAIC0xLDUgKzEsNiBAQAog
PHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0ICdjb250cm9scycgYXR0cmlidXRlPHA+
Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jb250
cm9scyIsIG51bGwsICchPScpOwpAQCAtMjAsNSArMjEsNSBAQAogICAgICAgICB0ZXN0RXhwZWN0
ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAg
ICB9ICk7Ci0gICAgdmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVzdC5tcDQnOworICAgIHZpZGVvLnNy
YyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNldC5odG1sCmluZGV4IGI4MWRm
MTIuLjNkMjM1OTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRU
aW1lLXNldC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNl
dC5odG1sCkBAIC01LDYgKzUsNyBAQAogICAgIAogICAgIDxwPlRlc3QgdGhhdCBzZXR0aW5nIGN1
cnJlbnRUaW1lIGNoYW5nZXMgdGhlIHRpbWUsIGFuZCB0aGF0ICdlbmRlZCcgZXZlbnQgaXMgZmly
ZWQgaW4gYSByZWFzb25hYmxlIGFtb3VudCBvZiB0aW1lPC9wPgogICAgIAorICAgIDxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5q
cz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsICAKQEAg
LTIwLDcgKzIxLDcgQEAKICAgICAgICAgdmFyIHRpbWVvdXQgPSA4MDA7CiAgICAgICAgIHNldFRp
bWVvdXQoZnVuY3Rpb24gKCkgeyBsb2dSZXN1bHQoIk5vICdlbmRlZCcgZXZlbnQgaW4gIiArIHRp
bWVvdXQvMTAwMCAgKyAic2Vjb25kcyIsIGZhbHNlKTsgfSwgdGltZW91dCk7CiAgICAgfSk7Ci0g
ICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogCiA8L2Jv
ZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQy
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQyLmh0bWwKaW5k
ZXggMGExMGZmZi4uNDg0MDM3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
Y3VycmVudFRpbWUtc2V0Mi5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJl
bnRUaW1lLXNldDIuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVv
PgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVv
LXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsICAK
QEAgLTEwLDUgKzExLDUgQEAKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50VGlt
ZS50b0ZpeGVkKDEpIiwgMy4xKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0pOwotICAgIHZp
ZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwKaW5kZXggYWUzYTMzOS4uODUwYTQ1NyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZpZGVv
IGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0Pgog
PHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4
cGVjdGVkKCJ2aWRlby5jdXJyZW50VGltZSIsIDApCkBAIC0xMCw1ICsxMSw1IEBACiAgICAgICAg
IHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFRpbWUiLCAwLCAnPicpCiAgICAgICAgIGVuZFRl
c3QoKTsKICAgICB9Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZp
ZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3Jp
cHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUtY3Jh
c2guaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1s
CmluZGV4IDMxYTYzMjMuLjRmNjZjMWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCkBAIC0xLDggKzEsOSBAQAogPHZpZGVvIGNvbnRyb2xz
PjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgcGF1c2UoKSBhZnRlciBjaGFuZ2luZyBkaXNwbGF5IHRv
ICJub25lIiBkb2Vzbid0IGNhdXNlIGEgY3Jhc2guPC9wPgorPHNjcmlwdCBzcmM9Im1lZGlhLWZp
bGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXRlc3QuanMiPjwvc2NyaXB0Pgog
PHNjcmlwdD4KLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8u
c3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgdmlkZW8u
cGxheSgpOwogICAgIHZpZGVvLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CiAgICAgdmlkZW8ucGF1
c2UoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LXRvZ2dsZS5odG1sCmluZGV4
IGJlYTdlMzguLmE5MzQ4NjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRp
c3BsYXktdG9nZ2xlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxheS10
b2dnbGUuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDxodG1sPgogICAgIDxoZWFkPgorICAgICAgICA8
c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgogICAg
ICAgICAgICAgZnVuY3Rpb24gdG9nZ2xlRGlzcGxheSgpCiAgICAgICAgICAgICB7CkBAIC0yNiw4
ICsyNyw4IEBACiAgICAgICAgICAgICB9CiAgICAgICAgIDwvc2NyaXB0PgogICAgIDwvaGVhZD4K
LSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CisgICAgPGJvZHkgb25sb2FkPSJzZXRTcmNCeUlk
KCd2aWQnLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk7IHRlc3QoKSI+
CiAgICAgICAgIFRoaXMgdGVzdHMgdGhhdCB0b2dnbGluZyB0aGUgZGlzcGxheSBwcm9wZXJ0eSB3
b24ndCBtYWtlIHRoZSBjb250cm9scyBkaXNhcHBlYXIuPGJyPgotICAgICAgICA8dmlkZW8gaWQ9
InZpZCIgY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3ZpZGVvPgorICAgICAgICA8
dmlkZW8gaWQ9InZpZCIgY29udHJvbHM+PC92aWRlbz4KICAgICA8L2JvZHk+CiA8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBlcy1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBlcy1leHBlY3RlZC50
eHQKaW5kZXggZWY1YzBjMS4uMDAwMzZjZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tZG9jdW1lbnQtdHlwZXMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWRvY3VtZW50LXR5cGVzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDUgQEAKIAotVGhp
cyB0ZXN0cyB0aGF0IGEgc3RhbmRhbG9uZSBNUEVHLTQgZmlsZSB3aXRoICdzZHNtJyBhbmQgJ29k
c20nIHRyYWNrcyBpcyBvcGVuZWQgaW4gYSBNZWRpYURvY3VtZW50LgorVGhpcyB0ZXN0cyB0aGF0
IGEgc3RhbmRhbG9uZSB2aWRlbyBmaWxlIGlzIG9wZW5lZCBpbiBhIE1lZGlhRG9jdW1lbnQuCiAK
IFBBU1M6IDx2aWRlbz4gdXNlZAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1kb2N1bWVudC10eXBlcy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9jdW1lbnQt
dHlwZXMuaHRtbAppbmRleCBjZDZiMWU3Li4xZjcxY2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1kb2N1bWVudC10eXBlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWRvY3VtZW50LXR5cGVzLmh0bWwKQEAgLTEsNSArMSw2IEBACiA8aHRtbD4KICAgICA8
aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAg
ICAgPHNjcmlwdD4KICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewog
ICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwpAQCAtMjYsOCAr
MjcsMTEgQEAKICAgICAgICAgPC9zY3JpcHQ+CiAgICAgPC9oZWFkPgogICAgIDxib2R5IG9ubG9h
ZD0ic2V0VGltZW91dCh0ZXN0LCAyNTApIj4KLSAgICAgICAgPGlmcmFtZSBzcmM9ImNvbnRlbnQv
Y291bnRpbmcubXA0IiBpZD0iZnIiIHdpZHRoPTM4MCBoZWlnaHQ9MzMwPjwvaWZyYW1lPgotICAg
ICAgICA8cD5UaGlzIHRlc3RzIHRoYXQgYSBzdGFuZGFsb25lIE1QRUctNCBmaWxlIHdpdGggJ3Nk
c20nIGFuZCAnb2RzbScgdHJhY2tzIGlzIG9wZW5lZCBpbiBhIE1lZGlhRG9jdW1lbnQuPC9wPgor
ICAgICAgICA8aWZyYW1lIGlkPSJmciIgd2lkdGg9MzgwIGhlaWdodD0zMzA+PC9pZnJhbWU+Cisg
ICAgICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBhIHN0YW5kYWxvbmUgdmlkZW8gZmlsZSBpcyBvcGVu
ZWQgaW4gYSBNZWRpYURvY3VtZW50LjwvcD4KICAgICAgICAgPHByZSBpZD0iY29uc29sZSI+PC9w
cmU+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXRTcmNCeUlkKCJmciIsIGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvY291bnRpbmciKSk7CisgICAgICAgIDwvc2NyaXB0
PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWRvbS1hdXRvcGxheS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLWF1dG9w
bGF5Lmh0bWwKaW5kZXggZDA1MjNjOS4uMTJmYTU2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tZG9tLWF1dG9wbGF5Lmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92
aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12
aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVv
LmF1dG9wbGF5IiwgZmFsc2UpOwpAQCAtMTAsNSArMTEsNSBAQAogICAgICAgICBlbmRUZXN0KCk7
CiAgICAgfSApOwogCi0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZp
ZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3Jp
cHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tc3JjLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tc3JjLmh0bWwKaW5kZXggNjI2MDc2Ny4uYjIwNDMz
NCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sCisrKyBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1zcmMuaHRtbApAQCAtMSwxMiArMSwxNCBAQAog
PHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAg
dGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50U3JjIiwgIiIpOwotICAgIHZpZGVvLnNyYyA9ICJj
b250ZW50L3Rlc3QubXA0IjsKKyAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlk
ZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgdmlkZW8uc3JjID0gbWVkaWFGaWxlOwogICAgIHRl
c3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKIAogICAgIHdhaXRGb3JFdmVudCgn
bG9hZCcsIGZ1bmN0aW9uICgpIHsgCi0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwo
dmlkZW8uY3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhw
ZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgbWVkaWFGaWxlKTsKICAgICAg
ICAgZW5kVGVzdCgpOwogICAgIH0gKTsKICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWVycm9yLWFib3J0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1lcnJv
ci1hYm9ydC5odG1sCmluZGV4IGRjZjNhZWMuLjU1YTkyMzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLWVycm9yLWFib3J0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tZXJyb3ItYWJvcnQuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48
L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3Jj
PXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlk
ZW8uZXJyb3IiLCBudWxsKTsKQEAgLTEzLDUgKzE0LDUgQEAKICAgICAgICAgZW5kVGVzdCgpOwog
ICAgIH0gKTsKIAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRl
by5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3RhdGUu
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0YXRlLmh0bWwKaW5k
ZXggZDhkZDQ0NC4uYTRhYjUxYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
bG9hZC1uZXR3b3JrU3RhdGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb2Fk
LW5ldHdvcmtTdGF0ZS5odG1sCkBAIC04LDYgKzgsNyBAQAogICAgIGV2ZW50cyBhbmQgZW5kIHVw
IHdpdGggbmV0d29ya1N0YXRlID49IE5FVFdPUktfTE9BRElORy4KICAgICAgPC9wPgogICAgIAor
ICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9
dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgICAgICBmdW5jdGlvbiB0
ZXN0TmV0d29ya1N0YXRlKGV4cGVjdGVkLCBlbmRpdCwgb3ApCkBAIC0zMSw3ICszMiw4IEBACiAg
ICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogCiAgICAgICAgICAgICAvLyBub3cgc2V0IGEg
dmFsaWQgdXJsCi0gICAgICAgICAgICBydW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0
JyIpOworICAgICAgICAgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwg
ImNvbnRlbnQvdGVzdCIpOworICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnIiArIG1lZGlh
RmlsZSArICInIik7CiAgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIC8vIGZpcnN0IHNldCB0
aGUgc3JjIHRvIGEgYm9ndXMgdXJsLCBpdCBzaG91bGQgYXR0ZW1wdCBhIGxvYWQKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRlLmh0bWwKaW5kZXggNjQxYjZlNC4uZDA0
MDJhYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRl
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRlLmh0bWwK
QEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1l
ZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0
PgogPHNjcmlwdD4KICAgICBmdW5jdGlvbiB0ZXN0UmVhZHlTdGF0ZShleHBlY3RlZCwgZW5kaXQs
IG9wKQpAQCAtMTcsNSArMTgsNSBAQAogICAgIHdhaXRGb3JFdmVudEFuZEZhaWwoInBsYXlpbmci
KTsKICAgICB3YWl0Rm9yRXZlbnQoImNhbnBsYXl0aHJvdWdoIiwgZnVuY3Rpb24gKCkgeyB0ZXN0
UmVhZHlTdGF0ZShIVE1MTWVkaWFFbGVtZW50LkhBVkVfRU5PVUdIX0RBVEEsIHRydWUgKTsgfSAp
OwogCi0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9
IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29wLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1sb29wLmh0bWwKaW5kZXggNTAyYjg5NC4uYzcyOGFhMSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9vcC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWxvb3AuaHRtbApAQCAtMiw2ICsyLDcgQEAKIAogICAgIDx2aWRlbyBjb250cm9scyBh
dXRvcGxheSA+PC92aWRlbz4KIAorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogICAgIDxzY3Jp
cHQ+CkBAIC01NSwxMCArNTYsMTEgQEAKICAgICAKICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsK
ICAgICAgICAgcnVuKCJ2aWRlby5sb29wID0gdHJ1ZSIpOwotICAgICAgICBydW4oInZpZGVvLnNy
YyA9ICdjb250ZW50L3Rlc3QubXA0JyIpOworICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgICAgIHJ1bigidmlkZW8uc3Jj
ID0gJyIgKyBtZWRpYUZpbGUgKyAiJyIpOwogICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogICAg
IDwvc2NyaXB0PgogCiAgICAgPC9oZWFkPgogCi08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbXV0
ZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwKaW5kZXggNTEzNmQ4
Zi4uYTgxOThkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbXV0ZWQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1tdXRlZC5odG1sCkBAIC0xLDExICsxLDEy
IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDxwPlRlc3QgJ211dGVkJyBhdHRyaWJ1dGU8
cD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRl
by10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLm11
dGVkIiwgZmFsc2UpOwogICAgIHJ1bigidmlkZW8ubXV0ZWQgPSB0cnVlIik7CiAgICAgdGVzdEV4
cGVjdGVkKCJ2aWRlby5tdXRlZCIsIHRydWUpOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rl
c3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50
L3Rlc3QiKTsKICAgICBydW4oInZpZGVvLmxvYWQoKSIpOwogICAgIHdhaXRGb3JFdmVudCgibG9h
ZCIsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRlZCIsIHRy
dWUpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3BsYXkuaHRt
bCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwKaW5kZXggZGI4YjU2
OC4uZDljYTUxMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3Bs
YXkuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sCkBA
IC0xLDUgKzEsNiBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgcGxh
eSBldmVudCBkb2VzIG5vdCBmaXJlIHdoZW4gInNyYyIgc2V0IHdpdGggbm8gYXV0b3BsYXkgYXR0
cmlidXRlLjwvcD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQo
InZpZGVvLnBhdXNlZCIsIHRydWUpOwpAQCAtMTYsNSArMTcsNSBAQAogICAgIH0KICAgICB3YWl0
Rm9yRXZlbnQoJ2xvYWQnLCBmdW5jdGlvbiAoKSB7IHNldFRpbWVvdXQodGVzdFBhdXNlZCwgNTAw
KTt9ICk7CiAKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8u
c3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4K
</data>
<flag name="review"
          id="20560"
          type_id="1"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39674</attachid>
            <date>2009-09-16 18:24:47 -0700</date>
            <delta_ts>2009-09-17 11:46:56 -0700</delta_ts>
            <desc>Third round of changes - 25 tests</desc>
            <filename>webkit-codecs-3.patch</filename>
            <type>text/plain</type>
            <size>25158</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhZDIzNzcyLi42MzM5NDU2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDIgQEAKKzIwMDktMDkt
MTYgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDIwIG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL21lZGlhLWZpbGUuanM6
IFN3YXAgdGhlIG9yZGVyIG9mIGF1ZGlvIGZpbGUgZXh0ZW5zaW9uIHByZWZlcmVuY2UuCisgICAg
ICAgICogbWVkaWEvcHJvZ3Jlc3MtZXZlbnQtYXQtbGVhc3Qtb25lLmh0bWw6IFVzZSBmaW5kTWVk
aWFGaWxlKCkgdG8gbG9jYXRlIHRoZSBmaWxlLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXBhdXNl
LWVtcHR5LWV2ZW50cy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5LWVt
cHR5LWV2ZW50cy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5LXBhdXNl
LWV2ZW50cy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5ZWQtY29sbGFw
c2UuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLmh0
bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXBsYXllZC1yZXNldC5odG1sOiBkaXR0
by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5ZWQuanM6CisgICAgICAgICh2aWRlb1BsYXll
ZE1haW4pOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBhdXNl
ZC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBsYXlp
bmcuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc2Vla2FibGUuaHRtbDogZGl0
dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc2Vla2luZy5odG1sOiBkaXR0by4KKyAgICAgICAg
KiBtZWRpYS92aWRlby1zaXplLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXNv
dXJjZS1lcnJvci5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zb3VyY2UtdHlw
ZS1wYXJhbXMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc291cmNlLXR5cGUu
aHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc291cmNlLmh0bWw6IGRpdHRvLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXNyYy1jaGFuZ2UuaHRtbDogZGl0dG8uCisgICAgICAgICog
bWVkaWEvdmlkZW8tc3JjLWludmFsaWQtcmVtb3ZlLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLXNyYy1yZW1vdmUuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSBhbmQgdXNlIGNv
dW50aW5nLm1wNCBpbnN0ZWFkIG9mIHNpbGVuY2UubXBnLgorICAgICAgICAqIG1lZGlhL3ZpZGVv
LXNyYy1yZW1vdmUtZXhwZWN0ZWQudHh0OiBVcGRhdGVkIHJlc3VsdHMuCisgICAgICAgICogbWVk
aWEvdmlkZW8tc3JjLXNldC5odG1sOiBVc2UgZmluZE1lZGlhRmlsZSgpIHRvIGxvY2F0ZSB0aGUg
ZmlsZS4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zcmMtc291cmNlLmh0bWw6IGRpdHRvLgorICAg
ICAgICAqIG1lZGlhL3ZpZGVvLXNyYy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRl
by10aW1ldXBkYXRlLWR1cmluZy1wbGF5YmFjay5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRp
YS92aWRlby12b2x1bWUuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tem9vbS5o
dG1sOiBkaXR0by4KKwogMjAwOS0wOS0xMCAgQWxwaGEgTGFtICA8aGNsYW1AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcyBiL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZp
bGUuanMKaW5kZXggYzRmNzkxNi4uMjBlODIzNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVk
aWEvbWVkaWEtZmlsZS5qcworKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCkBA
IC0xLDcgKzEsNyBAQAogdmFyIGF1ZGlvQ29kZWNzID0gWworICAgIFsiYXVkaW8vd2F2IiwgIndh
diJdLAogICAgIFsiYXVkaW8vYWFjIiwgIm00YSJdLAogICAgIFsiYXVkaW8vbXBlZyIsICJtcDMi
XSwKLSAgICBbImF1ZGlvL3dhdiIsICJ3YXYiXSwKICAgICBbImF1ZGlvL29nZyIsICJvZ2EiXQog
XTsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvcHJvZ3Jlc3MtZXZlbnQtYXQtbGVh
c3Qtb25lLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1v
bmUuaHRtbAppbmRleCBmNzZjZDk0Li4zOTI1MGM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1vbmUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9t
ZWRpYS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1vbmUuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDxo
dG1sPgogICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2Ny
aXB0PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogCiAgICAg
ICAgIDxzY3JpcHQ+CkBAIC00NCw3ICs0NSw3IEBACiAgICAgICAgICAgICAgICAgd2FpdEZvckV2
ZW50KCdsb2FkZWRtZXRhZGF0YScpOwogICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnbG9h
ZGVkZGF0YScpOwogCi0gICAgICAgICAgICAgICAgcnVuKCJtZWRpYUVsZW1lbnQuc3JjID0gJ2Nv
bnRlbnQvdGVzdC53YXYnIik7CisgICAgICAgICAgICAgICAgcnVuKCJtZWRpYUVsZW1lbnQuc3Jj
ID0gJyIgKyBmaW5kTWVkaWFGaWxlKCJhdWRpbyIsICJjb250ZW50L3Rlc3QiKSArICInIik7CiAg
ICAgICAgICAgICAgICAgcnVuKCJtZWRpYUVsZW1lbnQubG9hZCgpIik7CiAKICAgICAgICAgICAg
ICAgICBjb25zb2xlV3JpdGUoIiIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tcGF1c2UtZW1wdHktZXZlbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wYXVz
ZS1lbXB0eS1ldmVudHMuaHRtbAppbmRleCA2NTczMzA0Li4xNTEzNDQyIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1wYXVzZS1lbXB0eS1ldmVudHMuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1wYXVzZS1lbXB0eS1ldmVudHMuaHRtbApAQCAtMSw4ICsxLDkg
QEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IHBhdXNlKCkgZnJvbSBF
TVBUWSBuZXR3b3JrIHN0YXRlIHRyaWdnZXJzIGxvYWQoKTwvcD4KKzxzY3JpcHQgc3JjPW1lZGlh
LWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0Pgog
PHNjcmlwdD4KLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8u
c3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgdGVzdEV4
cGVjdGVkKCJ2aWRlby5uZXR3b3JrU3RhdGUiLCBIVE1MTWVkaWFFbGVtZW50Lk5FVFdPUktfRU1Q
VFkpOwogCiAgICAgd2FpdEZvckV2ZW50KCJsb2Fkc3RhcnQiKTsKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXktZW1wdHktZXZlbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1wbGF5LWVtcHR5LWV2ZW50cy5odG1sCmluZGV4IDAzYjJhNmYuLmRlYTE0ODAg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXktZW1wdHktZXZlbnRzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheS1lbXB0eS1ldmVudHMuaHRtbApA
QCAtMyw2ICszLDcgQEAKIAogICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgIDxwPlRl
c3QgdGhhdCBwbGF5KCkgZnJvbSBFTVBUWSBuZXR3b3JrIHN0YXRlIHRyaWdnZXJzIGxvYWQoKSBh
bmQgYXN5bmMgcGxheSBldmVudC48L3A+CisgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48
L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQ+CiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ubmV0d29ya1N0YXRlIiwgSFRNTE1l
ZGlhRWxlbWVudC5ORVRXT1JLX0VNUFRZKTsKQEAgLTIwLDcgKzIxLDcgQEAKICAgICAKICAgICAg
ICAgd2FpdEZvckV2ZW50KCdwbGF5aW5nJywgZnVuY3Rpb24gKCkgeyB0ZXN0RXhwZWN0ZWQoInZp
ZGVvLnBhdXNlZCIsIGZhbHNlKTsgZW5kVGVzdCgpOyB9ICk7CiAgICAgCi0gICAgICAgIHZpZGVv
LnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlh
RmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgICAgIHJ1bigidmlkZW8ucGxheSgp
Iik7CiAgICAgICAgIGNvbnNvbGVXcml0ZSgiU0NSSVBUIERPTkUiKTsKICAgICA8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXktcGF1c2UtZXZlbnRzLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5LXBhdXNlLWV2ZW50cy5odG1sCmluZGV4
IGNhYzkwNDguLjg3ZWM3ODEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBs
YXktcGF1c2UtZXZlbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheS1w
YXVzZS1ldmVudHMuaHRtbApAQCAtMSw4ICsxLDkgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVv
PgogPHA+VGVzdCB0aGF0IGNhbGxpbmcgcGxheSgpIGFuZCBwYXVzZSgpIHRyaWdnZXJzIGFzeW5j
IHBsYXksIHRpbWV1cGRhdGUgYW5kIHBhdXNlIGV2ZW50cy48L3A+Cis8c2NyaXB0IHNyYz1tZWRp
YS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4K
IDxzY3JpcHQ+Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVv
LnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKIAogICAg
IHdhaXRGb3JFdmVudCgibG9hZHN0YXJ0Iik7CiAgICAgd2FpdEZvckV2ZW50KCJyYXRlY2hhbmdl
Iik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtY29sbGFwc2Uu
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC1jb2xsYXBzZS5odG1sCmluZGV4
IDBjY2E0MGQuLjVlODFmYjQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBs
YXllZC1jb2xsYXBzZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC1j
b2xsYXBzZS5odG1sCkBAIC0xLDYgKzEsNyBAQAogPGh0bWw+CiAgICAgPGhlYWQ+CiAgICAgICAg
IDx0aXRsZT5UZXN0IG9mICdwbGF5ZWQnIGF0dHJpYnV0ZTwvdGl0bGU+CisgICAgICAgIDxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVv
LXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXBsYXllZC5qcz48
L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLXBsYXllZC1yYW5nZXMtMS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxh
eWVkLXJhbmdlcy0xLmh0bWwKaW5kZXggOTU1Y2U2Zi4uODAxMzE2MCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLmh0bWwKQEAgLTEsNiArMSw3IEBACiA8aHRt
bD4KICAgICA8aGVhZD4KICAgICAgICAgPHRpdGxlPlRlc3Qgb2YgJ3BsYXllZCcgYXR0cmlidXRl
PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dCBzcmM9dmlkZW8tcGxheWVkLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLXJlc2V0Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmVzZXQuaHRtbAppbmRleCBkY2NhMWQ2Li40ODRmNTYz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmVzZXQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmVzZXQuaHRtbApAQCAtMSw2ICsx
LDcgQEAKIDxodG1sPgogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+VGVzdCBvZiAncGxheWVk
JyBhdHRyaWJ1dGU8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwv
c2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAg
ICAgICA8c2NyaXB0IHNyYz12aWRlby1wbGF5ZWQuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3Jp
cHQ+CkBAIC00MCw3ICs0MSw3IEBACiAgICAgICAgICAgICAgICAgd2lsbFBhdXNlSW5FeGlzdGlu
Z1JhbmdlID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgd2lsbEV4dGVuZEFuRXhpc3RpbmdSYW5n
ZSA9IGZhbHNlOwogCi0gICAgICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSBcImNvbnRlbnQv
dGVzdC5tcDRcIiIpOworICAgICAgICAgICAgICAgIHJ1bigidmlkZW8uc3JjID0gXCIiICsgZmlu
ZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0IikgKyAiXCIiKTsKICAgICAgICAgICAg
ICAgICBydW4oInZpZGVvLmxvYWQoKSIpOyAvLyBUcmlnZ2VycyBjYW5wbGF5KCkKICAgICAgICAg
ICAgIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLmpzIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLmpzCmluZGV4IGI2ZDY1MTYuLjU3NzQ5Njgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC5qcworKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQuanMKQEAgLTE0Miw3ICsxNDIsNyBAQCBmdW5jdGlv
biB2aWRlb1BsYXllZE1haW4oKQogewogICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKICAgICAKLSAg
ICB2aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgdmlkZW8uc3JjID0gZmluZE1l
ZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgCiAgICAgd2FpdEZvckV2ZW50
KCJlcnJvciIpOwogICAgIHdhaXRGb3JFdmVudCgibG9hZHN0YXJ0Iik7CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBhdXNlZC5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tc2Vlay1wYXN0LWVuZC1wYXVzZWQuaHRtbAppbmRleCA1ZjEzNzY5
Li43NmE0ODgwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrLXBhc3Qt
ZW5kLXBhdXNlZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWstcGFzdC1l
bmQtcGF1c2VkLmh0bWwKQEAgLTEsNiArMSw3IEBACiAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVv
PgogPHA+VGVzdCB0aGF0IHNlZWtpbmcgcGF1c2VkIHZpZGVvIHBhc3QgaXQncyBkdXJhdGlvbiB0
aW1lIHNldHMgY3VycmVudFRpbWUgdG8gZHVyYXRpb24gYW5kIGxlYXZlcyB2aWRlbyBwYXVzZWQu
PC9wPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZp
ZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogCkBAIC0zNSw3ICszNiw3IEBACiAgICAg
ICAgIGVuZFRlc3QoKTsKICAgICB9CiAKLSAgICBydW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rl
c3QubXA0JyIpOworICAgIHJ1bigidmlkZW8uc3JjID0gJyIgKyBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKSArICInIik7CiAgICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsKICAg
ICBjb25zb2xlV3JpdGUoIiIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBsYXlpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sCmluZGV4IDRhM2Y5ZjIuLjg2NjZmZmMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWlu
Zy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWlu
Zy5odG1sCkBAIC0xLDUgKzEsNiBAQAogPHZpZGVvIGxvb3AgY29udHJvbHM+PC92aWRlbz4KIDxw
PlRlc3QgdGhhdCBzZWVraW5nIHZpZGVvIHdpdGggJ2xvb3AnIHBhc3QgaXQncyBlbmQgcmV3aW5k
cyB0byB0aGUgYmVnaW5uaW5nIGFuZCBjb250aW51ZXMgcGxheWJhY2suPC9wPgorPHNjcmlwdCBz
cmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgogCkBAIC0yOSw2ICszMCw2IEBACiAgICAgICAgIGVuZFRlc3QoKTsK
ICAgICB9CiAKLSAgICBydW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JyIpOworICAg
IHJ1bigidmlkZW8uc3JjID0gJyIgKyBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rl
c3QiKSArICInIik7CiAgICAgY29uc29sZVdyaXRlKCIiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2Vla2FibGUuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXNlZWthYmxlLmh0bWwKaW5kZXggYzNmYzhhMC4uMmY2ZTMzOSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2Vla2FibGUuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1zZWVrYWJsZS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZpZGVvIGNvbnRy
b2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVk
KCJ2aWRlby5zZWVrYWJsZS5sZW5ndGgiLCAwKTsKQEAgLTE5LDUgKzIwLDUgQEAKICAgICAgICAg
ICAgIGVuZFRlc3QoKTsKICAgICAgICAgfQogICAgICk7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRl
bnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNv
bnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1zZWVraW5nLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVraW5nLmh0bWwK
aW5kZXggNTFiYjgwZi4uZGFiYTZiZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tc2Vla2luZy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWtpbmcuaHRt
bApAQCAtMyw2ICszLDcgQEAKICBnb2VzIGJhY2sgdG8gZmFsc2Ugd2hlbiBzZWVraW5nIGNvbXBs
ZXRlcywgYW5kIHRoYXQgYSAnc2Vla2VkJyBldmVudAogIGlzIGZpcmVkIGZvciBlYWNoIHNlZWsK
ICA8L3A+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAKQEAgLTQ3LDUgKzQ4LDUgQEAKICAg
ICB3YWl0Rm9yRXZlbnQoJ3NlZWtlZCcsIHNlZWtlZCApOwogICAgIHdhaXRGb3JFdmVudCgnbG9h
ZCcsIGxvYWRlZCk7CiAKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAg
dmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNpemUuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLXNpemUuaHRtbAppbmRleCAyZjU2MjA4Li5jYTIxOWY5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zaXplLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tc2l6ZS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZpZGVvIGNvbnRy
b2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlw
dCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVk
KCJ2aWRlby52aWRlb1dpZHRoIiwgMCwgIj09Iik7CkBAIC0xMCw1ICsxMSw1IEBACiAgICAgICAg
IGVuZFRlc3QoKTsKICAgICB9ICk7CiAKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1w
NCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJj
ZS1lcnJvci5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLWVycm9yLmh0bWwK
aW5kZXggMmE5OTZmOS4uNDdhZDZkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tc291cmNlLWVycm9yLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNl
LWVycm9yLmh0bWwKQEAgLTIsNiArMiw3IEBACiAgICAgPGhlYWQ+CiAgICAgICAgIDxtZXRhIGh0
dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04
Ij4KICAgICAgICAgPHRpdGxlPiZsdDt2aWRlbyZndDsgYW5kICZsdDtzb3VyY2UmZ3Q7IGVycm9y
IHRlc3Q8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0
PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogCiAgICAgICAg
IDxzY3JpcHQ+CkBAIC0xMSw3ICsxMiw3IEBACiAgICAgICAgICAgICBmdW5jdGlvbiBsb2FkZWRk
YXRhKCkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwot
ICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNy
YykiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgi
cmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJj
b250ZW50L3Rlc3QiKSk7CiAgICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5lcnJv
ciIsIG51bGwpOwogICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAgICAg
ICAgICAgZW5kVGVzdCgpOwpAQCAtNjIsNyArNjMsOCBAQAogICAgICAgICAgICAgPHNvdXJjZSBp
ZD11bnN1cHBvcnRlZC1tZWRpYS1xdWVyeSBzcmM9Y29udGVudC90ZXN0Lm1wNCBtZWRpYT1wcmlu
dD4KICAgICAgICAgICAgIDxzb3VyY2UgaWQ9bWlzc2luZy1maWxlIHNyYz1jb250ZW50L2Vycm9y
Mi5tcGVnIHR5cGU9dmlkZW8vbXBlZz4KICAgICAgICAgICAgIDxzb3VyY2UgaWQ9Zm9ybWF0LWVy
cm9yIHNyYz0iY29udGVudC91bnN1cHBvcnRlZF90cmFjay5tb3YiPgotICAgICAgICAgICAgPHNv
dXJjZSBpZD1zdXBwb3J0ZWQtZm9ybWF0IHNyYz1jb250ZW50L3Rlc3QubXA0IHR5cGU9InZpZGVv
L21wZWc7IGNvZGVjcz0mcXVvdDthdmMxLjRENDAwQyZxdW90OyI+CisgICAgICAgICAgICA8c291
cmNlIGlkPXN1cHBvcnRlZC1mb3JtYXQtbXA0IHNyYz1jb250ZW50L3Rlc3QubXA0IHR5cGU9InZp
ZGVvL21wZWc7IGNvZGVjcz0mcXVvdDthdmMxLjRENDAwQyZxdW90OyI+CisgICAgICAgICAgICA8
c291cmNlIGlkPXN1cHBvcnRlZC1mb3JtYXQtb2d2IHNyYz1jb250ZW50L3Rlc3Qub2d2IHR5cGU9
InZpZGVvL29nZyI+CiAgICAgICAgIDwvdmlkZW8+CiAgICAgICAgIAogICAgICAgICA8cD4xLiBU
ZXN0IHRoYXQgZXJyb3JzIGZpcmVkIHdoaWxlIGV2YWx1YXRpbmcvbG9hZGluZyAmbHQ7c291cmNl
Jmd0OyBlbGVtZW50cyBhcmUgZmlyZWQgYXQgdGhlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1zb3VyY2UtdHlwZS1wYXJhbXMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXNvdXJjZS10eXBlLXBhcmFtcy5odG1sCmluZGV4IDgyNGE4OWUuLjZiOWE3N2EgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10eXBlLXBhcmFtcy5odG1sCisr
KyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10eXBlLXBhcmFtcy5odG1sCkBAIC0x
LDE0ICsxLDE2IEBACiA8Ym9keT4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHZpZGVvIGNvbnRyb2xzPgog
ICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvYm9ndXMubXBlZyB0eXBlPSJ2aWRlby9ibGFoYmxhaCI+
CiAgICAgPHNvdXJjZSBzcmM9Y29udGVudC90ZXN0Lm1wNCB0eXBlPSJ2aWRlby9tcGVnOyBjb2Rl
Y3M9JnF1b3Q7YXZjMS40RDQwMEMmcXVvdDsiPgorICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvdGVz
dC5vZ3YgdHlwZT0idmlkZW8vb2dnOyBjb2RlY3M9JnF1b3Q7dGhlb3JhLHZvcmJpcyZxdW90OyI+
CiAgICAgPHNvdXJjZSBzcmM9Y29udGVudC9lcnJvcjIubXBlZyB0eXBlPXZpZGVvL21wZWc+CiA8
L3ZpZGVvPgogPHNjcmlwdD4KICAgICB2aWRlbyA9IG1lZGlhRWxlbWVudCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRzQnlUYWdOYW1lKCd2aWRlbycpWzBdOwogICAgIHdhaXRGb3JFdmVudCgnbG9hZHN0
YXJ0JywgZnVuY3Rpb24gKCkgeyAKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2
aWRlby5jdXJyZW50U3JjKSIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgIHRlc3RFeHBl
Y3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9ICk7CiA8L3Nj
cmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10eXBlLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UtdHlwZS5odG1sCmluZGV4IDg4Yjdm
YTguLjJmMGUyYTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10
eXBlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLXR5cGUuaHRtbApA
QCAtMSwxNSArMSwxNyBAQAogPGJvZHk+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDx2aWRlbyBjb250cm9s
cz4KICAgICA8c291cmNlIHNyYz1jb250ZW50L2Vycm9yLm1wZWcgdHlwZT12aWRlby9ibGFoYmxh
aD4KICAgICA8c291cmNlIHNyYz1jb250ZW50L3Rlc3QubXA0IHR5cGU9dmlkZW8vbXBlZz4KKyAg
ICA8c291cmNlIHNyYz1jb250ZW50L3Rlc3Qub2d2IHR5cGU9dmlkZW8vb2dnPgogICAgIDxzb3Vy
Y2Ugc3JjPWNvbnRlbnQvZXJyb3IyLm1wZWcgdHlwZT12aWRlby9tcGVnPgogPC92aWRlbz4KIDxz
Y3JpcHQ+CiAgICAgdmlkZW8gPSBtZWRpYUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgndmlkZW8nKVswXTsKIAogICAgIHdhaXRGb3JFdmVudCgibG9hZHN0YXJ0IiwgZnVu
Y3Rpb24gKCkgewotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJl
bnRTcmMpICIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgIHRlc3RFeHBlY3RlZCgicmVs
YXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29u
dGVudC90ZXN0IikpOwogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSk7CiA8L3NjcmlwdD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS5odG1sIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tc291cmNlLmh0bWwKaW5kZXggOTY4NzFkZS4uOWVhZTY3OSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tc291cmNlLmh0bWwKQEAgLTEsMTMgKzEsMTYgQEAKIDxib2R5PgorPHNj
cmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3Qu
anM+PC9zY3JpcHQ+Ci08dmlkZW8gY29udHJvbHM+Ci0gICAgPHNvdXJjZSBzcmM9Y29udGVudC90
ZXN0Lm1wND4KLTwvdmlkZW8+Ci0KKzxkaXYgaWQ9cGFuZWw+PC9kaXY+Cis8c2NyaXB0PgorICAg
IHZhciBwYW5lbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYW5lbCIpOworICAgIHZhciBt
ZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICBw
YW5lbC5pbm5lckhUTUwgPSAiPHZpZGVvIGNvbnRyb2xzPjxzb3VyY2Ugc3JjPSciICsgbWVkaWFG
aWxlICsgIic+PC92aWRlbz4iOworPC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHZpZGVvID0gbWVk
aWFFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3ZpZGVvJylbMF07CiAg
ICAgd2FpdEZvckV2ZW50KCJsb2Fkc3RhcnQiLCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RF
eHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgImNvbnRlbnQvdGVzdC5t
cDQiKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3Jj
KSAiLCBtZWRpYUZpbGUpOwogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSk7CiA8L3NjcmlwdD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1jaGFuZ2UuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1jaGFuZ2UuaHRtbAppbmRleCBiMGI4MDFiLi44YTY1
ODM4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtY2hhbmdlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWNoYW5nZS5odG1sCkBAIC04LDIyICs4
LDI0IEBACiAgICAgMi4gVGVzdCB0aGF0IGNoYW5naW5nIHNyYyBhdHRyaWJ1dGUgdHJpZ2dlcnMg
bG9hZCBhZnRlciBhIGxvYWQgZmFpbHMuPGJyPgogICAgIDMuIFRlc3QgdGhhdCBjaGFuZ2luZyBz
cmMgZG9lcyBub3QgdHJpZ2dlciBsb2FkIG9uY2UgYSBmaWxlIGlzIGxvYWRlZC4KICAgICA8L3AK
KyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3Jj
PXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KLSAgICAKKyAgICAgICAgdmFy
IG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworCiAg
ICAgICAgIGZ1bmN0aW9uIGVycm9yRXZlbnQoKQogICAgICAgICB7CiAgICAgICAgICAgICB0ZXN0
RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImJvZ3VzIik7CiAgICAg
ICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLm5ldHdvcmtTdGF0ZSIsIEhUTUxNZWRpYUVsZW1l
bnQuTkVUV09SS19OT19TT1VSQ0UpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5l
cnJvci5jb2RlIiwgTWVkaWFFcnJvci5NRURJQV9FUlJfU1JDX05PVF9TVVBQT1JURUQpOwogICAg
ICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKLSAgICAgICAgICAgIHJ1bigidmlkZW8uc2V0QXR0
cmlidXRlKCdzcmMnLCAnY29udGVudC90ZXN0Lm1wNCcpIik7CisgICAgICAgICAgICBydW4oInZp
ZGVvLnNldEF0dHJpYnV0ZSgnc3JjJywgJyIgKyBtZWRpYUZpbGUgKyAiJykiKTsKICAgICAgICAg
ICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAgIH0KICAgICAKICAgICAgICAgZnVuY3Rpb24g
bG9hZGVkbWV0YWRhdGEoKQogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInJl
bGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAg
ICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCBtZWRp
YUZpbGUpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpc05hTih2aWRlby5kdXJhdGlvbiki
LCBmYWxzZSk7CiAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogICAgICAgICAgICAgcnVu
KCJ2aWRlby5zZXRBdHRyaWJ1dGUoJ3NyYycsICdjb250ZW50L3NpbGVuY2UubXBnJykiKTsKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1pbnZhbGlkLXJlbW92ZS5odG1s
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWludmFsaWQtcmVtb3ZlLmh0bWwKaW5kZXgg
MWQyMzA4YS4uZDAzYWNkZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3Jj
LWludmFsaWQtcmVtb3ZlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWlu
dmFsaWQtcmVtb3ZlLmh0bWwKQEAgLTEsMTAgKzEsMTQgQEAKIDxodG1sPgogPGJvZHk+CisgICAg
PHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNyYz12aWRl
by10ZXN0LmpzPjwvc2NyaXB0PgogCi0gICAgPHZpZGVvIHNyYz1ib2d1cy5tb3YgY29udHJvbHM+
Ci0gICAgICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvdGVzdC5tcDQ+Ci0gICAgPC92aWRlbz4KKyAg
ICA8ZGl2IGlkPXBhbmVsPjwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBwYW5lbCA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYW5lbCIpOworICAgICAgICB2YXIgbWVkaWFGaWxl
ID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgICAgIHBhbmVs
LmlubmVySFRNTCA9ICI8dmlkZW8gc3JjPWJvZ3VzLm1vdiBjb250cm9scz48c291cmNlIHNyYz0i
ICsgbWVkaWFGaWxlICsgIj48L3ZpZGVvPiI7CisgICAgPC9zY3JpcHQ+CiAKICAgICA8cD5UZXN0
IHRoYXQgcmVtb3ZpbmcgaW52YWxpZCAnc3JjJyBhdHRyaWJ1dGUgdHJpZ2dlcnMgbG9hZCBvZiAm
bHQ7c291cmNlJmd0OyBlbGVtZW50czwvcD4KIApAQCAtMTksNyArMjMsNyBAQAogICAgICAgICAg
ICAgaWYgKGxvYWRDb3VudCA9PSAxKQogICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgicmVs
YXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiYm9ndXMubW92Iik7CiAgICAgICAgICAgICBl
bHNlIGlmIChsb2FkQ291bnQgPT0gMikKLSAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInJl
bGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAg
ICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwg
bWVkaWFGaWxlKTsKICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBmYWlsVGVzdCgi
J2xvYWRDb3VudCcgZmlyZWQgIiArIGxvYWRDb3VudCArICJ0aW1lcyIgKTsKICAgICAgICAgICAg
IGNvbnNvbGVXcml0ZSgiIik7CkBAIC0yNyw3ICszMSw3IEBACiAKICAgICAgICAgZnVuY3Rpb24g
bG9hZGVkbWV0YWRhdGEoKQogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInJl
bGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAg
ICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCBtZWRp
YUZpbGUpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpc05hTih2aWRlby5kdXJhdGlvbiki
LCBmYWxzZSk7CiAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogICAgICAgICB9CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtcmVtb3ZlLWV4cGVjdGVkLnR4dCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1yZW1vdmUtZXhwZWN0ZWQudHh0CmluZGV4IDg2
NWM1ZWYuLjA4ZWQ0ZTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1y
ZW1vdmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1yZW1v
dmUtZXhwZWN0ZWQudHh0CkBAIC0xLDExICsxLDExIEBACiAKIEVWRU5UKGxvYWRlZG1ldGFkYXRh
KQotRVhQRUNURUQgKHJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpID09ICdjb250ZW50L3Np
bGVuY2UubXBnJykgT0sKK0VYUEVDVEVEIChyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSA9
PSAnY29udGVudC90ZXN0Lm1wNCcpIE9LCiBFWFBFQ1RFRCAoaXNOYU4odmlkZW8uZHVyYXRpb24p
ID09ICdmYWxzZScpIE9LCiAKIFJVTih2aWRlby5yZW1vdmVBdHRyaWJ1dGUoJ3NyYycpKQogCi1F
WFBFQ1RFRCAocmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgPT0gJ2NvbnRlbnQvc2lsZW5j
ZS5tcGcnKSBPSworRVhQRUNURUQgKHJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpID09ICdj
b250ZW50L3Rlc3QubXA0JykgT0sKIEVYUEVDVEVEIChpc05hTih2aWRlby5kdXJhdGlvbikgPT0g
J2ZhbHNlJykgT0sKIAogRU5EIE9GIFRFU1QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLXNyYy1yZW1vdmUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1yZW1v
dmUuaHRtbAppbmRleCAyM2ZmMThmLi4zNDEwMjBkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1zcmMtcmVtb3ZlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
c3JjLXJlbW92ZS5odG1sCkBAIC0xLDEwICsxLDEzIEBACiA8aHRtbD4KIDxib2R5PgorICAgIDxz
Y3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KLQotICAgIDx2aWRlbyBzcmM9Y29udGVudC9zaWxlbmNlLm1wZyBj
b250cm9scyBvbmxvYWRlZG1ldGFkYXRhPSJsb2FkZWRtZXRhZGF0YSgpIiA+Ci0gICAgICAgIDxz
b3VyY2Ugc3JjPWNvbnRlbnQvdGVzdC5tcDQ+Ci0gICAgPC92aWRlbz4KKyAgICA8ZGl2IGlkPXBh
bmVsPjwvZGl2PgorICAgIDxzY3JpcHQ+CisgICAgICAgIHZhciBwYW5lbCA9IGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJwYW5lbCIpOworICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlh
RmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgICAgIHBhbmVsLmlubmVySFRNTCA9
ICI8dmlkZW8gc3JjPSIgKyBtZWRpYUZpbGUgKyAiIGNvbnRyb2xzIG9ubG9hZGVkbWV0YWRhdGE9
J2xvYWRlZG1ldGFkYXRhKCknPjxzb3VyY2Ugc3JjPWNvbnRlbnQvY291bnRpbmcubXA0Pjwvdmlk
ZW8+IjsKKyAgICA8L3NjcmlwdD4KIAogICAgIDxwPlRlc3QgdGhhdCByZW1vdmluZyB2YWxpZCAn
c3JjJyBhdHRyaWJ1dGUgRE9FUyBOT1QgdHJpZ2dlciBsb2FkIG9mICZsdDtzb3VyY2UmZ3Q7IGVs
ZW1lbnRzPC9wPgogCkBAIC0xNSw3ICsxOCw3IEBACiAgICAgICAgIAogICAgICAgICBmdW5jdGlv
biB0ZXN0U3JjKCkKICAgICAgICAgewotICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2
ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsICJjb250ZW50L3NpbGVuY2UubXBnIik7CisgICAgICAg
ICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgbWVkaWFG
aWxlKTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgiaXNOYU4odmlkZW8uZHVyYXRpb24pIiwg
ZmFsc2UpOwogICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAgICAgICAgfQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLXNldC5odG1sIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tc3JjLXNldC5odG1sCmluZGV4IDc1ZTc2NjUuLjhkMGNlODMgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1zZXQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1zcmMtc2V0Lmh0bWwKQEAgLTEsMTMgKzEsMTUgQEAKIDx2aWRlbyBjb250
cm9scz48L3ZpZGVvPgogPGRpdj5UZXN0IHRoYXQgc2V0dGluZyBzcmMgYXR0cmlidXRlIHRyaWdn
ZXJzIGxvYWQ8L2Rpdj4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KLSAgICB2aWRlby5zZXRB
dHRyaWJ1dGUoJ3NyYycsICdjb250ZW50L3Rlc3QubXA0JykKKyAgICB2YXIgbWVkaWFGaWxlID0g
ZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CisgICAgdmlkZW8uc2V0QXR0
cmlidXRlKCdzcmMnLCBtZWRpYUZpbGUpOwogCiAgICAgd2FpdEZvckV2ZW50KCdsb2Fkc3RhcnQn
LCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8u
Y3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhwZWN0ZWQo
InJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgbWVkaWFGaWxlKTsKICAgICAgICAgZW5k
VGVzdCgpOwogICAgIH0gKTsKIAotICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnc3JjJywgJ2NvbnRl
bnQvdGVzdC5tcDQnKQorICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnc3JjJywgbWVkaWFGaWxlKTsK
IDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLXNvdXJj
ZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLXNvdXJjZS5odG1sCmluZGV4IDdi
YzIwZDYuLmU0MmFkZmMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1z
b3VyY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtc291cmNlLmh0bWwK
QEAgLTEsMTQgKzEsMTggQEAKIDxib2R5PgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+Ci08dmlkZW8gc3JjPWNv
bnRlbnQvdGVzdC5tcDQgY29udHJvbHM+Ci0gICAgPHNvdXJjZSBzcmM9Y29udGVudC9lcnJvci5t
cGVnPgotPC92aWRlbz4KKzxkaXYgaWQ9cGFuZWw+PC9kaXY+Cis8c2NyaXB0PgorICAgIHZhciBw
YW5lbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYW5lbCIpOworICAgIHZhciBtZWRpYUZp
bGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICBwYW5lbC5p
bm5lckhUTUwgPSAiPHZpZGVvIHNyYz0iICsgbWVkaWFGaWxlICsgIiBjb250cm9scz48c291cmNl
IHNyYz1jb250ZW50L2Vycm9yLm1wZWc+PC92aWRlbz4iOworPC9zY3JpcHQ+CiA8c2NyaXB0Pgog
CiAgICAgdmlkZW8gPSBtZWRpYUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgndmlkZW8nKVswXTsKIAogICAgIHdhaXRGb3JFdmVudCgnbG9hZHN0YXJ0JywgZnVuY3Rpb24g
KCkgeyAKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3Jj
KSIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVV
UkwodmlkZW8uY3VycmVudFNyYykiLCBtZWRpYUZpbGUpOwogICAgICAgICBlbmRUZXN0KCk7CiAg
ICAgfSApOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy5odG1sCmluZGV4IDg4ZmFmZjIuLjdmOTViNjcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy5odG1sCisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy5odG1sCkBAIC0xLDE0ICsxLDE2IEBACiA8Ym9keT4KKzxz
Y3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAKIDxzY3JpcHQ+CiAgICAg
dmlkZW8gPSBtZWRpYUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndmlk
ZW8nKVswXTsKKyAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29u
dGVudC90ZXN0Iik7CiAKICAgICB3YWl0Rm9yRXZlbnQoImxvYWRzdGFydCIsIGZ1bmN0aW9uICgp
IHsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAi
LCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJM
KHZpZGVvLmN1cnJlbnRTcmMpICIsIG1lZGlhRmlsZSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAg
ICB9KTsKIAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5z
cmMgPSBtZWRpYUZpbGU7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLXRpbWV1cGRhdGUtZHVyaW5nLXBsYXliYWNrLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby10aW1ldXBkYXRlLWR1cmluZy1wbGF5YmFjay5odG1sCmluZGV4IGVmZDc3ZTcuLmRk
MTFhNWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXRpbWV1cGRhdGUtZHVy
aW5nLXBsYXliYWNrLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tdGltZXVwZGF0
ZS1kdXJpbmctcGxheWJhY2suaHRtbApAQCAtMSwxMyArMSwxNSBAQAogPGh0bWw+CiA8Ym9keT4K
ICAgICAKLSAgICA8dmlkZW8gc3JjPWNvbnRlbnQvdGVzdC5tcDQgY29udHJvbHM+PC92aWRlbz4K
KyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIAogICAgIDxwPgogICAgIFRlc3QgJ3RpbWV1
cGRhdGUnIGV2ZW50cyBhcmUgcG9zdGVkIHdoaWxlIHBsYXlpbmcgYnV0IG5vdCB3aGlsZSBwYXVz
ZWQuCiAgICAgPC9wCisgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAg
ICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CisgICAg
ICAgIHNldFNyY0J5VGFnTmFtZSgidmlkZW8iLCBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250
ZW50L3Rlc3QiKSk7CiAgICAgCiAgICAgICAgIHZhciB0aW1ldXBkYXRlRXZlbnRDb3VudCA9IDA7
CiAgICAgICAgIHZhciBjb3VudFdoaWxlUGxheWluZyA9IDA7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby12b2x1bWUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXZv
bHVtZS5odG1sCmluZGV4IDBlZTIwYmQuLjQ5MzU0MGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXZvbHVtZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXZv
bHVtZS5odG1sCkBAIC0xLDUgKzEsNiBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5U
ZXN0ICd2b2x1bWUnIGF0dHJpYnV0ZTxwPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Nj
cmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAg
IHRlc3RFeHBlY3RlZCgidmlkZW8udm9sdW1lIiwgMS4wKTsKQEAgLTksNyArMTAsNyBAQAogICAg
IHRlc3RFeHBlY3RlZCgidmlkZW8udm9sdW1lIiwgMCk7CiAgICAgdGVzdEV4Y2VwdGlvbigidmlk
ZW8udm9sdW1lID0gMS41IiwgIkRPTUV4Y2VwdGlvbi5JTkRFWF9TSVpFX0VSUiIpOwogICAgIHRl
c3RFeGNlcHRpb24oInZpZGVvLnZvbHVtZSA9IC0wLjUiLCAiRE9NRXhjZXB0aW9uLklOREVYX1NJ
WkVfRVJSIik7Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVv
LnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIHJ1bigi
dmlkZW8ubG9hZCgpIik7CiAgICAgd2FpdEZvckV2ZW50KCJsb2FkIiwgZnVuY3Rpb24gKCkgewog
ICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnZvbHVtZSIsIDApOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
em9vbS5odG1sCmluZGV4IGYxOTM0N2QuLjUxOTY0YTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXpvb20uaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29t
Lmh0bWwKQEAgLTEsNiArMSw3IEBACiA8aHRtbD4KIDxoZWFkPgogICAgIDxzdHlsZT4gdmlkZW8g
eyB6b29tOiAxNTAlOyBib3JkZXI6IDNweCBzb2xpZCByZWQ7IH0gPC9zdHlsZT4KKyAgICA8c2Ny
aXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CiAgICAgICAgIGZ1
bmN0aW9uIGluaXQoKQogICAgICAgICB7CkBAIC0yNSwxMCArMjYsMTAgQEAKICAgICA8L3Njcmlw
dD4KIAogPC9oZWFkPgotPGJvZHkgb25sb2FkPSJpbml0KCkiPgorPGJvZHkgb25sb2FkPSJzZXRT
cmNCeVRhZ05hbWUoJ3ZpZGVvJywgZmluZE1lZGlhRmlsZSgndmlkZW8nLCAnY29udGVudC90ZXN0
JykpOyBpbml0KCk7Ij4KICAgICA8cD4xNTAlIHpvb20sIHdpdGggd2lkdGggYW5kIGhlaWdodCBh
dHRyaWJ1dGVzIDwvcD4KLSAgICAmbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiB3
aWR0aD0zMjAgaGVpZ2h0PTI0MD48L3ZpZGVvPjxicj4KKyAgICAmbmJzcDs8dmlkZW8gd2lkdGg9
MzIwIGhlaWdodD0yNDA+PC92aWRlbz48YnI+CiAgICAgPHA+MTUwJSB6b29tLCB3aXRob3V0IHdp
ZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlcyA8L3A+Ci0gICAgJm5ic3A7PHZpZGVvIHNyYz0iY29u
dGVudC90ZXN0Lm1wNCIgPjwvdmlkZW8+PGJyPgorICAgICZuYnNwOzx2aWRlbz48L3ZpZGVvPjxi
cj4KIDwvYm9keT4KIDwvaHRtbD4K
</data>
<flag name="review"
          id="20795"
          type_id="1"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39715</attachid>
            <date>2009-09-17 11:45:43 -0700</date>
            <delta_ts>2009-09-17 13:43:23 -0700</delta_ts>
            <desc>Second round of changes - 19 tests</desc>
            <filename>webkit-codecs-2.patch</filename>
            <type>text/plain</type>
            <size>18400</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlN2E4ZWEzLi5jOTY1ZjczIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIwMDktMDkt
MTcgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDE5IG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL21lZGlhLWZpbGUuanM6
IFN3YXAgdGhlIG9yZGVyIG9mIGF1ZGlvIGZvcm1hdHMgdG8gcHJlZmVyIC53YXYuCisgICAgICAg
IChzZXRTcmNCeUlkKTogRml4aW5nIGJ1ZyBpbiBjb2RlLgorICAgICAgICAqIG1lZGlhL3ZpZGVv
LWNhbnZhcy1zb3VyY2UuaHRtbDogVXNlIGZpbmRNZWRpYUZpbGUoKSB0byBsb2NhdGUgYSBtZWRp
YSBmaWxlIGJhc2VkIG9uIHN1cHBvcnRlZCB0eXBlcy4KKyAgICAgICAgKiBtZWRpYS92aWRlby1j
bGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3Zp
ZGVvLWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3Zp
ZGVvLWNvbnRyb2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBt
ZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEv
dmlkZW8tY29udHJvbHMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY3VycmVu
dFRpbWUtc2V0Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWN1cnJlbnRUaW1l
LXNldDIuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRt
bDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZGlzcGxheS1ub25lLWNyYXNoLmh0bWw6
IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRpc3BsYXktdG9nZ2xlLmh0bWw6IGRpdHRv
LgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWRvbS1hdXRvcGxheS5odG1sOiBkaXR0by4KKyAgICAg
ICAgKiBtZWRpYS92aWRlby1kb20tc3JjLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3Zp
ZGVvLWVycm9yLWFib3J0Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWxvYWQt
bmV0d29ya1N0YXRlLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWxvYWQtcmVh
ZHlTdGF0ZS5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1sb29wLmh0bWw6IGRp
dHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLW11dGVkLmh0bWw6IGRpdHRvLgorICAgICAgICAq
IG1lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWw6IGRpdHRvLgorCiAyMDA5LTA5LTEwICBKaWFu
IExpICA8amlhbmxpQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNl
aWRlbC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMgYi9MYXlv
dXRUZXN0cy9tZWRpYS9tZWRpYS1maWxlLmpzCmluZGV4IGE4NTY5Y2YuLjIwZTgyMzUgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWZpbGUuanMKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvbWVkaWEtZmlsZS5qcwpAQCAtMSwxNSArMSwxNSBAQAogdmFyIGF1ZGlvQ29kZWNzID0g
WworICAgIFsiYXVkaW8vd2F2IiwgIndhdiJdLAogICAgIFsiYXVkaW8vYWFjIiwgIm00YSJdLAog
ICAgIFsiYXVkaW8vbXBlZyIsICJtcDMiXSwKLSAgICBbImF1ZGlvL3dhdiIsICJ3YXYiXSwKLSAg
ICBbImF1ZGlvL29nZyIsICJvZ2ciXQorICAgIFsiYXVkaW8vb2dnIiwgIm9nYSJdCiBdOwogCiB2
YXIgdmlkZW9Db2RlY3MgPSBbCiAgICAgWyJ2aWRlby9tcDQiLCAibXA0Il0sCiAgICAgWyJ2aWRl
by9tcGVnIiwgIm1wZyJdLAogICAgIFsidmlkZW8vcXVpY2t0aW1lIiwgIm1vdiJdLAotICAgIFsi
dmlkZW8vb2dnIiwgIm9nZyJdCisgICAgWyJ2aWRlby9vZ2ciLCAib2d2Il0KIF07CiAKIGZ1bmN0
aW9uIGZpbmRNZWRpYUZpbGUodGFnTmFtZSwgbmFtZSkgewpAQCAtMTksMTIgKzE5LDkgQEAgZnVu
Y3Rpb24gZmluZE1lZGlhRmlsZSh0YWdOYW1lLCBuYW1lKSB7CiAgICAgZWxzZQogICAgICAgICBj
b2RlY3MgPSB2aWRlb0NvZGVjczsKIAotICAgIHZhciBlbGVtZW50OwotICAgIHRyeSB7Ci0gICAg
ICAgIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSh0YWdOYW1lKVswXTsK
LSAgICB9IGNhdGNoIChleCkgeworICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUodGFnTmFtZSlbMF07CisgICAgaWYgKCFlbGVtZW50KQogICAgICAgICBlbGVt
ZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0YWdOYW1lKTsKLSAgICB9CiAKICAgICBmb3Ig
KHZhciBpID0gMDsgaSA8IGNvZGVjcy5sZW5ndGg7ICsraSkgewogICAgICAgICBpZiAoZWxlbWVu
dC5jYW5QbGF5VHlwZShjb2RlY3NbaV1bMF0pKQpAQCAtNDUsNSArNDIsNSBAQCBmdW5jdGlvbiBz
ZXRTcmNCeVRhZ05hbWUodGFnTmFtZSwgc3JjKSB7CiBmdW5jdGlvbiBzZXRTcmNCeUlkKGlkLCBz
cmMpIHsKICAgICB2YXIgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsKICAg
ICBpZiAoZWxlbWVudCkKLSAgICAgICAgaWQuc3JjID0gc3JjOworICAgICAgICBlbGVtZW50LnNy
YyA9IHNyYzsKIH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1z
b3VyY2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZhcy1zb3VyY2UuaHRtbApp
bmRleCBjZjg5YjNjLi43ZmQwMmU1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1jYW52YXMtc291cmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2FudmFz
LXNvdXJjZS5odG1sCkBAIC0yLDYgKzIsNyBAQAogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+
RHJhd2luZyB0byBjYW52YXMgdXNpbmcgdmlkZW8gd2l0aCBzb3VyY2UgZWxlbWVudCBkb2VzIG5v
dCB0YWludCBjYW52YXM8L3RpdGxlPgogICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhy
ZWY9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKyAgICAgICAgPHNj
cmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlk
ZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KQEAgLTI3
LDcgKzI4LDggQEAKICAgICAgICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CiAgICAgICAg
ICAgICAgICAgY2FudmFzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2NhbnZhcycp
WzBdOwogICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsIHZpZGVvTG9hZGVkKTsK
LSAgICAgICAgICAgICAgICBydW4oInZhciBzb3VyY2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdzb3VyY2UnKTsgc291cmNlLnNyYyA9ICdjb250ZW50L2NvdW50aW5nLm1wNCc7IHZpZGVvLmFw
cGVuZENoaWxkKHNvdXJjZSkiKTsKKyAgICAgICAgICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmlu
ZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC9jb3VudGluZyIpOworICAgICAgICAgICAgICAg
IHJ1bigidmFyIHNvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJjZScpOyBzb3Vy
Y2Uuc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJzsgdmlkZW8uYXBwZW5kQ2hpbGQoc291cmNlKSIp
OwogICAgICAgICAgICAgfQogICAgICAgICA8L3NjcmlwdD4KICAgICA8L2hlYWQ+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jbGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0
bWwKaW5kZXggYzUwNzZmMi4uNTk2MDhhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tY2xpY2stZGJsY2tpY2stc3RhbmRhbG9uZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWNsaWNrLWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbApAQCAtMSw2ICsxLDEyIEBA
CiA8aHRtbD4KICAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48
L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikgeworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgICAgICB9CisKICAgICAgICAgdmFyIHZpZGVvOwogICAgICAgICBmdW5jdGlvbiBsb2cobXNn
KQogICAgICAgICB7CkBAIC05LDEwICsxNSw2IEBACiAgICAgICAgIAogICAgICAgICBmdW5jdGlv
biB0ZXN0KCkKICAgICAgICAgewotICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29u
dHJvbGxlcikgewotICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1Rl
eHQoKTsKLSAgICAgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25l
KCk7Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICB2aWRlbyA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdmcicpLmNvbnRlbnREb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndmlkZW8n
KVswXTsKICAgICAgICAgICAgIHZpZGVvLmFkZEV2ZW50TGlzdGVuZXIoJ2NhbnBsYXl0aHJvdWdo
JywgdGVzdDIpOwogICAgICAgICB9CkBAIC0zOCw4ICs0MCwxMyBAQAogICAgICAgICB9CiAgICAg
ICAgIDwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3QoKSI+Ci0g
ICAgPGlmcmFtZSBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIGlkPSJmciI+PC9pZnJhbWU+CisgICAg
PGJvZHk+CisgICAgPGlmcmFtZSBpZD0iZnIiPjwvaWZyYW1lPgorICAgIDxzY3JpcHQ+CisgICAg
ICAgIHZhciBmcmFtZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmciIpOworICAgICAgICBm
cmFtZS5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAg
ICAgZnJhbWUuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsIHRlc3QpOworICAgIDwvc2NyaXB0Pgog
ICAgIDxwPlRoaXMgdGVzdHMgdGhhdCBjbGlja2luZyBvbiBhIHN0YW5kYWxvbmUgdmlkZW8gd2ls
bCBwYXVzZSBhbmQgZG91YmxlLWNsaWNraW5nIHdpbGwgcGxheS48L3A+CiAgICAgPHByZSBpZD0i
Y29uc29sZSI+PC9wcmU+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWwKaW5kZXggYTM0NDFlOC4uYzM5OTQ4MyAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdHJhbnNmb3JtZWQuaHRt
bAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1s
CkBAIC0xMiw2ICsxMiw3IEBACiAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgPHA+
VGVzdCBjb250cm9scyBvbiB0cmFuc2Zvcm1lZCB2aWRlby48L3A+CiAgICAgPHA+VGhpcyB0ZXN0
IG9ubHkgcnVucyBpbiBEUlQhPC9wPgorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2Ny
aXB0PgogICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7
CkBAIC0yNSw5ICsyNiw3IEBACiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNl
ZCIsIGZhbHNlKTsKICAgICAgICAgICAgIGVuZFRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAg
ICB2aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZp
bmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9i
b2R5PgogPC9odG1sPgotCi0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNv
bnRyb2xzLXZpc2libGUtYXVkaW8tb25seS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
Y29udHJvbHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwKaW5kZXggNzNhNGY4Yy4uZDdhNDBlMCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJsZS1hdWRp
by1vbmx5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtdmlzaWJs
ZS1hdWRpby1vbmx5Lmh0bWwKQEAgLTQsNyArNCwxMiBAQAogICAgICAgICAgICAgI25vLXZpZGVv
LW1lZGlhIHsgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OyB3aWR0aDogMzIwcHg7IGhlaWdodDog
MTAwcHg7fSAKICAgICAgICAgICAgICNtb3VzZS1wYXJraW5nOmhvdmVyIHsgcGFkZGluZzo4OyBi
YWNrZ3JvdW5kLWNvbG9yOiBibHVlOyB9CiAgICAgICAgIDwvc3R5bGU+CisgICAgICAgIDxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CisgICAgICAg
ICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgICAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgICAgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgIH0KIAogICAgICAg
ICAgICAgdmFyIHZpZGVvOwogCkBAIC00Nyw4ICs1Miw2IEBACiAgICAgICAgICAgICB9CiAKICAg
ICAgICAgICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKLSAgICAgICAgICAg
ICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Ci0gICAgICAgICAgICAgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogICAgICAgICAgICAgICAgIHNl
dFRpbWVvdXQoZnVuY3Rpb24oKSB7IAogICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5
LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCdGQUlMJykpOyAKICAgICAgICAg
ICAgICAgICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKQEAgLTY1LDcgKzY4
LDEwIEBACiAKICAgICAgICAgPHA+PHNwYW4gaWQ9Im1vdXNlLXBhcmtpbmciPm1vdXNlIHBhcmtz
IGhlcmUsIGFtIEkgYmx1ZT88L3NwYW4+PC9wPgogCi0gICAgICAgIDx2aWRlbyBpZD0ibm8tdmlk
ZW8tbWVkaWEiIGNvbnRyb2xzIGxvb3Agc3JjPSJjb250ZW50L3Rlc3Qud2F2IiBvbmxvYWQ9InN0
YXJ0KCkiPjwvdmlkZW8+CisgICAgICAgIDx2aWRlbyBpZD0ibm8tdmlkZW8tbWVkaWEiIGNvbnRy
b2xzIGxvb3Agb25sb2FkPSJzdGFydCgpIj48L3ZpZGVvPgogICAgICAgICA8YnI+PGJyPjxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgc2V0U3Jj
QnlJZCgibm8tdmlkZW8tbWVkaWEiLCBmaW5kTWVkaWFGaWxlKCJhdWRpbyIsICJjb250ZW50L3Rl
c3QiKSk7CisgICAgICAgIDwvc2NyaXB0PgogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXpvb21lZC5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwKaW5kZXggNjY0MDZkYy4uZGIy
Yjg3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVk
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwK
QEAgLTYsNiArNiw3IEBACiAgICAgICBtYXJnaW46IDUwcHg7CiAgICAgfQogICA8L3N0eWxlPgor
ICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICA8c2NyaXB0IHR5cGU9InRl
eHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgogICAgIGZ1bmN0aW9uIHJ1blRlc3QoKQog
ICAgIHsKQEAgLTMzLDcgKzM0LDcgQEAKICAgICAgICAgd2FpdEZvckV2ZW50KCdsb2FkJywgZnVu
Y3Rpb24oKSB7CiAgICAgICAgICAgICBydW5UZXN0KCk7CiAgICAgICAgIH0gKTsKLSAgICAgICAg
dmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVzdC5tcDQnOworICAgICAgICB2aWRlby5zcmMgPSBmaW5k
TWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICA8L3NjcmlwdD4KIDwvYm9k
eT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xz
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy5odG1sCmluZGV4IDg3YTE1
ODMuLjM2N2QzNDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xz
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbApAQCAtMSw1
ICsxLDYgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCAnY29udHJvbHMnIGF0
dHJpYnV0ZTxwPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgi
dmlkZW8uY29udHJvbHMiLCBudWxsLCAnIT0nKTsKQEAgLTIwLDUgKzIxLDUgQEAKICAgICAgICAg
dGVzdEV4cGVjdGVkKCJ2aWRlby5jb250cm9scyIsIG51bGwsICchPScpOwogICAgICAgICBlbmRU
ZXN0KCk7CiAgICAgfSApOwotICAgIHZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JzsKKyAg
ICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUt
c2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRtbApp
bmRleCBiODFkZjEyLi4zZDIzNTk4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1jdXJyZW50VGltZS1zZXQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJy
ZW50VGltZS1zZXQuaHRtbApAQCAtNSw2ICs1LDcgQEAKICAgICAKICAgICA8cD5UZXN0IHRoYXQg
c2V0dGluZyBjdXJyZW50VGltZSBjaGFuZ2VzIHRoZSB0aW1lLCBhbmQgdGhhdCAnZW5kZWQnIGV2
ZW50IGlzIGZpcmVkIGluIGEgcmVhc29uYWJsZSBhbW91bnQgb2YgdGltZTwvcD4KICAgICAKKyAg
ICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPXZp
ZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KICAgICB3YWl0Rm9yRXZlbnQoJ2xv
YWQnLCAgCkBAIC0yMCw3ICsyMSw3IEBACiAgICAgICAgIHZhciB0aW1lb3V0ID0gODAwOwogICAg
ICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsgbG9nUmVzdWx0KCJObyAnZW5kZWQnIGV2ZW50
IGluICIgKyB0aW1lb3V0LzEwMDAgICsgInNlY29uZHMiLCBmYWxzZSk7IH0sIHRpbWVvdXQpOwog
ICAgIH0pOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5z
cmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICA8L3Njcmlw
dD4KIAogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVu
dFRpbWUtc2V0Mi5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0
Mi5odG1sCmluZGV4IDBhMTBmZmYuLjQ4NDAzNzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNldDIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1jdXJyZW50VGltZS1zZXQyLmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJv
bHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0
IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB3YWl0Rm9yRXZlbnQo
J2xvYWQnLCAgCkBAIC0xMCw1ICsxMSw1IEBACiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
Y3VycmVudFRpbWUudG9GaXhlZCgxKSIsIDMuMSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9
KTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0g
ZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS5odG1sCmluZGV4IGFlM2EzMzkuLjg1MGE0NTcg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbApAQCAtMSw0ICsxLDUg
QEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0Pgog
ICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFRpbWUiLCAwKQpAQCAtMTAsNSArMTEsNSBA
QAogICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmN1cnJlbnRUaW1lIiwgMCwgJz4nKQogICAg
ICAgICBlbmRUZXN0KCk7CiAgICAgfQotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0
IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3Qi
KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxh
eS1ub25lLWNyYXNoLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUt
Y3Jhc2guaHRtbAppbmRleCAzMWE2MzIzLi40ZjY2YzFjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUtY3Jhc2guaHRtbAorKysgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1kaXNwbGF5LW5vbmUtY3Jhc2guaHRtbApAQCAtMSw4ICsxLDkgQEAKIDx2aWRl
byBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IHBhdXNlKCkgYWZ0ZXIgY2hhbmdpbmcg
ZGlzcGxheSB0byAibm9uZSIgZG9lc24ndCBjYXVzZSBhIGNyYXNoLjwvcD4KKzxzY3JpcHQgc3Jj
PSJtZWRpYS1maWxlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJ2aWRlby10ZXN0LmpzIj48
L3NjcmlwdD4KIDxzY3JpcHQ+Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOwor
ICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwog
ICAgIHZpZGVvLnBsYXkoKTsKICAgICB2aWRlby5zdHlsZS5kaXNwbGF5ID0gIm5vbmUiOwogICAg
IHZpZGVvLnBhdXNlKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNw
bGF5LXRvZ2dsZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxheS10b2dnbGUu
aHRtbAppbmRleCBiZWE3ZTM4Li5kNzFkOTNmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1kaXNwbGF5LXRvZ2dsZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWRpc3BsYXktdG9nZ2xlLmh0bWwKQEAgLTEsNSArMSw2IEBACiA8aHRtbD4KICAgICA8aGVhZD4K
KyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdD4KICAgICAgICAgICAgIGZ1bmN0aW9uIHRvZ2dsZURpc3BsYXkoKQogICAgICAgICAgICAg
ewpAQCAtMTQsNiArMTUsNyBAQAogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgICAgICAgICAgICAgICAgIGxheW91dFRl
c3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgICAgICBzZXRTcmNCeUlk
KCd2aWQnLCBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICdjb250ZW50L3Rlc3QnKSk7CiAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3ZpZCcpLmFkZEV2ZW50TGlzdGVuZXIo
ImNhbnBsYXl0aHJvdWdoIiwgdGVzdDIpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZnVu
Y3Rpb24gdGVzdDIoKQpAQCAtMjgsNiArMzAsNiBAQAogICAgIDwvaGVhZD4KICAgICA8Ym9keSBv
bmxvYWQ9InRlc3QoKSI+CiAgICAgICAgIFRoaXMgdGVzdHMgdGhhdCB0b2dnbGluZyB0aGUgZGlz
cGxheSBwcm9wZXJ0eSB3b24ndCBtYWtlIHRoZSBjb250cm9scyBkaXNhcHBlYXIuPGJyPgotICAg
ICAgICA8dmlkZW8gaWQ9InZpZCIgY29udHJvbHMgc3JjPSJjb250ZW50L3Rlc3QubXA0Ij48L3Zp
ZGVvPgorICAgICAgICA8dmlkZW8gaWQ9InZpZCIgY29udHJvbHM+PC92aWRlbz4KICAgICA8L2Jv
ZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tYXV0
b3BsYXkuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRvcGxheS5odG1sCmlu
ZGV4IGQwNTIzYzkuLjEyZmE1NjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWRvbS1hdXRvcGxheS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRv
cGxheS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2Ny
aXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5q
cz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5hdXRvcGxheSIs
IGZhbHNlKTsKQEAgLTEwLDUgKzExLDUgQEAKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0gKTsK
IAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBm
aW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sCmluZGV4IDYyNjA3NjcuLmIyMDQzMzQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1zcmMuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1kb20tc3JjLmh0bWwKQEAgLTEsMTIgKzEsMTQgQEAKIDx2aWRlbyBjb250
cm9scz48L3ZpZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3Rl
ZCgidmlkZW8uY3VycmVudFNyYyIsICIiKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0
Lm1wNCI7CisgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRl
bnQvdGVzdCIpOworICAgIHZpZGVvLnNyYyA9IG1lZGlhRmlsZTsKICAgICB0ZXN0RXhwZWN0ZWQo
InZpZGVvLmN1cnJlbnRTcmMiLCAiIik7CiAKICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBmdW5j
dGlvbiAoKSB7IAotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJl
bnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxh
dGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsIG1lZGlhRmlsZSk7CiAgICAgICAgIGVuZFRlc3Qo
KTsKICAgICB9ICk7CiAgICAgCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1l
cnJvci1hYm9ydC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZXJyb3ItYWJvcnQuaHRt
bAppbmRleCBkY2YzYWVjLi41NWE5MjMzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1lcnJvci1hYm9ydC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWVycm9y
LWFib3J0Lmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxz
Y3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmVycm9yIiwg
bnVsbCk7CkBAIC0xMyw1ICsxNCw1IEBACiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9ICk7CiAK
LSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmlu
ZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0YXRlLmh0bWwgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1sCmluZGV4IGQ4ZGQ0NDQu
LmE0YWI1MWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtbmV0d29y
a1N0YXRlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3Rh
dGUuaHRtbApAQCAtOCw2ICs4LDcgQEAKICAgICBldmVudHMgYW5kIGVuZCB1cCB3aXRoIG5ldHdv
cmtTdGF0ZSA+PSBORVRXT1JLX0xPQURJTkcuCiAgICAgIDwvcD4KICAgICAKKyAgICA8c2NyaXB0
IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3Qu
anM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdD4KICAgICAgICAgZnVuY3Rpb24gdGVzdE5ldHdvcmtT
dGF0ZShleHBlY3RlZCwgZW5kaXQsIG9wKQpAQCAtMzEsNyArMzIsOCBAQAogICAgICAgICAgICAg
Y29uc29sZVdyaXRlKCIiKTsKIAogICAgICAgICAgICAgLy8gbm93IHNldCBhIHZhbGlkIHVybAot
ICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVudC90ZXN0Lm1wNCciKTsKKyAgICAg
ICAgICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rl
c3QiKTsKKyAgICAgICAgICAgIHJ1bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJyIp
OwogICAgICAgICB9CiAgICAgICAgIAogICAgICAgICAvLyBmaXJzdCBzZXQgdGhlIHNyYyB0byBh
IGJvZ3VzIHVybCwgaXQgc2hvdWxkIGF0dGVtcHQgYSBsb2FkCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1sb2FkLXJlYWR5U3RhdGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCmluZGV4IDY0MWI2ZTQuLmQwNDAyYWMgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCisrKyBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sCkBAIC0xLDQgKzEs
NSBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpz
Pjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+
CiAgICAgZnVuY3Rpb24gdGVzdFJlYWR5U3RhdGUoZXhwZWN0ZWQsIGVuZGl0LCBvcCkKQEAgLTE3
LDUgKzE4LDUgQEAKICAgICB3YWl0Rm9yRXZlbnRBbmRGYWlsKCJwbGF5aW5nIik7CiAgICAgd2Fp
dEZvckV2ZW50KCJjYW5wbGF5dGhyb3VnaCIsIGZ1bmN0aW9uICgpIHsgdGVzdFJlYWR5U3RhdGUo
SFRNTE1lZGlhRWxlbWVudC5IQVZFX0VOT1VHSF9EQVRBLCB0cnVlICk7IH0gKTsKIAotICAgIHZp
ZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9vcC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
bG9vcC5odG1sCmluZGV4IDUwMmI4OTQuLmM3MjhhYTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWxvb3AuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29w
Lmh0bWwKQEAgLTIsNiArMiw3IEBACiAKICAgICA8dmlkZW8gY29udHJvbHMgYXV0b3BsYXkgPjwv
dmlkZW8+CiAKKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxz
Y3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKICAgICA8c2NyaXB0PgpAQCAtNTUs
MTAgKzU2LDExIEBACiAgICAgCiAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAgIHJ1
bigidmlkZW8ubG9vcCA9IHRydWUiKTsKLSAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVu
dC90ZXN0Lm1wNCciKTsKKyAgICAgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZp
ZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICBydW4oInZpZGVvLnNyYyA9ICciICsgbWVk
aWFGaWxlICsgIiciKTsKICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAgICA8L3NjcmlwdD4K
IAogICAgIDwvaGVhZD4KIAotPC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1tdXRlZC5odG1sCmluZGV4IDUxMzZkOGYuLmE4MTk4ZDMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwKKysrIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tbXV0ZWQuaHRtbApAQCAtMSwxMSArMSwxMiBAQAogPHZpZGVv
IGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0ICdtdXRlZCcgYXR0cmlidXRlPHA+Cis8c2NyaXB0
IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48
L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRlZCIsIGZhbHNl
KTsKICAgICBydW4oInZpZGVvLm11dGVkID0gdHJ1ZSIpOwogICAgIHRlc3RFeHBlY3RlZCgidmlk
ZW8ubXV0ZWQiLCB0cnVlKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7Cisg
ICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAg
ICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsKICAgICB3YWl0Rm9yRXZlbnQoImxvYWQiLCBmdW5jdGlv
biAoKSB7CiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ubXV0ZWQiLCB0cnVlKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sCmluZGV4IGRiOGI1NjguLmQ5Y2E1MTEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3BsYXkuaHRtbApAQCAtMSw1ICsxLDYg
QEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IHBsYXkgZXZlbnQgZG9l
cyBub3QgZmlyZSB3aGVuICJzcmMiIHNldCB3aXRoIG5vIGF1dG9wbGF5IGF0dHJpYnV0ZS48L3A+
Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5wYXVz
ZWQiLCB0cnVlKTsKQEAgLTE2LDUgKzE3LDUgQEAKICAgICB9CiAgICAgd2FpdEZvckV2ZW50KCds
b2FkJywgZnVuY3Rpb24gKCkgeyBzZXRUaW1lb3V0KHRlc3RQYXVzZWQsIDUwMCk7fSApOwogCi0g
ICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+Cg==
</data>
<flag name="review"
          id="20840"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
    <flag name="commit-queue"
          id="20845"
          type_id="3"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39721</attachid>
            <date>2009-09-17 13:43:23 -0700</date>
            <delta_ts>2009-09-17 15:49:42 -0700</delta_ts>
            <desc>Second round of changes - 19 tests</desc>
            <filename>webkit-codecs-2.patch</filename>
            <type>text/plain</type>
            <size>18621</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlN2E4ZWEzLi5iZDNlODk3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMDktMDkt
MTcgIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDE5IG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL21lZGlhLWZpbGUuanM6
IFByZWZlciAud2F2IG92ZXIgb3RoZXIgZm9ybWF0cyBhcyB0aGlzIGlzIHVzZWQgdGhlIG1vc3Qg
aW4gdGVzdHMgZm9yIG1hYyBwb3J0LgorICAgICAgICBNb3N0IG9mIGF1ZGlvIHRlc3RzIHVzZSBt
ZWRpYS9jb250ZW50L3Rlc3Qud2F2IGFzIHRlc3QgZmlsZSBmb3IgbWFjLCBzbyB0aGlzIGNoYW5n
ZSB3b3VsZCBtYWtlIHN1cmUKKyAgICAgICAgZmluZE1lZGlhRmlsZSgpIHdpbGwgcmV0dXJuIHRl
c3Qud2F2IGJ1dCBub3QgdGVzdC5tcDMgb3Igb3RoZXIgZm9ybWF0cy4KKyAgICAgICAgKHNldFNy
Y0J5SWQpOiBGaXhpbmcgYnVnIGluIGNvZGUuCisgICAgICAgICogbWVkaWEvdmlkZW8tY2FudmFz
LXNvdXJjZS5odG1sOiBVc2UgZmluZE1lZGlhRmlsZSgpIHRvIGxvY2F0ZSBhIG1lZGlhIGZpbGUg
YmFzZWQgb24gc3VwcG9ydGVkIHR5cGVzLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWNsaWNrLWRi
bGNraWNrLXN0YW5kYWxvbmUuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY29u
dHJvbHMtdHJhbnNmb3JtZWQuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY29u
dHJvbHMtdmlzaWJsZS1hdWRpby1vbmx5Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3Zp
ZGVvLWNvbnRyb2xzLXpvb21lZC5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1j
b250cm9scy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jdXJyZW50VGltZS1z
ZXQuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tY3VycmVudFRpbWUtc2V0Mi5o
dG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1jdXJyZW50VGltZS5odG1sOiBkaXR0
by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1kaXNwbGF5LW5vbmUtY3Jhc2guaHRtbDogZGl0dG8u
CisgICAgICAgICogbWVkaWEvdmlkZW8tZGlzcGxheS10b2dnbGUuaHRtbDogZGl0dG8uCisgICAg
ICAgICogbWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLWRvbS1zcmMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tZXJy
b3ItYWJvcnQuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3Jr
U3RhdGUuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRl
Lmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLWxvb3AuaHRtbDogZGl0dG8uCisg
ICAgICAgICogbWVkaWEvdmlkZW8tbXV0ZWQuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEv
dmlkZW8tbm8tYXV0b3BsYXkuaHRtbDogZGl0dG8uCisKIDIwMDktMDktMTAgIEppYW4gTGkgIDxq
aWFubGlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcyBiL0xheW91dFRlc3Rz
L21lZGlhL21lZGlhLWZpbGUuanMKaW5kZXggYTg1NjljZi4uMjBlODIzNSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtZmlsZS5qcworKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9t
ZWRpYS1maWxlLmpzCkBAIC0xLDE1ICsxLDE1IEBACiB2YXIgYXVkaW9Db2RlY3MgPSBbCisgICAg
WyJhdWRpby93YXYiLCAid2F2Il0sCiAgICAgWyJhdWRpby9hYWMiLCAibTRhIl0sCiAgICAgWyJh
dWRpby9tcGVnIiwgIm1wMyJdLAotICAgIFsiYXVkaW8vd2F2IiwgIndhdiJdLAotICAgIFsiYXVk
aW8vb2dnIiwgIm9nZyJdCisgICAgWyJhdWRpby9vZ2ciLCAib2dhIl0KIF07CiAKIHZhciB2aWRl
b0NvZGVjcyA9IFsKICAgICBbInZpZGVvL21wNCIsICJtcDQiXSwKICAgICBbInZpZGVvL21wZWci
LCAibXBnIl0sCiAgICAgWyJ2aWRlby9xdWlja3RpbWUiLCAibW92Il0sCi0gICAgWyJ2aWRlby9v
Z2ciLCAib2dnIl0KKyAgICBbInZpZGVvL29nZyIsICJvZ3YiXQogXTsKIAogZnVuY3Rpb24gZmlu
ZE1lZGlhRmlsZSh0YWdOYW1lLCBuYW1lKSB7CkBAIC0xOSwxMiArMTksOSBAQCBmdW5jdGlvbiBm
aW5kTWVkaWFGaWxlKHRhZ05hbWUsIG5hbWUpIHsKICAgICBlbHNlCiAgICAgICAgIGNvZGVjcyA9
IHZpZGVvQ29kZWNzOwogCi0gICAgdmFyIGVsZW1lbnQ7Ci0gICAgdHJ5IHsKLSAgICAgICAgZWxl
bWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKHRhZ05hbWUpWzBdOwotICAgIH0g
Y2F0Y2ggKGV4KSB7CisgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSh0YWdOYW1lKVswXTsKKyAgICBpZiAoIWVsZW1lbnQpCiAgICAgICAgIGVsZW1lbnQgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KHRhZ05hbWUpOwotICAgIH0KIAogICAgIGZvciAodmFyIGkg
PSAwOyBpIDwgY29kZWNzLmxlbmd0aDsgKytpKSB7CiAgICAgICAgIGlmIChlbGVtZW50LmNhblBs
YXlUeXBlKGNvZGVjc1tpXVswXSkpCkBAIC00NSw1ICs0Miw1IEBAIGZ1bmN0aW9uIHNldFNyY0J5
VGFnTmFtZSh0YWdOYW1lLCBzcmMpIHsKIGZ1bmN0aW9uIHNldFNyY0J5SWQoaWQsIHNyYykgewog
ICAgIHZhciBlbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpOwogICAgIGlmIChl
bGVtZW50KQotICAgICAgICBpZC5zcmMgPSBzcmM7CisgICAgICAgIGVsZW1lbnQuc3JjID0gc3Jj
OwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2FudmFzLXNvdXJjZS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY2FudmFzLXNvdXJjZS5odG1sCmluZGV4IGNm
ODliM2MuLjdmZDAyZTUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNhbnZh
cy1zb3VyY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jYW52YXMtc291cmNl
Lmh0bWwKQEAgLTIsNiArMiw3IEBACiAgICAgPGhlYWQ+CiAgICAgICAgIDx0aXRsZT5EcmF3aW5n
IHRvIGNhbnZhcyB1c2luZyB2aWRlbyB3aXRoIHNvdXJjZSBlbGVtZW50IGRvZXMgbm90IHRhaW50
IGNhbnZhczwvdGl0bGU+CiAgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorICAgICAgICA8c2NyaXB0IHNy
Yz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgpAQCAtMjcsNyArMjgs
OCBAQAogICAgICAgICAgICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKICAgICAgICAgICAgICAg
ICBjYW52YXMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnY2FudmFzJylbMF07CiAg
ICAgICAgICAgICAgICAgd2FpdEZvckV2ZW50KCdsb2FkJywgdmlkZW9Mb2FkZWQpOwotICAgICAg
ICAgICAgICAgIHJ1bigidmFyIHNvdXJjZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NvdXJj
ZScpOyBzb3VyY2Uuc3JjID0gJ2NvbnRlbnQvY291bnRpbmcubXA0JzsgdmlkZW8uYXBwZW5kQ2hp
bGQoc291cmNlKSIpOworICAgICAgICAgICAgICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L2NvdW50aW5nIik7CisgICAgICAgICAgICAgICAgcnVuKCJ2
YXIgc291cmNlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc291cmNlJyk7IHNvdXJjZS5zcmMg
PSAnIiArIG1lZGlhRmlsZSArICInOyB2aWRlby5hcHBlbmRDaGlsZChzb3VyY2UpIik7CiAgICAg
ICAgICAgICB9CiAgICAgICAgIDwvc2NyaXB0PgogICAgIDwvaGVhZD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWNsaWNrLWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLWNsaWNrLWRibGNraWNrLXN0YW5kYWxvbmUuaHRtbAppbmRl
eCBjNTA3NmYyLi41OTYwOGE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1j
bGljay1kYmxja2ljay1zdGFuZGFsb25lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY2xpY2stZGJsY2tpY2stc3RhbmRhbG9uZS5odG1sCkBAIC0xLDYgKzEsMTIgQEAKIDxodG1s
PgogICAgIDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0
PgogICAgICAgICA8c2NyaXB0PgorICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7CisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7Cisg
ICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAgICAg
IH0KKwogICAgICAgICB2YXIgdmlkZW87CiAgICAgICAgIGZ1bmN0aW9uIGxvZyhtc2cpCiAgICAg
ICAgIHsKQEAgLTksMTAgKzE1LDYgQEAKICAgICAgICAgCiAgICAgICAgIGZ1bmN0aW9uIHRlc3Qo
KQogICAgICAgICB7Ci0gICAgICAgICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7Ci0gICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwot
ICAgICAgICAgICAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLndhaXRVbnRpbERvbmUoKTsKLSAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIHZpZGVvID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2ZyJykuY29udGVudERvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCd2aWRlbycpWzBdOwog
ICAgICAgICAgICAgdmlkZW8uYWRkRXZlbnRMaXN0ZW5lcignY2FucGxheXRocm91Z2gnLCB0ZXN0
Mik7CiAgICAgICAgIH0KQEAgLTM4LDggKzQwLDEzIEBACiAgICAgICAgIH0KICAgICAgICAgPC9z
Y3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0idGVzdCgpIj4KLSAgICA8aWZy
YW1lIHNyYz0iY29udGVudC90ZXN0Lm1wNCIgaWQ9ImZyIj48L2lmcmFtZT4KKyAgICA8Ym9keT4K
KyAgICA8aWZyYW1lIGlkPSJmciI+PC9pZnJhbWU+CisgICAgPHNjcmlwdD4KKyAgICAgICAgdmFy
IGZyYW1lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZyIik7CisgICAgICAgIGZyYW1lLnNy
YyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICBmcmFt
ZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgdGVzdCk7CisgICAgPC9zY3JpcHQ+CiAgICAgPHA+
VGhpcyB0ZXN0cyB0aGF0IGNsaWNraW5nIG9uIGEgc3RhbmRhbG9uZSB2aWRlbyB3aWxsIHBhdXNl
IGFuZCBkb3VibGUtY2xpY2tpbmcgd2lsbCBwbGF5LjwvcD4KICAgICA8cHJlIGlkPSJjb25zb2xl
Ij48L3ByZT4KICAgICA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1jb250cm9scy10cmFuc2Zvcm1lZC5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29u
dHJvbHMtdHJhbnNmb3JtZWQuaHRtbAppbmRleCBhMzQ0MWU4Li5jMzk5NDgzIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy10cmFuc2Zvcm1lZC5odG1sCisrKyBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLXRyYW5zZm9ybWVkLmh0bWwKQEAgLTEy
LDYgKzEyLDcgQEAKICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KICAgICA8cD5UZXN0IGNv
bnRyb2xzIG9uIHRyYW5zZm9ybWVkIHZpZGVvLjwvcD4KICAgICA8cD5UaGlzIHRlc3Qgb25seSBy
dW5zIGluIERSVCE8L3A+CisgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4K
ICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CiAg
ICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY29udHJvbHMiLCBudWxsLCAnIT0nKTsKQEAgLTI1
LDkgKzI2LDcgQEAKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ucGF1c2VkIiwgZmFs
c2UpOwogICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICB9ICk7Ci0gICAgICAgIHZpZGVv
LnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JzsKKyAgICAgICAgdmlkZW8uc3JjID0gZmluZE1lZGlh
RmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgPC9zY3JpcHQ+CiA8L2JvZHk+CiA8
L2h0bWw+Ci0KLQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMt
dmlzaWJsZS1hdWRpby1vbmx5Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9s
cy12aXNpYmxlLWF1ZGlvLW9ubHkuaHRtbAppbmRleCA3M2E0ZjhjLi5kN2E0MGUwIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlvLW9ubHku
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy12aXNpYmxlLWF1ZGlv
LW9ubHkuaHRtbApAQCAtNCw3ICs0LDEyIEBACiAgICAgICAgICAgICAjbm8tdmlkZW8tbWVkaWEg
eyBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7IHdpZHRoOiAzMjBweDsgaGVpZ2h0OiAxMDBweDt9
IAogICAgICAgICAgICAgI21vdXNlLXBhcmtpbmc6aG92ZXIgeyBwYWRkaW5nOjg7IGJhY2tncm91
bmQtY29sb3I6IGJsdWU7IH0KICAgICAgICAgPC9zdHlsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9
bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENv
bnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgfQogCiAgICAgICAgICAgICB2
YXIgdmlkZW87CiAKQEAgLTQ3LDggKzUyLDYgQEAKICAgICAgICAgICAgIH0KIAogICAgICAgICAg
ICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewotICAgICAgICAgICAgICAgIGxh
eW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKLSAgICAgICAgICAgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CiAgICAgICAgICAgICAgICAgc2V0VGltZW91
dChmdW5jdGlvbigpIHsgCiAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5k
Q2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoJ0ZBSUwnKSk7IAogICAgICAgICAgICAgICAg
ICAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQpAQCAtNjUsNyArNjgsMTAgQEAK
IAogICAgICAgICA8cD48c3BhbiBpZD0ibW91c2UtcGFya2luZyI+bW91c2UgcGFya3MgaGVyZSwg
YW0gSSBibHVlPzwvc3Bhbj48L3A+CiAKLSAgICAgICAgPHZpZGVvIGlkPSJuby12aWRlby1tZWRp
YSIgY29udHJvbHMgbG9vcCBzcmM9ImNvbnRlbnQvdGVzdC53YXYiIG9ubG9hZD0ic3RhcnQoKSI+
PC92aWRlbz4KKyAgICAgICAgPHZpZGVvIGlkPSJuby12aWRlby1tZWRpYSIgY29udHJvbHMgbG9v
cCBvbmxvYWQ9InN0YXJ0KCkiPjwvdmlkZW8+CiAgICAgICAgIDxicj48YnI+PGRpdiBpZD0iY29u
c29sZSI+PC9kaXY+CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBzZXRTcmNCeUlkKCJu
by12aWRlby1tZWRpYSIsIGZpbmRNZWRpYUZpbGUoImF1ZGlvIiwgImNvbnRlbnQvdGVzdCIpKTsK
KyAgICAgICAgPC9zY3JpcHQ+CiAgICAgPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMtem9vbWVkLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbAppbmRleCA2NjQwNmRjLi5kYjJiODcyIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy16b29tZWQuaHRtbApAQCAtNiw2
ICs2LDcgQEAKICAgICAgIG1hcmdpbjogNTBweDsKICAgICB9CiAgIDwvc3R5bGU+CisgIDxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZh
c2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CiAgICAgZnVuY3Rpb24gcnVuVGVzdCgpCiAgICAgewpA
QCAtMzMsNyArMzQsNyBAQAogICAgICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBmdW5jdGlvbigp
IHsKICAgICAgICAgICAgIHJ1blRlc3QoKTsKICAgICAgICAgfSApOwotICAgICAgICB2aWRlby5z
cmMgPSAnY29udGVudC90ZXN0Lm1wNCc7CisgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZp
bGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogPC9ib2R5PgogPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWNvbnRyb2xzLmh0bWwKaW5kZXggODdhMTU4My4uMzY3
ZDM0OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY29udHJvbHMuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jb250cm9scy5odG1sCkBAIC0xLDUgKzEsNiBA
QAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0ICdjb250cm9scycgYXR0cmlidXRl
PHA+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlk
ZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5j
b250cm9scyIsIG51bGwsICchPScpOwpAQCAtMjAsNSArMjEsNSBAQAogICAgICAgICB0ZXN0RXhw
ZWN0ZWQoInZpZGVvLmNvbnRyb2xzIiwgbnVsbCwgJyE9Jyk7CiAgICAgICAgIGVuZFRlc3QoKTsK
ICAgICB9ICk7Ci0gICAgdmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVzdC5tcDQnOworICAgIHZpZGVv
LnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQuaHRt
bCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLXNldC5odG1sCmluZGV4IGI4
MWRmMTIuLjNkMjM1OTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJl
bnRUaW1lLXNldC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1cnJlbnRUaW1l
LXNldC5odG1sCkBAIC01LDYgKzUsNyBAQAogICAgIAogICAgIDxwPlRlc3QgdGhhdCBzZXR0aW5n
IGN1cnJlbnRUaW1lIGNoYW5nZXMgdGhlIHRpbWUsIGFuZCB0aGF0ICdlbmRlZCcgZXZlbnQgaXMg
ZmlyZWQgaW4gYSByZWFzb25hYmxlIGFtb3VudCBvZiB0aW1lPC9wPgogICAgIAorICAgIDxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVz
dC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsICAK
QEAgLTIwLDcgKzIxLDcgQEAKICAgICAgICAgdmFyIHRpbWVvdXQgPSA4MDA7CiAgICAgICAgIHNl
dFRpbWVvdXQoZnVuY3Rpb24gKCkgeyBsb2dSZXN1bHQoIk5vICdlbmRlZCcgZXZlbnQgaW4gIiAr
IHRpbWVvdXQvMTAwMCAgKyAic2Vjb25kcyIsIGZhbHNlKTsgfSwgdGltZW91dCk7CiAgICAgfSk7
Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZp
bmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIDwvc2NyaXB0PgogCiA8
L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1z
ZXQyLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS1zZXQyLmh0bWwK
aW5kZXggMGExMGZmZi4uNDg0MDM3OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tY3VycmVudFRpbWUtc2V0Mi5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWN1
cnJlbnRUaW1lLXNldDIuaHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3Zp
ZGVvPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZp
ZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogICAgIHdhaXRGb3JFdmVudCgnbG9hZCcs
ICAKQEAgLTEwLDUgKzExLDUgQEAKICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50
VGltZS50b0ZpeGVkKDEpIiwgMy4xKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0pOwotICAg
IHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVk
aWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWN1cnJlbnRUaW1lLmh0bWwKaW5kZXggYWUzYTMzOS4uODUwYTQ1NyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tY3VycmVudFRpbWUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1jdXJyZW50VGltZS5odG1sCkBAIC0xLDQgKzEsNSBAQAogPHZp
ZGVvIGNvbnRyb2xzPjwvdmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVz
dEV4cGVjdGVkKCJ2aWRlby5jdXJyZW50VGltZSIsIDApCkBAIC0xMCw1ICsxMSw1IEBACiAgICAg
ICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uY3VycmVudFRpbWUiLCAwLCAnPicpCiAgICAgICAgIGVu
ZFRlc3QoKTsKICAgICB9Ci0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAg
IHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LW5vbmUt
Y3Jhc2guaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5o
dG1sCmluZGV4IDMxYTYzMjMuLjRmNjZjMWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLWRpc3BsYXktbm9uZS1jcmFzaC5odG1sCkBAIC0xLDggKzEsOSBAQAogPHZpZGVvIGNvbnRy
b2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgcGF1c2UoKSBhZnRlciBjaGFuZ2luZyBkaXNwbGF5
IHRvICJub25lIiBkb2Vzbid0IGNhdXNlIGEgY3Jhc2guPC9wPgorPHNjcmlwdCBzcmM9Im1lZGlh
LWZpbGUuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InZpZGVvLXRlc3QuanMiPjwvc2NyaXB0
PgogPHNjcmlwdD4KLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlk
ZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAgICAgdmlk
ZW8ucGxheSgpOwogICAgIHZpZGVvLnN0eWxlLmRpc3BsYXkgPSAibm9uZSI7CiAgICAgdmlkZW8u
cGF1c2UoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRpc3BsYXktdG9n
Z2xlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1kaXNwbGF5LXRvZ2dsZS5odG1sCmlu
ZGV4IGJlYTdlMzguLmQ3MWQ5M2YgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVv
LWRpc3BsYXktdG9nZ2xlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZGlzcGxh
eS10b2dnbGUuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDxodG1sPgogICAgIDxoZWFkPgorICAgICAg
ICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0Pgog
ICAgICAgICAgICAgZnVuY3Rpb24gdG9nZ2xlRGlzcGxheSgpCiAgICAgICAgICAgICB7CkBAIC0x
NCw2ICsxNSw3IEBACiAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5s
YXlvdXRUZXN0Q29udHJvbGxlcikKICAgICAgICAgICAgICAgICAgICAgbGF5b3V0VGVzdENvbnRy
b2xsZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgICAgIHNldFNyY0J5SWQoJ3ZpZCcs
IGZpbmRNZWRpYUZpbGUoJ3ZpZGVvJywgJ2NvbnRlbnQvdGVzdCcpKTsKICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndmlkJykuYWRkRXZlbnRMaXN0ZW5lcigiY2FucGxh
eXRocm91Z2giLCB0ZXN0Mik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBmdW5jdGlvbiB0
ZXN0MigpCkBAIC0yOCw2ICszMCw2IEBACiAgICAgPC9oZWFkPgogICAgIDxib2R5IG9ubG9hZD0i
dGVzdCgpIj4KICAgICAgICAgVGhpcyB0ZXN0cyB0aGF0IHRvZ2dsaW5nIHRoZSBkaXNwbGF5IHBy
b3BlcnR5IHdvbid0IG1ha2UgdGhlIGNvbnRyb2xzIGRpc2FwcGVhci48YnI+Ci0gICAgICAgIDx2
aWRlbyBpZD0idmlkIiBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiPjwvdmlkZW8+Cisg
ICAgICAgIDx2aWRlbyBpZD0idmlkIiBjb250cm9scz48L3ZpZGVvPgogICAgIDwvYm9keT4KIDwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWRvbS1hdXRvcGxheS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0bWwKaW5kZXggZDA1
MjNjOS4uMTJmYTU2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLWF1
dG9wbGF5Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLWF1dG9wbGF5Lmh0
bWwKQEAgLTEsNCArMSw1IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3Jj
PW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2Ny
aXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmF1dG9wbGF5IiwgZmFsc2Up
OwpAQCAtMTAsNSArMTEsNSBAQAogICAgICAgICBlbmRUZXN0KCk7CiAgICAgfSApOwogCi0gICAg
dmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRp
YUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1kb20tc3JjLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1kb20tc3JjLmh0bWwKaW5kZXggNjI2MDc2Ny4uYjIwNDMzNCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tZG9tLXNyYy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3ZpZGVvLWRvbS1zcmMuaHRtbApAQCAtMSwxMiArMSwxNCBAQAogPHZpZGVvIGNvbnRyb2xzPjwv
dmlkZW8+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9
dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRl
by5jdXJyZW50U3JjIiwgIiIpOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsK
KyAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Iik7CisgICAgdmlkZW8uc3JjID0gbWVkaWFGaWxlOwogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
Y3VycmVudFNyYyIsICIiKTsKIAogICAgIHdhaXRGb3JFdmVudCgnbG9hZCcsIGZ1bmN0aW9uICgp
IHsgCi0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYyki
LCAiY29udGVudC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJM
KHZpZGVvLmN1cnJlbnRTcmMpIiwgbWVkaWFGaWxlKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAg
IH0gKTsKICAgICAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWVycm9yLWFi
b3J0Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1lcnJvci1hYm9ydC5odG1sCmluZGV4
IGRjZjNhZWMuLjU1YTkyMzMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWVy
cm9yLWFib3J0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tZXJyb3ItYWJvcnQu
aHRtbApAQCAtMSw0ICsxLDUgQEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgorPHNjcmlwdCBz
cmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgogICAgIHRlc3RFeHBlY3RlZCgidmlkZW8uZXJyb3IiLCBudWxsKTsK
QEAgLTEzLDUgKzE0LDUgQEAKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0gKTsKIAotICAgIHZp
ZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFG
aWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3RhdGUuaHRtbCBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLWxvYWQtbmV0d29ya1N0YXRlLmh0bWwKaW5kZXggZDhkZDQ0NC4uYTRhYjUx
YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1uZXR3b3JrU3RhdGUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb2FkLW5ldHdvcmtTdGF0ZS5odG1s
CkBAIC04LDYgKzgsNyBAQAogICAgIGV2ZW50cyBhbmQgZW5kIHVwIHdpdGggbmV0d29ya1N0YXRl
ID49IE5FVFdPUktfTE9BRElORy4KICAgICAgPC9wPgogICAgIAorICAgIDxzY3JpcHQgc3JjPW1l
ZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3Nj
cmlwdD4KICAgICA8c2NyaXB0PgogICAgICAgICBmdW5jdGlvbiB0ZXN0TmV0d29ya1N0YXRlKGV4
cGVjdGVkLCBlbmRpdCwgb3ApCkBAIC0zMSw3ICszMiw4IEBACiAgICAgICAgICAgICBjb25zb2xl
V3JpdGUoIiIpOwogCiAgICAgICAgICAgICAvLyBub3cgc2V0IGEgdmFsaWQgdXJsCi0gICAgICAg
ICAgICBydW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JyIpOworICAgICAgICAgICAg
dmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwor
ICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnIiArIG1lZGlhRmlsZSArICInIik7CiAgICAg
ICAgIH0KICAgICAgICAgCiAgICAgICAgIC8vIGZpcnN0IHNldCB0aGUgc3JjIHRvIGEgYm9ndXMg
dXJsLCBpdCBzaG91bGQgYXR0ZW1wdCBhIGxvYWQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLWxvYWQtcmVhZHlTdGF0ZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
bG9hZC1yZWFkeVN0YXRlLmh0bWwKaW5kZXggNjQxYjZlNC4uZDA0MDJhYyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRlLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tbG9hZC1yZWFkeVN0YXRlLmh0bWwKQEAgLTEsNCArMSw1IEBACiA8
dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICBm
dW5jdGlvbiB0ZXN0UmVhZHlTdGF0ZShleHBlY3RlZCwgZW5kaXQsIG9wKQpAQCAtMTcsNSArMTgs
NSBAQAogICAgIHdhaXRGb3JFdmVudEFuZEZhaWwoInBsYXlpbmciKTsKICAgICB3YWl0Rm9yRXZl
bnQoImNhbnBsYXl0aHJvdWdoIiwgZnVuY3Rpb24gKCkgeyB0ZXN0UmVhZHlTdGF0ZShIVE1MTWVk
aWFFbGVtZW50LkhBVkVfRU5PVUdIX0RBVEEsIHRydWUgKTsgfSApOwogCi0gICAgdmlkZW8uc3Jj
ID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoInZp
ZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1sb29wLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1sb29wLmh0
bWwKaW5kZXggNTAyYjg5NC4uYzcyOGFhMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tbG9vcC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLWxvb3AuaHRtbApA
QCAtMiw2ICsyLDcgQEAKIAogICAgIDx2aWRlbyBjb250cm9scyBhdXRvcGxheSA+PC92aWRlbz4K
IAorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlwdCBz
cmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogICAgIDxzY3JpcHQ+CkBAIC01NSwxMCArNTYs
MTEgQEAKICAgICAKICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAgICAgICAgcnVuKCJ2aWRl
by5sb29wID0gdHJ1ZSIpOwotICAgICAgICBydW4oInZpZGVvLnNyYyA9ICdjb250ZW50L3Rlc3Qu
bXA0JyIpOworICAgICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAi
Y29udGVudC90ZXN0Iik7CisgICAgICAgIHJ1bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUg
KyAiJyIpOwogICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogICAgIDwvc2NyaXB0PgogCiAgICAg
PC9oZWFkPgogCi08L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbXV0ZWQuaHRtbCBiL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLW11dGVkLmh0bWwKaW5kZXggNTEzNmQ4Zi4uYTgxOThkMyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbXV0ZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9tZWRpYS92aWRlby1tdXRlZC5odG1sCkBAIC0xLDExICsxLDEyIEBACiA8dmlkZW8gY29udHJv
bHM+PC92aWRlbz4KIDxwPlRlc3QgJ211dGVkJyBhdHRyaWJ1dGU8cD4KKzxzY3JpcHQgc3JjPW1l
ZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0
PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLm11dGVkIiwgZmFsc2UpOwogICAg
IHJ1bigidmlkZW8ubXV0ZWQgPSB0cnVlIik7CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRl
ZCIsIHRydWUpOwotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0IjsKKyAgICB2aWRl
by5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICBydW4o
InZpZGVvLmxvYWQoKSIpOwogICAgIHdhaXRGb3JFdmVudCgibG9hZCIsIGZ1bmN0aW9uICgpIHsK
ICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5tdXRlZCIsIHRydWUpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3BsYXkuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLW5vLWF1dG9wbGF5Lmh0bWwKaW5kZXggZGI4YjU2OC4uZDljYTUxMSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tbm8tYXV0b3BsYXkuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1uby1hdXRvcGxheS5odG1sCkBAIC0xLDUgKzEsNiBAQAogPHZp
ZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgcGxheSBldmVudCBkb2VzIG5vdCBm
aXJlIHdoZW4gInNyYyIgc2V0IHdpdGggbm8gYXV0b3BsYXkgYXR0cmlidXRlLjwvcD4KKzxzY3Jp
cHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0Lmpz
Pjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnBhdXNlZCIsIHRy
dWUpOwpAQCAtMTYsNSArMTcsNSBAQAogICAgIH0KICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWQnLCBm
dW5jdGlvbiAoKSB7IHNldFRpbWVvdXQodGVzdFBhdXNlZCwgNTAwKTt9ICk7CiAKLSAgICB2aWRl
by5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmls
ZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39732</attachid>
            <date>2009-09-17 16:06:02 -0700</date>
            <delta_ts>2009-09-18 10:50:46 -0700</delta_ts>
            <desc>First round of changes - 8 patches</desc>
            <filename>scherkus_round_1.patch</filename>
            <type>text/plain</type>
            <size>9587</size>
            <attacher name="Andrew Scherkus">scherkus</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0Y2UzZDVkLi5lMjA3NzVhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMDktMDkt
MTcgIEFuZHJldyBTY2hlcmt1cyAgPHNjaGVya3VzQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGluZyA4IG1lZGlhIGxh
eW91dCB0ZXN0cyB0byBwcm92aWRlIGRpZmZlcmVudCBtZWRpYSBmaWxlcyBiYXNlZCBvbiBzdXBw
b3J0ZWQgY29kZWNzLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yODMyNworCisgICAgICAgICogbWVkaWEvZXZlbnQtYXR0cmlidXRlcy5odG1sOiBT
d2l0Y2hlZCB0byBmaW5kTWVkaWFGaWxlKCkKKyAgICAgICAgKiBtZWRpYS9tZWRpYS1sb2FkLWV2
ZW50Lmh0bWw6IERpdHRvCisgICAgICAgICogbWVkaWEvbWVkaWEtc3RhcnRUaW1lLmh0bWw6IERp
dHRvCisgICAgICAgICogbWVkaWEvcHJvZ3Jlc3MtZXZlbnQtdG90YWwtZXhwZWN0ZWQudHh0OiBE
aXR0bworICAgICAgICAqIG1lZGlhL3Byb2dyZXNzLWV2ZW50LXRvdGFsLmh0bWw6IERpdHRvCisg
ICAgICAgICogbWVkaWEvcHJvZ3Jlc3MtZXZlbnQuaHRtbDogRGl0dG8KKyAgICAgICAgKiBtZWRp
YS9yZW1vdmUtZnJvbS1kb2N1bWVudC1uby1sb2FkLmh0bWw6IERpdHRvCisgICAgICAgICogbWVk
aWEvcmVtb3ZlLWZyb20tZG9jdW1lbnQuaHRtbDogRGl0dG8KKyAgICAgICAgKiBtZWRpYS91bnN1
cHBvcnRlZC10cmFja3MuaHRtbDogRGl0dG8KKwogMjAwOS0wOS0xNyAgQW5kcmFzIEJlY3NpICA8
YmVjc2kuYW5kcmFzQHN0dWQudS1zemVnZWQuaHU+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2lt
b24gSGF1c21hbm4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9ldmVudC1hdHRyaWJ1
dGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9ldmVudC1hdHRyaWJ1dGVzLmh0bWwKaW5kZXgg
ZjdkMTc1OC4uMDhmODA5NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvZXZlbnQtYXR0
cmlidXRlcy5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL2V2ZW50LWF0dHJpYnV0ZXMuaHRt
bApAQCAtMSw2ICsxLDcgQEAKIDxodG1sPgogICAgIDxoZWFkPgogCisgICAgICAgIDxzY3JpcHQg
c3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRl
c3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQ+CiAgICAgICAgICAgICB2YXIgcmF0ZWNo
YW5nZUNvdW50ID0gMDsKQEAgLTQ0LDggKzQ1LDkgQEAKICAgICAgICAgICAgICAgICAgICAgICAg
IHJ1bigidmlkZW8ucGxheSgpIik7CiAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgICAgICAgICAgICAgY2FzZSAiZW5kZWQiOgorICAgICAgICAgICAgICAgICAgICAgICAg
dmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvZ2FyYmFnZSIp
OwogICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+KioqIHBsYXllZCB0
byBlbmQsIHNldHRpbmcgJ3NyYycgdG8gYW4gaW52YWxpZCBtb3ZpZSIpOwotICAgICAgICAgICAg
ICAgICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVudC9nYXJiYWdlLm1wNCciKTsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIHJ1bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAi
JyIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsKICAgICAg
ICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICBjYXNlICJwcm9n
cmVzcyI6CkBAIC03MCw3ICs3Miw3IEBACiAKICAgICA8Ym9keSBvbmxvYWQ9InN0YXJ0KCkiPgog
Ci0gICAgICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIAorICAgICAg
ICA8dmlkZW8gY29udHJvbHMKICAgICAgICAgICAgIG9uYWJvcnQ9ImV2ZW50SGFuZGxlcigpIgog
ICAgICAgICAgICAgb25jYW5wbGF5PSJldmVudEhhbmRsZXIoKSIKICAgICAgICAgICAgIG9uY2Fu
cGxheXRocm91Z2g9ImV2ZW50SGFuZGxlcigpIgpAQCAtOTcsNSArOTksOSBAQAogICAgICAgICAg
ICAgPgogICAgICAgICA8L3ZpZGVvPgogCisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICBz
ZXRTcmNCeVRhZ05hbWUoInZpZGVvIiwgZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90
ZXN0IikpOworICAgICAgICA8L3NjcmlwdD4KKwogICAgIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL21lZGlhLWxvYWQtZXZlbnQuaHRtbCBiL0xheW91dFRl
c3RzL21lZGlhL21lZGlhLWxvYWQtZXZlbnQuaHRtbAppbmRleCAwZjZiMmEwLi5mYTljODM3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1sb2FkLWV2ZW50Lmh0bWwKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtbG9hZC1ldmVudC5odG1sCkBAIC0xLDUgKzEsNiBAQAog
PGh0bWw+CiAgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKICAg
ICAgICAgPHNjcmlwdD4KQEAgLTM1LDcgKzM2LDggQEAKICAgICAgICAgICAgICAgICB3YWl0Rm9y
RXZlbnQoInBsYXkiKTsKICAgICAgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ2xvYWRlZGRhdGEn
KTsKIAotICAgICAgICAgICAgICAgIHJ1bigibWVkaWFFbGVtZW50LnNyYyA9ICdjb250ZW50L3Rl
c3Qud2F2JyIpOworICAgICAgICAgICAgICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxl
KCJhdWRpbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAgICAgICAgICAgICBydW4oIm1lZGlhRWxl
bWVudC5zcmMgPSAnIiArIG1lZGlhRmlsZSArICInIik7CiAgICAgICAgICAgICAgICAgcnVuKCJt
ZWRpYUVsZW1lbnQubG9hZCgpIik7CiAKICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc3RhcnRUaW1lLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zdGFydFRpbWUuaHRtbAppbmRleCBhOGU3M2I4Li4wNmJh
YWU4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zdGFydFRpbWUuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zdGFydFRpbWUuaHRtbApAQCAtMSw2ICsxLDcg
QEAKIDxodG1sPgogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+c3RhcnRUaW1lIGF0dHJpYnV0
ZSB0ZXN0PC90aXRsZT4KKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Njcmlw
dD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIAogICAgICAg
ICA8c2NyaXB0PgpAQCAtMTYsNyArMTcsOSBAQAogICAgICAgICAgICAgewogICAgICAgICAgICAg
ICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKICAgICAgICAgICAgICAgICB3YWl0Rm9yRXZlbnQoJ2xv
YWRlZGRhdGEnLCBsb2FkZWRkYXRhKTsKLSAgICAgICAgICAgICAgICBydW4oInZpZGVvLnNyYyA9
ICdjb250ZW50L3Rlc3QubXA0JyIpOworCisgICAgICAgICAgICAgICAgdmFyIG1lZGlhRmlsZSA9
IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICAgICAgICAg
IHJ1bigidmlkZW8uc3JjID0gJyIgKyBtZWRpYUZpbGUgKyAiJyIpOwogICAgICAgICAgICAgfQog
CiAgICAgICAgIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvcHJvZ3Jl
c3MtZXZlbnQtdG90YWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvcHJvZ3Jlc3Mt
ZXZlbnQtdG90YWwtZXhwZWN0ZWQudHh0CmluZGV4IDg4OTYxZjQuLjRkYzA5MzYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL21lZGlhL3Byb2dyZXNzLWV2ZW50LXRvdGFsLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS9wcm9ncmVzcy1ldmVudC10b3RhbC1leHBlY3RlZC50eHQK
QEAgLTUsNiArNSw2IEBAIEVYUEVDVEVEIChldmVudC5sb2FkZWQgPT0gJzAnKSBPSwogRVZFTlQo
bG9hZCkKIEVYUEVDVEVEIChldmVudC5sZW5ndGhDb21wdXRhYmxlID09ICd0cnVlJykgT0sKIEVY
UEVDVEVEIChldmVudC5sb2FkZWQgPiAnMCcpIE9LCi1TVUNDRVNTOiBldmVudC50b3RhbCBpcyAx
ODg0ODMgb3IgMTkyODQ0IChQbGF5YmFjayBlbmdpbmUgc3BlY2lmaWMpCitTVUNDRVNTOiBldmVu
dC50b3RhbCBpcyAxMDM3NDYgb3IgMTg4NDgzIG9yIDE5Mjg0NCAoUGxheWJhY2sgZW5naW5lIHNw
ZWNpZmljKQogRU5EIE9GIFRFU1QKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvcHJv
Z3Jlc3MtZXZlbnQtdG90YWwuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Byb2dyZXNzLWV2ZW50
LXRvdGFsLmh0bWwKaW5kZXggYTk4Y2I4NC4uNDg4Mzg0NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvbWVkaWEvcHJvZ3Jlc3MtZXZlbnQtdG90YWwuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS9wcm9ncmVzcy1ldmVudC10b3RhbC5odG1sCkBAIC0xLDYgKzEsNyBAQAogPGh0bWw+CiAgICAg
PGhlYWQ+CiAKKyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dD4KICAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3RPbkxvYWRTdGFydCgpCkBAIC0xNiwxMSArMTcs
MTUgQEAKICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIkVWRU5UKCIgKyBldmVudC50eXBl
ICsgIikiKTsKICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImV2ZW50Lmxlbmd0aENvbXB1
dGFibGUiLCB0cnVlKTsKICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImV2ZW50LmxvYWRl
ZCIsIDAsICc+Jyk7Ci0gICAgICAgICAgICAgICAgdmFyIGFsbG93ZWRUb3RhbEJ5dGVzID0gWzE4
ODQ4MywgMTkyODQ0XTsKLSAgICAgICAgICAgICAgICBpZiAoZXZlbnQudG90YWwgPT0gYWxsb3dl
ZFRvdGFsQnl0ZXNbMF0gfHwgZXZlbnQudG90YWwgPT0gYWxsb3dlZFRvdGFsQnl0ZXNbMV0pCi0g
ICAgICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiU1VDQ0VTUzogZXZlbnQudG90YWwgaXMg
IiArIGFsbG93ZWRUb3RhbEJ5dGVzWzBdICsgIiBvciAiICsgYWxsb3dlZFRvdGFsQnl0ZXNbMV0g
KyAiIChQbGF5YmFjayBlbmdpbmUgc3BlY2lmaWMpIik7CisgICAgICAgICAgICAgICAgdmFyIGFs
bG93ZWRUb3RhbEJ5dGVzID0gWzEwMzc0NiwgMTg4NDgzLCAxOTI4NDRdOworICAgICAgICAgICAg
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYWxsb3dlZFRvdGFsQnl0ZXMubGVuZ3RoOyArK2kpIHsK
KyAgICAgICAgICAgICAgICAgIGlmIChldmVudC50b3RhbCA9PSBhbGxvd2VkVG90YWxCeXRlc1tp
XSkKKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgIGlmIChpIDwgYWxsb3dlZFRvdGFsQnl0ZXMubGVuZ3RoKQorICAgICAgICAgICAg
ICAgICAgICBjb25zb2xlV3JpdGUoIlNVQ0NFU1M6IGV2ZW50LnRvdGFsIGlzICIgKyBhbGxvd2Vk
VG90YWxCeXRlcy5qb2luKCIgb3IgIikgKyAiIChQbGF5YmFjayBlbmdpbmUgc3BlY2lmaWMpIik7
CiAgICAgICAgICAgICAgICAgZWxzZQotICAgICAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUo
IkZBSUw6IGV2ZW50LnRvdGFsIHNob3VsZCBub3QgYmUgIiArIGV2ZW50LnRvdGFsICsgIiAoc2hv
dWxkIGJlICIgKyBhbGxvd2VkVG90YWxCeXRlc1swXSArICIgb3IgIiArIGFsbG93ZWRUb3RhbEJ5
dGVzWzFdICsgIikiKTsKKyAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCJGQUlMOiBl
dmVudC50b3RhbCBzaG91bGQgbm90IGJlICIgKyBldmVudC50b3RhbCArICIgKHNob3VsZCBiZSAi
ICsgYWxsb3dlZFRvdGFsQnl0ZXMuam9pbigiIG9yICIpICsgIikiKTsKICAgICAgICAgICAgICAg
ICBlbmRUZXN0KCk7CiAgICAgICAgICAgICB9CiAKQEAgLTM0LDggKzM5LDEyIEBACiAKICAgICA8
Ym9keSBvbmxvYWQ9InN0YXJ0KCkiPgogCi0gICAgICAgIDx2aWRlbyBjb250cm9scyBzcmM9ImNv
bnRlbnQvdGVzdC5tcDQiIG9ubG9hZHN0YXJ0PSJ0ZXN0T25Mb2FkU3RhcnQoKSIgb25sb2FkPSJ0
ZXN0T25Mb2FkKCkiPgorICAgICAgICA8dmlkZW8gY29udHJvbHMgb25sb2Fkc3RhcnQ9InRlc3RP
bkxvYWRTdGFydCgpIiBvbmxvYWQ9InRlc3RPbkxvYWQoKSI+CiAgICAgICAgIDwvdmlkZW8+CiAK
KyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHNldFNyY0J5VGFnTmFtZSgidmlkZW8iLCBm
aW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKSk7CisgICAgICAgIDwvc2NyaXB0
PgorCiAgICAgPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEv
cHJvZ3Jlc3MtZXZlbnQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3Byb2dyZXNzLWV2ZW50Lmh0
bWwKaW5kZXggMDA0ZDIzZS4uMTBjODlkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
cHJvZ3Jlc3MtZXZlbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9wcm9ncmVzcy1ldmVu
dC5odG1sCkBAIC0xLDYgKzEsNyBAQAogPGh0bWw+CiAgICAgPGhlYWQ+CiAKKyAgICAgICAgPHNj
cmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlk
ZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICAgIGZ1bmN0
aW9uIHRlc3RPbkxvYWRTdGFydCgpCkBAIC0yOSw4ICszMCwxMiBAQAogCiAgICAgPGJvZHkgb25s
b2FkPSJzdGFydCgpIj4KIAotICAgICAgICA8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiBj
b250cm9scyBvbmxvYWRzdGFydD0idGVzdE9uTG9hZFN0YXJ0KCkiIG9ubG9hZD0idGVzdE9uTG9h
ZCgpIj4KKyAgICAgICAgPHZpZGVvIGNvbnRyb2xzIG9ubG9hZHN0YXJ0PSJ0ZXN0T25Mb2FkU3Rh
cnQoKSIgb25sb2FkPSJ0ZXN0T25Mb2FkKCkiPgogICAgICAgICA8L3ZpZGVvPgogCisgICAgICAg
IDxzY3JpcHQ+CisgICAgICAgICAgICBzZXRTcmNCeVRhZ05hbWUoInZpZGVvIiwgZmluZE1lZGlh
RmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0IikpOworICAgICAgICA8L3NjcmlwdD4KKwogICAg
IDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3JlbW92ZS1m
cm9tLWRvY3VtZW50LW5vLWxvYWQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3JlbW92ZS1mcm9t
LWRvY3VtZW50LW5vLWxvYWQuaHRtbAppbmRleCAzMTNkMWU1Li4xZjlmNTg2IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9tZWRpYS9yZW1vdmUtZnJvbS1kb2N1bWVudC1uby1sb2FkLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvcmVtb3ZlLWZyb20tZG9jdW1lbnQtbm8tbG9hZC5odG1sCkBA
IC0xLDEwICsxLDExIEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIDxwPlRlc3QgdGhhdCBy
ZW1vdmluZyBhIG1lZGlhIGVsZW1lbnQgZnJvbSB0aGUgdHJlZSB3aGVuIG5vIG1lZGlhIGhhcyBi
ZWVuIGxvYWRlZCBkb2VzIG5vdCBnZW5lcmF0ZSBhIGxvYWQgZXZlbnQuPC9wPgorPHNjcmlwdCBz
cmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9z
Y3JpcHQ+CiA8c2NyaXB0PgogICAgIGRpZFJlY2VpdmVMb2FkU3RhcnRFdmVudCA9IGZhbHNlOwog
ICAgIHZpZGVvLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRzdGFydCcsIGZ1bmN0aW9uKCkgeyBkaWRS
ZWNlaXZlTG9hZFN0YXJ0RXZlbnQgPSB0cnVlOyB9KTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVu
dC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29u
dGVudC90ZXN0Iik7CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5uZXR3b3JrU3RhdGUiLCBIVE1M
TWVkaWFFbGVtZW50Lk5FVFdPUktfRU1QVFkpOwogICAgIHJ1bigiZG9jdW1lbnQuYm9keS5yZW1v
dmVDaGlsZCh2aWRlbykiKTsKICAgICB0ZXN0RXhwZWN0ZWQoImRpZFJlY2VpdmVMb2FkU3RhcnRF
dmVudCIsIGZhbHNlKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3JlbW92ZS1mcm9t
LWRvY3VtZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS9yZW1vdmUtZnJvbS1kb2N1bWVudC5o
dG1sCmluZGV4IDc2NzUzYWIuLjAzNWI2NmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlh
L3JlbW92ZS1mcm9tLWRvY3VtZW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvcmVtb3Zl
LWZyb20tZG9jdW1lbnQuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDx2aWRlbyBjb250cm9scyBhdXRv
cGxheT48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IHJlbW92aW5nIGEgbWVkaWEgZWxlbWVudCBmcm9t
IHRoZSB0cmVlIHBhdXNlcyBwbGF5YmFjayBidXQgZG9lcyBub3QgdW5sb2FkIHRoZSBtZWRpYS48
L3A+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlk
ZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgd2FpdEZvckV2ZW50KCdsb2FkJywg
ZnVuY3Rpb24gKCkgewpAQCAtMTYsNSArMTcsNSBAQAogICAgICAgICBlbmRUZXN0KCk7CiAgICAg
fSApOwogCi12aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7Cit2aWRlby5zcmMgPSBmaW5k
TWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdW5zdXBwb3J0ZWQtdHJhY2tzLmh0bWwgYi9MYXlvdXRUZXN0
cy9tZWRpYS91bnN1cHBvcnRlZC10cmFja3MuaHRtbAppbmRleCBiZDlmMWRjLi41N2QwNWM5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS91bnN1cHBvcnRlZC10cmFja3MuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS91bnN1cHBvcnRlZC10cmFja3MuaHRtbApAQCAtMSw4ICsxLDkg
QEAKIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogPHA+VGVzdCB0aGF0IFF1aWNrVGltZSBmaWxl
IHdpdGggdW5zdXBwb3J0ZWQgdHJhY2sgdHlwZXMgb25seSBnZW5lcmF0ZXMgYW4gZXJyb3IuPHA+
Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8t
dGVzdC5qcz48L3NjcmlwdD4KIDxzY3JpcHQ+Ci12aWRlby5zcmMgPSAiY29udGVudC91bnN1cHBv
cnRlZF90cmFjay5tcDQiOwordmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29u
dGVudC91bnN1cHBvcnRlZF90cmFjayIpOwogd2FpdEZvckV2ZW50KCJlcnJvciIsIGZ1bmN0aW9u
ICgpIHsKICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLmVycm9yIiwgbnVsbCwgIiE9Iik7CiAgICAg
ZW5kVGVzdCgpOwo=
</data>
<flag name="review"
          id="20855"
          type_id="1"
          status="+"
          setter="eric.carlson"
    />
    <flag name="commit-queue"
          id="20892"
          type_id="3"
          status="-"
          setter="eric.carlson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39779</attachid>
            <date>2009-09-18 12:46:47 -0700</date>
            <delta_ts>2009-09-18 18:13:04 -0700</delta_ts>
            <desc>Third round of changes by alpha - 25 tests</desc>
            <filename>webkit-codecs-3.patch</filename>
            <type>text/plain</type>
            <size>25025</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBlN2E4ZWEzLi43MDcxMmMwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMDktMDkt
MTggIEFscGhhIExhbSAgPGhjbGFtQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNZWRpYSBsYXlvdXQgdGVzdHMgc2hvdWxkIGhh
dmUgYSB3YXkgdG8gcHJvdmlkZSB0ZXN0IGZpbGVzIGluIGRpZmZlcmVudCBmb3JtYXRzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yODMyNworCisgICAg
ICAgIFVwZGF0aW5nIDI1IG1lZGlhIGxheW91dCB0ZXN0cyB0byB1c2UgbWVkaWEgZmlsZXMgYmFz
ZWQgb24gc3VwcG9ydGVkIGNvZGVjcy4KKworICAgICAgICAqIG1lZGlhL3Byb2dyZXNzLWV2ZW50
LWF0LWxlYXN0LW9uZS5odG1sOiBVc2UgZmluZE1lZGlhRmlsZSgpIHRvIGxvY2F0ZSBhIHN1cHBv
cnRlZCBtZWRpYSBmaWxlLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXBhdXNlLWVtcHR5LWV2ZW50
cy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5LWVtcHR5LWV2ZW50cy5o
dG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5LXBhdXNlLWV2ZW50cy5odG1s
OiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1wbGF5ZWQtY29sbGFwc2UuaHRtbDogZGl0
dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLmh0bWw6IGRpdHRvLgor
ICAgICAgICAqIG1lZGlhL3ZpZGVvLXBsYXllZC1yZXNldC5odG1sOiBkaXR0by4KKyAgICAgICAg
KiBtZWRpYS92aWRlby1wbGF5ZWQuanM6IGRpdHRvLgorICAgICAgICAodmlkZW9QbGF5ZWRNYWlu
KToKKyAgICAgICAgKiBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBhdXNlZC5odG1sOiBkaXR0
by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBsYXlpbmcuaHRtbDogZGl0
dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc2Vla2FibGUuaHRtbDogZGl0dG8uCisgICAgICAg
ICogbWVkaWEvdmlkZW8tc2Vla2luZy5odG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRl
by1zaXplLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXNvdXJjZS1lcnJvci5o
dG1sOiBkaXR0by4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zb3VyY2UtdHlwZS1wYXJhbXMuaHRt
bDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tc291cmNlLXR5cGUuaHRtbDogZGl0dG8u
CisgICAgICAgICogbWVkaWEvdmlkZW8tc291cmNlLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1l
ZGlhL3ZpZGVvLXNyYy1jaGFuZ2UuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8t
c3JjLWludmFsaWQtcmVtb3ZlLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXNy
Yy1yZW1vdmUuaHRtbDogZGl0dG8uIFVzZSBjb3VudGluZy5tcDQgaW5zdGVhZCBvZiBzaWxlbmNl
Lm1wZy4KKyAgICAgICAgKiBtZWRpYS92aWRlby1zcmMtcmVtb3ZlLWV4cGVjdGVkLnR4dDogVXBk
YXRlZCByZXN1bHRzLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXNyYy1zZXQuaHRtbDogZGl0dG8u
CisgICAgICAgICogbWVkaWEvdmlkZW8tc3JjLXNvdXJjZS5odG1sOiBkaXR0by4KKyAgICAgICAg
KiBtZWRpYS92aWRlby1zcmMuaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlkZW8tdGlt
ZXVwZGF0ZS1kdXJpbmctcGxheWJhY2suaHRtbDogZGl0dG8uCisgICAgICAgICogbWVkaWEvdmlk
ZW8tdm9sdW1lLmh0bWw6IGRpdHRvLgorICAgICAgICAqIG1lZGlhL3ZpZGVvLXpvb20uaHRtbDog
ZGl0dG8uCisKIDIwMDktMDktMTAgIEppYW4gTGkgIDxqaWFubGlAY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
bWVkaWEvcHJvZ3Jlc3MtZXZlbnQtYXQtbGVhc3Qtb25lLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1vbmUuaHRtbAppbmRleCBmNzZjZDk0Li45Zjg2ODE2
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1v
bmUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS9wcm9ncmVzcy1ldmVudC1hdC1sZWFzdC1v
bmUuaHRtbApAQCAtMSw1ICsxLDYgQEAKIDxodG1sPgogICAgIDxoZWFkPgorICAgICAgICA8c2Ny
aXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRl
by10ZXN0LmpzPjwvc2NyaXB0PgogCiAgICAgICAgIDxzY3JpcHQ+CkBAIC00NCw3ICs0NSw4IEBA
CiAgICAgICAgICAgICAgICAgd2FpdEZvckV2ZW50KCdsb2FkZWRtZXRhZGF0YScpOwogICAgICAg
ICAgICAgICAgIHdhaXRGb3JFdmVudCgnbG9hZGVkZGF0YScpOwogCi0gICAgICAgICAgICAgICAg
cnVuKCJtZWRpYUVsZW1lbnQuc3JjID0gJ2NvbnRlbnQvdGVzdC53YXYnIik7CisgICAgICAgICAg
ICAgICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoImF1ZGlvIiwgImNvbnRlbnQvdGVz
dCIpOworICAgICAgICAgICAgICAgIHJ1bigibWVkaWFFbGVtZW50LnNyYyA9ICciICsgbWVkaWFG
aWxlICsgIiciKTsKICAgICAgICAgICAgICAgICBydW4oIm1lZGlhRWxlbWVudC5sb2FkKCkiKTsK
IAogICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9tZWRpYS92aWRlby1wYXVzZS1lbXB0eS1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL21l
ZGlhL3ZpZGVvLXBhdXNlLWVtcHR5LWV2ZW50cy5odG1sCmluZGV4IDY1NzMzMDQuLjE1MTM0NDIg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBhdXNlLWVtcHR5LWV2ZW50cy5o
dG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBhdXNlLWVtcHR5LWV2ZW50cy5odG1s
CkBAIC0xLDggKzEsOSBAQAogPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQg
cGF1c2UoKSBmcm9tIEVNUFRZIG5ldHdvcmsgc3RhdGUgdHJpZ2dlcnMgbG9hZCgpPC9wPgorPHNj
cmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3Qu
anM+PC9zY3JpcHQ+CiA8c2NyaXB0PgotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0
IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3Qi
KTsKICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLm5ldHdvcmtTdGF0ZSIsIEhUTUxNZWRpYUVsZW1l
bnQuTkVUV09SS19FTVBUWSk7CiAKICAgICB3YWl0Rm9yRXZlbnQoImxvYWRzdGFydCIpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheS1lbXB0eS1ldmVudHMuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXktZW1wdHktZXZlbnRzLmh0bWwKaW5kZXggMDNi
MmE2Zi4uZGVhMTQ4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheS1l
bXB0eS1ldmVudHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5LWVtcHR5
LWV2ZW50cy5odG1sCkBAIC0zLDYgKzMsNyBAQAogCiAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlk
ZW8+CiAgICAgPHA+VGVzdCB0aGF0IHBsYXkoKSBmcm9tIEVNUFRZIG5ldHdvcmsgc3RhdGUgdHJp
Z2dlcnMgbG9hZCgpIGFuZCBhc3luYyBwbGF5IGV2ZW50LjwvcD4KKyAgICA8c2NyaXB0IHNyYz1t
ZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9z
Y3JpcHQ+CiAgICAgPHNjcmlwdD4KICAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby5uZXR3b3Jr
U3RhdGUiLCBIVE1MTWVkaWFFbGVtZW50Lk5FVFdPUktfRU1QVFkpOwpAQCAtMjAsNyArMjEsNyBA
QAogICAgIAogICAgICAgICB3YWl0Rm9yRXZlbnQoJ3BsYXlpbmcnLCBmdW5jdGlvbiAoKSB7IHRl
c3RFeHBlY3RlZCgidmlkZW8ucGF1c2VkIiwgZmFsc2UpOyBlbmRUZXN0KCk7IH0gKTsKICAgICAK
LSAgICAgICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAgICAgICB2aWRlby5z
cmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKICAgICAgICAgcnVu
KCJ2aWRlby5wbGF5KCkiKTsKICAgICAgICAgY29uc29sZVdyaXRlKCJTQ1JJUFQgRE9ORSIpOwog
ICAgIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheS1w
YXVzZS1ldmVudHMuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXktcGF1c2UtZXZl
bnRzLmh0bWwKaW5kZXggY2FjOTA0OC4uODdlYzc4MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tcGxheS1wYXVzZS1ldmVudHMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1wbGF5LXBhdXNlLWV2ZW50cy5odG1sCkBAIC0xLDggKzEsOSBAQAogPHZpZGVvIGNv
bnRyb2xzPjwvdmlkZW8+CiA8cD5UZXN0IHRoYXQgY2FsbGluZyBwbGF5KCkgYW5kIHBhdXNlKCkg
dHJpZ2dlcnMgYXN5bmMgcGxheSwgdGltZXVwZGF0ZSBhbmQgcGF1c2UgZXZlbnRzLjwvcD4KKzxz
Y3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0
LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1w
NCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Lm1wNCIpOwogCiAgICAgd2FpdEZvckV2ZW50KCJsb2Fkc3RhcnQiKTsKICAgICB3YWl0Rm9yRXZl
bnQoInJhdGVjaGFuZ2UiKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBs
YXllZC1jb2xsYXBzZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLWNvbGxh
cHNlLmh0bWwKaW5kZXggMGNjYTQwZC4uNWU4MWZiNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tcGxheWVkLWNvbGxhcHNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tcGxheWVkLWNvbGxhcHNlLmh0bWwKQEAgLTEsNiArMSw3IEBACiA8aHRtbD4KICAgICA8
aGVhZD4KICAgICAgICAgPHRpdGxlPlRlc3Qgb2YgJ3BsYXllZCcgYXR0cmlidXRlPC90aXRsZT4K
KyAgICAgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9dmlk
ZW8tcGxheWVkLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLXJhbmdlcy0xLmh0bWwgYi9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1wbGF5ZWQtcmFuZ2VzLTEuaHRtbAppbmRleCA5NTVjZTZmLi44MDEzMTYwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmFuZ2VzLTEuaHRtbAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmFuZ2VzLTEuaHRtbApAQCAtMSw2
ICsxLDcgQEAKIDxodG1sPgogICAgIDxoZWFkPgogICAgICAgICA8dGl0bGU+VGVzdCBvZiAncGxh
eWVkJyBhdHRyaWJ1dGU8L3RpdGxlPgorICAgICAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpz
Pjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0Pgog
ICAgICAgICA8c2NyaXB0IHNyYz12aWRlby1wbGF5ZWQuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxz
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQtcmVzZXQu
aHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC1yZXNldC5odG1sCmluZGV4IGRj
Y2ExZDYuLjNiMjFjM2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXll
ZC1yZXNldC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC1yZXNldC5o
dG1sCkBAIC0xLDYgKzEsNyBAQAogPGh0bWw+CiAgICAgPGhlYWQ+CiAgICAgICAgIDx0aXRsZT5U
ZXN0IG9mICdwbGF5ZWQnIGF0dHJpYnV0ZTwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgc3JjPW1l
ZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXBsYXllZC5qcz48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdD4KQEAgLTQwLDcgKzQxLDggQEAKICAgICAgICAgICAgICAgICB3aWxs
UGF1c2VJbkV4aXN0aW5nUmFuZ2UgPSBmYWxzZTsKICAgICAgICAgICAgICAgICB3aWxsRXh0ZW5k
QW5FeGlzdGluZ1JhbmdlID0gZmFsc2U7CiAKLSAgICAgICAgICAgICAgICBydW4oInZpZGVvLnNy
YyA9IFwiY29udGVudC90ZXN0Lm1wNFwiIik7CisgICAgICAgICAgICAgICAgdmFyIG1lZGlhRmls
ZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAgICAgICAgICAg
ICAgIHJ1bigidmlkZW8uc3JjID0gXCIiICsgbWVkaWFGaWxlICsgIlwiIik7CiAgICAgICAgICAg
ICAgICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsgLy8gVHJpZ2dlcnMgY2FucGxheSgpCiAgICAgICAg
ICAgICB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC5qcyBi
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXBsYXllZC5qcwppbmRleCBiNmQ2NTE2Li41Nzc0OTY4
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1wbGF5ZWQuanMKKysrIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tcGxheWVkLmpzCkBAIC0xNDIsNyArMTQyLDcgQEAgZnVuY3Rp
b24gdmlkZW9QbGF5ZWRNYWluKCkKIHsKICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CiAgICAgCi0g
ICAgdmlkZW8uc3JjID0gJ2NvbnRlbnQvdGVzdC5tcDQnOworICAgIHZpZGVvLnNyYyA9IGZpbmRN
ZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOwogICAgIAogICAgIHdhaXRGb3JFdmVu
dCgiZXJyb3IiKTsKICAgICB3YWl0Rm9yRXZlbnQoImxvYWRzdGFydCIpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2Vlay1wYXN0LWVuZC1wYXVzZWQuaHRtbCBiL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGF1c2VkLmh0bWwKaW5kZXggNWYxMzc2
OS4uOTg1NWNlNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2Vlay1wYXN0
LWVuZC1wYXVzZWQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrLXBhc3Qt
ZW5kLXBhdXNlZC5odG1sCkBAIC0xLDYgKzEsNyBAQAogCiA8dmlkZW8gY29udHJvbHM+PC92aWRl
bz4KIDxwPlRlc3QgdGhhdCBzZWVraW5nIHBhdXNlZCB2aWRlbyBwYXN0IGl0J3MgZHVyYXRpb24g
dGltZSBzZXRzIGN1cnJlbnRUaW1lIHRvIGR1cmF0aW9uIGFuZCBsZWF2ZXMgdmlkZW8gcGF1c2Vk
LjwvcD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12
aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KIApAQCAtMzUsNyArMzYsOCBAQAogICAg
ICAgICBlbmRUZXN0KCk7CiAgICAgfQogCi0gICAgcnVuKCJ2aWRlby5zcmMgPSAnY29udGVudC90
ZXN0Lm1wNCciKTsKKyAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAi
Y29udGVudC90ZXN0Iik7CisgICAgcnVuKCJ2aWRlby5zcmMgPSAnIiArIG1lZGlhRmlsZSArICIn
Iik7CiAgICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsKICAgICBjb25zb2xlV3JpdGUoIiIpOwogPC9z
Y3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrLXBhc3QtZW5k
LXBsYXlpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxh
eWluZy5odG1sCmluZGV4IDRhM2Y5ZjIuLjJhOGRkMjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sCisrKyBiL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXNlZWstcGFzdC1lbmQtcGxheWluZy5odG1sCkBAIC0xLDUgKzEsNiBAQAog
PHZpZGVvIGxvb3AgY29udHJvbHM+PC92aWRlbz4KIDxwPlRlc3QgdGhhdCBzZWVraW5nIHZpZGVv
IHdpdGggJ2xvb3AnIHBhc3QgaXQncyBlbmQgcmV3aW5kcyB0byB0aGUgYmVnaW5uaW5nIGFuZCBj
b250aW51ZXMgcGxheWJhY2suPC9wPgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgogCkBAIC0y
OSw2ICszMCw3IEBACiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9CiAKLSAgICBydW4oInZpZGVv
LnNyYyA9ICdjb250ZW50L3Rlc3QubXA0JyIpOworICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVk
aWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICBydW4oInZpZGVvLnNyYyA9ICci
ICsgbWVkaWFGaWxlICsgIiciKTsKICAgICBjb25zb2xlV3JpdGUoIiIpOwogPC9zY3JpcHQ+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrYWJsZS5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdmlkZW8tc2Vla2FibGUuaHRtbAppbmRleCBjM2ZjOGEwLi4yZjZlMzM5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zZWVrYWJsZS5odG1sCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWthYmxlLmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlk
ZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0
RXhwZWN0ZWQoInZpZGVvLnNlZWthYmxlLmxlbmd0aCIsIDApOwpAQCAtMTksNSArMjAsNSBAQAog
ICAgICAgICAgICAgZW5kVGVzdCgpOwogICAgICAgICB9CiAgICAgKTsKLSAgICB2aWRlby5zcmMg
PSAiY29udGVudC90ZXN0Lm1wNCI7CisgICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlk
ZW8iLCAiY29udGVudC90ZXN0Iik7CiA8L3NjcmlwdD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3ZpZGVvLXNlZWtpbmcuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNlZWtp
bmcuaHRtbAppbmRleCA1MWJiODBmLi5kYWJhNmJkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1zZWVraW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2Vl
a2luZy5odG1sCkBAIC0zLDYgKzMsNyBAQAogIGdvZXMgYmFjayB0byBmYWxzZSB3aGVuIHNlZWtp
bmcgY29tcGxldGVzLCBhbmQgdGhhdCBhICdzZWVrZWQnIGV2ZW50CiAgaXMgZmlyZWQgZm9yIGVh
Y2ggc2VlawogIDwvcD4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KIApAQCAtNDcsNSArNDgs
NSBAQAogICAgIHdhaXRGb3JFdmVudCgnc2Vla2VkJywgc2Vla2VkICk7CiAgICAgd2FpdEZvckV2
ZW50KCdsb2FkJywgbG9hZGVkKTsKIAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50L3Rlc3QubXA0
IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3Qi
KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2l6ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc2l6ZS5odG1sCmluZGV4IDJmNTYyMDguLmNh
MjE5ZjkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNpemUuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zaXplLmh0bWwKQEAgLTEsNCArMSw1IEBACiA8dmlk
ZW8gY29udHJvbHM+PC92aWRlbz4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHNjcmlwdD4KICAgICB0ZXN0
RXhwZWN0ZWQoInZpZGVvLnZpZGVvV2lkdGgiLCAwLCAiPT0iKTsKQEAgLTEwLDUgKzExLDUgQEAK
ICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0gKTsKIAotICAgIHZpZGVvLnNyYyA9ICJjb250ZW50
L3Rlc3QubXA0IjsKKyAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250
ZW50L3Rlc3QiKTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tc291cmNlLWVycm9yLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UtZXJy
b3IuaHRtbAppbmRleCAyYTk5NmY5Li40N2FkNmQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9t
ZWRpYS92aWRlby1zb3VyY2UtZXJyb3IuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1zb3VyY2UtZXJyb3IuaHRtbApAQCAtMiw2ICsyLDcgQEAKICAgICA8aGVhZD4KICAgICAgICAg
PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJz
ZXQ9dXRmLTgiPgogICAgICAgICA8dGl0bGU+Jmx0O3ZpZGVvJmd0OyBhbmQgJmx0O3NvdXJjZSZn
dDsgZXJyb3IgdGVzdDwvdGl0bGU+CisgICAgICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAK
ICAgICAgICAgPHNjcmlwdD4KQEAgLTExLDcgKzEyLDcgQEAKICAgICAgICAgICAgIGZ1bmN0aW9u
IGxvYWRlZGRhdGEoKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0
ZSgiIik7Ci0gICAgICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5j
dXJyZW50U3JjKSIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgICAgICAgICAgdGVzdEV4
cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsIGZpbmRNZWRpYUZpbGUoInZp
ZGVvIiwgImNvbnRlbnQvdGVzdCIpKTsKICAgICAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoInZp
ZGVvLmVycm9yIiwgbnVsbCk7CiAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAg
ICAgICAgICAgICAgICBlbmRUZXN0KCk7CkBAIC02Miw3ICs2Myw4IEBACiAgICAgICAgICAgICA8
c291cmNlIGlkPXVuc3VwcG9ydGVkLW1lZGlhLXF1ZXJ5IHNyYz1jb250ZW50L3Rlc3QubXA0IG1l
ZGlhPXByaW50PgogICAgICAgICAgICAgPHNvdXJjZSBpZD1taXNzaW5nLWZpbGUgc3JjPWNvbnRl
bnQvZXJyb3IyLm1wZWcgdHlwZT12aWRlby9tcGVnPgogICAgICAgICAgICAgPHNvdXJjZSBpZD1m
b3JtYXQtZXJyb3Igc3JjPSJjb250ZW50L3Vuc3VwcG9ydGVkX3RyYWNrLm1vdiI+Ci0gICAgICAg
ICAgICA8c291cmNlIGlkPXN1cHBvcnRlZC1mb3JtYXQgc3JjPWNvbnRlbnQvdGVzdC5tcDQgdHlw
ZT0idmlkZW8vbXBlZzsgY29kZWNzPSZxdW90O2F2YzEuNEQ0MDBDJnF1b3Q7Ij4KKyAgICAgICAg
ICAgIDxzb3VyY2UgaWQ9c3VwcG9ydGVkLWZvcm1hdC1tcDQgc3JjPWNvbnRlbnQvdGVzdC5tcDQg
dHlwZT0idmlkZW8vbXBlZzsgY29kZWNzPSZxdW90O2F2YzEuNEQ0MDBDJnF1b3Q7Ij4KKyAgICAg
ICAgICAgIDxzb3VyY2UgaWQ9c3VwcG9ydGVkLWZvcm1hdC1vZ3Ygc3JjPWNvbnRlbnQvdGVzdC5v
Z3YgdHlwZT0idmlkZW8vb2dnIj4KICAgICAgICAgPC92aWRlbz4KICAgICAgICAgCiAgICAgICAg
IDxwPjEuIFRlc3QgdGhhdCBlcnJvcnMgZmlyZWQgd2hpbGUgZXZhbHVhdGluZy9sb2FkaW5nICZs
dDtzb3VyY2UmZ3Q7IGVsZW1lbnRzIGFyZSBmaXJlZCBhdCB0aGUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10eXBlLXBhcmFtcy5odG1sIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdmlkZW8tc291cmNlLXR5cGUtcGFyYW1zLmh0bWwKaW5kZXggODI0YTg5ZS4uNmI5YTc3
YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLXR5cGUtcGFyYW1z
Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLXR5cGUtcGFyYW1zLmh0
bWwKQEAgLTEsMTQgKzEsMTYgQEAKIDxib2R5PgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8dmlkZW8gY29u
dHJvbHM+CiAgICAgPHNvdXJjZSBzcmM9Y29udGVudC9ib2d1cy5tcGVnIHR5cGU9InZpZGVvL2Js
YWhibGFoIj4KICAgICA8c291cmNlIHNyYz1jb250ZW50L3Rlc3QubXA0IHR5cGU9InZpZGVvL21w
ZWc7IGNvZGVjcz0mcXVvdDthdmMxLjRENDAwQyZxdW90OyI+CisgICAgPHNvdXJjZSBzcmM9Y29u
dGVudC90ZXN0Lm9ndiB0eXBlPSJ2aWRlby9vZ2c7IGNvZGVjcz0mcXVvdDt0aGVvcmEsdm9yYmlz
JnF1b3Q7Ij4KICAgICA8c291cmNlIHNyYz1jb250ZW50L2Vycm9yMi5tcGVnIHR5cGU9dmlkZW8v
bXBlZz4KIDwvdmlkZW8+CiA8c2NyaXB0PgogICAgIHZpZGVvID0gbWVkaWFFbGVtZW50ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3ZpZGVvJylbMF07CiAgICAgd2FpdEZvckV2ZW50
KCdsb2Fkc3RhcnQnLCBmdW5jdGlvbiAoKSB7IAotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0
aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAg
dGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsIGZpbmRNZWRpYUZp
bGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpKTsKICAgICAgICAgZW5kVGVzdCgpOwogICAgIH0g
KTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNl
LXR5cGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNvdXJjZS10eXBlLmh0bWwKaW5k
ZXggODhiN2ZhOC4uMmYwZTJhNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
c291cmNlLXR5cGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UtdHlw
ZS5odG1sCkBAIC0xLDE1ICsxLDE3IEBACiA8Ym9keT4KKzxzY3JpcHQgc3JjPW1lZGlhLWZpbGUu
anM+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogPHZpZGVv
IGNvbnRyb2xzPgogICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvZXJyb3IubXBlZyB0eXBlPXZpZGVv
L2JsYWhibGFoPgogICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvdGVzdC5tcDQgdHlwZT12aWRlby9t
cGVnPgorICAgIDxzb3VyY2Ugc3JjPWNvbnRlbnQvdGVzdC5vZ3YgdHlwZT12aWRlby9vZ2c+CiAg
ICAgPHNvdXJjZSBzcmM9Y29udGVudC9lcnJvcjIubXBlZyB0eXBlPXZpZGVvL21wZWc+CiA8L3Zp
ZGVvPgogPHNjcmlwdD4KICAgICB2aWRlbyA9IG1lZGlhRWxlbWVudCA9IGRvY3VtZW50LmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCd2aWRlbycpWzBdOwogCiAgICAgd2FpdEZvckV2ZW50KCJsb2Fkc3Rh
cnQiLCBmdW5jdGlvbiAoKSB7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlk
ZW8uY3VycmVudFNyYykgIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAgdGVzdEV4cGVj
dGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAiLCBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9KTsKIDwvc2Ny
aXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc291cmNlLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UuaHRtbAppbmRleCA5Njg3MWRlLi45ZWFlNjc5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9tZWRpYS92aWRlby1zb3VyY2UuaHRtbApAQCAtMSwxMyArMSwxNiBAQAogPGJv
ZHk+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlk
ZW8tdGVzdC5qcz48L3NjcmlwdD4KLTx2aWRlbyBjb250cm9scz4KLSAgICA8c291cmNlIHNyYz1j
b250ZW50L3Rlc3QubXA0PgotPC92aWRlbz4KLQorPGRpdiBpZD1wYW5lbD48L2Rpdj4KKzxzY3Jp
cHQ+CisgICAgdmFyIHBhbmVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhbmVsIik7Cisg
ICAgdmFyIG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIp
OworICAgIHBhbmVsLmlubmVySFRNTCA9ICI8dmlkZW8gY29udHJvbHM+PHNvdXJjZSBzcmM9JyIg
KyBtZWRpYUZpbGUgKyAiJz48L3ZpZGVvPiI7Cis8L3NjcmlwdD4KIDxzY3JpcHQ+CiAgICAgdmlk
ZW8gPSBtZWRpYUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgndmlkZW8n
KVswXTsKICAgICB3YWl0Rm9yRXZlbnQoImxvYWRzdGFydCIsIGZ1bmN0aW9uICgpIHsKLSAgICAg
ICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSAiLCAiY29udGVu
dC90ZXN0Lm1wNCIpOworICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1
cnJlbnRTcmMpICIsIG1lZGlhRmlsZSk7CiAgICAgICAgIGVuZFRlc3QoKTsKICAgICB9KTsKIDwv
c2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWNoYW5nZS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWNoYW5nZS5odG1sCmluZGV4IGIwYjgw
MWIuLjhhNjU4MzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1jaGFu
Z2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtY2hhbmdlLmh0bWwKQEAg
LTgsMjIgKzgsMjQgQEAKICAgICAyLiBUZXN0IHRoYXQgY2hhbmdpbmcgc3JjIGF0dHJpYnV0ZSB0
cmlnZ2VycyBsb2FkIGFmdGVyIGEgbG9hZCBmYWlscy48YnI+CiAgICAgMy4gVGVzdCB0aGF0IGNo
YW5naW5nIHNyYyBkb2VzIG5vdCB0cmlnZ2VyIGxvYWQgb25jZSBhIGZpbGUgaXMgbG9hZGVkLgog
ICAgIDwvcAorICAgIDxzY3JpcHQgc3JjPW1lZGlhLWZpbGUuanM+PC9zY3JpcHQ+CiAgICAgPHNj
cmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0PgotICAgIAorICAg
ICAgICB2YXIgbWVkaWFGaWxlID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0
Iik7CisKICAgICAgICAgZnVuY3Rpb24gZXJyb3JFdmVudCgpCiAgICAgICAgIHsKICAgICAgICAg
ICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiYm9ndXMi
KTsKICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8ubmV0d29ya1N0YXRlIiwgSFRNTE1l
ZGlhRWxlbWVudC5ORVRXT1JLX05PX1NPVVJDRSk7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQo
InZpZGVvLmVycm9yLmNvZGUiLCBNZWRpYUVycm9yLk1FRElBX0VSUl9TUkNfTk9UX1NVUFBPUlRF
RCk7CiAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwotICAgICAgICAgICAgcnVuKCJ2aWRl
by5zZXRBdHRyaWJ1dGUoJ3NyYycsICdjb250ZW50L3Rlc3QubXA0JykiKTsKKyAgICAgICAgICAg
IHJ1bigidmlkZW8uc2V0QXR0cmlidXRlKCdzcmMnLCAnIiArIG1lZGlhRmlsZSArICInKSIpOwog
ICAgICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKICAgICAgICAgfQogICAgIAogICAgICAgICBm
dW5jdGlvbiBsb2FkZWRtZXRhZGF0YSgpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIp
OworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3Jj
KSIsIG1lZGlhRmlsZSk7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImlzTmFOKHZpZGVvLmR1
cmF0aW9uKSIsIGZhbHNlKTsKICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAg
ICAgICBydW4oInZpZGVvLnNldEF0dHJpYnV0ZSgnc3JjJywgJ2NvbnRlbnQvc2lsZW5jZS5tcGcn
KSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLWludmFsaWQtcmVt
b3ZlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtaW52YWxpZC1yZW1vdmUuaHRt
bAppbmRleCAxZDIzMDhhLi5kMDNhY2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS92
aWRlby1zcmMtaW52YWxpZC1yZW1vdmUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRl
by1zcmMtaW52YWxpZC1yZW1vdmUuaHRtbApAQCAtMSwxMCArMSwxNCBAQAogPGh0bWw+CiA8Ym9k
eT4KKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQg
c3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAKLSAgICA8dmlkZW8gc3JjPWJvZ3VzLm1vdiBj
b250cm9scz4KLSAgICAgICAgPHNvdXJjZSBzcmM9Y29udGVudC90ZXN0Lm1wND4KLSAgICA8L3Zp
ZGVvPgorICAgIDxkaXYgaWQ9cGFuZWw+PC9kaXY+CisgICAgPHNjcmlwdD4KKyAgICAgICAgdmFy
IHBhbmVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhbmVsIik7CisgICAgICAgIHZhciBt
ZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAg
ICAgcGFuZWwuaW5uZXJIVE1MID0gIjx2aWRlbyBzcmM9Ym9ndXMubW92IGNvbnRyb2xzPjxzb3Vy
Y2Ugc3JjPSIgKyBtZWRpYUZpbGUgKyAiPjwvdmlkZW8+IjsKKyAgICA8L3NjcmlwdD4KIAogICAg
IDxwPlRlc3QgdGhhdCByZW1vdmluZyBpbnZhbGlkICdzcmMnIGF0dHJpYnV0ZSB0cmlnZ2VycyBs
b2FkIG9mICZsdDtzb3VyY2UmZ3Q7IGVsZW1lbnRzPC9wPgogCkBAIC0xOSw3ICsyMyw3IEBACiAg
ICAgICAgICAgICBpZiAobG9hZENvdW50ID09IDEpCiAgICAgICAgICAgICAgICAgdGVzdEV4cGVj
dGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsICJib2d1cy5tb3YiKTsKICAgICAg
ICAgICAgIGVsc2UgaWYgKGxvYWRDb3VudCA9PSAyKQotICAgICAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIp
OworICAgICAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVu
dFNyYykiLCBtZWRpYUZpbGUpOwogICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIGZh
aWxUZXN0KCInbG9hZENvdW50JyBmaXJlZCAiICsgbG9hZENvdW50ICsgInRpbWVzIiApOwogICAg
ICAgICAgICAgY29uc29sZVdyaXRlKCIiKTsKQEAgLTI3LDcgKzMxLDcgQEAKIAogICAgICAgICBm
dW5jdGlvbiBsb2FkZWRtZXRhZGF0YSgpCiAgICAgICAgIHsKLSAgICAgICAgICAgIHRlc3RFeHBl
Y3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCAiY29udGVudC90ZXN0Lm1wNCIp
OworICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3Jj
KSIsIG1lZGlhRmlsZSk7CiAgICAgICAgICAgICB0ZXN0RXhwZWN0ZWQoImlzTmFOKHZpZGVvLmR1
cmF0aW9uKSIsIGZhbHNlKTsKICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiIik7CiAgICAgICAg
IH0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1yZW1vdmUtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLXJlbW92ZS1leHBlY3RlZC50eHQK
aW5kZXggODY1YzVlZi4uMDhlZDRlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tc3JjLXJlbW92ZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
c3JjLXJlbW92ZS1leHBlY3RlZC50eHQKQEAgLTEsMTEgKzEsMTEgQEAKIAogRVZFTlQobG9hZGVk
bWV0YWRhdGEpCi1FWFBFQ1RFRCAocmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgPT0gJ2Nv
bnRlbnQvc2lsZW5jZS5tcGcnKSBPSworRVhQRUNURUQgKHJlbGF0aXZlVVJMKHZpZGVvLmN1cnJl
bnRTcmMpID09ICdjb250ZW50L3Rlc3QubXA0JykgT0sKIEVYUEVDVEVEIChpc05hTih2aWRlby5k
dXJhdGlvbikgPT0gJ2ZhbHNlJykgT0sKIAogUlVOKHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgnc3Jj
JykpCiAKLUVYUEVDVEVEIChyZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSA9PSAnY29udGVu
dC9zaWxlbmNlLm1wZycpIE9LCitFWFBFQ1RFRCAocmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNy
YykgPT0gJ2NvbnRlbnQvdGVzdC5tcDQnKSBPSwogRVhQRUNURUQgKGlzTmFOKHZpZGVvLmR1cmF0
aW9uKSA9PSAnZmFsc2UnKSBPSwogCiBFTkQgT0YgVEVTVApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tc3JjLXJlbW92ZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8t
c3JjLXJlbW92ZS5odG1sCmluZGV4IDIzZmYxOGYuLjM0MTAyMGQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1yZW1vdmUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby1zcmMtcmVtb3ZlLmh0bWwKQEAgLTEsMTAgKzEsMTMgQEAKIDxodG1sPgogPGJvZHk+
CisgICAgPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KICAgICA8c2NyaXB0IHNy
Yz12aWRlby10ZXN0LmpzPjwvc2NyaXB0PgotCi0gICAgPHZpZGVvIHNyYz1jb250ZW50L3NpbGVu
Y2UubXBnIGNvbnRyb2xzIG9ubG9hZGVkbWV0YWRhdGE9ImxvYWRlZG1ldGFkYXRhKCkiID4KLSAg
ICAgICAgPHNvdXJjZSBzcmM9Y29udGVudC90ZXN0Lm1wND4KLSAgICA8L3ZpZGVvPgorICAgIDxk
aXYgaWQ9cGFuZWw+PC9kaXY+CisgICAgPHNjcmlwdD4KKyAgICAgICAgdmFyIHBhbmVsID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhbmVsIik7CisgICAgICAgIHZhciBtZWRpYUZpbGUgPSBm
aW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICAgICAgcGFuZWwuaW5u
ZXJIVE1MID0gIjx2aWRlbyBzcmM9IiArIG1lZGlhRmlsZSArICIgY29udHJvbHMgb25sb2FkZWRt
ZXRhZGF0YT0nbG9hZGVkbWV0YWRhdGEoKSc+PHNvdXJjZSBzcmM9Y29udGVudC9jb3VudGluZy5t
cDQ+PC92aWRlbz4iOworICAgIDwvc2NyaXB0PgogCiAgICAgPHA+VGVzdCB0aGF0IHJlbW92aW5n
IHZhbGlkICdzcmMnIGF0dHJpYnV0ZSBET0VTIE5PVCB0cmlnZ2VyIGxvYWQgb2YgJmx0O3NvdXJj
ZSZndDsgZWxlbWVudHM8L3A+CiAKQEAgLTE1LDcgKzE4LDcgQEAKICAgICAgICAgCiAgICAgICAg
IGZ1bmN0aW9uIHRlc3RTcmMoKQogICAgICAgICB7Ci0gICAgICAgICAgICB0ZXN0RXhwZWN0ZWQo
InJlbGF0aXZlVVJMKHZpZGVvLmN1cnJlbnRTcmMpIiwgImNvbnRlbnQvc2lsZW5jZS5tcGciKTsK
KyAgICAgICAgICAgIHRlc3RFeHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYyki
LCBtZWRpYUZpbGUpOwogICAgICAgICAgICAgdGVzdEV4cGVjdGVkKCJpc05hTih2aWRlby5kdXJh
dGlvbikiLCBmYWxzZSk7CiAgICAgICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwogICAgICAgICB9
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtc2V0Lmh0bWwgYi9MYXlv
dXRUZXN0cy9tZWRpYS92aWRlby1zcmMtc2V0Lmh0bWwKaW5kZXggNzVlNzY2NS4uOGQwY2U4MyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLXNldC5odG1sCisrKyBiL0xh
eW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1zZXQuaHRtbApAQCAtMSwxMyArMSwxNSBAQAogPHZp
ZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiA8ZGl2PlRlc3QgdGhhdCBzZXR0aW5nIHNyYyBhdHRyaWJ1
dGUgdHJpZ2dlcnMgbG9hZDwvZGl2PgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8c2NyaXB0PgotICAgIHZp
ZGVvLnNldEF0dHJpYnV0ZSgnc3JjJywgJ2NvbnRlbnQvdGVzdC5tcDQnKQorICAgIHZhciBtZWRp
YUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRlbyIsICJjb250ZW50L3Rlc3QiKTsKKyAgICB2aWRl
by5zZXRBdHRyaWJ1dGUoJ3NyYycsIG1lZGlhRmlsZSk7CiAKICAgICB3YWl0Rm9yRXZlbnQoJ2xv
YWRzdGFydCcsIGZ1bmN0aW9uICgpIHsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJyZWxhdGl2ZVVS
TCh2aWRlby5jdXJyZW50U3JjKSIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgIHRlc3RF
eHBlY3RlZCgicmVsYXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykiLCBtZWRpYUZpbGUpOwogICAg
ICAgICBlbmRUZXN0KCk7CiAgICAgfSApOwogCi0gICAgdmlkZW8uc2V0QXR0cmlidXRlKCdzcmMn
LCAnY29udGVudC90ZXN0Lm1wNCcpCisgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdzcmMnLCBtZWRp
YUZpbGUpOwogPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1z
cmMtc291cmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby1zcmMtc291cmNlLmh0bWwK
aW5kZXggN2JjMjBkNi4uZTQyYWRmYyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlk
ZW8tc3JjLXNvdXJjZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNyYy1zb3Vy
Y2UuaHRtbApAQCAtMSwxNCArMSwxOCBAQAogPGJvZHk+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KLTx2aWRl
byBzcmM9Y29udGVudC90ZXN0Lm1wNCBjb250cm9scz4KLSAgICA8c291cmNlIHNyYz1jb250ZW50
L2Vycm9yLm1wZWc+Ci08L3ZpZGVvPgorPGRpdiBpZD1wYW5lbD48L2Rpdj4KKzxzY3JpcHQ+Cisg
ICAgdmFyIHBhbmVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhbmVsIik7CisgICAgdmFy
IG1lZGlhRmlsZSA9IGZpbmRNZWRpYUZpbGUoInZpZGVvIiwgImNvbnRlbnQvdGVzdCIpOworICAg
IHBhbmVsLmlubmVySFRNTCA9ICI8dmlkZW8gc3JjPSIgKyBtZWRpYUZpbGUgKyAiIGNvbnRyb2xz
Pjxzb3VyY2Ugc3JjPWNvbnRlbnQvZXJyb3IubXBlZz48L3ZpZGVvPiI7Cis8L3NjcmlwdD4KIDxz
Y3JpcHQ+CiAKICAgICB2aWRlbyA9IG1lZGlhRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCd2aWRlbycpWzBdOwogCiAgICAgd2FpdEZvckV2ZW50KCdsb2Fkc3RhcnQnLCBm
dW5jdGlvbiAoKSB7IAotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1
cnJlbnRTcmMpIiwgImNvbnRlbnQvdGVzdC5tcDQiKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJy
ZWxhdGl2ZVVSTCh2aWRlby5jdXJyZW50U3JjKSIsIG1lZGlhRmlsZSk7CiAgICAgICAgIGVuZFRl
c3QoKTsKICAgICB9ICk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXNy
Yy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLmh0bWwKaW5kZXggODhmYWZmMi4u
N2Y5NWI2NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tc3JjLmh0bWwKQEAgLTEsMTQgKzEsMTYgQEAKIDxi
b2R5PgorPHNjcmlwdCBzcmM9bWVkaWEtZmlsZS5qcz48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPXZp
ZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KIAogPHNjcmlw
dD4KICAgICB2aWRlbyA9IG1lZGlhRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCd2aWRlbycpWzBdOworICAgIHZhciBtZWRpYUZpbGUgPSBmaW5kTWVkaWFGaWxlKCJ2aWRl
byIsICJjb250ZW50L3Rlc3QiKTsKIAogICAgIHdhaXRGb3JFdmVudCgibG9hZHN0YXJ0IiwgZnVu
Y3Rpb24gKCkgewotICAgICAgICB0ZXN0RXhwZWN0ZWQoInJlbGF0aXZlVVJMKHZpZGVvLmN1cnJl
bnRTcmMpICIsICJjb250ZW50L3Rlc3QubXA0Iik7CisgICAgICAgIHRlc3RFeHBlY3RlZCgicmVs
YXRpdmVVUkwodmlkZW8uY3VycmVudFNyYykgIiwgbWVkaWFGaWxlKTsKICAgICAgICAgZW5kVGVz
dCgpOwogICAgIH0pOwogCi0gICAgdmlkZW8uc3JjID0gImNvbnRlbnQvdGVzdC5tcDQiOworICAg
IHZpZGVvLnNyYyA9IG1lZGlhRmlsZTsKIDwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvdmlkZW8tdGltZXVwZGF0ZS1kdXJpbmctcGxheWJhY2suaHRtbCBiL0xheW91dFRl
c3RzL21lZGlhL3ZpZGVvLXRpbWV1cGRhdGUtZHVyaW5nLXBsYXliYWNrLmh0bWwKaW5kZXggZWZk
NzdlNy4uZGQxMWE1YyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdmlkZW8tdGltZXVw
ZGF0ZS1kdXJpbmctcGxheWJhY2suaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby10
aW1ldXBkYXRlLWR1cmluZy1wbGF5YmFjay5odG1sCkBAIC0xLDEzICsxLDE1IEBACiA8aHRtbD4K
IDxib2R5PgogICAgIAotICAgIDx2aWRlbyBzcmM9Y29udGVudC90ZXN0Lm1wNCBjb250cm9scz48
L3ZpZGVvPgorICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogCiAgICAgPHA+CiAgICAgVGVz
dCAndGltZXVwZGF0ZScgZXZlbnRzIGFyZSBwb3N0ZWQgd2hpbGUgcGxheWluZyBidXQgbm90IHdo
aWxlIHBhdXNlZC4KICAgICA8L3AKKyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2Ny
aXB0PgogICAgIDxzY3JpcHQgc3JjPXZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgPHNjcmlw
dD4KKyAgICAgICAgc2V0U3JjQnlUYWdOYW1lKCJ2aWRlbyIsIGZpbmRNZWRpYUZpbGUoInZpZGVv
IiwgImNvbnRlbnQvdGVzdCIpKTsKICAgICAKICAgICAgICAgdmFyIHRpbWV1cGRhdGVFdmVudENv
dW50ID0gMDsKICAgICAgICAgdmFyIGNvdW50V2hpbGVQbGF5aW5nID0gMDsKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3ZpZGVvLXZvbHVtZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tdm9sdW1lLmh0bWwKaW5kZXggMGVlMjBiZC4uNDkzNTQwYyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tdm9sdW1lLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dmlkZW8tdm9sdW1lLmh0bWwKQEAgLTEsNSArMSw2IEBACiA8dmlkZW8gY29udHJvbHM+PC92aWRl
bz4KIDxwPlRlc3QgJ3ZvbHVtZScgYXR0cmlidXRlPHA+Cis8c2NyaXB0IHNyYz1tZWRpYS1maWxl
LmpzPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KIDxzY3Jp
cHQ+CiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby52b2x1bWUiLCAxLjApOwpAQCAtOSw3ICsxMCw3
IEBACiAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby52b2x1bWUiLCAwKTsKICAgICB0ZXN0RXhjZXB0
aW9uKCJ2aWRlby52b2x1bWUgPSAxLjUiLCAiRE9NRXhjZXB0aW9uLklOREVYX1NJWkVfRVJSIik7
CiAgICAgdGVzdEV4Y2VwdGlvbigidmlkZW8udm9sdW1lID0gLTAuNSIsICJET01FeGNlcHRpb24u
SU5ERVhfU0laRV9FUlIiKTsKLSAgICB2aWRlby5zcmMgPSAiY29udGVudC90ZXN0Lm1wNCI7Cisg
ICAgdmlkZW8uc3JjID0gZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0Iik7CiAg
ICAgcnVuKCJ2aWRlby5sb2FkKCkiKTsKICAgICB3YWl0Rm9yRXZlbnQoImxvYWQiLCBmdW5jdGlv
biAoKSB7CiAgICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8udm9sdW1lIiwgMCk7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9tZWRpYS92aWRlby16b29tLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRp
YS92aWRlby16b29tLmh0bWwKaW5kZXggZjE5MzQ3ZC4uOGRjODZhMyAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdmlkZW8tem9vbS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Zp
ZGVvLXpvb20uaHRtbApAQCAtMSw5ICsxLDEyIEBACiA8aHRtbD4KIDxoZWFkPgogICAgIDxzdHls
ZT4gdmlkZW8geyB6b29tOiAxNTAlOyBib3JkZXI6IDNweCBzb2xpZCByZWQ7IH0gPC9zdHlsZT4K
KyAgICA8c2NyaXB0IHNyYz1tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgogICAgIDxzY3JpcHQ+CiAg
ICAgICAgIGZ1bmN0aW9uIGluaXQoKQogICAgICAgICB7CisgICAgICAgICAgICBzZXRTcmNCeVRh
Z05hbWUoInZpZGVvIiwgZmluZE1lZGlhRmlsZSgidmlkZW8iLCAiY29udGVudC90ZXN0IikpOwor
CiAgICAgICAgICAgICB2YXIgdG90YWxDb3VudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCd2aWRlbycpLmxlbmd0aDsKICAgICAgICAgICAgIHZhciBjb3VudCA9IHRvdGFsQ291bnQ7
CiAgICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjYW5wbGF5dGhyb3VnaCIs
IGZ1bmN0aW9uICgpIHsKQEAgLTI1LDEwICsyOCwxMCBAQAogICAgIDwvc2NyaXB0PgogCiA8L2hl
YWQ+Ci08Ym9keSBvbmxvYWQ9ImluaXQoKSI+Cis8Ym9keSBvbmxvYWQ9ImluaXQoKTsiPgogICAg
IDxwPjE1MCUgem9vbSwgd2l0aCB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZXMgPC9wPgotICAg
ICZuYnNwOzx2aWRlbyBzcmM9ImNvbnRlbnQvdGVzdC5tcDQiIHdpZHRoPTMyMCBoZWlnaHQ9MjQw
PjwvdmlkZW8+PGJyPgorICAgICZuYnNwOzx2aWRlbyB3aWR0aD0zMjAgaGVpZ2h0PTI0MD48L3Zp
ZGVvPjxicj4KICAgICA8cD4xNTAlIHpvb20sIHdpdGhvdXQgd2lkdGggYW5kIGhlaWdodCBhdHRy
aWJ1dGVzIDwvcD4KLSAgICAmbmJzcDs8dmlkZW8gc3JjPSJjb250ZW50L3Rlc3QubXA0IiA+PC92
aWRlbz48YnI+CisgICAgJm5ic3A7PHZpZGVvPjwvdmlkZW8+PGJyPgogPC9ib2R5PgogPC9odG1s
Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39877</attachid>
            <date>2009-09-21 14:26:56 -0700</date>
            <delta_ts>2009-09-21 14:39:51 -0700</delta_ts>
            <desc>Test files for ogg and theora, transcoded from originals</desc>
            <filename>webkit-codecs-files.patch</filename>
            <type>text/plain</type>
            <size>0</size>
            <attacher name="Hin-Chung Lam">hclam</attacher>
            
              <data encoding="base64"></data>
<flag name="review"
          id="21020"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>