<?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>83651</bug_id>
          
          <creation_ts>2012-04-10 18:17:39 -0700</creation_ts>
          <short_desc>Ellipse and rect hit testing is clipped by the shape&apos;s bounding box</short_desc>
          <delta_ts>2012-04-11 10:51:18 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Philip Rogers">pdr</reporter>
          <assigned_to name="Philip Rogers">pdr</assigned_to>
          <cc>schenney</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>599889</commentid>
    <comment_count>0</comment_count>
      <attachid>136594</attachid>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-04-10 18:17:39 -0700</bug_when>
    <thetext>Created attachment 136594
Example of broken hit test results.

Before http://trac.webkit.org/changeset/113781 we were not fully testing shapeDependentStrokeContains of RenderSVGRect and RenderSVGEllipse. Now that we are flexing the correct code a bug has been exposed because stroke hit testing is clipped by the object&apos;s bounding box.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>599911</commentid>
    <comment_count>1</comment_count>
      <attachid>136602</attachid>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-04-10 18:39:52 -0700</bug_when>
    <thetext>Created attachment 136602
Fix bug where stroke&apos;s bounding box was clipped</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600028</commentid>
    <comment_count>2</comment_count>
      <attachid>136602</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2012-04-10 22:10:27 -0700</bug_when>
    <thetext>Comment on attachment 136602
Fix bug where stroke&apos;s bounding box was clipped

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

r=me with little changes.

&gt; Source/WebCore/ChangeLog:20
&gt; +        I also added a FIXME to move the marker dependent code out of
&gt; +        RenderSVGShape entirely (which would have prevented part 2 of this
&gt; +        bug). Markers are only needed on a small subset of RenderSVGShape&apos;s
&gt; +        subclasses so that functionality should be moved out of
&gt; +        RenderSVGShape at some point.

And create another class that increases the call of virtual tables? Actually there are more classes that need it than classes that don&apos;t need it. I don&apos;t think that this fix me should go in. Rather create a new bug where we can discuss this topic.

&gt; Source/WebCore/rendering/svg/RenderSVGShape.h:136
&gt; +    // FIXME: marker-dependant code should be moved into RenderSVGShapeWithMarkers or subclasses

Like I said, I am against adding this fix me. We should discuss it on a bug report instead of adding fixmes that are not really fixmes.

&gt; Source/WebCore/rendering/svg/RenderSVGShape.h:137
&gt; +    //        that support markers (RenderSVGPath, RenderSVGLine, RenderSVGPolygon, RenderSVGPolyLine)

no spaces here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600231</commentid>
    <comment_count>3</comment_count>
      <attachid>136664</attachid>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-04-11 06:57:03 -0700</bug_when>
    <thetext>Created attachment 136664
Remove fixme

Thanks for the review! I removed the premature fixme and will put up a separate bug to discuss it further.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600258</commentid>
    <comment_count>4</comment_count>
      <attachid>136664</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 07:50:49 -0700</bug_when>
    <thetext>Comment on attachment 136664
Remove fixme

Rejecting attachment 136664 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
t/git/webkit-commit-queue/Source/WebKit/chromium/v8 --revision 11253 --non-interactive --force --accept theirs-conflict --ignore-externals&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
47&gt;At revision 11253.

________ running &apos;/usr/bin/python tools/clang/scripts/update.py --mac-only&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...

Full output: http://queues.webkit.org/results/12386396</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600351</commentid>
    <comment_count>5</comment_count>
      <attachid>136685</attachid>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-04-11 10:08:07 -0700</bug_when>
    <thetext>Created attachment 136685
Update so the patch applies cleanly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600353</commentid>
    <comment_count>6</comment_count>
      <attachid>136685</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 10:13:39 -0700</bug_when>
    <thetext>Comment on attachment 136685
Update so the patch applies cleanly

Rejecting attachment 136685 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 1

ERROR: /mnt/git/webkit-commit-queue/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://queues.webkit.org/results/12382913</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600354</commentid>
    <comment_count>7</comment_count>
      <attachid>136687</attachid>
    <who name="Philip Rogers">pdr</who>
    <bug_when>2012-04-11 10:14:56 -0700</bug_when>
    <thetext>Created attachment 136687
Adding Dirk to reviewers line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600414</commentid>
    <comment_count>8</comment_count>
      <attachid>136687</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 10:51:13 -0700</bug_when>
    <thetext>Comment on attachment 136687
Adding Dirk to reviewers line.

Clearing flags on attachment: 136687

Committed r113879: &lt;http://trac.webkit.org/changeset/113879&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600415</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-11 10:51:18 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>136594</attachid>
            <date>2012-04-10 18:17:39 -0700</date>
            <delta_ts>2012-04-10 18:39:52 -0700</delta_ts>
            <desc>Example of broken hit test results.</desc>
            <filename>svg-ellipse-rect-stroke.xhtml</filename>
            <type>application/xhtml+xml</type>
            <size>4984</size>
            <attacher name="Philip Rogers">pdr</attacher>
            
              <data encoding="base64">PGh0bWwgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnPgogIDxoZWFkPgogICAg
PHN0eWxlPgogICAgICAjc3ZnUm9vdCB7CiAgICAgICAgICBtYXJnaW46IDBweDsKICAgICAgICAg
IHBhZGRpbmc6IDBweDsKICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgCiAgICAgICAgICB0
b3A6IDBweDsgCiAgICAgICAgICBsZWZ0OiAwcHg7CiAgICAgIH0KCiAgICAgICNlbGxpcHNlLCAj
cmVjdCB7CiAgICAgICAgICBmaWxsOiBncmVlbjsKICAgICAgICAgIGZpbGwtb3BhY2l0eTogMC4x
OwogICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwLjNweDsKICAgICAgICAgIHN0cm9rZTogZ3JlZW47
CiAgICAgICAgICBzdHJva2Utb3BhY2l0eTogMC4yOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwv
aGVhZD4KICA8Ym9keT4KICAgIDxwPk1ha2Ugc3VyZSBoaXQgdGVzdGluZyB3b3JrcyBwcm9wZXJs
eSBvbiA8Yj5zY2FsZWQ8L2I+IGFuZCBzdHJva2VkIGVsbGlwc2VzIGFuZCByZWN0cy48L3A+CiAg
ICA8cD5PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
IGFuZCBubyAiRkFJTCIgbWVzc2FnZXMuPC9wPgogICAgPHByZSBpZD0iY29uc29sZSI+PC9wcmU+
CgogICAgPHN2ZyBpZD0ic3ZnUm9vdCIgd2lkdGg9IjQwMHB4IiBoZWlnaHQ9IjQwMHB4IiB2aWV3
Qm94PSIwIDAgNDAwIDQwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICAg
ICAgPGcgdHJhbnNmb3JtPSJzY2FsZSgyMDApIj4KICAgICAgICA8ZWxsaXBzZSBpZD0iZWxsaXBz
ZSIgY3g9IjAuNSIgY3k9IjAuNSIgcng9IjAuMyIgcnk9IjAuMiIvPgogICAgICAgIDxyZWN0IGlk
PSJyZWN0IiB4PSIxLjEiIHk9IjAuOSIgd2lkdGg9IjAuNSIgaGVpZ2h0PSIwLjUiLz4KICAgICAg
PC9nPgogICAgPC9zdmc+CgogICAgPHNjcmlwdD48IVtDREFUQVsKICAgIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCiAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKCiAgICB2YXIgcmVzdWx0U3RyaW5nID0gIiI7CiAgICB2YXIgZWxsaXBzZUVsZW1lbnQgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZWxsaXBzZSIpOwogICAgdmFyIHJlY3RFbGVtZW50ID0g
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlY3QiKTsKCiAgICB2YXIgcG9pbnRzSW5FbGxpcHNl
ID0gWwogICAgICAge3g6IDY1LCB5OiA4MX0sCiAgICAgICB7eDogODksIHk6IDEwMH0sCiAgICAg
ICB7eDogMTMzLCB5OiAxMjh9CiAgICBdOwoKICAgIHZhciBwb2ludHNOb3RJbkVsbGlwc2UgPSBb
CiAgICAgICAge3g6IDEwMCwgeTogMTQ4fSwgLy8gb3V0ZXIgc3Ryb2tlCiAgICAgICAge3g6IDAs
IHk6IDB9CiAgICBdOwoKICAgIHZhciBwb2ludHNPbkVsbGlwc2VTdHJva2UgPSBbCiAgICAgICB7
eDogNDMsIHk6IDU0fSwgLy8gb3V0ZXIgc3Ryb2tlCiAgICAgICB7eDogNTYsIHk6IDEyM30sIC8v
IGlubmVyIHN0cm9rZQogICAgICAge3g6IDE0NiwgeTogMTM0fSwgLy8gb3V0ZXIgc3Ryb2tlCiAg
ICAgICB7eDogMTI5LCB5OiAxMDl9IC8vIGlubmVyIHN0cm9rZQogICAgXTsKCiAgICB2YXIgcG9p
bnRzTm90T25FbGxpcHNlU3Ryb2tlID0gWwogICAgICAge3g6IDAsIHk6IDEwMH0sIC8vIG91dHNp
ZGUgZWxsaXBzZQogICAgICAge3g6IDE2MCwgeTogMTYwfSwgLy8gb3V0c2lkZSBlbGxpcHNlCiAg
ICAgICB7eDogOTUsIHk6IDEwMH0gLy8gaW5zaWRlIGVsbGlwc2UKICAgIF07CgogICAgdmFyIHBv
aW50c0luUmVjdCA9IFsKICAgICAgIHt4OiAyMzAsIHk6IDE5MH0sCiAgICAgICB7eDogMjgwLCB5
OiAyNDV9LAogICAgICAge3g6IDMxMCwgeTogMjc1fQogICAgXTsKCiAgICB2YXIgcG9pbnRzTm90
SW5SZWN0ID0gWwogICAgICAgIHt4OiAzMzcsIHk6IDI5OH0sIC8vIG91dGVyIHN0cm9rZQogICAg
ICAgIHt4OiAwLCB5OiAwfQogICAgXTsKCiAgICB2YXIgcG9pbnRzT25SZWN0U3Ryb2tlID0gWwog
ICAgICAge3g6IDIwOCwgeTogMTY4fSwgLy8gb3V0ZXIgc3Ryb2tlCiAgICAgICB7eDogMjM3LCB5
OiAxOTh9LCAvLyBpbm5lciBzdHJva2UKICAgICAgIHt4OiAzMDEsIHk6IDMwNX0sIC8vIG91dGVy
IHN0cm9rZQogICAgICAge3g6IDMwMiwgeTogMjY0fSAvLyBpbm5lciBzdHJva2UKICAgIF07Cgog
ICAgdmFyIHBvaW50c05vdE9uUmVjdFN0cm9rZSA9IFsKICAgICAgIHt4OiAwLCB5OiAxMDB9LCAv
LyBvdXRzaWRlIHJlY3QKICAgICAgIHt4OiAzNzUsIHk6IDMxNX0sIC8vIG91dHNpZGUgcmVjdAog
ICAgICAge3g6IDI2NywgeTogMjMzfSAvLyBpbnNpZGUgcmVjdAogICAgXTsKCiAgICBlbGxpcHNl
RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgicG9pbnRlci1ldmVudHMiLCAidmlzaWJsZUZpbGwi
KTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgZmlsbAogICAgcmVjdEVsZW1lbnQuc3R5
bGUuc2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVGaWxsIik7IC8vIG9ubHkg
Y2FwdHVyZSBldmVudHMgb24gdGhlIGZpbGwKICAgIHBvaW50c0luRWxsaXBzZS5mb3JFYWNoKCBm
dW5jdGlvbihwb2ludCkgewogICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ID09IGRv
Y3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOwogICAgICAgIHJlc3Vs
dFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgZWxsaXBzZSBjb250YWlu
cyBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOwogICAgfSk7
CiAgICBwb2ludHNOb3RJbkVsbGlwc2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKICAgICAg
ICB2YXIgcGFzcyA9IChlbGxpcHNlRWxlbWVudCAhPSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50
KHBvaW50LngsIHBvaW50LnkpKTsKICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQ
QVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiAr
IHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOwogICAgfSk7CiAgICBwb2ludHNJblJl
Y3QuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxl
bWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKICAg
ICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIHJlY3Qg
Y29udGFpbnMgcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsK
ICAgIH0pOwogICAgcG9pbnRzTm90SW5SZWN0LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CiAg
ICAgICAgdmFyIHBhc3MgPSAocmVjdEVsZW1lbnQgIT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2lu
dChwb2ludC54LCBwb2ludC55KSk7CiAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykgPyAi
UEFTUyIgOiAiRkFJTCIpICsgIiByZWN0IGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKCIgKyBw
b2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKICAgIH0pOwoKICAgIGVsbGlwc2VFbGVt
ZW50LnN0eWxlLnNldFByb3BlcnR5KCJwb2ludGVyLWV2ZW50cyIsICJ2aXNpYmxlU3Ryb2tlIik7
IC8vIG9ubHkgY2FwdHVyZSBldmVudHMgb24gdGhlIHN0cm9rZQogICAgcmVjdEVsZW1lbnQuc3R5
bGUuc2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsgLy8gb25s
eSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgc3Ryb2tlCiAgICBwb2ludHNPbkVsbGlwc2VTdHJva2Uu
Zm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKICAgICAgICB2YXIgcGFzcyA9IChlbGxpcHNlRWxl
bWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKICAg
ICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlw
c2Ugc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55
ICsgIilcbiI7CiAgICB9KTsKICAgIHBvaW50c05vdE9uRWxsaXBzZVN0cm9rZS5mb3JFYWNoKCBm
dW5jdGlvbihwb2ludCkgewogICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ICE9IGRv
Y3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOwogICAgICAgIHJlc3Vs
dFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgZWxsaXBzZSBzdHJva2Ug
ZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSAr
ICIpXG4iOwogICAgfSk7CiAgICBwb2ludHNPblJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24o
cG9pbnQpIHsKICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxlbWVudCA9PSBkb2N1bWVudC5lbGVt
ZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKICAgICAgICByZXN1bHRTdHJpbmcgKz0g
KChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIHJlY3Qgc3Ryb2tlIGNvbnRhaW5zIHBvaW50
IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CiAgICB9KTsKICAgIHBv
aW50c05vdE9uUmVjdFN0cm9rZS5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgewogICAgICAgIHZh
ciBwYXNzID0gKHJlY3RFbGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQu
eCwgcG9pbnQueSkpOwogICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDog
IkZBSUwiKSArICIgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBv
aW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOwogICAgfSk7CiAgICBkb2N1bWVudC5nZXRF
bGVtZW50QnlJZCgiY29uc29sZSIpLmlubmVySFRNTCA9IHJlc3VsdFN0cmluZzsKICAgIF1dPjwv
c2NyaXB0PgogPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136602</attachid>
            <date>2012-04-10 18:39:52 -0700</date>
            <delta_ts>2012-04-11 06:57:03 -0700</delta_ts>
            <desc>Fix bug where stroke&apos;s bounding box was clipped</desc>
            <filename>83651.2.patch</filename>
            <type>text/plain</type>
            <size>11088</size>
            <attacher name="Philip Rogers">pdr</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzgwMSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDEyLTA0LTEwICBQaGlsaXAg
