<?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>123236</bug_id>
          
          <creation_ts>2013-10-23 17:06:46 -0700</creation_ts>
          <short_desc>Gaps between underlines in adjacent underlined text runs</short_desc>
          <delta_ts>2013-10-24 12:51:57 -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>New Bugs</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>hyatt</cc>
    
    <cc>jonlee</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>942917</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-23 17:06:46 -0700</bug_when>
    <thetext>Don&apos;t round horizontal underline extents</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942928</commentid>
    <comment_count>1</comment_count>
      <attachid>215013</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-23 17:39:10 -0700</bug_when>
    <thetext>Created attachment 215013
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942930</commentid>
    <comment_count>2</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-23 17:39:53 -0700</bug_when>
    <thetext>*** Bug 123234 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>942931</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2013-10-23 17:40:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/15305380&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943000</commentid>
    <comment_count>4</comment_count>
      <attachid>215013</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-10-23 23:40:16 -0700</bug_when>
    <thetext>Comment on attachment 215013
Patch

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

Looks like a good fix.

&gt; Source/WebCore/ChangeLog:27
&gt; +        There are two pieces to this change. The first piece is in
&gt; +        InlineTextBox::paint(). When we were computing the bounding
&gt; +        box for the InlineTextBox, we were putting the floating-point
&gt; +        extents we received from the InlineBox into a LayoutSize. If
&gt; +        a LayoutSize were fixed-point with sufficient precision, this
&gt; +        would be okay, but right now a LayoutSize is simply an int,
&gt; +        meaning that we were clamping the underline boundaries to
&gt; +        integral values. Instead, we should be using the same unit
&gt; +        throughout all of this code, which means that the bounding
&gt; +        box should use floats instead.
&gt; +
&gt; +        In addition, inside GraphicsContext::drawLineForText(), we are
&gt; +        rounding the underline to pixel boundaries so that it appears
&gt; +        very crisp on the screen. However, this does not play well with
&gt; +        these fractional underline extents. We should change the
&gt; +        rounding mode to perform floating point addition before rounding,
&gt; +        rather than rounding position and width before adding them
&gt; +        together. Note that this will not blend the pixel in question
&gt; +        between two colors; instead, whichever run contains the center
&gt; +        of the disputed pixel will win.

Next time, please write a much smaller comment, and do it per-function.

&gt; Source/WebCore/ChangeLog:32
&gt; +        (WebCore::GraphicsContext::drawLineForText): Second part (See above)

I would say something like: “Round each end of the underline to a pixel boundary.”

&gt; Source/WebCore/ChangeLog:34
&gt; +        (WebCore::InlineTextBox::paint): First part (See above)

I would say something like: “Don’t convert to a LayoutSize just to convert to a FloatSize.”

&gt; LayoutTests/ChangeLog:14
&gt; +        This test contains two adjacent text runs. The first one has a
&gt; +        x-position of 21.3 with a width of 44.4. The second one has a
&gt; +        x-position of (21.3 + 44.4 =) 65.7. If we naively rounded these
&gt; +        to pixel coordinates, the left run would be rounded to a
&gt; +        x-position of 21 with a width of 44, so it would extend to pixel
&gt; +        65. However, the next run&apos;s x-position would be rounded to 66,
&gt; +        so there is a single pixel gap between the supposedly adjacent run.
&gt; +        This test makes sure that the above scenerio does not occur,
&gt; +        and that this &quot;gap&quot; pixel is filled in.

This comment is also too long, and more importantly, it would be much more appropriate in the test rather than in the change log.

&gt; LayoutTests/ChangeLog:17
&gt; +        * platform/mac/fast/css3-text/css3-text-decoration/no-gap-between-two-rounded-textboxes-expected.png: Added.

Could we make this a reference test somehow? Maybe use a canvas to draw the underline?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943002</commentid>
    <comment_count>5</comment_count>
      <attachid>215013</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-23 23:41:19 -0700</bug_when>
    <thetext>Comment on attachment 215013
Patch

Rejecting attachment 215013 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-01&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 215013, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.appspot.com/results/11168023</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943216</commentid>
    <comment_count>6</comment_count>
      <attachid>215013</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-10-24 11:13:36 -0700</bug_when>
    <thetext>Comment on attachment 215013
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        Don&apos;t round horizontal underline extents

This actually doesn&apos;t describe the user-visible symptom (underline gaps).

&gt;&gt; LayoutTests/ChangeLog:17
&gt;&gt; +        * platform/mac/fast/css3-text/css3-text-decoration/no-gap-between-two-rounded-textboxes-expected.png: Added.
&gt; 
&gt; Could we make this a reference test somehow? Maybe use a canvas to draw the underline?

Agreed, I don&apos;t think a ref test would be hard.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943243</commentid>
    <comment_count>7</comment_count>
      <attachid>215013</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-24 12:02:53 -0700</bug_when>
    <thetext>Comment on attachment 215013
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:3
&gt;&gt; +        Don&apos;t round horizontal underline extents
&gt; 
&gt; This actually doesn&apos;t describe the user-visible symptom (underline gaps).

Done.

&gt;&gt; Source/WebCore/ChangeLog:27
&gt;&gt; +        of the disputed pixel will win.
&gt; 
&gt; Next time, please write a much smaller comment, and do it per-function.

I&apos;m not quite sure what you mean by &quot;per-function&quot;, but I made it smaller. Do you mean that I should move it below after the bullet points?

&gt;&gt; Source/WebCore/ChangeLog:32
&gt;&gt; +        (WebCore::GraphicsContext::drawLineForText): Second part (See above)
&gt; 
&gt; I would say something like: “Round each end of the underline to a pixel boundary.”

Done.

&gt;&gt; Source/WebCore/ChangeLog:34
&gt;&gt; +        (WebCore::InlineTextBox::paint): First part (See above)
&gt; 
&gt; I would say something like: “Don’t convert to a LayoutSize just to convert to a FloatSize.”

Done.

&gt;&gt; LayoutTests/ChangeLog:14
&gt;&gt; +        and that this &quot;gap&quot; pixel is filled in.
&gt; 
&gt; This comment is also too long, and more importantly, it would be much more appropriate in the test rather than in the change log.

Done.

&gt;&gt;&gt; LayoutTests/ChangeLog:17
&gt;&gt;&gt; +        * platform/mac/fast/css3-text/css3-text-decoration/no-gap-between-two-rounded-textboxes-expected.png: Added.
&gt;&gt; 
&gt;&gt; Could we make this a reference test somehow? Maybe use a canvas to draw the underline?
&gt; 
&gt; Agreed, I don&apos;t think a ref test would be hard.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943245</commentid>
    <comment_count>8</comment_count>
      <attachid>215089</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-24 12:05:02 -0700</bug_when>
    <thetext>Created attachment 215089
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943259</commentid>
    <comment_count>9</comment_count>
      <attachid>215089</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-10-24 12:12:34 -0700</bug_when>
    <thetext>Comment on attachment 215089
Patch

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

&gt; Source/WebCore/ChangeLog:4
&gt; +        Fill in gaps in underlines between adjacent text runs
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=123236

Bug titles should describe problems, not fixes. &quot;Gaps between adjacent underlined text runs&quot;

&gt; LayoutTests/ChangeLog:3
&gt; +        Don&apos;t round horizontal underline extents

Still wrong.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943261</commentid>
    <comment_count>10</comment_count>
      <attachid>215092</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-24 12:16:10 -0700</bug_when>
    <thetext>Created attachment 215092
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943265</commentid>
    <comment_count>11</comment_count>
      <attachid>215092</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-24 12:21:39 -0700</bug_when>
    <thetext>Comment on attachment 215092
Patch

Rejecting attachment 215092 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.appspot.com&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 215092, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.appspot.com/results/10218151</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943266</commentid>
    <comment_count>12</comment_count>
      <attachid>215094</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-24 12:25:27 -0700</bug_when>
    <thetext>Created attachment 215094
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943268</commentid>
    <comment_count>13</comment_count>
      <attachid>215094</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-10-24 12:26:43 -0700</bug_when>
    <thetext>Comment on attachment 215094
Patch

Perfect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943270</commentid>
    <comment_count>14</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2013-10-24 12:32:04 -0700</bug_when>
    <thetext>\o/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943279</commentid>
    <comment_count>15</comment_count>
      <attachid>215094</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-24 12:51:53 -0700</bug_when>
    <thetext>Comment on attachment 215094
Patch

Clearing flags on attachment: 215094

Committed r157948: &lt;http://trac.webkit.org/changeset/157948&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>943280</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-24 12:51:57 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215013</attachid>
            <date>2013-10-23 17:39:10 -0700</date>
            <delta_ts>2013-10-24 12:04:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-123236-20131023173909.patch</filename>
            <type>text/plain</type>
            <size>11777</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3NzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjlmNDA2Mjg4YzAwYzUy