Um9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IGJ1ZyB3aGVyZSBzdHJva2Un
cyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhpcyBjaGFuZ2UgY29udGFpbnMgdHdvIGZpeGVzIGZvciBvbmUg
YnVnOgorICAgICAgICAxKSBGbG9hdFJlY3Q6OmNvbnRhaW5zIGNvbnRhaW5lZCBhIG5hc3R5IG1p
c3Rha2Ugd2hlcmUKKyAgICAgICAgICAgbWF4eSgpIDwgeSgpIHdhcyBjb21wYXJlZCBpbnN0ZWFk
IG9mIG1heHkoKSA8IHBvaW50LnkoKS4KKyAgICAgICAgMikgUmVuZGVyU1ZHU2hhcGU6OnN0cm9r
ZUNvbnRhaW5zIHdhcyBkZXBlbmRpbmcgb24gaXRzIGludGVybmFsCisgICAgICAgICAgIG1fc3Ry
b2tlQW5kTWFya2VyQm91bmRpbmdCb3ggaW5zdGVhZCBvZiBjYWxsaW5nIHRoZSB2aXJ0dWFsCisg
ICAgICAgICAgIG1ldGhvZCBzdHJva2VCb3VuZGluZ0JveCgpLiBUaGlzIGNoYW5nZSBzd2l0Y2hl
cyB0byB1c2luZworICAgICAgICAgICBzdHJva2VCb3VuZGluZ0JveCgpLgorCisgICAgICAgIEkg
YWxzbyBhZGRlZCBhIEZJWE1FIHRvIG1vdmUgdGhlIG1hcmtlciBkZXBlbmRlbnQgY29kZSBvdXQg
b2YKKyAgICAgICAgUmVuZGVyU1ZHU2hhcGUgZW50aXJlbHkgKHdoaWNoIHdvdWxkIGhhdmUgcHJl
dmVudGVkIHBhcnQgMiBvZiB0aGlzCisgICAgICAgIGJ1ZykuIE1hcmtlcnMgYXJlIG9ubHkgbmVl
ZGVkIG9uIGEgc21hbGwgc3Vic2V0IG9mIFJlbmRlclNWR1NoYXBlJ3MKKyAgICAgICAgc3ViY2xh
c3NlcyBzbyB0aGF0IGZ1bmN0aW9uYWxpdHkgc2hvdWxkIGJlIG1vdmVkIG91dCBvZgorICAgICAg
ICBSZW5kZXJTVkdTaGFwZSBhdCBzb21lIHBvaW50LgorCisgICAgICAgIFRlc3Q6IHN2Zy9oaXR0
ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnhodG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9GbG9hdFJlY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RmxvYXRSZWN0Ojpjb250
YWlucyk6CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTVkdTaGFwZTo6c3Ryb2tlQ29udGFpbnMpOgorICAgICAgICAq
IHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUuaDoKKyAgICAgICAgKFJlbmRlclNWR1NoYXBl
KToKKwogMjAxMi0wNC0xMCAgR3JlZyBCaWxsb2NrICA8Z2JpbGxvY2tAZ29vZ2xlLmNvbT4KIAog
ICAgICAgICBBZGQgdHJhbnNmZXIgbWFwIGFyZ3VtZW50IHRvIEludGVudCBjb25zdHJ1Y3RvcgpJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3Bw
CShyZXZpc2lvbiAxMTM4MDEpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9G
bG9hdFJlY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3ICs3Nyw3IEBAIGJvb2wgRmxvYXRS
ZWN0Ojpjb250YWlucyhjb25zdCBGbG9hdFBvaW4KIHsKICAgICBpZiAoY29udGFpbnNNb2RlID09
IEluc2lkZU9yT25TdHJva2UpCiAgICAgICAgIHJldHVybiBjb250YWlucyhwb2ludC54KCksIHBv
aW50LnkoKSk7Ci0gICAgcmV0dXJuIHgoKSA8IHBvaW50LngoKSAmJiBtYXhYKCkgPiBwb2ludC54
KCkgJiYgeSgpIDwgcG9pbnQueSgpICYmIG1heFkoKSA+IHkoKTsKKyAgICByZXR1cm4geCgpIDwg
cG9pbnQueCgpICYmIG1heFgoKSA+IHBvaW50LngoKSAmJiB5KCkgPCBwb2ludC55KCkgJiYgbWF4
WSgpID4gcG9pbnQueSgpOwogfQogCiB2b2lkIEZsb2F0UmVjdDo6aW50ZXJzZWN0KGNvbnN0IEZs
b2F0UmVjdCYgb3RoZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRl
clNWR1NoYXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3Zn
L1JlbmRlclNWR1NoYXBlLmNwcAkocmV2aXNpb24gMTEzODAxKQorKysgU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyOSw3
ICsxMjksNyBAQCBib29sIFJlbmRlclNWR1NoYXBlOjpmaWxsQ29udGFpbnMoY29uc3QgCiAKIGJv
b2wgUmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50
LCBib29sIHJlcXVpcmVzU3Ryb2tlKQogewotICAgIGlmICghbV9zdHJva2VBbmRNYXJrZXJCb3Vu
ZGluZ0JveC5jb250YWlucyhwb2ludCkpCisgICAgaWYgKCFzdHJva2VCb3VuZGluZ0JveCgpLmNv
bnRhaW5zKHBvaW50KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgQ29sb3IgZmFsbGJh
Y2tDb2xvcjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hh
cGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNW
R1NoYXBlLmgJKHJldmlzaW9uIDExMzgwMSkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dmcvUmVuZGVyU1ZHU2hhcGUuaAkod29ya2luZyBjb3B5KQpAQCAtMTMzLDYgKzEzMyw4IEBAIHBy
aXZhdGU6CiAKIHByaXZhdGU6CiAgICAgRmxvYXRSZWN0IG1fZmlsbEJvdW5kaW5nQm94OworICAg
IC8vIEZJWE1FOiBtYXJrZXItZGVwZW5kYW50IGNvZGUgc2hvdWxkIGJlIG1vdmVkIGludG8gUmVu
ZGVyU1ZHU2hhcGVXaXRoTWFya2VycyBvciBzdWJjbGFzc2VzCisgICAgLy8gICAgICAgIHRoYXQg
c3VwcG9ydCBtYXJrZXJzIChSZW5kZXJTVkdQYXRoLCBSZW5kZXJTVkdMaW5lLCBSZW5kZXJTVkdQ
b2x5Z29uLCBSZW5kZXJTVkdQb2x5TGluZSkKICAgICBGbG9hdFJlY3QgbV9zdHJva2VBbmRNYXJr
ZXJCb3VuZGluZ0JveDsKICAgICBGbG9hdFJlY3QgbV9yZXBhaW50Qm91bmRpbmdCb3g7CiAgICAg
U1ZHTWFya2VyTGF5b3V0SW5mbyBtX21hcmtlckxheW91dEluZm87CkluZGV4OiBMYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lv
biAxMTM4MDEpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEs
MyArMSwxMyBAQAorMjAxMi0wNC0xMCAgUGhpbGlwIFJvZ2VycyAgPHBkckBnb29nbGUuY29tPgor
CisgICAgICAgIEZpeCBidWcgd2hlcmUgc3Ryb2tlJ3MgYm91bmRpbmcgYm94IHdhcyBjbGlwcGVk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MzY1MQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3ZnL2hp
dHRlc3Qvc3ZnLWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAg
ICAgKiBzdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbDogQWRkZWQuCisK
IDIwMTItMDQtMTAgIEphbWVzIFNpbW9uc2VuICA8c2ltb25qYW1AY2hyb21pdW0ub3JnPgogCiAg
ICAgICAgIFtDaHJvbWl1bV0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuCkluZGV4OiBMYXlvdXRUZXN0
cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS1leHBlY3RlZC50eHQKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qvc3ZnLWVsbGlwc2UtcmVjdC1zdHJva2Ut
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qvc3Zn
LWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDI5IEBACitNYWtlIHN1cmUgaGl0IHRlc3Rpbmcgd29ya3MgcHJvcGVybHkgb24gc3Ryb2tlZCBl
bGxpcHNlcyBhbmQgcmVjdHMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBv
ZiAiUEFTUyIgbWVzc2FnZXMgYW5kIG5vICJGQUlMIiBtZXNzYWdlcy4KKworUEFTUyBlbGxpcHNl
IGNvbnRhaW5zIHBvaW50IGF0ICg2NSwgODEpCitQQVNTIGVsbGlwc2UgY29udGFpbnMgcG9pbnQg
YXQgKDg5LCAxMDApCitQQVNTIGVsbGlwc2UgY29udGFpbnMgcG9pbnQgYXQgKDEzMywgMTI4KQor
UEFTUyBlbGxpcHNlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDEwMCwgMTQ4KQorUEFTUyBl
bGxpcHNlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAsIDApCitQQVNTIHJlY3QgY29udGFp
bnMgcG9pbnQgYXQgKDIzMCwgMTkwKQorUEFTUyByZWN0IGNvbnRhaW5zIHBvaW50IGF0ICgyODAs
IDI0NSkKK1BBU1MgcmVjdCBjb250YWlucyBwb2ludCBhdCAoMzEwLCAyNzUpCitQQVNTIHJlY3Qg
ZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMzM3LCAyOTgpCitQQVNTIHJlY3QgZG9lcyBub3Qg
Y29udGFpbiBwb2ludCBhdCAoMCwgMCkKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9p
bnQgYXQgKDQzLCA1NCkKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDU2
LCAxMjMpCitQQVNTIGVsbGlwc2Ugc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgxNDYsIDEzNCkK
K1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDEyOSwgMTA5KQorUEFTUyBl
bGxpcHNlIHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICgwLCAxMDApCitQQVNTIGVs
bGlwc2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDE2MCwgMTYwKQorUEFTUyBl
bGxpcHNlIHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICg5NSwgMTAwKQorUEFTUyBy
ZWN0IHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoMjA4LCAxNjgpCitQQVNTIHJlY3Qgc3Ryb2tl
IGNvbnRhaW5zIHBvaW50IGF0ICgyMzcsIDE5OCkKK1BBU1MgcmVjdCBzdHJva2UgY29udGFpbnMg
cG9pbnQgYXQgKDMwMSwgMzA1KQorUEFTUyByZWN0IHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAo
MzAyLCAyNjQpCitQQVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAs
IDEwMCkKK1BBU1MgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMzc1LCAz
MTUpCitQQVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDI2NywgMjMz
KQorCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9r
ZS54aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBz
ZS1yZWN0LXN0cm9rZS54aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9oaXR0
ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnhodG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDEyOSBAQAorPGh0bWwgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnPgorICA8
aGVhZD4KKyAgICA8c3R5bGU+CisgICAgICAjc3ZnUm9vdCB7CisgICAgICAgICAgbWFyZ2luOiAw
cHg7CisgICAgICAgICAgcGFkZGluZzogMHB4OworICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0
ZTsgCisgICAgICAgICAgdG9wOiAwcHg7IAorICAgICAgICAgIGxlZnQ6IDBweDsKKyAgICAgIH0K
KworICAgICAgI2VsbGlwc2UsICNyZWN0IHsKKyAgICAgICAgICBmaWxsOiBncmVlbjsKKyAgICAg
ICAgICBmaWxsLW9wYWNpdHk6IDAuMTsKKyAgICAgICAgICBzdHJva2Utd2lkdGg6IDAuM3B4Owor
ICAgICAgICAgIHN0cm9rZTogZ3JlZW47CisgICAgICAgICAgc3Ryb2tlLW9wYWNpdHk6IDAuMjsK
KyAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPk1ha2Ug
c3VyZSBoaXQgdGVzdGluZyB3b3JrcyBwcm9wZXJseSBvbiBzdHJva2VkIGVsbGlwc2VzIGFuZCBy
ZWN0cy48L3A+CisgICAgPHA+T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcyBhbmQgbm8gIkZBSUwiIG1lc3NhZ2VzLjwvcD4KKyAgICA8cHJlIGlkPSJj
b25zb2xlIj48L3ByZT4KKworICAgIDxzdmcgaWQ9InN2Z1Jvb3QiIHdpZHRoPSI0MDBweCIgaGVp
Z2h0PSI0MDBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyI+CisgICAgICA8ZyB0cmFuc2Zvcm09InNjYWxlKDIwMCkiPgorICAgICAgICA8
ZWxsaXBzZSBpZD0iZWxsaXBzZSIgY3g9IjAuNSIgY3k9IjAuNSIgcng9IjAuMyIgcnk9IjAuMiIv
PgorICAgICAgICA8cmVjdCBpZD0icmVjdCIgeD0iMS4xIiB5PSIwLjkiIHdpZHRoPSIwLjUiIGhl
aWdodD0iMC41Ii8+CisgICAgICA8L2c+CisgICAgPC9zdmc+CisKKyAgICA8c2NyaXB0PjwhW0NE
QVRBWworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRU
ZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgcmVzdWx0U3RyaW5nID0gIiI7
CisgICAgdmFyIGVsbGlwc2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVsbGlw
c2UiKTsKKyAgICB2YXIgcmVjdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVj
dCIpOworCisgICAgdmFyIHBvaW50c0luRWxsaXBzZSA9IFsKKyAgICAgICB7eDogNjUsIHk6IDgx
fSwKKyAgICAgICB7eDogODksIHk6IDEwMH0sCisgICAgICAge3g6IDEzMywgeTogMTI4fQorICAg
IF07CisKKyAgICB2YXIgcG9pbnRzTm90SW5FbGxpcHNlID0gWworICAgICAgICB7eDogMTAwLCB5
OiAxNDh9LCAvLyBvdXRlciBzdHJva2UKKyAgICAgICAge3g6IDAsIHk6IDB9CisgICAgXTsKKwor
ICAgIHZhciBwb2ludHNPbkVsbGlwc2VTdHJva2UgPSBbCisgICAgICAge3g6IDQzLCB5OiA1NH0s
IC8vIG91dGVyIHN0cm9rZQorICAgICAgIHt4OiA1NiwgeTogMTIzfSwgLy8gaW5uZXIgc3Ryb2tl
CisgICAgICAge3g6IDE0NiwgeTogMTM0fSwgLy8gb3V0ZXIgc3Ryb2tlCisgICAgICAge3g6IDEy
OSwgeTogMTA5fSAvLyBpbm5lciBzdHJva2UKKyAgICBdOworCisgICAgdmFyIHBvaW50c05vdE9u
RWxsaXBzZVN0cm9rZSA9IFsKKyAgICAgICB7eDogMCwgeTogMTAwfSwgLy8gb3V0c2lkZSBlbGxp
cHNlCisgICAgICAge3g6IDE2MCwgeTogMTYwfSwgLy8gb3V0c2lkZSBlbGxpcHNlCisgICAgICAg
e3g6IDk1LCB5OiAxMDB9IC8vIGluc2lkZSBlbGxpcHNlCisgICAgXTsKKworICAgIHZhciBwb2lu
dHNJblJlY3QgPSBbCisgICAgICAge3g6IDIzMCwgeTogMTkwfSwKKyAgICAgICB7eDogMjgwLCB5
OiAyNDV9LAorICAgICAgIHt4OiAzMTAsIHk6IDI3NX0KKyAgICBdOworCisgICAgdmFyIHBvaW50
c05vdEluUmVjdCA9IFsKKyAgICAgICAge3g6IDMzNywgeTogMjk4fSwgLy8gb3V0ZXIgc3Ryb2tl
CisgICAgICAgIHt4OiAwLCB5OiAwfQorICAgIF07CisKKyAgICB2YXIgcG9pbnRzT25SZWN0U3Ry
b2tlID0gWworICAgICAgIHt4OiAyMDgsIHk6IDE2OH0sIC8vIG91dGVyIHN0cm9rZQorICAgICAg
IHt4OiAyMzcsIHk6IDE5OH0sIC8vIGlubmVyIHN0cm9rZQorICAgICAgIHt4OiAzMDEsIHk6IDMw
NX0sIC8vIG91dGVyIHN0cm9rZQorICAgICAgIHt4OiAzMDIsIHk6IDI2NH0gLy8gaW5uZXIgc3Ry
b2tlCisgICAgXTsKKworICAgIHZhciBwb2ludHNOb3RPblJlY3RTdHJva2UgPSBbCisgICAgICAg
e3g6IDAsIHk6IDEwMH0sIC8vIG91dHNpZGUgcmVjdAorICAgICAgIHt4OiAzNzUsIHk6IDMxNX0s
IC8vIG91dHNpZGUgcmVjdAorICAgICAgIHt4OiAyNjcsIHk6IDIzM30gLy8gaW5zaWRlIHJlY3QK
KyAgICBdOworCisgICAgZWxsaXBzZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInBvaW50ZXIt
ZXZlbnRzIiwgInZpc2libGVGaWxsIik7IC8vIG9ubHkgY2FwdHVyZSBldmVudHMgb24gdGhlIGZp
bGwKKyAgICByZWN0RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgicG9pbnRlci1ldmVudHMiLCAi
dmlzaWJsZUZpbGwiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgZmlsbAorICAgIHBv
aW50c0luRWxsaXBzZS5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgeworICAgICAgICB2YXIgcGFz
cyA9IChlbGxpcHNlRWxlbWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50Lngs
IHBvaW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykgPyAiUEFTUyIgOiAi
RkFJTCIpICsgIiBlbGxpcHNlIGNvbnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIg
KyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9pbnRzTm90SW5FbGxpcHNlLmZvckVh
Y2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50
ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAg
ICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2Ug
ZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSAr
ICIpXG4iOworICAgIH0pOworICAgIHBvaW50c0luUmVjdC5mb3JFYWNoKCBmdW5jdGlvbihwb2lu
dCkgeworICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxlbWVudCA9PSBkb2N1bWVudC5lbGVtZW50
RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgo
cGFzcykgPyAiUEFTUyIgOiAiRkFJTCIpICsgIiByZWN0IGNvbnRhaW5zIHBvaW50IGF0ICgiICsg
cG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9pbnRzTm90
SW5SZWN0LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKHJl
Y3RFbGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkp
OworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAi
IHJlY3QgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9p
bnQueSArICIpXG4iOworICAgIH0pOworCisgICAgZWxsaXBzZUVsZW1lbnQuc3R5bGUuc2V0UHJv
cGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsgLy8gb25seSBjYXB0dXJl
IGV2ZW50cyBvbiB0aGUgc3Ryb2tlCisgICAgcmVjdEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHko
InBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50
cyBvbiB0aGUgc3Ryb2tlCisgICAgcG9pbnRzT25FbGxpcHNlU3Ryb2tlLmZvckVhY2goIGZ1bmN0
aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ID09IGRvY3Vt
ZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRT
dHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2Ugc3Ryb2tlIGNv
bnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7Cisg
ICAgfSk7CisgICAgcG9pbnRzTm90T25FbGxpcHNlU3Ryb2tlLmZvckVhY2goIGZ1bmN0aW9uKHBv
aW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ICE9IGRvY3VtZW50LmVs
ZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcg
Kz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2Ugc3Ryb2tlIGRvZXMgbm90
IGNvbnRhaW4gcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsK
KyAgICB9KTsKKyAgICBwb2ludHNPblJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQp
IHsKKyAgICAgICAgdmFyIHBhc3MgPSAocmVjdEVsZW1lbnQgPT0gZG9jdW1lbnQuZWxlbWVudEZy
b21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBh
c3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgcmVjdCBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQg
KCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9KTsKKyAgICBwb2lu
dHNOb3RPblJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKKyAgICAgICAgdmFy
IHBhc3MgPSAocmVjdEVsZW1lbnQgIT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludChwb2ludC54
LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDog
IkZBSUwiKSArICIgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBv
aW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAgIH0pOworICAgIGRvY3VtZW50Lmdl
dEVsZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MID0gcmVzdWx0U3RyaW5nOworICAgIF1d
Pjwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="141448"
          type_id="1"
          status="+"
          setter="krit"
    />
    <flag name="commit-queue"
          id="141483"
          type_id="3"
          status="-"
          setter="krit"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136664</attachid>
            <date>2012-04-11 06:57:03 -0700</date>
            <delta_ts>2012-04-11 10:08:07 -0700</delta_ts>
            <desc>Remove fixme</desc>
            <filename>83651.3.patch</filename>
            <type>text/plain</type>
            <size>10197</size>
            <attacher name="Philip Rogers">pdr</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzg1NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDEyLTA0LTExICBQaGlsaXAg
Um9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IGJ1ZyB3aGVyZSBzdHJva2Un
cyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1
bHplLgorCisgICAgICAgIFRoaXMgY2hhbmdlIGNvbnRhaW5zIHR3byBmaXhlcyBmb3Igb25lIGJ1
ZzoKKyAgICAgICAgMSkgRmxvYXRSZWN0Ojpjb250YWlucyBjb250YWluZWQgYSBuYXN0eSBtaXN0
YWtlIHdoZXJlCisgICAgICAgICAgIG1heHkoKSA8IHkoKSB3YXMgY29tcGFyZWQgaW5zdGVhZCBv
ZiBtYXh5KCkgPCBwb2ludC55KCkuCisgICAgICAgIDIpIFJlbmRlclNWR1NoYXBlOjpzdHJva2VD
b250YWlucyB3YXMgZGVwZW5kaW5nIG9uIGl0cyBpbnRlcm5hbAorICAgICAgICAgICBtX3N0cm9r
ZUFuZE1hcmtlckJvdW5kaW5nQm94IGluc3RlYWQgb2YgY2FsbGluZyB0aGUgdmlydHVhbAorICAg
ICAgICAgICBtZXRob2Qgc3Ryb2tlQm91bmRpbmdCb3goKS4gVGhpcyBjaGFuZ2Ugc3dpdGNoZXMg
dG8gdXNpbmcKKyAgICAgICAgICAgc3Ryb2tlQm91bmRpbmdCb3goKS4KKworICAgICAgICBUZXN0
OiBzdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbAorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZsb2F0
UmVjdDo6Y29udGFpbnMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKToK
KyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmg6CisgICAgICAgIChSZW5k
ZXJTVkdTaGFwZSk6CisKIDIwMTItMDQtMTEgIFN0ZXBoZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBTaGFkb3cgdHJlZSBUcmVlU2NvcGUgZGF0YSBpcyBub3Qg
cmVtb3ZlZCBieSBDb250YWluZXJOb2RlOjpyZW1vdmVBbGxDaGlsZHJlbgpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3BwCShyZXZpc2lvbiAx
MTM4NTYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3ICs3Nyw3IEBAIGJvb2wgRmxvYXRSZWN0Ojpjb250YWlu
cyhjb25zdCBGbG9hdFBvaW4KIHsKICAgICBpZiAoY29udGFpbnNNb2RlID09IEluc2lkZU9yT25T
dHJva2UpCiAgICAgICAgIHJldHVybiBjb250YWlucyhwb2ludC54KCksIHBvaW50LnkoKSk7Ci0g
ICAgcmV0dXJuIHgoKSA8IHBvaW50LngoKSAmJiBtYXhYKCkgPiBwb2ludC54KCkgJiYgeSgpIDwg
cG9pbnQueSgpICYmIG1heFkoKSA+IHkoKTsKKyAgICByZXR1cm4geCgpIDwgcG9pbnQueCgpICYm
IG1heFgoKSA+IHBvaW50LngoKSAmJiB5KCkgPCBwb2ludC55KCkgJiYgbWF4WSgpID4gcG9pbnQu
eSgpOwogfQogCiB2b2lkIEZsb2F0UmVjdDo6aW50ZXJzZWN0KGNvbnN0IEZsb2F0UmVjdCYgb3Ro
ZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1No
YXBlLmNwcAkocmV2aXNpb24gMTEzODU2KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2
Zy9SZW5kZXJTVkdTaGFwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyOSw3ICsxMjksNyBAQCBi
b29sIFJlbmRlclNWR1NoYXBlOjpmaWxsQ29udGFpbnMoY29uc3QgCiAKIGJvb2wgUmVuZGVyU1ZH
U2hhcGU6OnN0cm9rZUNvbnRhaW5zKGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50LCBib29sIHJlcXVp
cmVzU3Ryb2tlKQogewotICAgIGlmICghbV9zdHJva2VBbmRNYXJrZXJCb3VuZGluZ0JveC5jb250
YWlucyhwb2ludCkpCisgICAgaWYgKCFzdHJva2VCb3VuZGluZ0JveCgpLmNvbnRhaW5zKHBvaW50
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgQ29sb3IgZmFsbGJhY2tDb2xvcjsKSW5k
ZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHJldmlzaW9uIDExMzg1NikKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDEyLTA0LTExICBQaGlsaXAgUm9nZXJzICA8cGRy
QGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IGJ1ZyB3aGVyZSBzdHJva2UncyBib3VuZGluZyBi
b3ggd2FzIGNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTgzNjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1bHplLgorCisgICAg
ICAgICogc3ZnL2hpdHRlc3Qvc3ZnLWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRt
bDogQWRkZWQuCisKIDIwMTItMDQtMTEgIFpvbHRhbiBBcnZhaSAgPHphcnZhaUBpbmYudS1zemVn
ZWQuaHU+CiAKICAgICAgICAgW1F0XSBTa2lwIGEgbmV3IHRlc3QgYmVjYXVzZSBvZiBtaXNzaW5n
IGxheW91dFRlc3RDb250cm9sbGVyLnNldEJhY2tpbmdTY2FsZUZhY3RvcigpIGltcGxlbWV0YXRp
b24uCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9r
ZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qvc3Zn
LWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvc3ZnL2hpdHRlc3Qvc3ZnLWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5IEBACitNYWtlIHN1cmUgaGl0IHRlc3Rpbmcgd29ya3Mg
cHJvcGVybHkgb24gc3Ryb2tlZCBlbGxpcHNlcyBhbmQgcmVjdHMuCisKK09uIHN1Y2Nlc3MsIHlv
dSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMgYW5kIG5vICJGQUlMIiBtZXNz
YWdlcy4KKworUEFTUyBlbGxpcHNlIGNvbnRhaW5zIHBvaW50IGF0ICg2NSwgODEpCitQQVNTIGVs
bGlwc2UgY29udGFpbnMgcG9pbnQgYXQgKDg5LCAxMDApCitQQVNTIGVsbGlwc2UgY29udGFpbnMg
cG9pbnQgYXQgKDEzMywgMTI4KQorUEFTUyBlbGxpcHNlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQg
YXQgKDEwMCwgMTQ4KQorUEFTUyBlbGxpcHNlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAs
IDApCitQQVNTIHJlY3QgY29udGFpbnMgcG9pbnQgYXQgKDIzMCwgMTkwKQorUEFTUyByZWN0IGNv
bnRhaW5zIHBvaW50IGF0ICgyODAsIDI0NSkKK1BBU1MgcmVjdCBjb250YWlucyBwb2ludCBhdCAo
MzEwLCAyNzUpCitQQVNTIHJlY3QgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMzM3LCAyOTgp
CitQQVNTIHJlY3QgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMCwgMCkKK1BBU1MgZWxsaXBz
ZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDQzLCA1NCkKK1BBU1MgZWxsaXBzZSBzdHJva2Ug
Y29udGFpbnMgcG9pbnQgYXQgKDU2LCAxMjMpCitQQVNTIGVsbGlwc2Ugc3Ryb2tlIGNvbnRhaW5z
IHBvaW50IGF0ICgxNDYsIDEzNCkKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQg
YXQgKDEyOSwgMTA5KQorUEFTUyBlbGxpcHNlIHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50
IGF0ICgwLCAxMDApCitQQVNTIGVsbGlwc2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQg
YXQgKDE2MCwgMTYwKQorUEFTUyBlbGxpcHNlIHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50
IGF0ICg5NSwgMTAwKQorUEFTUyByZWN0IHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoMjA4LCAx
NjgpCitQQVNTIHJlY3Qgc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgyMzcsIDE5OCkKK1BBU1Mg
cmVjdCBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDMwMSwgMzA1KQorUEFTUyByZWN0IHN0cm9r
ZSBjb250YWlucyBwb2ludCBhdCAoMzAyLCAyNjQpCitQQVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90
IGNvbnRhaW4gcG9pbnQgYXQgKDAsIDEwMCkKK1BBU1MgcmVjdCBzdHJva2UgZG9lcyBub3QgY29u
dGFpbiBwb2ludCBhdCAoMzc1LCAzMTUpCitQQVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90IGNvbnRh
aW4gcG9pbnQgYXQgKDI2NywgMjMzKQorCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9z
dmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9z
dmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL3N2Zy9oaXR0ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnhodG1sCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEyOSBAQAorPGh0bWwgeG1sbnM9J2h0dHA6Ly93d3cudzMu
b3JnLzE5OTkveGh0bWwnPgorICA8aGVhZD4KKyAgICA8c3R5bGU+CisgICAgICAjc3ZnUm9vdCB7
CisgICAgICAgICAgbWFyZ2luOiAwcHg7CisgICAgICAgICAgcGFkZGluZzogMHB4OworICAgICAg
ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgCisgICAgICAgICAgdG9wOiAwcHg7IAorICAgICAgICAg
IGxlZnQ6IDBweDsKKyAgICAgIH0KKworICAgICAgI2VsbGlwc2UsICNyZWN0IHsKKyAgICAgICAg
ICBmaWxsOiBncmVlbjsKKyAgICAgICAgICBmaWxsLW9wYWNpdHk6IDAuMTsKKyAgICAgICAgICBz
dHJva2Utd2lkdGg6IDAuM3B4OworICAgICAgICAgIHN0cm9rZTogZ3JlZW47CisgICAgICAgICAg
c3Ryb2tlLW9wYWNpdHk6IDAuMjsKKyAgICAgIH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+Cisg
IDxib2R5PgorICAgIDxwPk1ha2Ugc3VyZSBoaXQgdGVzdGluZyB3b3JrcyBwcm9wZXJseSBvbiBz
dHJva2VkIGVsbGlwc2VzIGFuZCByZWN0cy48L3A+CisgICAgPHA+T24gc3VjY2VzcywgeW91IHdp
bGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcyBhbmQgbm8gIkZBSUwiIG1lc3NhZ2Vz
LjwvcD4KKyAgICA8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KKworICAgIDxzdmcgaWQ9InN2Z1Jv
b3QiIHdpZHRoPSI0MDBweCIgaGVpZ2h0PSI0MDBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHht
bG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgICAgICA8ZyB0cmFuc2Zvcm09InNj
YWxlKDIwMCkiPgorICAgICAgICA8ZWxsaXBzZSBpZD0iZWxsaXBzZSIgY3g9IjAuNSIgY3k9IjAu
NSIgcng9IjAuMyIgcnk9IjAuMiIvPgorICAgICAgICA8cmVjdCBpZD0icmVjdCIgeD0iMS4xIiB5
PSIwLjkiIHdpZHRoPSIwLjUiIGhlaWdodD0iMC41Ii8+CisgICAgICA8L2c+CisgICAgPC9zdmc+
CisKKyAgICA8c2NyaXB0PjwhW0NEQVRBWworICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpCisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB2
YXIgcmVzdWx0U3RyaW5nID0gIiI7CisgICAgdmFyIGVsbGlwc2VFbGVtZW50ID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImVsbGlwc2UiKTsKKyAgICB2YXIgcmVjdEVsZW1lbnQgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgicmVjdCIpOworCisgICAgdmFyIHBvaW50c0luRWxsaXBzZSA9IFsK
KyAgICAgICB7eDogNjUsIHk6IDgxfSwKKyAgICAgICB7eDogODksIHk6IDEwMH0sCisgICAgICAg
e3g6IDEzMywgeTogMTI4fQorICAgIF07CisKKyAgICB2YXIgcG9pbnRzTm90SW5FbGxpcHNlID0g
WworICAgICAgICB7eDogMTAwLCB5OiAxNDh9LCAvLyBvdXRlciBzdHJva2UKKyAgICAgICAge3g6
IDAsIHk6IDB9CisgICAgXTsKKworICAgIHZhciBwb2ludHNPbkVsbGlwc2VTdHJva2UgPSBbCisg
ICAgICAge3g6IDQzLCB5OiA1NH0sIC8vIG91dGVyIHN0cm9rZQorICAgICAgIHt4OiA1NiwgeTog
MTIzfSwgLy8gaW5uZXIgc3Ryb2tlCisgICAgICAge3g6IDE0NiwgeTogMTM0fSwgLy8gb3V0ZXIg
c3Ryb2tlCisgICAgICAge3g6IDEyOSwgeTogMTA5fSAvLyBpbm5lciBzdHJva2UKKyAgICBdOwor
CisgICAgdmFyIHBvaW50c05vdE9uRWxsaXBzZVN0cm9rZSA9IFsKKyAgICAgICB7eDogMCwgeTog
MTAwfSwgLy8gb3V0c2lkZSBlbGxpcHNlCisgICAgICAge3g6IDE2MCwgeTogMTYwfSwgLy8gb3V0
c2lkZSBlbGxpcHNlCisgICAgICAge3g6IDk1LCB5OiAxMDB9IC8vIGluc2lkZSBlbGxpcHNlCisg
ICAgXTsKKworICAgIHZhciBwb2ludHNJblJlY3QgPSBbCisgICAgICAge3g6IDIzMCwgeTogMTkw
fSwKKyAgICAgICB7eDogMjgwLCB5OiAyNDV9LAorICAgICAgIHt4OiAzMTAsIHk6IDI3NX0KKyAg
ICBdOworCisgICAgdmFyIHBvaW50c05vdEluUmVjdCA9IFsKKyAgICAgICAge3g6IDMzNywgeTog
Mjk4fSwgLy8gb3V0ZXIgc3Ryb2tlCisgICAgICAgIHt4OiAwLCB5OiAwfQorICAgIF07CisKKyAg
ICB2YXIgcG9pbnRzT25SZWN0U3Ryb2tlID0gWworICAgICAgIHt4OiAyMDgsIHk6IDE2OH0sIC8v
IG91dGVyIHN0cm9rZQorICAgICAgIHt4OiAyMzcsIHk6IDE5OH0sIC8vIGlubmVyIHN0cm9rZQor
ICAgICAgIHt4OiAzMDEsIHk6IDMwNX0sIC8vIG91dGVyIHN0cm9rZQorICAgICAgIHt4OiAzMDIs
IHk6IDI2NH0gLy8gaW5uZXIgc3Ryb2tlCisgICAgXTsKKworICAgIHZhciBwb2ludHNOb3RPblJl
Y3RTdHJva2UgPSBbCisgICAgICAge3g6IDAsIHk6IDEwMH0sIC8vIG91dHNpZGUgcmVjdAorICAg
ICAgIHt4OiAzNzUsIHk6IDMxNX0sIC8vIG91dHNpZGUgcmVjdAorICAgICAgIHt4OiAyNjcsIHk6
IDIzM30gLy8gaW5zaWRlIHJlY3QKKyAgICBdOworCisgICAgZWxsaXBzZUVsZW1lbnQuc3R5bGUu
c2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVGaWxsIik7IC8vIG9ubHkgY2Fw
dHVyZSBldmVudHMgb24gdGhlIGZpbGwKKyAgICByZWN0RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0
eSgicG9pbnRlci1ldmVudHMiLCAidmlzaWJsZUZpbGwiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50
cyBvbiB0aGUgZmlsbAorICAgIHBvaW50c0luRWxsaXBzZS5mb3JFYWNoKCBmdW5jdGlvbihwb2lu
dCkgeworICAgICAgICB2YXIgcGFzcyA9IChlbGxpcHNlRWxlbWVudCA9PSBkb2N1bWVudC5lbGVt
ZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9
ICgocGFzcykgPyAiUEFTUyIgOiAiRkFJTCIpICsgIiBlbGxpcHNlIGNvbnRhaW5zIHBvaW50IGF0
ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9p
bnRzTm90SW5FbGxpcHNlLmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBw
YXNzID0gKGVsbGlwc2VFbGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQu
eCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6
ICJGQUlMIikgKyAiIGVsbGlwc2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50
LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAgIH0pOworICAgIHBvaW50c0luUmVjdC5m
b3JFYWNoKCBmdW5jdGlvbihwb2ludCkgeworICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxlbWVu
dCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50LnkpKTsKKyAgICAg
ICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykgPyAiUEFTUyIgOiAiRkFJTCIpICsgIiByZWN0IGNv
bnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7Cisg
ICAgfSk7CisgICAgcG9pbnRzTm90SW5SZWN0LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7Cisg
ICAgICAgIHZhciBwYXNzID0gKHJlY3RFbGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9p
bnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/
ICJQQVNTIiA6ICJGQUlMIikgKyAiIHJlY3QgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiAr
IHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAgIH0pOworCisgICAgZWxsaXBz
ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJv
a2UiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgc3Ryb2tlCisgICAgcmVjdEVsZW1l
bnQuc3R5bGUuc2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsg
Ly8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgc3Ryb2tlCisgICAgcG9pbnRzT25FbGxpcHNl
U3Ryb2tlLmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVs
bGlwc2VFbGVtZW50ID09IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQu
eSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikg
KyAiIGVsbGlwc2Ugc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIg
KyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9pbnRzTm90T25FbGxpcHNlU3Ryb2tl
LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VF
bGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOwor
ICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVs
bGlwc2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwg
IiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9KTsKKyAgICBwb2ludHNPblJlY3RTdHJva2UuZm9y
RWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3MgPSAocmVjdEVsZW1lbnQg
PT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAg
IHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgcmVjdCBzdHJv
a2UgY29udGFpbnMgcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxu
IjsKKyAgICB9KTsKKyAgICBwb2ludHNOb3RPblJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24o
cG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3MgPSAocmVjdEVsZW1lbnQgIT0gZG9jdW1lbnQuZWxl
bWVudEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyAr
PSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgcmVjdCBzdHJva2UgZG9lcyBub3QgY29u
dGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAg
IH0pOworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MID0g
cmVzdWx0U3RyaW5nOworICAgIF1dPjwvc2NyaXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="commit-queue"
          id="141545"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136685</attachid>
            <date>2012-04-11 10:08:07 -0700</date>
            <delta_ts>2012-04-11 10:14:56 -0700</delta_ts>
            <desc>Update so the patch applies cleanly</desc>
            <filename>83651.4.patch</filename>
            <type>text/plain</type>
            <size>10058</size>
            <attacher name="Philip Rogers">pdr</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzg3MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDEyLTA0LTExICBQaGlsaXAg