NjUwNTczNmEwMTY3MDVhZGM0YWI3NGYyZi4uN2M3Nzc4YjhhMjQzNGUzYjIzNzQ4ZTQ5NDQ2Yjky
NGU2MzQ2ZjMwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM4IEBACisyMDEzLTEwLTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRG9uJ3Qgcm91
bmQgaG9yaXpvbnRhbCB1bmRlcmxpbmUgZXh0ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMjM2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlcmUgYXJlIHR3byBwaWVjZXMgdG8gdGhpcyBjaGFu
Z2UuIFRoZSBmaXJzdCBwaWVjZSBpcyBpbgorICAgICAgICBJbmxpbmVUZXh0Qm94OjpwYWludCgp
LiBXaGVuIHdlIHdlcmUgY29tcHV0aW5nIHRoZSBib3VuZGluZworICAgICAgICBib3ggZm9yIHRo
ZSBJbmxpbmVUZXh0Qm94LCB3ZSB3ZXJlIHB1dHRpbmcgdGhlIGZsb2F0aW5nLXBvaW50CisgICAg
ICAgIGV4dGVudHMgd2UgcmVjZWl2ZWQgZnJvbSB0aGUgSW5saW5lQm94IGludG8gYSBMYXlvdXRT
aXplLiBJZgorICAgICAgICBhIExheW91dFNpemUgd2VyZSBmaXhlZC1wb2ludCB3aXRoIHN1ZmZp
Y2llbnQgcHJlY2lzaW9uLCB0aGlzCisgICAgICAgIHdvdWxkIGJlIG9rYXksIGJ1dCByaWdodCBu
b3cgYSBMYXlvdXRTaXplIGlzIHNpbXBseSBhbiBpbnQsCisgICAgICAgIG1lYW5pbmcgdGhhdCB3
ZSB3ZXJlIGNsYW1waW5nIHRoZSB1bmRlcmxpbmUgYm91bmRhcmllcyB0bworICAgICAgICBpbnRl
Z3JhbCB2YWx1ZXMuIEluc3RlYWQsIHdlIHNob3VsZCBiZSB1c2luZyB0aGUgc2FtZSB1bml0Cisg
ICAgICAgIHRocm91Z2hvdXQgYWxsIG9mIHRoaXMgY29kZSwgd2hpY2ggbWVhbnMgdGhhdCB0aGUg
Ym91bmRpbmcKKyAgICAgICAgYm94IHNob3VsZCB1c2UgZmxvYXRzIGluc3RlYWQuCisKKyAgICAg
ICAgSW4gYWRkaXRpb24sIGluc2lkZSBHcmFwaGljc0NvbnRleHQ6OmRyYXdMaW5lRm9yVGV4dCgp
LCB3ZSBhcmUKKyAgICAgICAgcm91bmRpbmcgdGhlIHVuZGVybGluZSB0byBwaXhlbCBib3VuZGFy
aWVzIHNvIHRoYXQgaXQgYXBwZWFycworICAgICAgICB2ZXJ5IGNyaXNwIG9uIHRoZSBzY3JlZW4u
IEhvd2V2ZXIsIHRoaXMgZG9lcyBub3QgcGxheSB3ZWxsIHdpdGgKKyAgICAgICAgdGhlc2UgZnJh
Y3Rpb25hbCB1bmRlcmxpbmUgZXh0ZW50cy4gV2Ugc2hvdWxkIGNoYW5nZSB0aGUKKyAgICAgICAg
cm91bmRpbmcgbW9kZSB0byBwZXJmb3JtIGZsb2F0aW5nIHBvaW50IGFkZGl0aW9uIGJlZm9yZSBy
b3VuZGluZywKKyAgICAgICAgcmF0aGVyIHRoYW4gcm91bmRpbmcgcG9zaXRpb24gYW5kIHdpZHRo
IGJlZm9yZSBhZGRpbmcgdGhlbQorICAgICAgICB0b2dldGhlci4gTm90ZSB0aGF0IHRoaXMgd2ls
bCBub3QgYmxlbmQgdGhlIHBpeGVsIGluIHF1ZXN0aW9uCisgICAgICAgIGJldHdlZW4gdHdvIGNv
bG9yczsgaW5zdGVhZCwgd2hpY2hldmVyIHJ1biBjb250YWlucyB0aGUgY2VudGVyCisgICAgICAg
IG9mIHRoZSBkaXNwdXRlZCBwaXhlbCB3aWxsIHdpbi4KKworICAgICAgICBUZXN0OiBmYXN0L2Nz
czMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10
ZXh0Ym94ZXMuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0Q0cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3TGlu
ZUZvclRleHQpOiBTZWNvbmQgcGFydCAoU2VlIGFib3ZlKQorICAgICAgICAqIHJlbmRlcmluZy9J
bmxpbmVUZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklubGluZVRleHRCb3g6OnBhaW50
KTogRmlyc3QgcGFydCAoU2VlIGFib3ZlKQorCiAyMDEzLTEwLTIxICBNeWxlcyBDLiBNYXhmaWVs
ZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgR3JhbW1hciBtYXJrZXJzIGFyZSBu
b3QgdXBkYXRlZCB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIDF4IGFuZCAyeApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cu
Y3BwCmluZGV4IGIwODE3NWUwYjkwODRhZjBiMThlMzYwMDE5MTFjZDFkNjg1YjYyOTQuLmQwZmM5
YjE1MGI1ZDIwYWE2NTgxMmYxZTQ2NjViYWFhMzE5OGEzZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAK
QEAgLTEyNjEsNyArMTI2MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TGluZUZvclRl
eHQoY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIGZsb2F0IHdpZHRoLCBib29sCiAgICAgICAgIC8v
IFdlIHRyeSB0byByb3VuZCBhbGwgcGFyYW1ldGVycyB0byBpbnRlZ2VyIGJvdW5kYXJpZXMgaW4g
ZGV2aWNlIHNwYWNlLiBJZiByb3VuZGluZyBwaXhlbHMgaW4gZGV2aWNlIHNwYWNlCiAgICAgICAg
IC8vIG1ha2VzIG91ciB0aGlja25lc3MgbW9yZSB0aGFuIGRvdWJsZSwgdGhlbiB0aGVyZSBtdXN0
IGJlIGEgc2hyaW5raW5nLXNjYWxlIGZhY3RvciBhbmQgcm91bmRpbmcgdG8gcGl4ZWxzCiAgICAg
ICAgIC8vIGluIGRldmljZSBzcGFjZSB3aWxsIG1ha2UgdGhlIHVuZGVybGluZXMgdG9vIHRoaWNr
LgotICAgICAgICBDR1JlY3QgbGluZVJlY3QgPSByb3VuZFRvRGV2aWNlUGl4ZWxzKEZsb2F0UmVj
dCh4LCB5LCBsaW5lTGVuZ3RoLCBhZGp1c3RlZFRoaWNrbmVzcyksIFJvdW5kT3JpZ2luQW5kRGlt
ZW5zaW9ucyk7CisgICAgICAgIENHUmVjdCBsaW5lUmVjdCA9IHJvdW5kVG9EZXZpY2VQaXhlbHMo
RmxvYXRSZWN0KHgsIHksIGxpbmVMZW5ndGgsIGFkanVzdGVkVGhpY2tuZXNzKSwgUm91bmRBbGxT
aWRlcyk7CiAgICAgICAgIGlmIChsaW5lUmVjdC5zaXplLmhlaWdodCA8IHRoaWNrbmVzcyAqIDIu
MCkgewogICAgICAgICAgICAgeCA9IGxpbmVSZWN0Lm9yaWdpbi54OwogICAgICAgICAgICAgeSA9
IGxpbmVSZWN0Lm9yaWdpbi55OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0lubGluZVRleHRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lubGluZVRleHRC
b3guY3BwCmluZGV4IDI5NjkwZmJjMGIxMzA5OTkxZTZkY2Q5YTNjZTY0NTQ3YzUzOTFmMjIuLmQ2
MTkxMzA2YWFhNWIzNGJjNjgwZjcxNzJhMWViNTI5ODM4NWVjMGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKQEAgLTUzMCw3ICs1MzAsNyBAQCB2b2lkIElu
bGluZVRleHRCb3g6OnBhaW50KFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBMYXlvdXRQb2lu
dCYgcGFpbnRPZmZzZXQsCiAKICAgICBGbG9hdFBvaW50IGJveE9yaWdpbiA9IGxvY2F0aW9uSW5j
bHVkaW5nRmxpcHBpbmcoKTsKICAgICBib3hPcmlnaW4ubW92ZShhZGp1c3RlZFBhaW50T2Zmc2V0
LngoKSwgYWRqdXN0ZWRQYWludE9mZnNldC55KCkpOwotICAgIEZsb2F0UmVjdCBib3hSZWN0KGJv
eE9yaWdpbiwgTGF5b3V0U2l6ZShsb2dpY2FsV2lkdGgoKSwgbG9naWNhbEhlaWdodCgpKSk7Cisg
ICAgRmxvYXRSZWN0IGJveFJlY3QoYm94T3JpZ2luLCBGbG9hdFNpemUobG9naWNhbFdpZHRoKCks
IGxvZ2ljYWxIZWlnaHQoKSkpOwogCiAgICAgUmVuZGVyQ29tYmluZVRleHQqIGNvbWJpbmVkVGV4
dCA9IGxpbmVTdHlsZS5oYXNUZXh0Q29tYmluZSgpICYmIHJlbmRlcmVyKCkuaXNDb21iaW5lVGV4
dCgpICYmIHRvUmVuZGVyQ29tYmluZVRleHQocmVuZGVyZXIoKSkuaXNDb21iaW5lZCgpID8gJnRv
UmVuZGVyQ29tYmluZVRleHQocmVuZGVyZXIoKSkgOiAwOwogCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggN2I2MWExMTk4NjQ1
YTUyYmY1ZTBmZDI4MzQ1ZTQyYzcyYTA5Nzk3ZS4uMjY3NDg2NTRhMjc0YzliYzAzYmZiMDVmNTlh
NDc1NmMwMjE1Zjc1NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTEwLTIzICBNeWxlcyBD
LiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRG9uJ3Qgcm91bmQg
aG9yaXpvbnRhbCB1bmRlcmxpbmUgZXh0ZW50cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIzMjM2CisKKyAgICAgICAgVGhpcyB0ZXN0IGNvbnRhaW5z
IHR3byBhZGphY2VudCB0ZXh0IHJ1bnMuIFRoZSBmaXJzdCBvbmUgaGFzIGEKKyAgICAgICAgeC1w
b3NpdGlvbiBvZiAyMS4zIHdpdGggYSB3aWR0aCBvZiA0NC40LiBUaGUgc2Vjb25kIG9uZSBoYXMg
YQorICAgICAgICB4LXBvc2l0aW9uIG9mICgyMS4zICsgNDQuNCA9KSA2NS43LiBJZiB3ZSBuYWl2
ZWx5IHJvdW5kZWQgdGhlc2UKKyAgICAgICAgdG8gcGl4ZWwgY29vcmRpbmF0ZXMsIHRoZSBsZWZ0
IHJ1biB3b3VsZCBiZSByb3VuZGVkIHRvIGEKKyAgICAgICAgeC1wb3NpdGlvbiBvZiAyMSB3aXRo
IGEgd2lkdGggb2YgNDQsIHNvIGl0IHdvdWxkIGV4dGVuZCB0byBwaXhlbAorICAgICAgICA2NS4g
SG93ZXZlciwgdGhlIG5leHQgcnVuJ3MgeC1wb3NpdGlvbiB3b3VsZCBiZSByb3VuZGVkIHRvIDY2
LAorICAgICAgICBzbyB0aGVyZSBpcyBhIHNpbmdsZSBwaXhlbCBnYXAgYmV0d2VlbiB0aGUgc3Vw
cG9zZWRseSBhZGphY2VudCBydW4uCisgICAgICAgIFRoaXMgdGVzdCBtYWtlcyBzdXJlIHRoYXQg
dGhlIGFib3ZlIHNjZW5lcmlvIGRvZXMgbm90IG9jY3VyLAorICAgICAgICBhbmQgdGhhdCB0aGlz
ICJnYXAiIHBpeGVsIGlzIGZpbGxlZCBpbi4KKworICAgICAgICAqIGZhc3QvY3NzMy10ZXh0L2Nz
czMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9jc3MzLXRleHQvY3NzMy10
ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVzLWV4cGVj
dGVkLnBuZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvY3NzMy10ZXh0L2Nz
czMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorCiAyMDEzLTEwLTIxICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgR3JhbW1hciBtYXJrZXJzIGFyZSBub3QgdXBk
YXRlZCB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIDF4IGFuZCAyeApkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4t
dHdvLXJvdW5kZWQtdGV4dGJveGVzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9j
c3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5kYTBmOGZjNTc0ZTA5NGIwYWExMmQ4MDY2NGY1MDUwNTQ0MDliYjcx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0
LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVzLmh0bWwKQEAg
LTAsMCArMSwxNyBAQAorPCFET0NUWVBFIEhUTUw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgor
YSB7Citmb250LWZhbWlseTogYXJpYWw7Cit9CitlbSB7Citmb250LWZhbWlseTogYXJpYWw7Citm
b250LXdlaWdodDogYm9sZDsKK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxhIGhyZWY9
IiI+MSA8ZW0+Qmlzb248L2VtPiBHPC9hPgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0
aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy1leHBlY3RlZC5wbmcgYi9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRp
b24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVzLWV4cGVjdGVkLnBuZwpuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi42NWIzOTQ2N2Q3NDgyNGViMWFhMDA2MGY2MWY0ZDZiMDhmZTFiNjI0CkdJVCBiaW5h
cnkgcGF0Y2gKbGl0ZXJhbCAxMjg3MQp6Y21lSTNYO2YzIThpb1ZUTUZoMUBPaE1hOVVDMkNfa1dq
MGpPRTdKe1VRbjROQVMjI2BRMzY1fFAlQTI2Ukh7Kj8Kel5jSSEyaWlrKVVMSVRRXzVKNkU+aTZK
QnE0aUszI0xJeUozJnwyY31gfV9QIyk7Pkc/K3IhITRgfGp0UVQ+NUBiCnp4YjxndHBGdG9IPnM+
cHl7fEpGQmFFM3JFcW45bz1tNlQraEp6QElUYSV4QlBEYiRmPFJCSE9ePEI7U2F1ZilUTAp6SmJl
VEZsTWJULWZfeEt3Zl95eF40PCZqQUNpKGdLYEZwI3JqTDw8S1VmZjtWenhgTEgjU3xaUmJATTZ3
Vmt5KmwKekIpOElXLXt0LS1vQlluTSp8RWQtKHhVR1FRT0xxJS1fMEV4eW5FalM3OVk5JUwlN2Rv
cytaRSFZbjRebFM3RTVGCno3a0A0TWRkSm4xYEl7V340MVQ/MlhRITZZPCRpeDxrYXhTeHZxd31P
NnN3fWIyNzIwfEZmb0g+LXx3Qlore1NYQAp6UWR7VEhUIUA5fiVZITkoKXxfXmNiYz95aio0Y0Js
WFE9TW4jfk8yMCtzPkZ1ZGhQM3greURPNlR2QEtnNU17MX4KemYxMnRvJjkhKGVfemwxNWxkfFF1
I153SzlIJnVLalNoKVBeT3hWPXdtSCZqZGJ4ejF0cjxmYXM8anJpQjh0dDN8Cno5Pyp9ezdlIzJk
bFZkWXk4cGtlQnMtOW9afEV0NClidGghb1U+d2VXQm5wbGxSfVc0WVEqe2IlSUEySk0lYnd8egp6
b3k4a3U+amRiXk5QbVk/SC02SGp2NkloYTh6KXp5Tkx0QXdzVmVuaDMhJnZtRUFGTDEjYmR+SXdN
K3JlTCZ4VzkKenAyO1g3QzxvKGhBMH14fWIzI25eXlMpWVBuMDtabnhNNTFJPWZJQV5oOHRBUCFJ
aGVSXk43VmlTbU1UQW9kQChvCnpUdEh1PWRBcSpoMGs2bXZOam9MOUNhMlluLTc7e0dSOWRHUFJ9
cUkmZFltdmh5PFJ9R1UlPUx1bXJZZU0tcX41agp6WnZJWlJzcm9lRzN7R1NmWj1BTWExez44MWwl
bT55MTk0WEFhc2AoSUVDVEFHZFV+eDAmTGNIMnIwPW8pYEs+cnkKemhvV2lPe0c5ZXpGNjxxMWIh
SzBhQX45LXRweThISiRFI3dhaCZaei13UmYhWk1wWDxmbzBnb048fGp+OGxlZjA/CnpzOUt3az4w
WUtJZip2eDRvM1h2RGJ3eHx5WExgNTtRXlphJig0TkFgTnFaeipqQjAwNVhqPCZ9R1E8VzZlN3NU
Qwp6OXtAWSFwbjAzYHskSzl0PVp8Rz0/S2VxOTBvckhrS1pCN0RCJSg0ODF3P1cjb2ZNKW5eWDM7
UXc2ZzZSe1h4WngKenkmZkE8JH0qcDN6Uk1AelZvbi12MDAwSX5EMVkkcGlmO2whI28yPmJUQlMt
QVM0RzlwYG1uMCV3RmRFcjAzeUNqCnpSJkxkU3MtUXxUaFpIdFdfZFdMZVRydG92Zys0QTZaMyFo
N3AoSzFqMUIyfmtrXyR9byVUS0Q/M0BIPkVsSTF8MAp6K3lGNEU7XkVYajB4UVgzR04/aV45JHdA
fD9NbzkqLUdnZlgjMkF1YkxkfXZRUn1iM1pvUzlvfVc/dzRDaitFVk4KejBnUSEqQm5xZTJ3bn5l
VDZnWlc0ZE10NDB4bE5wSXsza01IX0hsbUUqIW1ge3l2JWslUXI+ZWJeVTk7NjYzUTJNCnokYEBx
Vk5weVYkOVVZfTx6SG43dUY8TnlfRk9NKEZlJG41TWFKK1dyRndrQT4/aHdGTkRgYSZBb0k7UEI1
NXdHMgp6dkZieGUyYzMqKmtmSHwreThYYXExKmchM0UqPDFmNyo1TEY0eS1HJEtRbFM9RDRUUlZx
YzU+Y2VxJGU/alh3fVgKejxxYF5IUVdyaV4+NW5sTV9ndWsxdndKNTtzJlJ0RTgwej5SdmIqfmI+
cVItbkF6MSh1aiNJa0R2cys9WiN5YU02CnprdUVKfihqfnJwYEdyI0VpZWgyaThGfHh7dGNoajdN
cjdsX2R4YkA3O1ByY3diUn15WWlOMnlRT05mZXlaJX0oVgp6TFhyNlc5U3hWPVVYM0sxY2s9SSs2
VFlGOz07cEVWUnx2ZjI+fE5LSUdXcX0haXRvRSsqc3NnZkw3ZjhRcnRkTDUKelRFQHJVYWI5Klhy
YEwzOzJDIXd5WURFZndCR1ZofWlUZDl+LTIoQT5BfGt5XnVQXkE+eW44Zn1sRyhyQzNJS2puCnpJ
ZUQhSk58YSFRRld2eitOWEV8UylBRng/SjRSUnZaMVIheyU4NV5KUHNAb3diVXRROWA1SzFlRE0y
XlducG88fQp6ZDxHXmFPWHZyNXYhWUBOUy1CQWRxRyEtcHVONUozaUBLZj1CYjRwKHFLMlVeVlgr
Zz8qXypubCFEJkklSUkyY2gKenM+WVpId0diVVh3flNMUWt7Yk5Ya2pwT14rUWlNZTI3MG53R1JZ
PGlEUjJnJStsSS1vOE5mVHQyNVkrd0RqZzM9CnokekBGNyR3aVU9dn01dl50NnVLMlpebVdLVXl6
Kmc7aW9DRyZNSF59RUsjMGYhMWpsYUdPbk5PK15kU3EpS0JBOAp6IUtYOzlzTkp2Wk1TQUk1RUBj
MWQqPF4qcGBecCo0TnxmVEBsNlRnZW0tO31WVitNVlMqUzF6NT9Pb1JebkR0bEcKejc/dFpAKi00
MStoQSppTG9PLWY+TCVfdiNgZiZ7ViExVXBgRlh3YWZfWn16Nik+cnBjeSRtcztjem1qWkJ2XkxX
Cno+VUM1c2Mxb1NrVDF+NTNBT3RZXyhQeGsjJCYpNVpab1NBTnhWc3trITR+cmhVMFNEfjBfaFU/
KFgjWm5KTChZTwp6dHopVWNiQnZ9TWA8fF5WI2tXeyg5O29vY0pOUmE4UXg3cVZRYmh6TGJEQX5E
WDh5cXohSWZ5T2AkNl4xbiUlQFIKej8tfnMrbmthNGNCOEV9THQxJklqKiF2al45JSl8ejtXfXA7
NzRpWT0rVHFUR3A9TzhGbnhjVDdpVUA9allCKUVhCnpDbT95anBFdkdCVHVgaypeISp4ZSVYcUVY
YjtiTHZIPnUzd2dFeSRfWkYwSVI+TndUPUAlbCMxc1BRJkVNX2k0Sgp6amB6eDl1eWpDSDRJLUB0
bkRBSlMlO0tJKUt8RTk0c31DVE5CRXZlVCpLSEpkWWZpcVhrRSQtR2tHKHhrP3IhYUIKeiUjZzM5
eSRaJlFuX09zb2o5OVpsZnhJdjxGJk1qNmZGP3c1PHNWezJRQGheJiNQSntxNEt7dHJXIWlIRSUp
U1k5CnpPeSoyUnUkIVk2a3gxZkZASjxaZ3ZrQ2hBeXFoJTkoVyphckxERm4tLTk2SHBWb35+NUxk
KiZBOGxWOEdlPiVCdQp6JCkxWXlhNlIzYiYzdiZ9NnhNIU9rMUdpPTA8a3FQYmM/RCEtYSE+dCVV
N1N7SVFrcExlUj9ZQntGMUpSX1QmbkwKek0pfDxuZXw7QWJnP15CZUJHPkwzZyZMSkFtJXtvZWUm
OXs8Qmg2Jl4kZXd0RnV+dzJqY3BQPHZAYmd4TGw9e0BpCno9cndCOCkqPXhKe2VoWllgIVFMditF
I2YzI2ktNkZfcTZfUSstJll+ZzV5SCpiPEVRZXhQfF9EYGU7UzJmdmR7Rgp6PHB8SEV3PzJeRW47
Xm9gRW9kPlhsRz1BdiE5cmdCQ1RYcCNnY2FwfDQ/I2FSOHg3eSFlOS1ObmNiMjg1c1YrVmAKelEh
fFhhNTwmVHlBUmwlfmg9ajUrbF9sXlYpYSkoOFFocHQ+PCVEdmYzUUVDaGhPQHA8KmAtdVMrMSFC
O2k4YmtWCnoyblJMJHUzKVR+UlllLW5eOEdfIShOODxgYWNgbng0cjg4dEZzMWReYmYmOS1JR292
S2g0My14anZCcTR7NTkxZwp6UnF6b3FtT0lSQSprZT5gZktteiE2K3ZYTzFVQio7UzloZCt2Slh6
c0VPOUt6WlE/ZX5iZS1WRCVnOHplbjtiQloKeiFMSD5FWFJWPl9BPjA9RiNBODNhJDJMP34pbHxV
M1FSNGVoZGtwbz5FZHVZKUZqZTEpN0Z7e2czN1YtVnJ9VjczCno0VWJQVTRkJVVvdGVlOFA+I2pk
KnIob05MZDZqNThDUE4jSDhjfmZfcSgyNU9BTWRhbCRXI1phWWg0ZFooZ25sIQp6S1d+VSZiZnZh
dUFOTGdkWHJATEtxPHN5Qi1rR3RlN3l7cDxTNWJ2Z05QPnxTMXQrezFXLWNMT1YpVWFFaGNTJEgK
emN7VEh6Mmt9RUBVemcyPlFnXlBKZ0lgSnZIflhRc1lEQGN3aXJyWFZQcTgpWGJ7SWBBUGk2Vz1K
I181S2gtO1J6Cno/LVRaUXlTZzluQCNwNk53SWlsUT5BeWk1RTlRe1ZiPSthNVRBK2JPPTB1SWtZ
ZF42SXN+M3U7dUZnSTBYTzY0Ugp6MmFBPTNsKllqdXhhYEZpXkRiYGI5am9vY01QRTgxO2gqRzVh
YW1pZWFfPUs/JXlMWW14b0BIOGF4TER6ZXIjYFUKentgfUpRJktxfUp7QzIrMUZXPEk3anZuQ19u
VSE7ISRwSyM3XmsxfDhkdT8pbnpFMzhAJTs3ZCNGNWJDd1cjWVdZCnp1e35uejhFU1ZSPEJOSD5u
UCtSVTtMQUhwejBBRyNIQVN7fHFnfFdORVRJPjNFbXIrX2UhViVlb2hrQiNvQlc7Zwp6b3BhdmEy
M2ZYYytqNFZjWWc2UiF5M3BxQVlQJV5SX3gkR0A3bj50NXdwZWlJS2dqe0I8X0VCSnJEeTIyJWVM
bTYKejIyUlZ8Z280dnpPMXlkQy1EMjlKOzNrPyZJYmQhdkMzRzw1Jkl1SCNMPy1uRjEkeGRAZldC
bztDUDYhQWEhakRoCnpvcyZ0PntGQHZUY3FXPllOJHt2PmEhbFh9ZFFLKW11clRNQ0s7OG1eZ307
Iygyb185dDB0Z29WVio0T2kwS3ZqWAp6OFYhTzQ1RztJci1Vb3NPNUc7SXIoZ2xKQTVHPjR7ciRN
bXJRNkBwSzBEXl4mRzZ7a081RztJQE4kYHpASW1aT1AKc3U+Z1Z2bFJDYHAyQG92Ji0oVnJueGFl
LSstNnRHOF5wZmVIQSZefT1fSDJLK0UjZDZ7MDJJfTRPOEBgPgoKbGl0ZXJhbCAwCkhjbVY/ZDAw
MDAxCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zhc3QvY3NzMy10ZXh0
L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hl
cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvZmFzdC9jc3MzLXRleHQv
Y3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVz
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zODNmMTE0MTY3ZjRkMzk3ZDE5NzI1ZDEyZTFlODZi
YTYzYWQxNmUxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL2Zh
c3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3Vu
ZGVkLXRleHRib3hlcy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorbGF5ZXIgYXQgKDAs
MCkgc2l6ZSA4MDB4NjAwCisgIFJlbmRlclZpZXcgYXQgKDAsMCkgc2l6ZSA4MDB4NjAwCitsYXll
ciBhdCAoMCwwKSBzaXplIDgwMHgzNAorICBSZW5kZXJCbG9jayB7SFRNTH0gYXQgKDAsMCkgc2l6
ZSA4MDB4MzQKKyAgICBSZW5kZXJCb2R5IHtCT0RZfSBhdCAoOCw4KSBzaXplIDc4NHgxOAorICAg
ICAgUmVuZGVySW5saW5lIHtBfSBhdCAoMCwwKSBzaXplIDc0eDE3IFtjb2xvcj0jNTUxQThCXQor
ICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDAsMCkgc2l6ZSAxM3gxNworICAgICAgICAg
IHRleHQgcnVuIGF0ICgwLDApIHdpZHRoIDEzOiAiMSAiCisgICAgICAgIFJlbmRlcklubGluZSB7
RU19IGF0ICgwLDApIHNpemUgNDV4MTcKKyAgICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQg
KDEzLDApIHNpemUgNDV4MTcKKyAgICAgICAgICAgIHRleHQgcnVuIGF0ICgxMywwKSB3aWR0aCA0
NTogIkJpc29uIgorICAgICAgICBSZW5kZXJUZXh0IHsjdGV4dH0gYXQgKDU4LDApIHNpemUgMTZ4
MTcKKyAgICAgICAgICB0ZXh0IHJ1biBhdCAoNTgsMCkgd2lkdGggMTY6ICIgRyIKKyAgICAgIFJl
bmRlclRleHQgeyN0ZXh0fSBhdCAoMCwwKSBzaXplIDB4MAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215089</attachid>
            <date>2013-10-24 12:05:02 -0700</date>
            <delta_ts>2013-10-24 12:16:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-123236-20131024120502.patch</filename>
            <type>text/plain</type>
            <size>6767</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3NzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjlmNDA2Mjg4YzAwYzUy