Um9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IGJ1ZyB3aGVyZSBzdHJva2Un
cyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1
bHplLgorCisgICAgICAgIFRoaXMgY2hhbmdlIGNvbnRhaW5zIHR3byBmaXhlcyBmb3Igb25lIGJ1
ZzoKKyAgICAgICAgMSkgRmxvYXRSZWN0Ojpjb250YWlucyBjb250YWluZWQgYSBuYXN0eSBtaXN0
YWtlIHdoZXJlCisgICAgICAgICAgIG1heHkoKSA8IHkoKSB3YXMgY29tcGFyZWQgaW5zdGVhZCBv
ZiBtYXh5KCkgPCBwb2ludC55KCkuCisgICAgICAgIDIpIFJlbmRlclNWR1NoYXBlOjpzdHJva2VD
b250YWlucyB3YXMgZGVwZW5kaW5nIG9uIGl0cyBpbnRlcm5hbAorICAgICAgICAgICBtX3N0cm9r
ZUFuZE1hcmtlckJvdW5kaW5nQm94IGluc3RlYWQgb2YgY2FsbGluZyB0aGUgdmlydHVhbAorICAg
ICAgICAgICBtZXRob2Qgc3Ryb2tlQm91bmRpbmdCb3goKS4gVGhpcyBjaGFuZ2Ugc3dpdGNoZXMg
dG8gdXNpbmcKKyAgICAgICAgICAgc3Ryb2tlQm91bmRpbmdCb3goKS4KKworICAgICAgICBUZXN0
OiBzdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbAorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZsb2F0
UmVjdDo6Y29udGFpbnMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKToK
KwogMjAxMi0wNC0xMSAgTm8nYW0gUm9zZW50aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29t
PgogCiAgICAgICAgIFNpbmdsZSBTaGFyZWFibGVCaXRtYXAgcmV2aXNpb24gYmxhY2tzIG91dCBX
ZWJWaWV3IG9uIEhhcm1hdHRhbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRmxvYXRSZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9GbG9hdFJlY3QuY3BwCShyZXZpc2lvbiAxMTM4NzIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3
ICs3Nyw3IEBAIGJvb2wgRmxvYXRSZWN0Ojpjb250YWlucyhjb25zdCBGbG9hdFBvaW4KIHsKICAg
ICBpZiAoY29udGFpbnNNb2RlID09IEluc2lkZU9yT25TdHJva2UpCiAgICAgICAgIHJldHVybiBj
b250YWlucyhwb2ludC54KCksIHBvaW50LnkoKSk7Ci0gICAgcmV0dXJuIHgoKSA8IHBvaW50Lngo
KSAmJiBtYXhYKCkgPiBwb2ludC54KCkgJiYgeSgpIDwgcG9pbnQueSgpICYmIG1heFkoKSA+IHko
KTsKKyAgICByZXR1cm4geCgpIDwgcG9pbnQueCgpICYmIG1heFgoKSA+IHBvaW50LngoKSAmJiB5
KCkgPCBwb2ludC55KCkgJiYgbWF4WSgpID4gcG9pbnQueSgpOwogfQogCiB2b2lkIEZsb2F0UmVj
dDo6aW50ZXJzZWN0KGNvbnN0IEZsb2F0UmVjdCYgb3RoZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcAkocmV2aXNpb24gMTEzODcy
KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEyOSw3ICsxMjksNyBAQCBib29sIFJlbmRlclNWR1NoYXBlOjpmaWxs
Q29udGFpbnMoY29uc3QgCiAKIGJvb2wgUmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKGNv
bnN0IEZsb2F0UG9pbnQmIHBvaW50LCBib29sIHJlcXVpcmVzU3Ryb2tlKQogewotICAgIGlmICgh
bV9zdHJva2VBbmRNYXJrZXJCb3VuZGluZ0JveC5jb250YWlucyhwb2ludCkpCisgICAgaWYgKCFz
dHJva2VCb3VuZGluZ0JveCgpLmNvbnRhaW5zKHBvaW50KSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgQ29sb3IgZmFsbGJhY2tDb2xvcjsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzg3MykK
KysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDEyLTA0LTExICBQaGlsaXAgUm9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAg
Rml4IGJ1ZyB3aGVyZSBzdHJva2UncyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBzdmcvaGl0dGVzdC9zdmct
ZWxsaXBzZS1yZWN0LXN0cm9rZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2Zy9o
aXR0ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnhodG1sOiBBZGRlZC4KKwogMjAxMi0wNC0x
MSAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQub3JnPgogCiAgICAgICAgIFtRdF0g
VW5yZXZpZXdlZCBnYXJkZW5pbmcgYWZ0ZXIgcjExMzczOC4KSW5kZXg6IExheW91dFRlc3RzL3N2
Zy9oaXR0ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxs
aXBzZS1yZWN0LXN0cm9rZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjkg
QEAKK01ha2Ugc3VyZSBoaXQgdGVzdGluZyB3b3JrcyBwcm9wZXJseSBvbiBzdHJva2VkIGVsbGlw
c2VzIGFuZCByZWN0cy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQ
QVNTIiBtZXNzYWdlcyBhbmQgbm8gIkZBSUwiIG1lc3NhZ2VzLgorCitQQVNTIGVsbGlwc2UgY29u
dGFpbnMgcG9pbnQgYXQgKDY1LCA4MSkKK1BBU1MgZWxsaXBzZSBjb250YWlucyBwb2ludCBhdCAo
ODksIDEwMCkKK1BBU1MgZWxsaXBzZSBjb250YWlucyBwb2ludCBhdCAoMTMzLCAxMjgpCitQQVNT
IGVsbGlwc2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMTAwLCAxNDgpCitQQVNTIGVsbGlw
c2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMCwgMCkKK1BBU1MgcmVjdCBjb250YWlucyBw
b2ludCBhdCAoMjMwLCAxOTApCitQQVNTIHJlY3QgY29udGFpbnMgcG9pbnQgYXQgKDI4MCwgMjQ1
KQorUEFTUyByZWN0IGNvbnRhaW5zIHBvaW50IGF0ICgzMTAsIDI3NSkKK1BBU1MgcmVjdCBkb2Vz
IG5vdCBjb250YWluIHBvaW50IGF0ICgzMzcsIDI5OCkKK1BBU1MgcmVjdCBkb2VzIG5vdCBjb250
YWluIHBvaW50IGF0ICgwLCAwKQorUEFTUyBlbGxpcHNlIHN0cm9rZSBjb250YWlucyBwb2ludCBh
dCAoNDMsIDU0KQorUEFTUyBlbGxpcHNlIHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoNTYsIDEy
MykKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDE0NiwgMTM0KQorUEFT
UyBlbGxpcHNlIHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoMTI5LCAxMDkpCitQQVNTIGVsbGlw
c2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAsIDEwMCkKK1BBU1MgZWxsaXBz
ZSBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMTYwLCAxNjApCitQQVNTIGVsbGlw
c2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDk1LCAxMDApCitQQVNTIHJlY3Qg
c3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgyMDgsIDE2OCkKK1BBU1MgcmVjdCBzdHJva2UgY29u
dGFpbnMgcG9pbnQgYXQgKDIzNywgMTk4KQorUEFTUyByZWN0IHN0cm9rZSBjb250YWlucyBwb2lu
dCBhdCAoMzAxLCAzMDUpCitQQVNTIHJlY3Qgc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgzMDIs
IDI2NCkKK1BBU1MgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMCwgMTAw
KQorUEFTUyByZWN0IHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICgzNzUsIDMxNSkK
K1BBU1MgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMjY3LCAyMzMpCisK
SW5kZXg6IExheW91dFRlc3RzL3N2Zy9oaXR0ZXN0L3N2Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnho
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9oaXR0ZXN0L3N2Zy1lbGxpcHNlLXJl
Y3Qtc3Ryb2tlLnhodG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qv
c3ZnLWVsbGlwc2UtcmVjdC1zdHJva2UueGh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTI5
IEBACis8aHRtbCB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCc+CisgIDxoZWFk
PgorICAgIDxzdHlsZT4KKyAgICAgICNzdmdSb290IHsKKyAgICAgICAgICBtYXJnaW46IDBweDsK
KyAgICAgICAgICBwYWRkaW5nOiAwcHg7CisgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyAK
KyAgICAgICAgICB0b3A6IDBweDsgCisgICAgICAgICAgbGVmdDogMHB4OworICAgICAgfQorCisg
ICAgICAjZWxsaXBzZSwgI3JlY3QgeworICAgICAgICAgIGZpbGw6IGdyZWVuOworICAgICAgICAg
IGZpbGwtb3BhY2l0eTogMC4xOworICAgICAgICAgIHN0cm9rZS13aWR0aDogMC4zcHg7CisgICAg
ICAgICAgc3Ryb2tlOiBncmVlbjsKKyAgICAgICAgICBzdHJva2Utb3BhY2l0eTogMC4yOworICAg
ICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+TWFrZSBzdXJl
IGhpdCB0ZXN0aW5nIHdvcmtzIHByb3Blcmx5IG9uIHN0cm9rZWQgZWxsaXBzZXMgYW5kIHJlY3Rz
LjwvcD4KKyAgICA8cD5PbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzIGFuZCBubyAiRkFJTCIgbWVzc2FnZXMuPC9wPgorICAgIDxwcmUgaWQ9ImNvbnNv
bGUiPjwvcHJlPgorCisgICAgPHN2ZyBpZD0ic3ZnUm9vdCIgd2lkdGg9IjQwMHB4IiBoZWlnaHQ9
IjQwMHB4IiB2aWV3Qm94PSIwIDAgNDAwIDQwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIw
MDAvc3ZnIj4KKyAgICAgIDxnIHRyYW5zZm9ybT0ic2NhbGUoMjAwKSI+CisgICAgICAgIDxlbGxp
cHNlIGlkPSJlbGxpcHNlIiBjeD0iMC41IiBjeT0iMC41IiByeD0iMC4zIiByeT0iMC4yIi8+Cisg
ICAgICAgIDxyZWN0IGlkPSJyZWN0IiB4PSIxLjEiIHk9IjAuOSIgd2lkdGg9IjAuNSIgaGVpZ2h0
PSIwLjUiLz4KKyAgICAgIDwvZz4KKyAgICA8L3N2Zz4KKworICAgIDxzY3JpcHQ+PCFbQ0RBVEFb
CisgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKKyAgICAgIGxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIHZhciByZXN1bHRTdHJpbmcgPSAiIjsKKyAg
ICB2YXIgZWxsaXBzZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZWxsaXBzZSIp
OworICAgIHZhciByZWN0RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZWN0Iik7
CisKKyAgICB2YXIgcG9pbnRzSW5FbGxpcHNlID0gWworICAgICAgIHt4OiA2NSwgeTogODF9LAor
ICAgICAgIHt4OiA4OSwgeTogMTAwfSwKKyAgICAgICB7eDogMTMzLCB5OiAxMjh9CisgICAgXTsK
KworICAgIHZhciBwb2ludHNOb3RJbkVsbGlwc2UgPSBbCisgICAgICAgIHt4OiAxMDAsIHk6IDE0
OH0sIC8vIG91dGVyIHN0cm9rZQorICAgICAgICB7eDogMCwgeTogMH0KKyAgICBdOworCisgICAg
dmFyIHBvaW50c09uRWxsaXBzZVN0cm9rZSA9IFsKKyAgICAgICB7eDogNDMsIHk6IDU0fSwgLy8g
b3V0ZXIgc3Ryb2tlCisgICAgICAge3g6IDU2LCB5OiAxMjN9LCAvLyBpbm5lciBzdHJva2UKKyAg
ICAgICB7eDogMTQ2LCB5OiAxMzR9LCAvLyBvdXRlciBzdHJva2UKKyAgICAgICB7eDogMTI5LCB5
OiAxMDl9IC8vIGlubmVyIHN0cm9rZQorICAgIF07CisKKyAgICB2YXIgcG9pbnRzTm90T25FbGxp
cHNlU3Ryb2tlID0gWworICAgICAgIHt4OiAwLCB5OiAxMDB9LCAvLyBvdXRzaWRlIGVsbGlwc2UK
KyAgICAgICB7eDogMTYwLCB5OiAxNjB9LCAvLyBvdXRzaWRlIGVsbGlwc2UKKyAgICAgICB7eDog
OTUsIHk6IDEwMH0gLy8gaW5zaWRlIGVsbGlwc2UKKyAgICBdOworCisgICAgdmFyIHBvaW50c0lu
UmVjdCA9IFsKKyAgICAgICB7eDogMjMwLCB5OiAxOTB9LAorICAgICAgIHt4OiAyODAsIHk6IDI0
NX0sCisgICAgICAge3g6IDMxMCwgeTogMjc1fQorICAgIF07CisKKyAgICB2YXIgcG9pbnRzTm90
SW5SZWN0ID0gWworICAgICAgICB7eDogMzM3LCB5OiAyOTh9LCAvLyBvdXRlciBzdHJva2UKKyAg
ICAgICAge3g6IDAsIHk6IDB9CisgICAgXTsKKworICAgIHZhciBwb2ludHNPblJlY3RTdHJva2Ug
PSBbCisgICAgICAge3g6IDIwOCwgeTogMTY4fSwgLy8gb3V0ZXIgc3Ryb2tlCisgICAgICAge3g6
IDIzNywgeTogMTk4fSwgLy8gaW5uZXIgc3Ryb2tlCisgICAgICAge3g6IDMwMSwgeTogMzA1fSwg
Ly8gb3V0ZXIgc3Ryb2tlCisgICAgICAge3g6IDMwMiwgeTogMjY0fSAvLyBpbm5lciBzdHJva2UK
KyAgICBdOworCisgICAgdmFyIHBvaW50c05vdE9uUmVjdFN0cm9rZSA9IFsKKyAgICAgICB7eDog
MCwgeTogMTAwfSwgLy8gb3V0c2lkZSByZWN0CisgICAgICAge3g6IDM3NSwgeTogMzE1fSwgLy8g
b3V0c2lkZSByZWN0CisgICAgICAge3g6IDI2NywgeTogMjMzfSAvLyBpbnNpZGUgcmVjdAorICAg
IF07CisKKyAgICBlbGxpcHNlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgicG9pbnRlci1ldmVu
dHMiLCAidmlzaWJsZUZpbGwiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgZmlsbAor
ICAgIHJlY3RFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJwb2ludGVyLWV2ZW50cyIsICJ2aXNp
YmxlRmlsbCIpOyAvLyBvbmx5IGNhcHR1cmUgZXZlbnRzIG9uIHRoZSBmaWxsCisgICAgcG9pbnRz
SW5FbGxpcHNlLmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0g
KGVsbGlwc2VFbGVtZW50ID09IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9p
bnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlM
IikgKyAiIGVsbGlwc2UgY29udGFpbnMgcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBv
aW50LnkgKyAiKVxuIjsKKyAgICB9KTsKKyAgICBwb2ludHNOb3RJbkVsbGlwc2UuZm9yRWFjaCgg
ZnVuY3Rpb24ocG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3MgPSAoZWxsaXBzZUVsZW1lbnQgIT0g
ZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJl
c3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgZWxsaXBzZSBkb2Vz
IG5vdCBjb250YWluIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilc
biI7CisgICAgfSk7CisgICAgcG9pbnRzSW5SZWN0LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7
CisgICAgICAgIHZhciBwYXNzID0gKHJlY3RFbGVtZW50ID09IGRvY3VtZW50LmVsZW1lbnRGcm9t
UG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNz
KSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIHJlY3QgY29udGFpbnMgcG9pbnQgYXQgKCIgKyBwb2lu
dC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9KTsKKyAgICBwb2ludHNOb3RJblJl
Y3QuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3MgPSAocmVjdEVs
ZW1lbnQgIT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7Cisg
ICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgcmVj
dCBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55
ICsgIilcbiI7CisgICAgfSk7CisKKyAgICBlbGxpcHNlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0
eSgicG9pbnRlci1ldmVudHMiLCAidmlzaWJsZVN0cm9rZSIpOyAvLyBvbmx5IGNhcHR1cmUgZXZl
bnRzIG9uIHRoZSBzdHJva2UKKyAgICByZWN0RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgicG9p
bnRlci1ldmVudHMiLCAidmlzaWJsZVN0cm9rZSIpOyAvLyBvbmx5IGNhcHR1cmUgZXZlbnRzIG9u
IHRoZSBzdHJva2UKKyAgICBwb2ludHNPbkVsbGlwc2VTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24o
cG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3MgPSAoZWxsaXBzZUVsZW1lbnQgPT0gZG9jdW1lbnQu
ZWxlbWVudEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmlu
ZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgZWxsaXBzZSBzdHJva2UgY29udGFp
bnMgcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9
KTsKKyAgICBwb2ludHNOb3RPbkVsbGlwc2VTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQp
IHsKKyAgICAgICAgdmFyIHBhc3MgPSAoZWxsaXBzZUVsZW1lbnQgIT0gZG9jdW1lbnQuZWxlbWVu
dEZyb21Qb2ludChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyArPSAo
KHBhc3MpID8gIlBBU1MiIDogIkZBSUwiKSArICIgZWxsaXBzZSBzdHJva2UgZG9lcyBub3QgY29u
dGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAg
IH0pOworICAgIHBvaW50c09uUmVjdFN0cm9rZS5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgewor
ICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxlbWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBv
aW50KHBvaW50LngsIHBvaW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykg
PyAiUEFTUyIgOiAiRkFJTCIpICsgIiByZWN0IHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoIiAr
IHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAgIH0pOworICAgIHBvaW50c05v
dE9uUmVjdFN0cm9rZS5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgeworICAgICAgICB2YXIgcGFz
cyA9IChyZWN0RWxlbWVudCAhPSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50LngsIHBv
aW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykgPyAiUEFTUyIgOiAiRkFJ
TCIpICsgIiByZWN0IHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICgiICsgcG9pbnQu
eCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoImNvbnNvbGUiKS5pbm5lckhUTUwgPSByZXN1bHRTdHJpbmc7CisgICAgXV0+PC9z
Y3JpcHQ+CisgPC9ib2R5PgorPC9odG1sPgo=
</data>
<flag name="commit-queue"
          id="141573"
          type_id="3"
          status="-"
          setter="webkit.review.bot"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>136687</attachid>
            <date>2012-04-11 10:14:56 -0700</date>
            <delta_ts>2012-04-11 10:51:12 -0700</delta_ts>
            <desc>Adding Dirk to reviewers line.</desc>
            <filename>83651.4.patch</filename>
            <type>text/plain</type>
            <size>10056</size>
            <attacher name="Philip Rogers">pdr</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzg3MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDEyLTA0LTExICBQaGlsaXAg
Um9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAgRml4IGJ1ZyB3aGVyZSBzdHJva2Un
cyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGlyayBTY2h1
bHplLgorCisgICAgICAgIFRoaXMgY2hhbmdlIGNvbnRhaW5zIHR3byBmaXhlcyBmb3Igb25lIGJ1
ZzoKKyAgICAgICAgMSkgRmxvYXRSZWN0Ojpjb250YWlucyBjb250YWluZWQgYSBuYXN0eSBtaXN0
YWtlIHdoZXJlCisgICAgICAgICAgIG1heHkoKSA8IHkoKSB3YXMgY29tcGFyZWQgaW5zdGVhZCBv
ZiBtYXh5KCkgPCBwb2ludC55KCkuCisgICAgICAgIDIpIFJlbmRlclNWR1NoYXBlOjpzdHJva2VD
b250YWlucyB3YXMgZGVwZW5kaW5nIG9uIGl0cyBpbnRlcm5hbAorICAgICAgICAgICBtX3N0cm9r
ZUFuZE1hcmtlckJvdW5kaW5nQm94IGluc3RlYWQgb2YgY2FsbGluZyB0aGUgdmlydHVhbAorICAg
ICAgICAgICBtZXRob2Qgc3Ryb2tlQm91bmRpbmdCb3goKS4gVGhpcyBjaGFuZ2Ugc3dpdGNoZXMg
dG8gdXNpbmcKKyAgICAgICAgICAgc3Ryb2tlQm91bmRpbmdCb3goKS4KKworICAgICAgICBUZXN0
OiBzdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbAorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvRmxvYXRSZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZsb2F0
UmVjdDo6Y29udGFpbnMpOgorICAgICAgICAqIHJlbmRlcmluZy9zdmcvUmVuZGVyU1ZHU2hhcGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKToK
KwogMjAxMi0wNC0xMSAgTm8nYW0gUm9zZW50aGFsICA8bm9hbS5yb3NlbnRoYWxAbm9raWEuY29t
PgogCiAgICAgICAgIFNpbmdsZSBTaGFyZWFibGVCaXRtYXAgcmV2aXNpb24gYmxhY2tzIG91dCBX
ZWJWaWV3IG9uIEhhcm1hdHRhbgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvRmxvYXRSZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9GbG9hdFJlY3QuY3BwCShyZXZpc2lvbiAxMTM4NzIpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9GbG9hdFJlY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3
ICs3Nyw3IEBAIGJvb2wgRmxvYXRSZWN0Ojpjb250YWlucyhjb25zdCBGbG9hdFBvaW4KIHsKICAg
ICBpZiAoY29udGFpbnNNb2RlID09IEluc2lkZU9yT25TdHJva2UpCiAgICAgICAgIHJldHVybiBj
b250YWlucyhwb2ludC54KCksIHBvaW50LnkoKSk7Ci0gICAgcmV0dXJuIHgoKSA8IHBvaW50Lngo
KSAmJiBtYXhYKCkgPiBwb2ludC54KCkgJiYgeSgpIDwgcG9pbnQueSgpICYmIG1heFkoKSA+IHko
KTsKKyAgICByZXR1cm4geCgpIDwgcG9pbnQueCgpICYmIG1heFgoKSA+IHBvaW50LngoKSAmJiB5
KCkgPCBwb2ludC55KCkgJiYgbWF4WSgpID4gcG9pbnQueSgpOwogfQogCiB2b2lkIEZsb2F0UmVj
dDo6aW50ZXJzZWN0KGNvbnN0IEZsb2F0UmVjdCYgb3RoZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1NoYXBlLmNwcAkocmV2aXNpb24gMTEzODcy
KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdTaGFwZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTEyOSw3ICsxMjksNyBAQCBib29sIFJlbmRlclNWR1NoYXBlOjpmaWxs
Q29udGFpbnMoY29uc3QgCiAKIGJvb2wgUmVuZGVyU1ZHU2hhcGU6OnN0cm9rZUNvbnRhaW5zKGNv
bnN0IEZsb2F0UG9pbnQmIHBvaW50LCBib29sIHJlcXVpcmVzU3Ryb2tlKQogewotICAgIGlmICgh
bV9zdHJva2VBbmRNYXJrZXJCb3VuZGluZ0JveC5jb250YWlucyhwb2ludCkpCisgICAgaWYgKCFz
dHJva2VCb3VuZGluZ0JveCgpLmNvbnRhaW5zKHBvaW50KSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCiAgICAgQ29sb3IgZmFsbGJhY2tDb2xvcjsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMzg3MykK
KysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDEyLTA0LTExICBQaGlsaXAgUm9nZXJzICA8cGRyQGdvb2dsZS5jb20+CisKKyAgICAgICAg
Rml4IGJ1ZyB3aGVyZSBzdHJva2UncyBib3VuZGluZyBib3ggd2FzIGNsaXBwZWQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgzNjUxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgRGlyayBTY2h1bHplLgorCisgICAgICAgICogc3ZnL2hpdHRlc3Qvc3ZnLWVs
bGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBzdmcvaGl0
dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRtbDogQWRkZWQuCisKIDIwMTItMDQtMTEg
IENzYWJhIE9zenRyb2dvbsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbUXRdIFVu
cmV2aWV3ZWQgZ2FyZGVuaW5nIGFmdGVyIHIxMTM3MzguCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcv
aGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS1leHBlY3RlZC50eHQKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qvc3ZnLWVsbGlwc2UtcmVjdC1zdHJva2UtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2hpdHRlc3Qvc3ZnLWVsbGlw
c2UtcmVjdC1zdHJva2UtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI5IEBA
CitNYWtlIHN1cmUgaGl0IHRlc3Rpbmcgd29ya3MgcHJvcGVybHkgb24gc3Ryb2tlZCBlbGxpcHNl
cyBhbmQgcmVjdHMuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMgYW5kIG5vICJGQUlMIiBtZXNzYWdlcy4KKworUEFTUyBlbGxpcHNlIGNvbnRh
aW5zIHBvaW50IGF0ICg2NSwgODEpCitQQVNTIGVsbGlwc2UgY29udGFpbnMgcG9pbnQgYXQgKDg5
LCAxMDApCitQQVNTIGVsbGlwc2UgY29udGFpbnMgcG9pbnQgYXQgKDEzMywgMTI4KQorUEFTUyBl
bGxpcHNlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDEwMCwgMTQ4KQorUEFTUyBlbGxpcHNl
IGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAsIDApCitQQVNTIHJlY3QgY29udGFpbnMgcG9p
bnQgYXQgKDIzMCwgMTkwKQorUEFTUyByZWN0IGNvbnRhaW5zIHBvaW50IGF0ICgyODAsIDI0NSkK
K1BBU1MgcmVjdCBjb250YWlucyBwb2ludCBhdCAoMzEwLCAyNzUpCitQQVNTIHJlY3QgZG9lcyBu
b3QgY29udGFpbiBwb2ludCBhdCAoMzM3LCAyOTgpCitQQVNTIHJlY3QgZG9lcyBub3QgY29udGFp
biBwb2ludCBhdCAoMCwgMCkKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQg
KDQzLCA1NCkKK1BBU1MgZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDU2LCAxMjMp
CitQQVNTIGVsbGlwc2Ugc3Ryb2tlIGNvbnRhaW5zIHBvaW50IGF0ICgxNDYsIDEzNCkKK1BBU1Mg
ZWxsaXBzZSBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKDEyOSwgMTA5KQorUEFTUyBlbGxpcHNl
IHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICgwLCAxMDApCitQQVNTIGVsbGlwc2Ug
c3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDE2MCwgMTYwKQorUEFTUyBlbGxpcHNl
IHN0cm9rZSBkb2VzIG5vdCBjb250YWluIHBvaW50IGF0ICg5NSwgMTAwKQorUEFTUyByZWN0IHN0
cm9rZSBjb250YWlucyBwb2ludCBhdCAoMjA4LCAxNjgpCitQQVNTIHJlY3Qgc3Ryb2tlIGNvbnRh
aW5zIHBvaW50IGF0ICgyMzcsIDE5OCkKK1BBU1MgcmVjdCBzdHJva2UgY29udGFpbnMgcG9pbnQg
YXQgKDMwMSwgMzA1KQorUEFTUyByZWN0IHN0cm9rZSBjb250YWlucyBwb2ludCBhdCAoMzAyLCAy
NjQpCitQQVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDAsIDEwMCkK
K1BBU1MgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoMzc1LCAzMTUpCitQ
QVNTIHJlY3Qgc3Ryb2tlIGRvZXMgbm90IGNvbnRhaW4gcG9pbnQgYXQgKDI2NywgMjMzKQorCklu
ZGV4OiBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0LXN0cm9rZS54aHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9zdmcvaGl0dGVzdC9zdmctZWxsaXBzZS1yZWN0
LXN0cm9rZS54aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9oaXR0ZXN0L3N2
Zy1lbGxpcHNlLXJlY3Qtc3Ryb2tlLnhodG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEyOSBA
QAorPGh0bWwgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnPgorICA8aGVhZD4K
KyAgICA8c3R5bGU+CisgICAgICAjc3ZnUm9vdCB7CisgICAgICAgICAgbWFyZ2luOiAwcHg7Cisg
ICAgICAgICAgcGFkZGluZzogMHB4OworICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgCisg
ICAgICAgICAgdG9wOiAwcHg7IAorICAgICAgICAgIGxlZnQ6IDBweDsKKyAgICAgIH0KKworICAg
ICAgI2VsbGlwc2UsICNyZWN0IHsKKyAgICAgICAgICBmaWxsOiBncmVlbjsKKyAgICAgICAgICBm
aWxsLW9wYWNpdHk6IDAuMTsKKyAgICAgICAgICBzdHJva2Utd2lkdGg6IDAuM3B4OworICAgICAg
ICAgIHN0cm9rZTogZ3JlZW47CisgICAgICAgICAgc3Ryb2tlLW9wYWNpdHk6IDAuMjsKKyAgICAg
IH0KKyAgICA8L3N0eWxlPgorICA8L2hlYWQ+CisgIDxib2R5PgorICAgIDxwPk1ha2Ugc3VyZSBo
aXQgdGVzdGluZyB3b3JrcyBwcm9wZXJseSBvbiBzdHJva2VkIGVsbGlwc2VzIGFuZCByZWN0cy48
L3A+CisgICAgPHA+T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcyBhbmQgbm8gIkZBSUwiIG1lc3NhZ2VzLjwvcD4KKyAgICA8cHJlIGlkPSJjb25zb2xl
Ij48L3ByZT4KKworICAgIDxzdmcgaWQ9InN2Z1Jvb3QiIHdpZHRoPSI0MDBweCIgaGVpZ2h0PSI0
MDBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAw
L3N2ZyI+CisgICAgICA8ZyB0cmFuc2Zvcm09InNjYWxlKDIwMCkiPgorICAgICAgICA8ZWxsaXBz
ZSBpZD0iZWxsaXBzZSIgY3g9IjAuNSIgY3k9IjAuNSIgcng9IjAuMyIgcnk9IjAuMiIvPgorICAg
ICAgICA8cmVjdCBpZD0icmVjdCIgeD0iMS4xIiB5PSIwLjkiIHdpZHRoPSIwLjUiIGhlaWdodD0i
MC41Ii8+CisgICAgICA8L2c+CisgICAgPC9zdmc+CisKKyAgICA8c2NyaXB0PjwhW0NEQVRBWwor
ICAgIGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICB2YXIgcmVzdWx0U3RyaW5nID0gIiI7CisgICAg
dmFyIGVsbGlwc2VFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVsbGlwc2UiKTsK
KyAgICB2YXIgcmVjdEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVjdCIpOwor
CisgICAgdmFyIHBvaW50c0luRWxsaXBzZSA9IFsKKyAgICAgICB7eDogNjUsIHk6IDgxfSwKKyAg
ICAgICB7eDogODksIHk6IDEwMH0sCisgICAgICAge3g6IDEzMywgeTogMTI4fQorICAgIF07CisK
KyAgICB2YXIgcG9pbnRzTm90SW5FbGxpcHNlID0gWworICAgICAgICB7eDogMTAwLCB5OiAxNDh9
LCAvLyBvdXRlciBzdHJva2UKKyAgICAgICAge3g6IDAsIHk6IDB9CisgICAgXTsKKworICAgIHZh
ciBwb2ludHNPbkVsbGlwc2VTdHJva2UgPSBbCisgICAgICAge3g6IDQzLCB5OiA1NH0sIC8vIG91
dGVyIHN0cm9rZQorICAgICAgIHt4OiA1NiwgeTogMTIzfSwgLy8gaW5uZXIgc3Ryb2tlCisgICAg
ICAge3g6IDE0NiwgeTogMTM0fSwgLy8gb3V0ZXIgc3Ryb2tlCisgICAgICAge3g6IDEyOSwgeTog
MTA5fSAvLyBpbm5lciBzdHJva2UKKyAgICBdOworCisgICAgdmFyIHBvaW50c05vdE9uRWxsaXBz
ZVN0cm9rZSA9IFsKKyAgICAgICB7eDogMCwgeTogMTAwfSwgLy8gb3V0c2lkZSBlbGxpcHNlCisg
ICAgICAge3g6IDE2MCwgeTogMTYwfSwgLy8gb3V0c2lkZSBlbGxpcHNlCisgICAgICAge3g6IDk1
LCB5OiAxMDB9IC8vIGluc2lkZSBlbGxpcHNlCisgICAgXTsKKworICAgIHZhciBwb2ludHNJblJl
Y3QgPSBbCisgICAgICAge3g6IDIzMCwgeTogMTkwfSwKKyAgICAgICB7eDogMjgwLCB5OiAyNDV9
LAorICAgICAgIHt4OiAzMTAsIHk6IDI3NX0KKyAgICBdOworCisgICAgdmFyIHBvaW50c05vdElu
UmVjdCA9IFsKKyAgICAgICAge3g6IDMzNywgeTogMjk4fSwgLy8gb3V0ZXIgc3Ryb2tlCisgICAg
ICAgIHt4OiAwLCB5OiAwfQorICAgIF07CisKKyAgICB2YXIgcG9pbnRzT25SZWN0U3Ryb2tlID0g
WworICAgICAgIHt4OiAyMDgsIHk6IDE2OH0sIC8vIG91dGVyIHN0cm9rZQorICAgICAgIHt4OiAy
MzcsIHk6IDE5OH0sIC8vIGlubmVyIHN0cm9rZQorICAgICAgIHt4OiAzMDEsIHk6IDMwNX0sIC8v
IG91dGVyIHN0cm9rZQorICAgICAgIHt4OiAzMDIsIHk6IDI2NH0gLy8gaW5uZXIgc3Ryb2tlCisg
ICAgXTsKKworICAgIHZhciBwb2ludHNOb3RPblJlY3RTdHJva2UgPSBbCisgICAgICAge3g6IDAs
IHk6IDEwMH0sIC8vIG91dHNpZGUgcmVjdAorICAgICAgIHt4OiAzNzUsIHk6IDMxNX0sIC8vIG91
dHNpZGUgcmVjdAorICAgICAgIHt4OiAyNjcsIHk6IDIzM30gLy8gaW5zaWRlIHJlY3QKKyAgICBd
OworCisgICAgZWxsaXBzZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInBvaW50ZXItZXZlbnRz
IiwgInZpc2libGVGaWxsIik7IC8vIG9ubHkgY2FwdHVyZSBldmVudHMgb24gdGhlIGZpbGwKKyAg
ICByZWN0RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgicG9pbnRlci1ldmVudHMiLCAidmlzaWJs
ZUZpbGwiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0aGUgZmlsbAorICAgIHBvaW50c0lu
RWxsaXBzZS5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgeworICAgICAgICB2YXIgcGFzcyA9IChl
bGxpcHNlRWxlbWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBvaW50KHBvaW50LngsIHBvaW50
LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykgPyAiUEFTUyIgOiAiRkFJTCIp
ICsgIiBlbGxpcHNlIGNvbnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2lu
dC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9pbnRzTm90SW5FbGxpcHNlLmZvckVhY2goIGZ1
bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ICE9IGRv
Y3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1
bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2UgZG9lcyBu
b3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSArICIpXG4i
OworICAgIH0pOworICAgIHBvaW50c0luUmVjdC5mb3JFYWNoKCBmdW5jdGlvbihwb2ludCkgewor
ICAgICAgICB2YXIgcGFzcyA9IChyZWN0RWxlbWVudCA9PSBkb2N1bWVudC5lbGVtZW50RnJvbVBv
aW50KHBvaW50LngsIHBvaW50LnkpKTsKKyAgICAgICAgcmVzdWx0U3RyaW5nICs9ICgocGFzcykg
PyAiUEFTUyIgOiAiRkFJTCIpICsgIiByZWN0IGNvbnRhaW5zIHBvaW50IGF0ICgiICsgcG9pbnQu
eCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7CisgICAgcG9pbnRzTm90SW5SZWN0
LmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKHJlY3RFbGVt
ZW50ICE9IGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAg
ICAgICByZXN1bHRTdHJpbmcgKz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIHJlY3Qg
ZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50LnggKyAiLCAiICsgcG9pbnQueSAr
ICIpXG4iOworICAgIH0pOworCisgICAgZWxsaXBzZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHko
InBvaW50ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50
cyBvbiB0aGUgc3Ryb2tlCisgICAgcmVjdEVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoInBvaW50
ZXItZXZlbnRzIiwgInZpc2libGVTdHJva2UiKTsgLy8gb25seSBjYXB0dXJlIGV2ZW50cyBvbiB0
aGUgc3Ryb2tlCisgICAgcG9pbnRzT25FbGxpcHNlU3Ryb2tlLmZvckVhY2goIGZ1bmN0aW9uKHBv
aW50KSB7CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ID09IGRvY3VtZW50LmVs
ZW1lbnRGcm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcg
Kz0gKChwYXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2Ugc3Ryb2tlIGNvbnRhaW5z
IHBvaW50IGF0ICgiICsgcG9pbnQueCArICIsICIgKyBwb2ludC55ICsgIilcbiI7CisgICAgfSk7
CisgICAgcG9pbnRzTm90T25FbGxpcHNlU3Ryb2tlLmZvckVhY2goIGZ1bmN0aW9uKHBvaW50KSB7
CisgICAgICAgIHZhciBwYXNzID0gKGVsbGlwc2VFbGVtZW50ICE9IGRvY3VtZW50LmVsZW1lbnRG
cm9tUG9pbnQocG9pbnQueCwgcG9pbnQueSkpOworICAgICAgICByZXN1bHRTdHJpbmcgKz0gKChw
YXNzKSA/ICJQQVNTIiA6ICJGQUlMIikgKyAiIGVsbGlwc2Ugc3Ryb2tlIGRvZXMgbm90IGNvbnRh
aW4gcG9pbnQgYXQgKCIgKyBwb2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9
KTsKKyAgICBwb2ludHNPblJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKKyAg
ICAgICAgdmFyIHBhc3MgPSAocmVjdEVsZW1lbnQgPT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2lu
dChwb2ludC54LCBwb2ludC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8g
IlBBU1MiIDogIkZBSUwiKSArICIgcmVjdCBzdHJva2UgY29udGFpbnMgcG9pbnQgYXQgKCIgKyBw
b2ludC54ICsgIiwgIiArIHBvaW50LnkgKyAiKVxuIjsKKyAgICB9KTsKKyAgICBwb2ludHNOb3RP
blJlY3RTdHJva2UuZm9yRWFjaCggZnVuY3Rpb24ocG9pbnQpIHsKKyAgICAgICAgdmFyIHBhc3Mg
PSAocmVjdEVsZW1lbnQgIT0gZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludChwb2ludC54LCBwb2lu
dC55KSk7CisgICAgICAgIHJlc3VsdFN0cmluZyArPSAoKHBhc3MpID8gIlBBU1MiIDogIkZBSUwi
KSArICIgcmVjdCBzdHJva2UgZG9lcyBub3QgY29udGFpbiBwb2ludCBhdCAoIiArIHBvaW50Lngg
KyAiLCAiICsgcG9pbnQueSArICIpXG4iOworICAgIH0pOworICAgIGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJjb25zb2xlIikuaW5uZXJIVE1MID0gcmVzdWx0U3RyaW5nOworICAgIF1dPjwvc2Ny
aXB0PgorIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>