NjUwNTczNmEwMTY3MDVhZGM0YWI3NGYyZi4uNzhjOGQ3YTRjZTdmODAxODBlY2Y4OTkxMWRmYzFi
ZjYxOGZlOWRkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTEwLTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgRmlsbCBpbiBn
YXBzIGluIHVuZGVybGluZXMgYmV0d2VlbiBhZGphY2VudCB0ZXh0IHJ1bnMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzIzNgorCisgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFRoZXJlIGFyZSB0d28gcGllY2VzIHRv
IHRoaXMgY2hhbmdlLiBUaGUgZmlyc3QgcGllY2UgaXMgaW4KKyAgICAgICAgSW5saW5lVGV4dEJv
eDo6cGFpbnQoKS4gV2Ugd2VyZSBwdXR0aW5nIGZsb2F0aW5nLXBvaW50CisgICAgICAgIGV4dGVu
dHMgaW50byBhIExheW91dFNpemUsIHdoaWNoIHNpbXBseSB1c2VzIGludHMgKGZvciBub3cpLAor
ICAgICAgICBhbmQgdGhlbiBpbW1lZGlhdGVseSBjb252ZXJ0aW5nIHRoaXMgYmFjayB0byBhIEZs
b2F0U2l6ZS4KKyAgICAgICAgSW5zdGVhZCwgd2Ugc2hvdWxkIGJlIHVzaW5nIGZsb2F0cyB0aHJv
dWdob3V0IGFsbCBvZgorICAgICAgICB0aGlzIGNvZGUuCisKKyAgICAgICAgSW4gYWRkaXRpb24s
IGluc2lkZSBHcmFwaGljc0NvbnRleHQ6OmRyYXdMaW5lRm9yVGV4dCgpLCB3ZSBhcmUKKyAgICAg
ICAgcm91bmRpbmcgdGhlIHVuZGVybGluZSB0byBwaXhlbCBib3VuZGFyaWVzIHNvIHRoYXQgaXQg
YXBwZWFycworICAgICAgICB2ZXJ5IGNyaXNwIG9uIHRoZSBzY3JlZW4uIEhvd2V2ZXIsIHdlIHNo
b3VsZCByb3VuZCBvbmNlIGFmdGVyCisgICAgICAgIHBlcmZvcm1pbmcgY29tcHV0YXRpb25zLCBy
YXRoZXIgdGhhbiByb3VuZGluZyB0d2ljZSBhbmQgdGhlbgorICAgICAgICBwZXJmb3JtaW5nIGNv
bXB1dGF0aW9ucyBvbiB0aGUgcm91bmRlZCBudW1iZXJzLgorCisgICAgICAgIFRlc3Q6IGZhc3Qv
Y3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVk
LXRleHRib3hlcy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGlj
c0NvbnRleHRDRy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmRyYXdM
aW5lRm9yVGV4dCk6IENoYW5nZSByb3VuZGluZyBtb2RlCisgICAgICAgICAgICB0byBwZXJmb3Jt
IGNvbXB1dGF0aW9ucyBiZWZvcmUgcm91bmRpbmcKKyAgICAgICAgKiByZW5kZXJpbmcvSW5saW5l
VGV4dEJveC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbmxpbmVUZXh0Qm94OjpwYWludCk6IERv
bid0IGNvbnZlcnQgdG8gYSBMYXlvdXRTaXplCisgICAgICAgICAgICBqdXN0IHRvIGNvbnZlcnQg
dG8gYSBGbG9hdFNpemUKKwogMjAxMy0xMC0yMSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4Zmll
bGRAYXBwbGUuY29tPgogCiAgICAgICAgIEdyYW1tYXIgbWFya2VycyBhcmUgbm90IHVwZGF0ZWQg
d2hlbiBzd2l0Y2hpbmcgYmV0d2VlbiAxeCBhbmQgMngKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcAppbmRleCBi
MDgxNzVlMGI5MDg0YWYwYjE4ZTM2MDAxOTExY2QxZDY4NWI2Mjk0Li5kMGZjOWIxNTBiNWQyMGFh
NjU4MTJmMWU0NjY1YmFhYTMxOThhM2U3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3BwCkBAIC0xMjYxLDcg
KzEyNjEsNyBAQCB2b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0xpbmVGb3JUZXh0KGNvbnN0IEZs
b2F0UG9pbnQmIHBvaW50LCBmbG9hdCB3aWR0aCwgYm9vbAogICAgICAgICAvLyBXZSB0cnkgdG8g
cm91bmQgYWxsIHBhcmFtZXRlcnMgdG8gaW50ZWdlciBib3VuZGFyaWVzIGluIGRldmljZSBzcGFj
ZS4gSWYgcm91bmRpbmcgcGl4ZWxzIGluIGRldmljZSBzcGFjZQogICAgICAgICAvLyBtYWtlcyBv
dXIgdGhpY2tuZXNzIG1vcmUgdGhhbiBkb3VibGUsIHRoZW4gdGhlcmUgbXVzdCBiZSBhIHNocmlu
a2luZy1zY2FsZSBmYWN0b3IgYW5kIHJvdW5kaW5nIHRvIHBpeGVscwogICAgICAgICAvLyBpbiBk
ZXZpY2Ugc3BhY2Ugd2lsbCBtYWtlIHRoZSB1bmRlcmxpbmVzIHRvbyB0aGljay4KLSAgICAgICAg
Q0dSZWN0IGxpbmVSZWN0ID0gcm91bmRUb0RldmljZVBpeGVscyhGbG9hdFJlY3QoeCwgeSwgbGlu
ZUxlbmd0aCwgYWRqdXN0ZWRUaGlja25lc3MpLCBSb3VuZE9yaWdpbkFuZERpbWVuc2lvbnMpOwor
ICAgICAgICBDR1JlY3QgbGluZVJlY3QgPSByb3VuZFRvRGV2aWNlUGl4ZWxzKEZsb2F0UmVjdCh4
LCB5LCBsaW5lTGVuZ3RoLCBhZGp1c3RlZFRoaWNrbmVzcyksIFJvdW5kQWxsU2lkZXMpOwogICAg
ICAgICBpZiAobGluZVJlY3Quc2l6ZS5oZWlnaHQgPCB0aGlja25lc3MgKiAyLjApIHsKICAgICAg
ICAgICAgIHggPSBsaW5lUmVjdC5vcmlnaW4ueDsKICAgICAgICAgICAgIHkgPSBsaW5lUmVjdC5v
cmlnaW4ueTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0
Qm94LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAppbmRl
eCAyOTY5MGZiYzBiMTMwOTk5MWU2ZGNkOWEzY2U2NDU0N2M1MzkxZjIyLi5kNjE5MTMwNmFhYTVi
MzRiYzY4MGY3MTcyYTFlYjUyOTgzODVlYzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L0lubGluZVRleHRCb3guY3BwCkBAIC01MzAsNyArNTMwLDcgQEAgdm9pZCBJbmxpbmVUZXh0Qm94
OjpwYWludChQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW50T2Zm
c2V0LAogCiAgICAgRmxvYXRQb2ludCBib3hPcmlnaW4gPSBsb2NhdGlvbkluY2x1ZGluZ0ZsaXBw
aW5nKCk7CiAgICAgYm94T3JpZ2luLm1vdmUoYWRqdXN0ZWRQYWludE9mZnNldC54KCksIGFkanVz
dGVkUGFpbnRPZmZzZXQueSgpKTsKLSAgICBGbG9hdFJlY3QgYm94UmVjdChib3hPcmlnaW4sIExh
eW91dFNpemUobG9naWNhbFdpZHRoKCksIGxvZ2ljYWxIZWlnaHQoKSkpOworICAgIEZsb2F0UmVj
dCBib3hSZWN0KGJveE9yaWdpbiwgRmxvYXRTaXplKGxvZ2ljYWxXaWR0aCgpLCBsb2dpY2FsSGVp
Z2h0KCkpKTsKIAogICAgIFJlbmRlckNvbWJpbmVUZXh0KiBjb21iaW5lZFRleHQgPSBsaW5lU3R5
bGUuaGFzVGV4dENvbWJpbmUoKSAmJiByZW5kZXJlcigpLmlzQ29tYmluZVRleHQoKSAmJiB0b1Jl
bmRlckNvbWJpbmVUZXh0KHJlbmRlcmVyKCkpLmlzQ29tYmluZWQoKSA/ICZ0b1JlbmRlckNvbWJp
bmVUZXh0KHJlbmRlcmVyKCkpIDogMDsKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDdiNjFhMTE5ODY0NWE1MmJmNWUwZmQy
ODM0NWU0MmM3MmEwOTc5N2UuLjQzZmQ0YTIxYzVlMWJjZWE5N2I1ODM4NWU1ODg1Y2E3M2IzNjNi
ZmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMy0xMC0yMyAgTXlsZXMgQy4gTWF4ZmllbGQg
IDxtbWF4ZmllbGRAYXBwbGUuY29tPgorCisgICAgICAgIERvbid0IHJvdW5kIGhvcml6b250YWwg
dW5kZXJsaW5lIGV4dGVudHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEyMzIzNgorCisgICAgICAgIEFkZGVkIGEgdGVzdCB0aGF0IGNoZWNrcyB0aGF0
IHdlIGhhdmUgYWNjdXJhdGUgcHJlY2lzaW9uIGluIG91cgorICAgICAgICBmbG9hdGluZy1wb2lu
dCBjb21wdXRhdGlvbnMuIFdlIHNob3VsZCBwZXJmb3JtIGNhbGN1bGF0aW9ucyBiZWZvcmUKKyAg
ICAgICAgcm91bmRpbmcsIGluc3RlYWQgb2Ygcm91ZGluZyB0d2ljZSBhbmQgcGVyZm9ybWluZyBj
YWxjdWxhdGlvbnMgb24KKyAgICAgICAgdGhlIHJvdW5kZWQgdmFsdWVzLgorCisgICAgICAgICog
ZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJv
dW5kZWQtdGV4dGJveGVzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0
L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRl
ZC10ZXh0Ym94ZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
ZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJv
dW5kZWQtdGV4dGJveGVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTMtMTAtMjEgIE15bGVz
IEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBHcmFtbWFyIG1h
cmtlcnMgYXJlIG5vdCB1cGRhdGVkIHdoZW4gc3dpdGNoaW5nIGJldHdlZW4gMXggYW5kIDJ4CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlv
bi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMtZXhwZWN0ZWQuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3
ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk5NjMx
OGY2ZDdmNTJiODIxMjJhYzFhZDg2NGMwZjViZWVjNmY3OTYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0
d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE2IEBA
Cis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPgor
VGhpcyB0ZXN0IG1ha2VzIHN1cmUgdGhhdCBtYXRoIGlzIGJlaW5nIHBlcmZvcm1lZCBiZWZvcmUg
cm91bmRpbmcgb2NjdXJzLgorSW4gdGhlIGZvbGxvd2luZyBydW4sIHRoZSAiYWEiIGhhcyBhIGZy
YWN0aW9uYWwgeC1jb29yZGluYXRlIHZhbHVlIG9mCitiZXR3ZWVuIC4zIGFuZCAuNS4gSW4gYWRk
aXRpb24gdGhhdCBydW4ncyB3aWR0aCBhbHNvIGhhcyB0aGlzIHByb3BlcnR5LgorSWYgeW91IHJv
dW5kIHRoZSB4LWNvb3JkaW5hdGUgYW5kIHdpZHRoIGJlZm9yZSB5b3UgYWRkIHRoZW0gdG9nZXRo
ZXIgdG8KK2dldCB0aGUgY29vcmRpbmF0ZSBvZiB0aGUgcmlnaHQtc2lkZSBvZiB0aGUgcnVuLCB5
b3Ugd291bGQgc2VlIHRoYXQgdGhlCitydW4gaXMgYSBwaXhlbCBzaG9ydGVyIHRoYW4gaXQgc2hv
dWxkIGJlLgorPC9wPgorPHU+YWFhYTwvdT4gPHU+YWFhYWE8L3U+Cis8L2JvZHk+Cis8L2h0bWw+
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3Jh
dGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3
by1yb3VuZGVkLXRleHRib3hlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5ZjI1MjNhYmM2ODA1MzU3N2Vm
NjdjMTgyMGYxMzdkYWQ4ODViZjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRl
ZC10ZXh0Ym94ZXMuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1s
PgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPgorVGhpcyB0ZXN0IG1ha2VzIHN1cmUgdGhh
dCBtYXRoIGlzIGJlaW5nIHBlcmZvcm1lZCBiZWZvcmUgcm91bmRpbmcgb2NjdXJzLgorSW4gdGhl
IGZvbGxvd2luZyBydW4sIHRoZSAiYWEiIGhhcyBhIGZyYWN0aW9uYWwgeC1jb29yZGluYXRlIHZh
bHVlIG9mCitiZXR3ZWVuIC4zIGFuZCAuNS4gSW4gYWRkaXRpb24gdGhhdCBydW4ncyB3aWR0aCBh
bHNvIGhhcyB0aGlzIHByb3BlcnR5LgorSWYgeW91IHJvdW5kIHRoZSB4LWNvb3JkaW5hdGUgYW5k
IHdpZHRoIGJlZm9yZSB5b3UgYWRkIHRoZW0gdG9nZXRoZXIgdG8KK2dldCB0aGUgY29vcmRpbmF0
ZSBvZiB0aGUgcmlnaHQtc2lkZSBvZiB0aGUgcnVuLCB5b3Ugd291bGQgc2VlIHRoYXQgdGhlCity
dW4gaXMgYSBwaXhlbCBzaG9ydGVyIHRoYW4gaXQgc2hvdWxkIGJlLgorPC9wPgorPHU+YWFhYTwv
dT4gPHU+YWE8L3U+PHU+YWFhPC91PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215092</attachid>
            <date>2013-10-24 12:16:10 -0700</date>
            <delta_ts>2013-10-24 12:25:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-123236-20131024121610.patch</filename>
            <type>text/plain</type>
            <size>6758</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3NzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjlmNDA2Mjg4YzAwYzUy
NjUwNTczNmEwMTY3MDVhZGM0YWI3NGYyZi4uMDBmMmMxMjMzMWI3YjQ5MGEyZWViNGFhZjM1YzFk
YjVkOTZjMGRhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTEwLTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgR2FwcyBiZXR3
ZWVuIGFkamFjZW50IHVuZGVybGluZWQgdGV4dCBydW5zCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjMyMzYKKworICAgICAgICBSZXZpZXdlZCBieSBE
YXJpbiBBZGxlci4KKworICAgICAgICBUaGVyZSBhcmUgdHdvIHBpZWNlcyB0byB0aGlzIGNoYW5n
ZS4gVGhlIGZpcnN0IHBpZWNlIGlzIGluCisgICAgICAgIElubGluZVRleHRCb3g6OnBhaW50KCku
IFdlIHdlcmUgcHV0dGluZyBmbG9hdGluZy1wb2ludAorICAgICAgICBleHRlbnRzIGludG8gYSBM
YXlvdXRTaXplLCB3aGljaCBzaW1wbHkgdXNlcyBpbnRzIChmb3Igbm93KSwKKyAgICAgICAgYW5k
IHRoZW4gaW1tZWRpYXRlbHkgY29udmVydGluZyB0aGlzIGJhY2sgdG8gYSBGbG9hdFNpemUuCisg
ICAgICAgIEluc3RlYWQsIHdlIHNob3VsZCBiZSB1c2luZyBmbG9hdHMgdGhyb3VnaG91dCBhbGwg
b2YKKyAgICAgICAgdGhpcyBjb2RlLgorCisgICAgICAgIEluIGFkZGl0aW9uLCBpbnNpZGUgR3Jh
cGhpY3NDb250ZXh0OjpkcmF3TGluZUZvclRleHQoKSwgd2UgYXJlCisgICAgICAgIHJvdW5kaW5n
IHRoZSB1bmRlcmxpbmUgdG8gcGl4ZWwgYm91bmRhcmllcyBzbyB0aGF0IGl0IGFwcGVhcnMKKyAg
ICAgICAgdmVyeSBjcmlzcCBvbiB0aGUgc2NyZWVuLiBIb3dldmVyLCB3ZSBzaG91bGQgcm91bmQg
b25jZSBhZnRlcgorICAgICAgICBwZXJmb3JtaW5nIGNvbXB1dGF0aW9ucywgcmF0aGVyIHRoYW4g
cm91bmRpbmcgdHdpY2UgYW5kIHRoZW4KKyAgICAgICAgcGVyZm9ybWluZyBjb21wdXRhdGlvbnMg
b24gdGhlIHJvdW5kZWQgbnVtYmVycy4KKworICAgICAgICBUZXN0OiBmYXN0L2NzczMtdGV4dC9j
c3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMu
aHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0OjpkcmF3TGluZUZvclRleHQp
OiBDaGFuZ2Ugcm91bmRpbmcgbW9kZQorICAgICAgICAgICAgdG8gcGVyZm9ybSBjb21wdXRhdGlv
bnMgYmVmb3JlIHJvdW5kaW5nCisgICAgICAgICogcmVuZGVyaW5nL0lubGluZVRleHRCb3guY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW5saW5lVGV4dEJveDo6cGFpbnQpOiBEb24ndCBjb252ZXJ0
IHRvIGEgTGF5b3V0U2l6ZQorICAgICAgICAgICAganVzdCB0byBjb252ZXJ0IHRvIGEgRmxvYXRT
aXplCisKIDIwMTMtMTAtMjEgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNv
bT4KIAogICAgICAgICBHcmFtbWFyIG1hcmtlcnMgYXJlIG5vdCB1cGRhdGVkIHdoZW4gc3dpdGNo
aW5nIGJldHdlZW4gMXggYW5kIDJ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRleHRDRy5jcHAKaW5kZXggYjA4MTc1ZTBiOTA4
NGFmMGIxOGUzNjAwMTkxMWNkMWQ2ODViNjI5NC4uZDBmYzliMTUwYjVkMjBhYTY1ODEyZjFlNDY2
NWJhYWEzMTk4YTNlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2cvR3JhcGhpY3NDb250ZXh0Q0cuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcApAQCAtMTI2MSw3ICsxMjYxLDcgQEAg
dm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdMaW5lRm9yVGV4dChjb25zdCBGbG9hdFBvaW50JiBw
b2ludCwgZmxvYXQgd2lkdGgsIGJvb2wKICAgICAgICAgLy8gV2UgdHJ5IHRvIHJvdW5kIGFsbCBw
YXJhbWV0ZXJzIHRvIGludGVnZXIgYm91bmRhcmllcyBpbiBkZXZpY2Ugc3BhY2UuIElmIHJvdW5k
aW5nIHBpeGVscyBpbiBkZXZpY2Ugc3BhY2UKICAgICAgICAgLy8gbWFrZXMgb3VyIHRoaWNrbmVz
cyBtb3JlIHRoYW4gZG91YmxlLCB0aGVuIHRoZXJlIG11c3QgYmUgYSBzaHJpbmtpbmctc2NhbGUg
ZmFjdG9yIGFuZCByb3VuZGluZyB0byBwaXhlbHMKICAgICAgICAgLy8gaW4gZGV2aWNlIHNwYWNl
IHdpbGwgbWFrZSB0aGUgdW5kZXJsaW5lcyB0b28gdGhpY2suCi0gICAgICAgIENHUmVjdCBsaW5l
UmVjdCA9IHJvdW5kVG9EZXZpY2VQaXhlbHMoRmxvYXRSZWN0KHgsIHksIGxpbmVMZW5ndGgsIGFk
anVzdGVkVGhpY2tuZXNzKSwgUm91bmRPcmlnaW5BbmREaW1lbnNpb25zKTsKKyAgICAgICAgQ0dS
ZWN0IGxpbmVSZWN0ID0gcm91bmRUb0RldmljZVBpeGVscyhGbG9hdFJlY3QoeCwgeSwgbGluZUxl
bmd0aCwgYWRqdXN0ZWRUaGlja25lc3MpLCBSb3VuZEFsbFNpZGVzKTsKICAgICAgICAgaWYgKGxp
bmVSZWN0LnNpemUuaGVpZ2h0IDwgdGhpY2tuZXNzICogMi4wKSB7CiAgICAgICAgICAgICB4ID0g
bGluZVJlY3Qub3JpZ2luLng7CiAgICAgICAgICAgICB5ID0gbGluZVJlY3Qub3JpZ2luLnk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKaW5kZXggMjk2OTBmYmMw
YjEzMDk5OTFlNmRjZDlhM2NlNjQ1NDdjNTM5MWYyMi4uZDYxOTEzMDZhYWE1YjM0YmM2ODBmNzE3
MmExZWI1Mjk4Mzg1ZWMwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lu
bGluZVRleHRCb3guY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0
Qm94LmNwcApAQCAtNTMwLDcgKzUzMCw3IEBAIHZvaWQgSW5saW5lVGV4dEJveDo6cGFpbnQoUGFp
bnRJbmZvJiBwYWludEluZm8sIGNvbnN0IExheW91dFBvaW50JiBwYWludE9mZnNldCwKIAogICAg
IEZsb2F0UG9pbnQgYm94T3JpZ2luID0gbG9jYXRpb25JbmNsdWRpbmdGbGlwcGluZygpOwogICAg
IGJveE9yaWdpbi5tb3ZlKGFkanVzdGVkUGFpbnRPZmZzZXQueCgpLCBhZGp1c3RlZFBhaW50T2Zm
c2V0LnkoKSk7Ci0gICAgRmxvYXRSZWN0IGJveFJlY3QoYm94T3JpZ2luLCBMYXlvdXRTaXplKGxv
Z2ljYWxXaWR0aCgpLCBsb2dpY2FsSGVpZ2h0KCkpKTsKKyAgICBGbG9hdFJlY3QgYm94UmVjdChi
b3hPcmlnaW4sIEZsb2F0U2l6ZShsb2dpY2FsV2lkdGgoKSwgbG9naWNhbEhlaWdodCgpKSk7CiAK
ICAgICBSZW5kZXJDb21iaW5lVGV4dCogY29tYmluZWRUZXh0ID0gbGluZVN0eWxlLmhhc1RleHRD
b21iaW5lKCkgJiYgcmVuZGVyZXIoKS5pc0NvbWJpbmVUZXh0KCkgJiYgdG9SZW5kZXJDb21iaW5l
VGV4dChyZW5kZXJlcigpKS5pc0NvbWJpbmVkKCkgPyAmdG9SZW5kZXJDb21iaW5lVGV4dChyZW5k
ZXJlcigpKSA6IDA7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3YjYxYTExOTg2NDVhNTJiZjVlMGZkMjgzNDVlNDJjNzJh
MDk3OTdlLi4wYzBiYjIzNDQ3NjRiNjZlNDQ5NzkwMjE3ZGUwOTE1NjA1MTViNGIxIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTMtMTAtMjMgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxk
QGFwcGxlLmNvbT4KKworICAgICAgICBHYXBzIGJldHdlZW4gYWRqYWNlbnQgdW5kZXJsaW5lZCB0
ZXh0IHJ1bnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEyMzIzNgorCisgICAgICAgIEFkZGVkIGEgdGVzdCB0aGF0IGNoZWNrcyB0aGF0IHdlIGhhdmUg
YWNjdXJhdGUgcHJlY2lzaW9uIGluIG91cgorICAgICAgICBmbG9hdGluZy1wb2ludCBjb21wdXRh
dGlvbnMuIFdlIHNob3VsZCBwZXJmb3JtIGNhbGN1bGF0aW9ucyBiZWZvcmUKKyAgICAgICAgcm91
bmRpbmcsIGluc3RlYWQgb2Ygcm91ZGluZyB0d2ljZSBhbmQgcGVyZm9ybWluZyBjYWxjdWxhdGlv
bnMgb24KKyAgICAgICAgdGhlIHJvdW5kZWQgdmFsdWVzLgorCisgICAgICAgICogZmFzdC9jc3Mz
LXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4
dGJveGVzLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2NzczMtdGV4
dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94
ZXMtZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvZmFzdC9jc3Mz
LXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4
dGJveGVzLWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTMtMTAtMjEgIE15bGVzIEMuIE1heGZp
ZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBHcmFtbWFyIG1hcmtlcnMgYXJl
IG5vdCB1cGRhdGVkIHdoZW4gc3dpdGNoaW5nIGJldHdlZW4gMXggYW5kIDJ4CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAt
YmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1y
b3VuZGVkLXRleHRib3hlcy1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjk5NjMxOGY2ZDdmNTJi
ODIxMjJhYzFhZDg2NGMwZjViZWVjNmY3OTYKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28t
cm91bmRlZC10ZXh0Ym94ZXMtZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IURPQ1RZ
UEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPgorVGhpcyB0ZXN0
IG1ha2VzIHN1cmUgdGhhdCBtYXRoIGlzIGJlaW5nIHBlcmZvcm1lZCBiZWZvcmUgcm91bmRpbmcg
b2NjdXJzLgorSW4gdGhlIGZvbGxvd2luZyBydW4sIHRoZSAiYWEiIGhhcyBhIGZyYWN0aW9uYWwg
eC1jb29yZGluYXRlIHZhbHVlIG9mCitiZXR3ZWVuIC4zIGFuZCAuNS4gSW4gYWRkaXRpb24gdGhh
dCBydW4ncyB3aWR0aCBhbHNvIGhhcyB0aGlzIHByb3BlcnR5LgorSWYgeW91IHJvdW5kIHRoZSB4
LWNvb3JkaW5hdGUgYW5kIHdpZHRoIGJlZm9yZSB5b3UgYWRkIHRoZW0gdG9nZXRoZXIgdG8KK2dl
dCB0aGUgY29vcmRpbmF0ZSBvZiB0aGUgcmlnaHQtc2lkZSBvZiB0aGUgcnVuLCB5b3Ugd291bGQg
c2VlIHRoYXQgdGhlCitydW4gaXMgYSBwaXhlbCBzaG9ydGVyIHRoYW4gaXQgc2hvdWxkIGJlLgor
PC9wPgorPHU+YWFhYTwvdT4gPHU+YWFhYWE8L3U+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1n
YXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
Y3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVk
LXRleHRib3hlcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE5ZjI1MjNhYmM2ODA1MzU3N2VmNjdjMTgyMGYx
MzdkYWQ4ODViZjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2NzczMtdGV4
dC9jc3MzLXRleHQtZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94
ZXMuaHRtbApAQCAtMCwwICsxLDE2IEBACis8IURPQ1RZUEUgSFRNTD4KKzxodG1sPgorPGhlYWQ+
Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPgorVGhpcyB0ZXN0IG1ha2VzIHN1cmUgdGhhdCBtYXRoIGlz
IGJlaW5nIHBlcmZvcm1lZCBiZWZvcmUgcm91bmRpbmcgb2NjdXJzLgorSW4gdGhlIGZvbGxvd2lu
ZyBydW4sIHRoZSAiYWEiIGhhcyBhIGZyYWN0aW9uYWwgeC1jb29yZGluYXRlIHZhbHVlIG9mCiti
ZXR3ZWVuIC4zIGFuZCAuNS4gSW4gYWRkaXRpb24gdGhhdCBydW4ncyB3aWR0aCBhbHNvIGhhcyB0
aGlzIHByb3BlcnR5LgorSWYgeW91IHJvdW5kIHRoZSB4LWNvb3JkaW5hdGUgYW5kIHdpZHRoIGJl
Zm9yZSB5b3UgYWRkIHRoZW0gdG9nZXRoZXIgdG8KK2dldCB0aGUgY29vcmRpbmF0ZSBvZiB0aGUg
cmlnaHQtc2lkZSBvZiB0aGUgcnVuLCB5b3Ugd291bGQgc2VlIHRoYXQgdGhlCitydW4gaXMgYSBw
aXhlbCBzaG9ydGVyIHRoYW4gaXQgc2hvdWxkIGJlLgorPC9wPgorPHU+YWFhYTwvdT4gPHU+YWE8
L3U+PHU+YWFhPC91PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>215094</attachid>
            <date>2013-10-24 12:25:27 -0700</date>
            <delta_ts>2013-10-24 12:51:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-123236-20131024122526.patch</filename>
            <type>text/plain</type>
            <size>6856</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU3NzM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjlmNDA2Mjg4YzAwYzUy
NjUwNTczNmEwMTY3MDVhZGM0YWI3NGYyZi4uODcyNTM5MTk5MDBmYjM3YWUyMTQ1NDc2Mjg3MDgw
ZjlmNzljMDA1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTEwLTIzICBNeWxl
cyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgR2FwcyBiZXR3
ZWVuIHVuZGVybGluZXMgaW4gYWRqYWNlbnQgdW5kZXJsaW5lZCB0ZXh0IHJ1bnMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzIzNgorCisgICAgICAg
IFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlciBhbmQgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgVGhl
cmUgYXJlIHR3byBwaWVjZXMgdG8gdGhpcyBjaGFuZ2UuIFRoZSBmaXJzdCBwaWVjZSBpcyBpbgor
ICAgICAgICBJbmxpbmVUZXh0Qm94OjpwYWludCgpLiBXZSB3ZXJlIHB1dHRpbmcgZmxvYXRpbmct
cG9pbnQKKyAgICAgICAgZXh0ZW50cyBpbnRvIGEgTGF5b3V0U2l6ZSwgd2hpY2ggc2ltcGx5IHVz
ZXMgaW50cyAoZm9yIG5vdyksCisgICAgICAgIGFuZCB0aGVuIGltbWVkaWF0ZWx5IGNvbnZlcnRp
bmcgdGhpcyBiYWNrIHRvIGEgRmxvYXRTaXplLgorICAgICAgICBJbnN0ZWFkLCB3ZSBzaG91bGQg
YmUgdXNpbmcgZmxvYXRzIHRocm91Z2hvdXQgYWxsIG9mCisgICAgICAgIHRoaXMgY29kZS4KKwor
ICAgICAgICBJbiBhZGRpdGlvbiwgaW5zaWRlIEdyYXBoaWNzQ29udGV4dDo6ZHJhd0xpbmVGb3JU
ZXh0KCksIHdlIGFyZQorICAgICAgICByb3VuZGluZyB0aGUgdW5kZXJsaW5lIHRvIHBpeGVsIGJv
dW5kYXJpZXMgc28gdGhhdCBpdCBhcHBlYXJzCisgICAgICAgIHZlcnkgY3Jpc3Agb24gdGhlIHNj
cmVlbi4gSG93ZXZlciwgd2Ugc2hvdWxkIHJvdW5kIG9uY2UgYWZ0ZXIKKyAgICAgICAgcGVyZm9y
bWluZyBjb21wdXRhdGlvbnMsIHJhdGhlciB0aGFuIHJvdW5kaW5nIHR3aWNlIGFuZCB0aGVuCisg
ICAgICAgIHBlcmZvcm1pbmcgY29tcHV0YXRpb25zIG9uIHRoZSByb3VuZGVkIG51bWJlcnMuCisK
KyAgICAgICAgVGVzdDogZmFzdC9jc3MzLXRleHQvY3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2Fw
LWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVzLmh0bWwKKworICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dDo6ZHJhd0xpbmVGb3JUZXh0KTogQ2hhbmdlIHJvdW5kaW5nIG1vZGUKKyAg
ICAgICAgICAgIHRvIHBlcmZvcm0gY29tcHV0YXRpb25zIGJlZm9yZSByb3VuZGluZworICAgICAg
ICAqIHJlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklubGlu
ZVRleHRCb3g6OnBhaW50KTogRG9uJ3QgY29udmVydCB0byBhIExheW91dFNpemUKKyAgICAgICAg
ICAgIGp1c3QgdG8gY29udmVydCB0byBhIEZsb2F0U2l6ZQorCiAyMDEzLTEwLTIxICBNeWxlcyBD
LiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgR3JhbW1hciBtYXJr
ZXJzIGFyZSBub3QgdXBkYXRlZCB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIDF4IGFuZCAyeApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3NDb250
ZXh0Q0cuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2cvR3JhcGhpY3ND
b250ZXh0Q0cuY3BwCmluZGV4IGIwODE3NWUwYjkwODRhZjBiMThlMzYwMDE5MTFjZDFkNjg1YjYy
OTQuLmQwZmM5YjE1MGI1ZDIwYWE2NTgxMmYxZTQ2NjViYWFhMzE5OGEzZTcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL0dyYXBoaWNzQ29udGV4dENHLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jZy9HcmFwaGljc0NvbnRl
eHRDRy5jcHAKQEAgLTEyNjEsNyArMTI2MSw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3
TGluZUZvclRleHQoY29uc3QgRmxvYXRQb2ludCYgcG9pbnQsIGZsb2F0IHdpZHRoLCBib29sCiAg
ICAgICAgIC8vIFdlIHRyeSB0byByb3VuZCBhbGwgcGFyYW1ldGVycyB0byBpbnRlZ2VyIGJvdW5k
YXJpZXMgaW4gZGV2aWNlIHNwYWNlLiBJZiByb3VuZGluZyBwaXhlbHMgaW4gZGV2aWNlIHNwYWNl
CiAgICAgICAgIC8vIG1ha2VzIG91ciB0aGlja25lc3MgbW9yZSB0aGFuIGRvdWJsZSwgdGhlbiB0
aGVyZSBtdXN0IGJlIGEgc2hyaW5raW5nLXNjYWxlIGZhY3RvciBhbmQgcm91bmRpbmcgdG8gcGl4
ZWxzCiAgICAgICAgIC8vIGluIGRldmljZSBzcGFjZSB3aWxsIG1ha2UgdGhlIHVuZGVybGluZXMg
dG9vIHRoaWNrLgotICAgICAgICBDR1JlY3QgbGluZVJlY3QgPSByb3VuZFRvRGV2aWNlUGl4ZWxz
KEZsb2F0UmVjdCh4LCB5LCBsaW5lTGVuZ3RoLCBhZGp1c3RlZFRoaWNrbmVzcyksIFJvdW5kT3Jp
Z2luQW5kRGltZW5zaW9ucyk7CisgICAgICAgIENHUmVjdCBsaW5lUmVjdCA9IHJvdW5kVG9EZXZp
Y2VQaXhlbHMoRmxvYXRSZWN0KHgsIHksIGxpbmVMZW5ndGgsIGFkanVzdGVkVGhpY2tuZXNzKSwg
Um91bmRBbGxTaWRlcyk7CiAgICAgICAgIGlmIChsaW5lUmVjdC5zaXplLmhlaWdodCA8IHRoaWNr
bmVzcyAqIDIuMCkgewogICAgICAgICAgICAgeCA9IGxpbmVSZWN0Lm9yaWdpbi54OwogICAgICAg
ICAgICAgeSA9IGxpbmVSZWN0Lm9yaWdpbi55OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL0lubGluZVRleHRCb3guY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL0lu
bGluZVRleHRCb3guY3BwCmluZGV4IDI5NjkwZmJjMGIxMzA5OTkxZTZkY2Q5YTNjZTY0NTQ3YzUz
OTFmMjIuLmQ2MTkxMzA2YWFhNWIzNGJjNjgwZjcxNzJhMWViNTI5ODM4NWVjMGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9JbmxpbmVUZXh0Qm94LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvSW5saW5lVGV4dEJveC5jcHAKQEAgLTUzMCw3ICs1MzAsNyBA
QCB2b2lkIElubGluZVRleHRCb3g6OnBhaW50KFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBM
YXlvdXRQb2ludCYgcGFpbnRPZmZzZXQsCiAKICAgICBGbG9hdFBvaW50IGJveE9yaWdpbiA9IGxv
Y2F0aW9uSW5jbHVkaW5nRmxpcHBpbmcoKTsKICAgICBib3hPcmlnaW4ubW92ZShhZGp1c3RlZFBh
aW50T2Zmc2V0LngoKSwgYWRqdXN0ZWRQYWludE9mZnNldC55KCkpOwotICAgIEZsb2F0UmVjdCBi
b3hSZWN0KGJveE9yaWdpbiwgTGF5b3V0U2l6ZShsb2dpY2FsV2lkdGgoKSwgbG9naWNhbEhlaWdo
dCgpKSk7CisgICAgRmxvYXRSZWN0IGJveFJlY3QoYm94T3JpZ2luLCBGbG9hdFNpemUobG9naWNh
bFdpZHRoKCksIGxvZ2ljYWxIZWlnaHQoKSkpOwogCiAgICAgUmVuZGVyQ29tYmluZVRleHQqIGNv
bWJpbmVkVGV4dCA9IGxpbmVTdHlsZS5oYXNUZXh0Q29tYmluZSgpICYmIHJlbmRlcmVyKCkuaXND
b21iaW5lVGV4dCgpICYmIHRvUmVuZGVyQ29tYmluZVRleHQocmVuZGVyZXIoKSkuaXNDb21iaW5l
ZCgpID8gJnRvUmVuZGVyQ29tYmluZVRleHQocmVuZGVyZXIoKSkgOiAwOwogCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggN2I2
MWExMTk4NjQ1YTUyYmY1ZTBmZDI4MzQ1ZTQyYzcyYTA5Nzk3ZS4uZmJiOTg4YjBkNDc2YWEzM2U5
MTM0NTMxMmE0YWNjNWM5NzkxMDEzZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTEwLTIz
ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgR2Fw
cyBiZXR3ZWVuIHVuZGVybGluZXMgaW4gYWRqYWNlbnQgdW5kZXJsaW5lZCB0ZXh0IHJ1bnMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMzIzNgorCisg
ICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlciBhbmQgRGFyaW4gQWRsZXIuCisKKyAgICAg
ICAgQWRkZWQgYSB0ZXN0IHRoYXQgY2hlY2tzIHRoYXQgd2UgaGF2ZSBhY2N1cmF0ZSBwcmVjaXNp
b24gaW4gb3VyCisgICAgICAgIGZsb2F0aW5nLXBvaW50IGNvbXB1dGF0aW9ucy4gV2Ugc2hvdWxk
IHBlcmZvcm0gY2FsY3VsYXRpb25zIGJlZm9yZQorICAgICAgICByb3VuZGluZywgaW5zdGVhZCBv
ZiByb3VkaW5nIHR3aWNlIGFuZCBwZXJmb3JtaW5nIGNhbGN1bGF0aW9ucyBvbgorICAgICAgICB0
aGUgcm91bmRlZCB2YWx1ZXMuCisKKyAgICAgICAgKiBmYXN0L2NzczMtdGV4dC9jc3MzLXRleHQt
ZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNv
cmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy1leHBlY3RlZC5wbmc6
IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9mYXN0L2NzczMtdGV4dC9jc3MzLXRleHQt
ZGVjb3JhdGlvbi9uby1nYXAtYmV0d2Vlbi10d28tcm91bmRlZC10ZXh0Ym94ZXMtZXhwZWN0ZWQu
dHh0OiBBZGRlZC4KKwogMjAxMy0xMC0yMSAgTXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRA
YXBwbGUuY29tPgogCiAgICAgICAgIEdyYW1tYXIgbWFya2VycyBhcmUgbm90IHVwZGF0ZWQgd2hl
biBzd2l0Y2hpbmcgYmV0d2VlbiAxeCBhbmQgMngKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3Vu
ZGVkLXRleHRib3hlcy1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MzLXRleHQv
Y3NzMy10ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVz
LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTk2MzE4ZjZkN2Y1MmI4MjEyMmFjMWFkODY0YzBm
NWJlZWM2Zjc5NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzMy10ZXh0
L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hl
cy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+
Cis8aGVhZD4KKzwvaGVhZD4KKzxib2R5PgorPHA+CitUaGlzIHRlc3QgbWFrZXMgc3VyZSB0aGF0
IG1hdGggaXMgYmVpbmcgcGVyZm9ybWVkIGJlZm9yZSByb3VuZGluZyBvY2N1cnMuCitJbiB0aGUg
Zm9sbG93aW5nIHJ1biwgdGhlICJhYSIgaGFzIGEgZnJhY3Rpb25hbCB4LWNvb3JkaW5hdGUgdmFs
dWUgb2YKK2JldHdlZW4gLjMgYW5kIC41LiBJbiBhZGRpdGlvbiB0aGF0IHJ1bidzIHdpZHRoIGFs
c28gaGFzIHRoaXMgcHJvcGVydHkuCitJZiB5b3Ugcm91bmQgdGhlIHgtY29vcmRpbmF0ZSBhbmQg
d2lkdGggYmVmb3JlIHlvdSBhZGQgdGhlbSB0b2dldGhlciB0bworZ2V0IHRoZSBjb29yZGluYXRl
IG9mIHRoZSByaWdodC1zaWRlIG9mIHRoZSBydW4sIHlvdSB3b3VsZCBzZWUgdGhhdCB0aGUKK3J1
biBpcyBhIHBpeGVsIHNob3J0ZXIgdGhhbiBpdCBzaG91bGQgYmUuCis8L3A+Cis8dT5hYWFhPC91
PiA8dT5hYWFhYTwvdT4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNvcmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1y
b3VuZGVkLXRleHRib3hlcy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MzLXRleHQvY3NzMy10
ZXh0LWRlY29yYXRpb24vbm8tZ2FwLWJldHdlZW4tdHdvLXJvdW5kZWQtdGV4dGJveGVzLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMTlmMjUyM2FiYzY4MDUzNTc3ZWY2N2MxODIwZjEzN2RhZDg4NWJmMgotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzMy10ZXh0L2NzczMtdGV4dC1kZWNv
cmF0aW9uL25vLWdhcC1iZXR3ZWVuLXR3by1yb3VuZGVkLXRleHRib3hlcy5odG1sCkBAIC0wLDAg
KzEsMTYgQEAKKzwhRE9DVFlQRSBIVE1MPgorPGh0bWw+Cis8aGVhZD4KKzwvaGVhZD4KKzxib2R5
PgorPHA+CitUaGlzIHRlc3QgbWFrZXMgc3VyZSB0aGF0IG1hdGggaXMgYmVpbmcgcGVyZm9ybWVk
IGJlZm9yZSByb3VuZGluZyBvY2N1cnMuCitJbiB0aGUgZm9sbG93aW5nIHJ1biwgdGhlICJhYSIg
aGFzIGEgZnJhY3Rpb25hbCB4LWNvb3JkaW5hdGUgdmFsdWUgb2YKK2JldHdlZW4gLjMgYW5kIC41
LiBJbiBhZGRpdGlvbiB0aGF0IHJ1bidzIHdpZHRoIGFsc28gaGFzIHRoaXMgcHJvcGVydHkuCitJ
ZiB5b3Ugcm91bmQgdGhlIHgtY29vcmRpbmF0ZSBhbmQgd2lkdGggYmVmb3JlIHlvdSBhZGQgdGhl
bSB0b2dldGhlciB0bworZ2V0IHRoZSBjb29yZGluYXRlIG9mIHRoZSByaWdodC1zaWRlIG9mIHRo
ZSBydW4sIHlvdSB3b3VsZCBzZWUgdGhhdCB0aGUKK3J1biBpcyBhIHBpeGVsIHNob3J0ZXIgdGhh
biBpdCBzaG91bGQgYmUuCis8L3A+Cis8dT5hYWFhPC91PiA8dT5hYTwvdT48dT5hYWE8L3U+Cis8
L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>