<?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>103283</bug_id>
          
          <creation_ts>2012-11-26 13:30:25 -0800</creation_ts>
          <short_desc>Hover effects from a GestureTapDown are dismissed by a GestureTap on the hover element</short_desc>
          <delta_ts>2013-03-20 10:33:41 -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>UI Events</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="Terry Anderson">tdanderson</reporter>
          <assigned_to name="Terry Anderson">tdanderson</assigned_to>
          <cc>aelias</cc>
    
    <cc>efidler</cc>
    
    <cc>gmak</cc>
    
    <cc>rbyers</cc>
    
    <cc>rjkroege</cc>
    
    <cc>rniwa</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>775824</commentid>
    <comment_count>0</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2012-11-26 13:30:25 -0800</bug_when>
    <thetext>Steps to reproduce:
1. Go to http://jsfiddle.net/rbyers/9bK2D/
2. Tap with touch on &apos;Hover me&apos; (causing the green &apos;Click me&apos; element to appear)
3. Tap with touch on &apos;Click me&apos;

What happens:
The GestureTap from step 3 will dismiss the hover effect before dispatching the tap event. This will cause the &apos;Click me&apos; element to disappear and the tap will be incorrectly dispatched to &quot;Don&apos;t click here&quot;.

What should happen instead:
The GestureTap from step 3 should dispatch the tap on the &apos;Click me&apos; element, and this element should remain visible after the tap has completed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775858</commentid>
    <comment_count>1</comment_count>
      <attachid>176058</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2012-11-26 13:56:44 -0800</bug_when>
    <thetext>Created attachment 176058
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775860</commentid>
    <comment_count>2</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2012-11-26 14:00:08 -0800</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=176058) [details]
&gt; Patch

This patch fixes the problem, but @rbyers pointed out that we will probably get this fix for free as a result of the refactoring in webk.it/97040 (which won&apos;t introduce another &apos;hack&apos; to handleGestureEvent()). Setting that issue as a blocker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847864</commentid>
    <comment_count>3</comment_count>
      <attachid>191523</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-05 11:40:37 -0800</bug_when>
    <thetext>Created attachment 191523
WIP, not for review</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848339</commentid>
    <comment_count>4</comment_count>
      <attachid>191628</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-05 18:16:04 -0800</bug_when>
    <thetext>Created attachment 191628
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848476</commentid>
    <comment_count>5</comment_count>
      <attachid>191628</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-03-05 22:33:49 -0800</bug_when>
    <thetext>Comment on attachment 191628
Patch

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

So, you want to proceed here, even if the other bug is fixing it differently?

At least the test is important

&gt; Source/WebCore/page/EventHandler.cpp:2507
&gt; +    case PlatformEvent::GestureTapDownCancel:

do you lack a break for this &apos;case&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>848479</commentid>
    <comment_count>6</comment_count>
      <attachid>191628</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-03-05 22:44:58 -0800</bug_when>
    <thetext>Comment on attachment 191628
Patch

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

&gt; Source/WebCore/page/EventHandler.cpp:2403
&gt; +void EventHandler::releaseFocus(const IntPoint&amp; point)

I think releasing focus is different from releasing hover. Is this name accurate?

&gt; Source/WebCore/page/EventHandler.cpp:2406
&gt; +    hitTestResultAtPoint(hitTestPoint, HitTestRequest::Release | HitTestRequest::AllowFrameScrollbars);

do not you just need to call Document::updateHoverActiveState here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>849210</commentid>
    <comment_count>7</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-06 12:52:21 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 191628 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=191628&amp;action=review
&gt; 
&gt; So, you want to proceed here, even if the other bug is fixing it differently?
&gt; 
&gt; At least the test is important

Yes, I don&apos;t think we will get this fixed as a result of the refactoring bug so I removed the dependency. 

Thanks for the feedback so far. I realized today that I want to do a bit more thinking about this problem before trying to land any code, so I&apos;m going to clear the review flag for the time being.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855475</commentid>
    <comment_count>8</comment_count>
      <attachid>193181</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-14 14:05:42 -0700</bug_when>
    <thetext>Created attachment 193181
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855478</commentid>
    <comment_count>9</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-14 14:09:17 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Created an attachment (id=193181) [details]
&gt; Patch

This new approach avoids adding another hit test and I believe it is more in line with mouse behavior as well. If you go to http://jsfiddle.net/rbyers/9bK2D/ and hover with your mouse cursor, you are able to mouse-click the &quot;click me&quot; div as many times as you want without the hover effect being dismissed. With this patch, the hover effect is not dismissed after gesture-tapping the &quot;click me&quot; div. Gesture-tapping or moving your mouse cursor outside of the &quot;click me&quot; div will still clear the hover effects, though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>855627</commentid>
    <comment_count>10</comment_count>
      <attachid>193181</attachid>
    <who name="Rick Byers">rbyers</who>
    <bug_when>2013-03-14 18:37:30 -0700</bug_when>
    <thetext>Comment on attachment 193181
Patch

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

&gt; Source/WebCore/page/EventHandler.cpp:2481
&gt; +        hitType |= HitTestRequest::ReadOnly;

This means we&apos;re now relying on the synthetic mouseup event to clear the :active state.  Conceptually I&apos;d prefer if the synthetic mouse events were separate from achieving the correct hover/active behavior (since I think in the future we&apos;ll probably want a mechanism for disabling the synthetic mouse events without also disabling touch-based hover/active).  This might be OK - this is certainly a nice simple CL to address the problem, and I don&apos;t see any obvious problem that would result from doing it this way for now.  But you should at least add a comment here saying why it&apos;s OK for the hit test to be ReadOnly (that we expect a mouseup to clear the active state for us).

The alternative approach would be to modify HandleGestureTap to simulate mousedown/mouseup in a different way which either avoids the hit test or does only a ReadOnly hit test (eg. maybe by dispatching the DOM events directly, rather than simulating a real platform event).  There are good reason why we will want to do something like this sometime soon - eg. to be able to mark mouse events that were generated by touch (a common web platform feature request), and (more immediately) to fix the hover problem where we get mousemove events on scroll after tap.  If we switch to this approach then we&apos;d probably need to modify Document::updateHoverActiveState to not clear hover states on touchRelease (today hover is probably getting cleared on GestureTap and set again on the synthetic mousedown - though I haven&apos;t verified this).

Anyway, I&apos;m OK with this approach in the short term as long as you add a comment explaining it.  But I suspect we&apos;ll want to revisit after fixing the scroll after tap case.

&gt; LayoutTests/fast/events/touch/gesture/gesture-tap-hover-clear.html:46
&gt; +// Terry: change this 

Something you wanted to change here?

&gt; LayoutTests/fast/events/touch/gesture/gesture-tap-hover-clear.html:72
&gt; +    eventSender.gestureTap(250, 250);

It would be nice (given the test bugs we&apos;ve had in the past) to double check here and below that you&apos;re taping on the element you expect (eg. with elementFromPoint).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856354</commentid>
    <comment_count>11</comment_count>
      <attachid>193386</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-15 15:47:46 -0700</bug_when>
    <thetext>Created attachment 193386
comments from rbyers addressed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856359</commentid>
    <comment_count>12</comment_count>
      <attachid>193388</attachid>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-15 15:53:34 -0700</bug_when>
    <thetext>Created attachment 193388
comments from rbyers addressed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856481</commentid>
    <comment_count>13</comment_count>
    <who name="Rick Byers">rbyers</who>
    <bug_when>2013-03-15 19:35:35 -0700</bug_when>
    <thetext>Looks good to me.  Antonio?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>856593</commentid>
    <comment_count>14</comment_count>
      <attachid>193388</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-03-16 12:17:30 -0700</bug_when>
    <thetext>Comment on attachment 193388
comments from rbyers addressed

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

&gt; Source/WebCore/page/EventHandler.cpp:2483
&gt; +    else if (gestureEvent.type() == PlatformEvent::GestureTap) {
&gt; +        // The mouseup event synthesized for this gesture will clear the active state of the
&gt; +        // targeted node, so performing a ReadOnly hit test here is fine.
&gt; +        hitType |= HitTestRequest::ReadOnly;

I think it looks ok. Question: is it safe to generalize this?

Like the case you are trying to fix is essentially:
1 - click on 1
2 - 2 shows up as a result of hovering over 1
3 - click on 2
(3) fails before 1 gets unactive and dismisses the hover, making 2 disappear.

What if I just want to click (tap) on a element that responds to hover? Once I finish, would it remain as active till I click elsewhere?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>857168</commentid>
    <comment_count>15</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-18 09:06:42 -0700</bug_when>
    <thetext>(In reply to comment #14)

&gt; I think it looks ok. Question: is it safe to generalize this?
&gt; 
&gt; Like the case you are trying to fix is essentially:
&gt; 1 - click on 1
&gt; 2 - 2 shows up as a result of hovering over 1
&gt; 3 - click on 2
&gt; (3) fails before 1 gets unactive and dismisses the hover, making 2 disappear.
&gt; 
&gt; What if I just want to click (tap) on a element that responds to hover? Once I finish, would it remain as active till I click elsewhere?

I think this will reproduce the case you are asking about (please correct me if I am mistaken):

1. Go to www.rbyers.net/eventTest.html
2. Tap on the purple square
// Notice that the square shows :hover :active while your finger is pressed down on the square, but only :hover once your finger is lifted off of the square (which is consistent with the behavior expected from a mouse)
3. Tap elsewhere on the page
// The :hover state is cleared from the purple square, which is consistent with the behavior expected from a mouse</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858417</commentid>
    <comment_count>16</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2013-03-19 10:17:31 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (In reply to comment #14)
&gt; ..
&gt; I think this will reproduce the case you are asking about (please correct me if I am mistaken):
&gt; 
&gt; 1. Go to www.rbyers.net/eventTest.html
&gt; 2. Tap on the purple square
&gt; // Notice that the square shows :hover :active while your finger is pressed down on the square, but only :hover once your finger is lifted off of the square (which is consistent with the behavior expected from a mouse)
&gt; 3. Tap elsewhere on the page
&gt; // The :hover state is cleared from the purple square, which is consistent with the behavior expected from a mouse

Right. Is this behavior with your patch, right? 


Gen/Eli: Do you have an opinion?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858420</commentid>
    <comment_count>17</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-19 10:20:47 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; (In reply to comment #15)
&gt; &gt; (In reply to comment #14)
&gt; &gt; ..
&gt; &gt; I think this will reproduce the case you are asking about (please correct me if I am mistaken):
&gt; &gt; 
&gt; &gt; 1. Go to www.rbyers.net/eventTest.html
&gt; &gt; 2. Tap on the purple square
&gt; &gt; // Notice that the square shows :hover :active while your finger is pressed down on the square, but only :hover once your finger is lifted off of the square (which is consistent with the behavior expected from a mouse)
&gt; &gt; 3. Tap elsewhere on the page
&gt; &gt; // The :hover state is cleared from the purple square, which is consistent with the behavior expected from a mouse
&gt; 
&gt; Right. Is this behavior with your patch, right? 
&gt; 

Yes, this behavior is with my patch.

&gt; 
&gt; Gen/Eli: Do you have an opinion?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858477</commentid>
    <comment_count>18</comment_count>
    <who name="">gmak</who>
    <bug_when>2013-03-19 10:59:38 -0700</bug_when>
    <thetext>This looks consistent with the blackberry port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858509</commentid>
    <comment_count>19</comment_count>
      <attachid>193388</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-19 11:22:57 -0700</bug_when>
    <thetext>Comment on attachment 193388
comments from rbyers addressed

Clearing flags on attachment: 193388

Committed r146224: &lt;http://trac.webkit.org/changeset/146224&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>858510</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-19 11:23:01 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859042</commentid>
    <comment_count>21</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-03-19 21:05:04 -0700</bug_when>
    <thetext>Fixed the expected results added in http://trac.webkit.org/changeset/146298. Please be cautious in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>859536</commentid>
    <comment_count>22</comment_count>
    <who name="Terry Anderson">tdanderson</who>
    <bug_when>2013-03-20 10:33:41 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; Fixed the expected results added in http://trac.webkit.org/changeset/146298. Please be cautious in the future.

Oops, sorry about that :\ Thanks a lot for fixing these up for me.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176058</attachid>
            <date>2012-11-26 13:56:44 -0800</date>
            <delta_ts>2013-03-05 11:40:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103283-20121126165422.patch</filename>
            <type>text/plain</type>
            <size>6223</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1NzI1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjM0MmU3ODQyMmY5YzI1
YTZjZGU0OTQ4ZmU3Y2Y3ZDhiMGRhMzY5MC4uNGJiNWZiM2M3YmI0Nzc1N2EwODc5ZjkwM2JlYTNi
MWI1MjU1YTdlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTExLTI2ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtub24tYW5k
cm9pZCBjaHJvbWl1bV0gSG92ZXIgZWZmZWN0cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRp
c21pc3NlZCBwcmVtYXR1cmVseSBvbiBhIEdlc3R1cmVUYXAKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vdCBmb3IgcmV2aWV3LiBTZWUgY29tbWVudHMg
b24gdGhlIGJ1Z3ppbGxhIHBhZ2UuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OnJlbGVhc2VGb2N1cyk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZVRhcCk6CisgICAgICAgICogcGFnZS9FdmVu
dEhhbmRsZXIuaDoKKyAgICAgICAgKEV2ZW50SGFuZGxlcik6CisKIDIwMTItMTEtMjYgIE1pa2Ug
V2VzdCAgPG1rd3N0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBVUkxz
IGNvbnRhaW5pbmcgJ14nIGFyZSBpbXByb3Blcmx5IGxpbmtlZCBpbiBjb25zb2xlIG1lc3NhZ2Vz
LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IDg3MDVhZjYyM2E0MDZmNzIw
NTk0NGI5ZDlhMTkwNDBmMWQ5YTUyZTcuLjhiMzA1ZWUxZGJmZjNhMjk5NmI5N2JkYzBiMGRkNTQw
MzQ1NmU2YjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTI1MTUsNiAr
MjUxNSwxMiBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZVRhcERvd24oKQogICAg
IHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBFdmVudEhhbmRsZXI6OnJlbGVhc2VGb2N1cyhjb25z
dCBJbnRQb2ludCYgcG9pbnQpCit7CisgICAgSW50UG9pbnQgaGl0VGVzdFBvaW50ID0gbV9mcmFt
ZS0+dmlldygpLT53aW5kb3dUb0NvbnRlbnRzKHBvaW50KTsKKyAgICBoaXRUZXN0UmVzdWx0QXRQ
b2ludChoaXRUZXN0UG9pbnQsIGZhbHNlLCBmYWxzZSwgU2hvdWxkSGl0VGVzdFNjcm9sbGJhcnMs
IEhpdFRlc3RSZXF1ZXN0OjpSZWxlYXNlKTsKK30KKwogYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRs
ZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQog
ewogICAgIC8vIFdlIGRvbid0IHVzZSBEb3VibGVUYXAgYXQgdGhlIG1vbWVudCwgaXQncyBtb3N0
bHkgcmVkdW5kYW50IHdpdGggdGFwIHNpbmNlIHRhcCBub3cgY29udGFpbnMKQEAgLTI1MjQsNiAr
MjUzMCw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxh
dGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKIAogICAgIE5vZGUqIGV2ZW50VGFyZ2V0
ID0gMDsKICAgICBTY3JvbGxiYXIqIHNjcm9sbGJhciA9IDA7CisgICAgYm9vbCBkZWZlcnJlZFJl
bGVhc2UgPSBmYWxzZTsKICAgICBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2
ZW50OjpHZXN0dXJlU2Nyb2xsRW5kIHx8IGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1F
dmVudDo6R2VzdHVyZVNjcm9sbFVwZGF0ZSkgewogICAgICAgICBzY3JvbGxiYXIgPSBtX3Njcm9s
bGJhckhhbmRsaW5nU2Nyb2xsR2VzdHVyZS5nZXQoKTsKICAgICAgICAgZXZlbnRUYXJnZXQgPSBt
X3Njcm9sbEdlc3R1cmVIYW5kbGluZ05vZGUuZ2V0KCk7CkBAIC0yNTM2LDEzICsyNTQzLDE4IEBA
IGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0
dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKICAgICAgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9uKGdl
c3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYKICAgICAgICAgaGl0VHlwZSB8PSBI
aXRUZXN0UmVxdWVzdDo6QWN0aXZlOwotICAgIH0gZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUo
KSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwIHx8IGdlc3R1cmVFdmVudC50eXBlKCkgPT0g
UGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd25DYW5jZWwpCi0gICAgICAgIGhpdFR5cGUgfD0g
SGl0VGVzdFJlcXVlc3Q6OlJlbGVhc2U7CisgICAgfSBlbHNlIGlmIChnZXN0dXJlRXZlbnQudHlw
ZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2VzdHVyZUV2ZW50LnR5cGUoKSA9
PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkgeworICAgICAgICBoaXRUeXBl
IHw9IEhpdFRlc3RSZXF1ZXN0OjpSZWFkT25seTsKKyAgICAgICAgZGVmZXJyZWRSZWxlYXNlID0g
dHJ1ZTsKKyAgICB9CiAgICAgZWxzZQogICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0
OjpBY3RpdmUgfCBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7CiAKLSAgICBpZiAoIXNob3VsZEdl
c3R1cmVzVHJpZ2dlckFjdGl2ZSgpKQorICAgIGlmICghc2hvdWxkR2VzdHVyZXNUcmlnZ2VyQWN0
aXZlKCkpIHsKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7Cisg
ICAgICAgIC8vIE9ubHkgY2FsbCByZWxlYXNlRm9jdXMoKSBvbiBub24tQW5kcm9pZCBDaHJvbWl1
bSBwb3J0cy4KKyAgICAgICAgZGVmZXJyZWRSZWxlYXNlID0gZmFsc2U7CisgICAgfQogCiAgICAg
aWYgKCghc2Nyb2xsYmFyICYmICFldmVudFRhcmdldCkgfHwgIShoaXRUeXBlICYgSGl0VGVzdFJl
cXVlc3Q6OlJlYWRPbmx5KSkgewogICAgICAgICBJbnRQb2ludCBoaXRUZXN0UG9pbnQgPSBtX2Zy
YW1lLT52aWV3KCktPndpbmRvd1RvQ29udGVudHMoYWRqdXN0ZWRQb2ludCk7CkBAIC0yNTkxLDcg
KzI2MDMsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBs
YXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50
OjpHZXN0dXJlU2Nyb2xsVXBkYXRlOgogICAgICAgICByZXR1cm4gaGFuZGxlR2VzdHVyZVNjcm9s
bFVwZGF0ZShnZXN0dXJlRXZlbnQpOwogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRh
cDoKLSAgICAgICAgcmV0dXJuIGhhbmRsZUdlc3R1cmVUYXAoZ2VzdHVyZUV2ZW50KTsKKyAgICAg
ICAgcmV0dXJuIGhhbmRsZUdlc3R1cmVUYXAoZ2VzdHVyZUV2ZW50LCBkZWZlcnJlZFJlbGVhc2Up
OwogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd246CiAgICAgICAgIHJldHVy
biBoYW5kbGVHZXN0dXJlVGFwRG93bigpOwogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVy
ZUxvbmdQcmVzczoKQEAgLTI2MDMsNyArMjYxNSwxMCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFu
ZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQp
CiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlUGluY2hCZWdpbjoKICAgICBjYXNlIFBs
YXRmb3JtRXZlbnQ6Okdlc3R1cmVQaW5jaEVuZDoKICAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdl
c3R1cmVQaW5jaFVwZGF0ZToKKyAgICAgICAgYnJlYWs7CiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50
OjpHZXN0dXJlVGFwRG93bkNhbmNlbDoKKyAgICAgICAgaWYgKGRlZmVycmVkUmVsZWFzZSkKKyAg
ICAgICAgICAgIHJlbGVhc2VGb2N1cyhhZGp1c3RlZFBvaW50KTsKICAgICAgICAgYnJlYWs7CiAg
ICAgZGVmYXVsdDoKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CkBAIC0yNjEyLDcgKzI2
MjcsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRm
b3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCi1i
b29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZVRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVF
dmVudCYgZ2VzdHVyZUV2ZW50KQorYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXAo
Y29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCwgYm9vbCBkZWZlcnJlZFJl
bGVhc2UpCiB7CiAgICAgLy8gRklYTUU6IFJlZmFjdG9yIHRoaXMgY29kZSB0byBub3QgaGl0IHRl
c3QgbXVsdGlwbGUgdGltZXMuIFdlIHVzZSB0aGUgYWRqdXN0ZWQgcG9zaXRpb24gdG8gZW5zdXJl
IHRoYXQgdGhlIGNvcnJlY3Qgbm9kZSBpcyB0YXJnZXRlZCBieSB0aGUgbGF0ZXIgcmVkdW5kYW50
IGhpdCB0ZXN0cy4KICAgICBJbnRQb2ludCBhZGp1c3RlZFBvaW50ID0gZ2VzdHVyZUV2ZW50LnBv
c2l0aW9uKCk7CkBAIC0yNjQyLDYgKzI2NTcsOSBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxl
R2VzdHVyZVRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQogICAg
ICAgICBnZXN0dXJlRXZlbnQuc2hpZnRLZXkoKSwgZ2VzdHVyZUV2ZW50LmN0cmxLZXkoKSwgZ2Vz
dHVyZUV2ZW50LmFsdEtleSgpLCBnZXN0dXJlRXZlbnQubWV0YUtleSgpLCBnZXN0dXJlRXZlbnQu
dGltZXN0YW1wKCkpOwogICAgIGRlZmF1bHRQcmV2ZW50ZWQgfD0gaGFuZGxlTW91c2VSZWxlYXNl
RXZlbnQoZmFrZU1vdXNlVXApOwogCisgICAgaWYgKGRlZmVycmVkUmVsZWFzZSkKKyAgICAgICAg
cmVsZWFzZUZvY3VzKGFkanVzdGVkUG9pbnQpOworCiAgICAgcmV0dXJuIGRlZmF1bHRQcmV2ZW50
ZWQ7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCmluZGV4IGZjYmNkNjE2YjQ4NDk0
NmYxNmRhODE2OGViZmEzZWExMzMxN2ZkODIuLjVmZDAyYjljNmIzOTZmNDQ5OGZhMmQwNDJjNzkx
ODNlODEzM2I5YzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaApAQCAtMTY4LDcgKzE2
OCw3IEBAIHB1YmxpYzoKIAogI2lmIEVOQUJMRShHRVNUVVJFX0VWRU5UUykKICAgICBib29sIGhh
bmRsZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYpOwotICAgIGJvb2wg
aGFuZGxlR2VzdHVyZVRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYpOworICAgIGJvb2wg
aGFuZGxlR2VzdHVyZVRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYsIGJvb2wpOwogICAg
IGJvb2wgaGFuZGxlR2VzdHVyZUxvbmdQcmVzcyhjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYp
OwogICAgIGJvb2wgaGFuZGxlR2VzdHVyZVR3b0ZpbmdlclRhcChjb25zdCBQbGF0Zm9ybUdlc3R1
cmVFdmVudCYpOwogICAgIGJvb2wgaGFuZGxlR2VzdHVyZVNjcm9sbFVwZGF0ZShjb25zdCBQbGF0
Zm9ybUdlc3R1cmVFdmVudCYpOwpAQCAtMzczLDYgKzM3Myw3IEBAIHByaXZhdGU6CiAgICAgYm9v
bCBoYW5kbGVHZXN0dXJlU2Nyb2xsQ29yZShjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYsIFBs
YXRmb3JtV2hlZWxFdmVudEdyYW51bGFyaXR5LCBib29sIGxhdGNoZWRXaGVlbCk7CiAgICAgYm9v
bCBoYW5kbGVHZXN0dXJlVGFwRG93bigpOwogICAgIGJvb2wgaGFuZGxlR2VzdHVyZUZvclRleHRT
ZWxlY3Rpb25PckNvbnRleHRNZW51KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7CisgICAg
dm9pZCByZWxlYXNlRm9jdXMoY29uc3QgSW50UG9pbnQmKTsKICNlbmRpZgogCiAgICAgRnJhbWUq
IG1fZnJhbWU7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191523</attachid>
            <date>2013-03-05 11:40:37 -0800</date>
            <delta_ts>2013-03-05 18:16:01 -0800</delta_ts>
            <desc>WIP, not for review</desc>
            <filename>bug-103283-20130305143643.patch</filename>
            <type>text/plain</type>
            <size>6089</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0NzczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmU1YzAwMWYzODhmMmUw
YmUzNTliYWViYTI4ZGMwNGQ0MGYyMzg3Yi4uZjI3ODFjOGRkNzc4ZDU0MmY5OTVlNGViZGZlZDdl
YjE5ZjZkODhmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAzLTA1ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtub24tYW5k
cm9pZCBjaHJvbWl1bV0gSG92ZXIgZWZmZWN0cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRp
c21pc3NlZCBwcmVtYXR1cmVseSBvbiBhIEdlc3R1cmVUYXAKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoT09QUyEpLgorCisgICAg
ICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5k
bGVyOjpyZWxlYXNlRm9jdXMpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3Jl
OjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpF
dmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXApOgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5k
bGVyLmg6CisgICAgICAgIChFdmVudEhhbmRsZXIpOgorCiAyMDEzLTAzLTA0ICBEYXZpZCBIeWF0
dCAgPGh5YXR0QGFwcGxlLmNvbT4KIAogICAgICAgICBbTmV3IE11bHRpY29sdW1uXSBBdXRvZ2Vu
ZXJhdGUgcmVnaW9ucyBmb3IgY29sdW1ucy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bh
Z2UvRXZlbnRIYW5kbGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNw
cAppbmRleCA0MzZiYjM1MjA2MTQ4MTdjZDE3YjIyZTJhYWY3ZTY5OTdiYmYzNDkyLi5iY2YwNzMw
NzIyNmNlYzY5MWZhM2M0MmQyZjhkNWFlZmI3ODFlMDc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVu
dEhhbmRsZXIuY3BwCkBAIC0yNDAwLDYgKzI0MDAsMTIgQEAgYm9vbCBFdmVudEhhbmRsZXI6Omhh
bmRsZUdlc3R1cmVUYXBEb3duKCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKK3ZvaWQgRXZlbnRI
YW5kbGVyOjpyZWxlYXNlRm9jdXMoY29uc3QgSW50UG9pbnQmIHBvaW50KQoreworICAgIEludFBv
aW50IGhpdFRlc3RQb2ludCA9IG1fZnJhbWUtPnZpZXcoKS0+d2luZG93VG9Db250ZW50cyhwb2lu
dCk7CisgICAgaGl0VGVzdFJlc3VsdEF0UG9pbnQoaGl0VGVzdFBvaW50LCBIaXRUZXN0UmVxdWVz
dDo6UmVsZWFzZSB8IEhpdFRlc3RSZXF1ZXN0OjpBbGxvd0ZyYW1lU2Nyb2xsYmFycyk7Cit9CisK
IGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0
dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKIHsKICAgICAvLyBXZSBkb24ndCB1c2UgRG91YmxlVGFw
IGF0IHRoZSBtb21lbnQsIGl0J3MgbW9zdGx5IHJlZHVuZGFudCB3aXRoIHRhcCBzaW5jZSB0YXAg
bm93IGNvbnRhaW5zCkBAIC0yNDA5LDYgKzI0MTUsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFu
ZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQp
CiAKICAgICBOb2RlKiBldmVudFRhcmdldCA9IDA7CiAgICAgU2Nyb2xsYmFyKiBzY3JvbGxiYXIg
PSAwOworICAgIGJvb2wgZGVmZXJyZWRSZWxlYXNlID0gZmFsc2U7CiAgICAgaWYgKGdlc3R1cmVF
dmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVNjcm9sbEVuZAogICAgICAgICB8
fCBnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVTY3JvbGxVcGRh
dGUKICAgICAgICAgfHwgZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0
dXJlU2Nyb2xsVXBkYXRlV2l0aG91dFByb3BhZ2F0aW9uKSB7CkBAIC0yNDIzLDEzICsyNDMwLDE3
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1H
ZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKICAgICAgICAgYWRqdXN0R2VzdHVyZVBvc2l0aW9u
KGdlc3R1cmVFdmVudCwgYWRqdXN0ZWRQb2ludCk7CiAjZW5kaWYKICAgICAgICAgaGl0VHlwZSB8
PSBIaXRUZXN0UmVxdWVzdDo6QWN0aXZlOwotICAgIH0gZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5
cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwIHx8IGdlc3R1cmVFdmVudC50eXBlKCkg
PT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd25DYW5jZWwpCi0gICAgICAgIGhpdFR5cGUg
fD0gSGl0VGVzdFJlcXVlc3Q6OlJlbGVhc2U7CisgICAgfSBlbHNlIGlmIChnZXN0dXJlRXZlbnQu
dHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2VzdHVyZUV2ZW50LnR5cGUo
KSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkgeworICAgICAgICBoaXRU
eXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpSZWFkT25seTsKKyAgICAgICAgZGVmZXJyZWRSZWxlYXNl
ID0gdHJ1ZTsKKyAgICB9CiAgICAgZWxzZQogICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1
ZXN0OjpBY3RpdmUgfCBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7CiAKLSAgICBpZiAoIXNob3Vs
ZEdlc3R1cmVzVHJpZ2dlckFjdGl2ZSgpKQorICAgIGlmICghc2hvdWxkR2VzdHVyZXNUcmlnZ2Vy
QWN0aXZlKCkpIHsKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7
CisgICAgICAgIGRlZmVycmVkUmVsZWFzZSA9IGZhbHNlOworICAgIH0KIAogICAgIGlmICgoIXNj
cm9sbGJhciAmJiAhZXZlbnRUYXJnZXQpIHx8ICEoaGl0VHlwZSAmIEhpdFRlc3RSZXF1ZXN0OjpS
ZWFkT25seSkpIHsKICAgICAgICAgSW50UG9pbnQgaGl0VGVzdFBvaW50ID0gbV9mcmFtZS0+dmll
dygpLT53aW5kb3dUb0NvbnRlbnRzKGFkanVzdGVkUG9pbnQpOwpAQCAtMjQ3OSw3ICsyNDkwLDcg
QEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdl
c3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQogICAgICAgICBjbGVhckdlc3R1cmVTY3JvbGxOb2Rl
cygpOyAKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpHZXN0
dXJlVGFwOgotICAgICAgICByZXR1cm4gaGFuZGxlR2VzdHVyZVRhcChnZXN0dXJlRXZlbnQpOwor
ICAgICAgICByZXR1cm4gaGFuZGxlR2VzdHVyZVRhcChnZXN0dXJlRXZlbnQsIGRlZmVycmVkUmVs
ZWFzZSk7CiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bjoKICAgICAgICAg
cmV0dXJuIGhhbmRsZUdlc3R1cmVUYXBEb3duKCk7CiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpH
ZXN0dXJlTG9uZ1ByZXNzOgpAQCAtMjQ5Miw4ICsyNTAzLDEwIEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVF
dmVudCkKICAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVQaW5jaEJlZ2luOgogICAgIGNh
c2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVBpbmNoRW5kOgogICAgIGNhc2UgUGxhdGZvcm1FdmVu
dDo6R2VzdHVyZVBpbmNoVXBkYXRlOgotICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRh
cERvd25DYW5jZWw6CiAgICAgICAgIGJyZWFrOworICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2Vz
dHVyZVRhcERvd25DYW5jZWw6CisgICAgICAgIGlmIChkZWZlcnJlZFJlbGVhc2UpCisgICAgICAg
ICAgICByZWxlYXNlRm9jdXMoYWRqdXN0ZWRQb2ludCk7CiAgICAgZGVmYXVsdDoKICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQpAQCAtMjUwMSw3ICsyNTE0LDcgQEAgYm9vbCBF
dmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVu
dCYgZ2VzdHVyZUV2ZW50KQogICAgIHJldHVybiBmYWxzZTsKIH0KIAotYm9vbCBFdmVudEhhbmRs
ZXI6OmhhbmRsZUdlc3R1cmVUYXAoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVF
dmVudCkKK2Jvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRmb3Jt
R2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQsIGJvb2wgZGVmZXJyZWRSZWxlYXNlKQogewogICAg
IC8vIEZJWE1FOiBSZWZhY3RvciB0aGlzIGNvZGUgdG8gbm90IGhpdCB0ZXN0IG11bHRpcGxlIHRp
bWVzLiBXZSB1c2UgdGhlIGFkanVzdGVkIHBvc2l0aW9uIHRvIGVuc3VyZSB0aGF0IHRoZSBjb3Jy
ZWN0IG5vZGUgaXMgdGFyZ2V0ZWQgYnkgdGhlIGxhdGVyIHJlZHVuZGFudCBoaXQgdGVzdHMuCiAg
ICAgSW50UG9pbnQgYWRqdXN0ZWRQb2ludCA9IGdlc3R1cmVFdmVudC5wb3NpdGlvbigpOwpAQCAt
MjUzMSw2ICsyNTQ0LDkgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVUYXAoY29u
c3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKICAgICAgICAgZ2VzdHVyZUV2
ZW50LnNoaWZ0S2V5KCksIGdlc3R1cmVFdmVudC5jdHJsS2V5KCksIGdlc3R1cmVFdmVudC5hbHRL
ZXkoKSwgZ2VzdHVyZUV2ZW50Lm1ldGFLZXkoKSwgZ2VzdHVyZUV2ZW50LnRpbWVzdGFtcCgpKTsK
ICAgICBkZWZhdWx0UHJldmVudGVkIHw9IGhhbmRsZU1vdXNlUmVsZWFzZUV2ZW50KGZha2VNb3Vz
ZVVwKTsKIAorICAgIGlmIChkZWZlcnJlZFJlbGVhc2UpCisgICAgICAgIHJlbGVhc2VGb2N1cyhh
ZGp1c3RlZFBvaW50KTsKKwogICAgIHJldHVybiBkZWZhdWx0UHJldmVudGVkOwogfQogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oIGIvU291cmNlL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuaAppbmRleCAzODBhZjBjN2M4YzhlNmI4ZGU0Mjc4YmI3Yzc5
Mzk0MThkZWEwNDZhLi5lOGYzMWUxM2E0OGFlYjI2YWFiYWQyYWY1OTZlYTdhMDk2ZWI0N2Y1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKQEAgLTE3OSw3ICsxNzksNyBAQCBwdWJsaWM6
CiAKICNpZiBFTkFCTEUoR0VTVFVSRV9FVkVOVFMpCiAgICAgYm9vbCBoYW5kbGVHZXN0dXJlRXZl
bnQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmKTsKLSAgICBib29sIGhhbmRsZUdlc3R1cmVU
YXAoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmKTsKKyAgICBib29sIGhhbmRsZUdlc3R1cmVU
YXAoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmLCBib29sKTsKICAgICBib29sIGhhbmRsZUdl
c3R1cmVMb25nUHJlc3MoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmKTsKICAgICBib29sIGhh
bmRsZUdlc3R1cmVMb25nVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7CiAgICAgYm9v
bCBoYW5kbGVHZXN0dXJlVHdvRmluZ2VyVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7
CkBAIC0zODQsNiArMzg0LDcgQEAgcHJpdmF0ZToKICAgICBib29sIHBhc3NHZXN0dXJlRXZlbnRU
b1dpZGdldChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYsIFdpZGdldCopOwogICAgIGJvb2wg
cGFzc0dlc3R1cmVFdmVudFRvV2lkZ2V0SWZQb3NzaWJsZShjb25zdCBQbGF0Zm9ybUdlc3R1cmVF
dmVudCYsIFJlbmRlck9iamVjdCopOwogICAgIGJvb2wgc2VuZFNjcm9sbEV2ZW50VG9WaWV3KGNv
bnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiwgY29uc3QgRmxvYXRTaXplJik7CisgICAgdm9pZCBy
ZWxlYXNlRm9jdXMoY29uc3QgSW50UG9pbnQmKTsKICNlbmRpZgogCiAgICAgdm9pZCBzZXRMYXN0
S25vd25Nb3VzZVBvc2l0aW9uKGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191628</attachid>
            <date>2013-03-05 18:16:04 -0800</date>
            <delta_ts>2013-03-14 14:05:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103283-20130305211210.patch</filename>
            <type>text/plain</type>
            <size>11668</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0ODQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODlhN2MwODliYWNlZTRm
ZDFlZDg4NWFlNjdmZGQ3MTM3ZDI3OTkwNS4uZTc0ZDFlOWU0MDdhNzNmODg1MzY0OGU1ODg4MDdh
MmQ4OGZkMDFmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAzLTA1ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhvdmVyIGVm
ZmVjdHMgZnJvbSBhIEdlc3R1cmVUYXBEb3duIGFyZSBkaXNtaXNzZWQgcHJlbWF0dXJlbHkgb24g
YSBHZXN0dXJlVGFwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDMyODMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBPbiBhIEdlc3R1cmVUYXAgZXZlbnQsIGRlbGF5IHJlbGVhc2luZyB0aGUgaG92ZXIgZWZm
ZWN0IG9mIHRoZSBub2RlIGJlaW5nIHRhcHBlZCAKKyAgICAgICAgdW50aWwgYWZ0ZXIgdGhlIHN5
bnRoZXRpYyBjbGljayBoYXMgYmVlbiBkaXNwYXRjaGVkLgorCisgICAgICAgIFRlc3Q6IGZhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sCisK
KyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFdmVu
dEhhbmRsZXI6OnJlbGVhc2VGb2N1cyk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdl
YkNvcmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KToKKyAgICAgICAgKFdlYkNv
cmU6OkV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZVRhcCk6CisgICAgICAgICogcGFnZS9FdmVu
dEhhbmRsZXIuaDoKKyAgICAgICAgKEV2ZW50SGFuZGxlcik6CisKIDIwMTMtMDMtMDUgIFNoYXdu
IFNpbmdoICA8c2hhd25zaW5naEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRml4IGRlZmF1bHQg
YmFja2dyb3VuZCBvZiBhIGRyYWdnZWQgaW1hZ2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5jcHAKaW5kZXggNDM2YmIzNTIwNjE0ODE3Y2QxN2IyMmUyYWFmN2U2OTk3YmJmMzQ5Mi4uYmNm
MDczMDcyMjZjZWM2OTFmYTNjNDJkMmY4ZDVhZWZiNzgxZTA3NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
RXZlbnRIYW5kbGVyLmNwcApAQCAtMjQwMCw2ICsyNDAwLDEyIEBAIGJvb2wgRXZlbnRIYW5kbGVy
OjpoYW5kbGVHZXN0dXJlVGFwRG93bigpCiAgICAgcmV0dXJuIGZhbHNlOwogfQogCit2b2lkIEV2
ZW50SGFuZGxlcjo6cmVsZWFzZUZvY3VzKGNvbnN0IEludFBvaW50JiBwb2ludCkKK3sKKyAgICBJ
bnRQb2ludCBoaXRUZXN0UG9pbnQgPSBtX2ZyYW1lLT52aWV3KCktPndpbmRvd1RvQ29udGVudHMo
cG9pbnQpOworICAgIGhpdFRlc3RSZXN1bHRBdFBvaW50KGhpdFRlc3RQb2ludCwgSGl0VGVzdFJl
cXVlc3Q6OlJlbGVhc2UgfCBIaXRUZXN0UmVxdWVzdDo6QWxsb3dGcmFtZVNjcm9sbGJhcnMpOwor
fQorCiBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRmb3Jt
R2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiB7CiAgICAgLy8gV2UgZG9uJ3QgdXNlIERvdWJs
ZVRhcCBhdCB0aGUgbW9tZW50LCBpdCdzIG1vc3RseSByZWR1bmRhbnQgd2l0aCB0YXAgc2luY2Ug
dGFwIG5vdyBjb250YWlucwpAQCAtMjQwOSw2ICsyNDE1LDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6
OmhhbmRsZUdlc3R1cmVFdmVudChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2
ZW50KQogCiAgICAgTm9kZSogZXZlbnRUYXJnZXQgPSAwOwogICAgIFNjcm9sbGJhciogc2Nyb2xs
YmFyID0gMDsKKyAgICBib29sIGRlZmVycmVkUmVsZWFzZSA9IGZhbHNlOwogICAgIGlmIChnZXN0
dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVTY3JvbGxFbmQKICAgICAg
ICAgfHwgZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlU2Nyb2xs
VXBkYXRlCiAgICAgICAgIHx8IGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6
R2VzdHVyZVNjcm9sbFVwZGF0ZVdpdGhvdXRQcm9wYWdhdGlvbikgewpAQCAtMjQyMywxMyArMjQz
MCwxNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRm
b3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgICAgIGFkanVzdEdlc3R1cmVQb3Np
dGlvbihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOwogI2VuZGlmCiAgICAgICAgIGhpdFR5
cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKLSAgICB9IGVsc2UgaWYgKGdlc3R1cmVFdmVu
dC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcCB8fCBnZXN0dXJlRXZlbnQudHlw
ZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXBEb3duQ2FuY2VsKQotICAgICAgICBoaXRU
eXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpSZWxlYXNlOworICAgIH0gZWxzZSBpZiAoZ2VzdHVyZUV2
ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwIHx8IGdlc3R1cmVFdmVudC50
eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd25DYW5jZWwpIHsKKyAgICAgICAg
aGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7CisgICAgICAgIGRlZmVycmVkUmVs
ZWFzZSA9IHRydWU7CisgICAgfQogICAgIGVsc2UKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0
UmVxdWVzdDo6QWN0aXZlIHwgSGl0VGVzdFJlcXVlc3Q6OlJlYWRPbmx5OwogCi0gICAgaWYgKCFz
aG91bGRHZXN0dXJlc1RyaWdnZXJBY3RpdmUoKSkKKyAgICBpZiAoIXNob3VsZEdlc3R1cmVzVHJp
Z2dlckFjdGl2ZSgpKSB7CiAgICAgICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OlJlYWRP
bmx5OworICAgICAgICBkZWZlcnJlZFJlbGVhc2UgPSBmYWxzZTsKKyAgICB9CiAKICAgICBpZiAo
KCFzY3JvbGxiYXIgJiYgIWV2ZW50VGFyZ2V0KSB8fCAhKGhpdFR5cGUgJiBIaXRUZXN0UmVxdWVz
dDo6UmVhZE9ubHkpKSB7CiAgICAgICAgIEludFBvaW50IGhpdFRlc3RQb2ludCA9IG1fZnJhbWUt
PnZpZXcoKS0+d2luZG93VG9Db250ZW50cyhhZGp1c3RlZFBvaW50KTsKQEAgLTI0NzksNyArMjQ5
MCw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZv
cm1HZXN0dXJlRXZlbnQmIGdlc3R1cmVFdmVudCkKICAgICAgICAgY2xlYXJHZXN0dXJlU2Nyb2xs
Tm9kZXMoKTsgCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6
R2VzdHVyZVRhcDoKLSAgICAgICAgcmV0dXJuIGhhbmRsZUdlc3R1cmVUYXAoZ2VzdHVyZUV2ZW50
KTsKKyAgICAgICAgcmV0dXJuIGhhbmRsZUdlc3R1cmVUYXAoZ2VzdHVyZUV2ZW50LCBkZWZlcnJl
ZFJlbGVhc2UpOwogICAgIGNhc2UgUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcERvd246CiAgICAg
ICAgIHJldHVybiBoYW5kbGVHZXN0dXJlVGFwRG93bigpOwogICAgIGNhc2UgUGxhdGZvcm1FdmVu
dDo6R2VzdHVyZUxvbmdQcmVzczoKQEAgLTI0OTIsOCArMjUwMywxMCBAQCBib29sIEV2ZW50SGFu
ZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0
dXJlRXZlbnQpCiAgICAgY2FzZSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlUGluY2hCZWdpbjoKICAg
ICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVQaW5jaEVuZDoKICAgICBjYXNlIFBsYXRmb3Jt
RXZlbnQ6Okdlc3R1cmVQaW5jaFVwZGF0ZToKLSAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6Okdlc3R1
cmVUYXBEb3duQ2FuY2VsOgogICAgICAgICBicmVhazsKKyAgICBjYXNlIFBsYXRmb3JtRXZlbnQ6
Okdlc3R1cmVUYXBEb3duQ2FuY2VsOgorICAgICAgICBpZiAoZGVmZXJyZWRSZWxlYXNlKQorICAg
ICAgICAgICAgcmVsZWFzZUZvY3VzKGFkanVzdGVkUG9pbnQpOwogICAgIGRlZmF1bHQ6CiAgICAg
ICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH0KQEAgLTI1MDEsNyArMjUxNCw3IEBAIGJv
b2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlRXZlbnQoY29uc3QgUGxhdGZvcm1HZXN0dXJl
RXZlbnQmIGdlc3R1cmVFdmVudCkKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWJvb2wgRXZlbnRI
YW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0
dXJlRXZlbnQpCitib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZVRhcChjb25zdCBQbGF0
Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50LCBib29sIGRlZmVycmVkUmVsZWFzZSkKIHsK
ICAgICAvLyBGSVhNRTogUmVmYWN0b3IgdGhpcyBjb2RlIHRvIG5vdCBoaXQgdGVzdCBtdWx0aXBs
ZSB0aW1lcy4gV2UgdXNlIHRoZSBhZGp1c3RlZCBwb3NpdGlvbiB0byBlbnN1cmUgdGhhdCB0aGUg
Y29ycmVjdCBub2RlIGlzIHRhcmdldGVkIGJ5IHRoZSBsYXRlciByZWR1bmRhbnQgaGl0IHRlc3Rz
LgogICAgIEludFBvaW50IGFkanVzdGVkUG9pbnQgPSBnZXN0dXJlRXZlbnQucG9zaXRpb24oKTsK
QEAgLTI1MzEsNiArMjU0NCw5IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVHZXN0dXJlVGFw
KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgICAgIGdlc3R1
cmVFdmVudC5zaGlmdEtleSgpLCBnZXN0dXJlRXZlbnQuY3RybEtleSgpLCBnZXN0dXJlRXZlbnQu
YWx0S2V5KCksIGdlc3R1cmVFdmVudC5tZXRhS2V5KCksIGdlc3R1cmVFdmVudC50aW1lc3RhbXAo
KSk7CiAgICAgZGVmYXVsdFByZXZlbnRlZCB8PSBoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChmYWtl
TW91c2VVcCk7CiAKKyAgICBpZiAoZGVmZXJyZWRSZWxlYXNlKQorICAgICAgICByZWxlYXNlRm9j
dXMoYWRqdXN0ZWRQb2ludCk7CisKICAgICByZXR1cm4gZGVmYXVsdFByZXZlbnRlZDsKIH0KIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggMzgwYWYwYzdjOGM4ZTZiOGRlNDI3OGJi
N2M3OTM5NDE4ZGVhMDQ2YS4uZThmMzFlMTNhNDhhZWIyNmFhYmFkMmFmNTk2ZWE3YTA5NmViNDdm
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xNzksNyArMTc5LDcgQEAgcHVi
bGljOgogCiAjaWYgRU5BQkxFKEdFU1RVUkVfRVZFTlRTKQogICAgIGJvb2wgaGFuZGxlR2VzdHVy
ZUV2ZW50KGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7Ci0gICAgYm9vbCBoYW5kbGVHZXN0
dXJlVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7CisgICAgYm9vbCBoYW5kbGVHZXN0
dXJlVGFwKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiwgYm9vbCk7CiAgICAgYm9vbCBoYW5k
bGVHZXN0dXJlTG9uZ1ByZXNzKGNvbnN0IFBsYXRmb3JtR2VzdHVyZUV2ZW50Jik7CiAgICAgYm9v
bCBoYW5kbGVHZXN0dXJlTG9uZ1RhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYpOwogICAg
IGJvb2wgaGFuZGxlR2VzdHVyZVR3b0ZpbmdlclRhcChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVu
dCYpOwpAQCAtMzg0LDYgKzM4NCw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBwYXNzR2VzdHVyZUV2
ZW50VG9XaWRnZXQoY29uc3QgUGxhdGZvcm1HZXN0dXJlRXZlbnQmLCBXaWRnZXQqKTsKICAgICBi
b29sIHBhc3NHZXN0dXJlRXZlbnRUb1dpZGdldElmUG9zc2libGUoY29uc3QgUGxhdGZvcm1HZXN0
dXJlRXZlbnQmLCBSZW5kZXJPYmplY3QqKTsKICAgICBib29sIHNlbmRTY3JvbGxFdmVudFRvVmll
dyhjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYsIGNvbnN0IEZsb2F0U2l6ZSYpOworICAgIHZv
aWQgcmVsZWFzZUZvY3VzKGNvbnN0IEludFBvaW50Jik7CiAjZW5kaWYKIAogICAgIHZvaWQgc2V0
TGFzdEtub3duTW91c2VQb3NpdGlvbihjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKTsKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRl
eCBkMjVjZjEzNzcwMTNjYjM3Mjg0ODI0YzczZGNhZjBhNDMwZmEzZWQ3Li4yMjA0NjViYzVlMDYw
ZDNmMTU3OWUwNzNiN2RhNTQ0ODBkYzg0YjEwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTMt
MDMtMDUgIFRlcnJ5IEFuZGVyc29uICA8dGRhbmRlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgSG92ZXIgZWZmZWN0cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRpc21pc3NlZCBwcmVt
YXR1cmVseSBvbiBhIEdlc3R1cmVUYXAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwMzI4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIE5ldyBsYXlvdXQgdGVzdCBhZGRlZCBiYXNlZCBvbiByZXBybyBjYXNl
IGF0IGh0dHA6Ly9qc2ZpZGRsZS5uZXQvcmJ5ZXJzLzliSzJELy4KKworICAgICAgICAqIGZhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVy
ZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9j
aHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVs
ZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAxMy0wMy0wNSAgUmFmYWVsIFdlaW5zdGVp
biAgPHJhZmFlbHdAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgZ2FyZGVuaW5n
LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0
dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uYTMzM2FlZTM0MTc2NjVjZWQ2NjQyNjgyZDVhZjQwMGM2ZWNmODky
ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1
cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
NSBAQAorSG92ZXIgb3ZlciBtZQorQ2xpY2sgbWUKK0Rvbid0IGNsaWNrIG1lCitUZXN0cyB0aGF0
IGEgZ2VzdHVyZSB0YXAgaXMgZGlzcGF0Y2hlZCBiZWZvcmUgdGhlIGhvdmVyIHN0YXRlIG9uIHRo
ZSBhY3RpdmUgZWxlbWVudCBpcyBjbGVhcmVkLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUg
YSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIu
CisKKworU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMyODMg
Zm9yIGRldGFpbHMuCisKK0dlc3R1cmVUYXBEb3duIG9yIEdlc3R1cmVUYXAgaXMgbm90IHN1cHBv
cnRlZCBieSB0aGlzIHBsYXRmb3JtCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91
Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi4yZThiM2RiNTNhMWEyNTEzMGRlYTEzZmZjZDFjNDk3OGUzODk3NDFk
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVy
ZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50Lmh0bWwKQEAgLTAsMCArMSw4NiBAQAorPCFE
T0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorCis8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorOjot
d2Via2l0LXNjcm9sbGJhciB7CisgICAgd2lkdGg6IDBweDsKKyAgICBoZWlnaHQ6IDBweDsKK30K
KworZGl2IHsgCisgICAgbGluZS1oZWlnaHQ6IDEwMHB4OworfQorCisjaG92ZXJtZSB7IAorICAg
IGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTsKK30KKworI2NsaWNrbWUgeyAKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBsaWdodGdyZWVuOworICAgIGRpc3BsYXk6IG5vbmU7IAorfQorCisjZG9u
dGNsaWNrbWUgeworICAgIGJhY2tncm91bmQtY29sb3I6IHllbGxvdzsKK30KKworI2hvdmVybWU6
aG92ZXIgI2NsaWNrbWUgeyAKKyAgICBkaXNwbGF5OiBibG9jazsKK30KKzwvc3R5bGU+CisKKzxi
b2R5IHN0eWxlPSJtYXJnaW46MCI+CisKKzxkaXYgaWQ9J2hvdmVybWUnPkhvdmVyIG92ZXIgbWUK
KyAgPGRpdiBpZD0nY2xpY2ttZSc+Q2xpY2sgbWU8L2Rpdj4KKzwvZGl2PgorPGRpdiBpZD0nZG9u
dGNsaWNrbWUnPkRvbid0IGNsaWNrIG1lPC9kaXY+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9w
PgorPHA+U2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMyODMg
Zm9yIGRldGFpbHMuPC9wPgorCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4K
Ky8vIFRlcnJ5OiBjaGFuZ2UgdGhpcyAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGEgZ2VzdHVy
ZSB0YXAgaXMgZGlzcGF0Y2hlZCBiZWZvcmUgdGhlIGhvdmVyIHN0YXRlIG9uIHRoZSBhY3RpdmUg
ZWxlbWVudCBpcyBjbGVhcmVkLiIpOworCit2YXIgY2xpY2tNZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdjbGlja21lJyk7Cit2YXIgZG9udENsaWNrTWUgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgnZG9udGNsaWNrbWUnKTsKK3ZhciBjbGlja01lQ291bnQgPSAwOwordmFyIGRvbnRDbGlj
a01lQ291bnQgPSAwOworCitmdW5jdGlvbiBydW5UZXN0cygpCit7CisgICAgaWYgKCF3aW5kb3cu
ZXZlbnRTZW5kZXIpIHsKKyAgICAgICAgZGVidWcoJ1RoaXMgdGVzdCByZXF1aXJlcyBEUlQuJyk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWV2ZW50U2VuZGVyLmdlc3R1cmVU
YXBEb3duIHx8ICFldmVudFNlbmRlci5nZXN0dXJlVGFwKSB7CisgICAgICAgIGRlYnVnKCdHZXN0
dXJlVGFwRG93biBvciBHZXN0dXJlVGFwIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBwbGF0Zm9y
bScpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgY2xpY2tNZS5hZGRFdmVudExpc3Rl
bmVyKCJjbGljayIsIGZ1bmN0aW9uKCkgeyBjbGlja01lQ291bnQrKzsgfSwgZmFsc2UpOworICAg
IGRvbnRDbGlja01lLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oKSB7IGRvbnRD
bGlja01lQ291bnQrKzsgfSwgZmFsc2UpOworCisgICAgZGVidWcoIlRoZSBDbGljayBNZSBkaXYg
c2hvdWxkIG5vdCBiZSB2aXNpYmxlLiIpOworICAgIHNob3VsZEJlKCJjbGlja01lLm9mZnNldFRv
cCIsICIwIik7CisKKyAgICBkZWJ1ZygiVGhlIENsaWNrIE1lIGRpdiBzaG91bGQgYmUgdmlzaWJs
ZSBhZnRlciBhIEdlc3R1cmVUYXBEb3duIG9uIHRoZSBIb3ZlciBPdmVyIE1lIGRpdi4iKTsKKyAg
ICBldmVudFNlbmRlci5nZXN0dXJlVGFwRG93big1MCwgNTApOworICAgIHNob3VsZEJlKCJjbGlj
a01lLm9mZnNldFRvcCIsICIxMDAiKTsKKworICAgIGRlYnVnKCJUYXBwaW5nIG9uIHRoZSBDbGlj
ayBNZSBkaXYgc2hvdWxkIGRpc3BhdGNoIGEgY2xpY2sgdG8gdGhlIENsaWNrIE1lIGRpdiBhbmQg
bm90IHRvIHRoZSBEb24ndCBDbGljayBNZSBkaXYuIik7CisgICAgZXZlbnRTZW5kZXIuZ2VzdHVy
ZVRhcCgxNTAsIDE1MCk7CisgICAgc2hvdWxkQmUoImNsaWNrTWVDb3VudCIsICIxIik7CisgICAg
c2hvdWxkQmUoImRvbnRDbGlja01lQ291bnQiLCAiMCIpOworfQorCitydW5UZXN0cygpOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9u
LWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kNTBhYzY0Y2QxZGIzZTRlMWNjOTNmOTVlYmIwNWIw
NmRjNmNiN2IxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21p
dW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDIxIEBACitIb3ZlciBvdmVyIG1lCitDbGljayBtZQor
RG9uJ3QgY2xpY2sgbWUKK1Rlc3RzIHRoYXQgYSBnZXN0dXJlIHRhcCBpcyBkaXNwYXRjaGVkIGJl
Zm9yZSB0aGUgaG92ZXIgc3RhdGUgb24gdGhlIGFjdGl2ZSBlbGVtZW50IGlzIGNsZWFyZWQuCisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0YWlscy4KKworVGhlIENsaWNrIE1lIGRp
diBzaG91bGQgbm90IGJlIHZpc2libGUuCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDAKK1Ro
ZSBDbGljayBNZSBkaXYgc2hvdWxkIGJlIHZpc2libGUgYWZ0ZXIgYSBHZXN0dXJlVGFwRG93biBv
biB0aGUgSG92ZXIgT3ZlciBNZSBkaXYuCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAor
VGFwcGluZyBvbiB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBkaXNwYXRjaCBhIGNsaWNrIHRvIHRo
ZSBDbGljayBNZSBkaXYgYW5kIG5vdCB0byB0aGUgRG9uJ3QgQ2xpY2sgTWUgZGl2LgorUEFTUyBj
bGlja01lQ291bnQgaXMgMQorUEFTUyBkb250Q2xpY2tNZUNvdW50IGlzIDAKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193181</attachid>
            <date>2013-03-14 14:05:42 -0700</date>
            <delta_ts>2013-03-15 15:47:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103283-20130314170138.patch</filename>
            <type>text/plain</type>
            <size>13319</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1ODExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDkyMzQ1ZTQ5ZWRlODA2
ODI3OTIwNTNiMzY5NzczNWNhNjQ4M2VjNy4uYmI5ZDA2N2Y1ZmJiYmZmNWEzNzdjNmRmMTI5ZTA2
OTAzYzdmNzk1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAzLTE0ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhvdmVyIGVm
ZmVjdHMgZnJvbSBhIEdlc3R1cmVUYXBEb3duIGFyZSBkaXNtaXNzZWQgYnkgYSBHZXN0dXJlVGFw
IG9uIHRoZSBob3ZlciBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDMyODMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBPbiBhIEdlc3R1cmVUYXAgZXZlbnQgb3ZlciBhbiBlbGVtZW50IHRoYXQg
d2FzIG1hZGUgdmlzaWJsZSBhcyBhIGhvdmVyIGVmZmVjdCwgdGhlCisgICAgICAgIEdlc3R1cmVU
YXAgc2hvdWxkIGJlIGFwcGxpZWQgdG8gdGhhdCBlbGVtZW50IGFuZCB0aGUgaG92ZXIgZWZmZWN0
cyBzaG91bGQgbm90IGJlIGRpc21pc3NlZC4gCisgICAgICAgIEEgR2VzdHVyZVRhcCBvciBhIG1v
dXNlIG1vdmUgdG8gYSBsb2NhdGlvbiBvdXRzaWRlIG9mIHRoZSBlbGVtZW50IHNob3VsZCBzdGls
bCBkaXNtaXNzIHRoZQorICAgICAgICBob3ZlciBlZmZlY3RzLgorCisgICAgICAgIFRlc3RzOiBm
YXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92
ZXItZWxlbWVudC5odG1sCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudCk6CisKIDIwMTMt
MDMtMTQgIFhhYmllciBSb2RyaWd1ZXogQ2FsdmFyICA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4KIAog
ICAgICAgICBbR1N0cmVhbWVyXSBTdG9wcGluZyBwbGF5YmFjayBvZiBodG1sNSBtZWRpYSB3aGVu
IHJlY2VpdmluZyBhIGhpZ2hlciBwcmlvcml0eSBhdWRpbyBldmVudCBuZWVkcyBpbXBsZW1lbnRh
dGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGZmMTQ0OTc0YmNiMjU2
YmEwNTk4ZTA5YmY2MmJmNTBhZThkMzNhZjEuLmFlYjQ1ZGMzMzc1YTM1YTYzZWYwNThhN2E5ZGJh
ZjIwODQ3M2U3MGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTI0NzUs
OCArMjQ3NSwxMCBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlR2VzdHVyZUV2ZW50KGNvbnN0
IFBsYXRmb3JtR2VzdHVyZUV2ZW50JiBnZXN0dXJlRXZlbnQpCiAgICAgICAgIGFkanVzdEdlc3R1
cmVQb3NpdGlvbihnZXN0dXJlRXZlbnQsIGFkanVzdGVkUG9pbnQpOwogI2VuZGlmCiAgICAgICAg
IGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OkFjdGl2ZTsKLSAgICB9IGVsc2UgaWYgKGdlc3R1
cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2VzdHVyZVRhcCB8fCBnZXN0dXJlRXZl
bnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXBEb3duQ2FuY2VsKQorICAgIH0g
ZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFw
RG93bkNhbmNlbCkKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6UmVsZWFzZTsK
KyAgICBlbHNlIGlmIChnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1
cmVUYXApCisgICAgICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OlJlYWRPbmx5OwogICAg
IGVsc2UKICAgICAgICAgaGl0VHlwZSB8PSBIaXRUZXN0UmVxdWVzdDo6QWN0aXZlIHwgSGl0VGVz
dFJlcXVlc3Q6OlJlYWRPbmx5OwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggM2U4MDQ1ODNhYjM4ZTFmZTE5MDI1ZTU4ZGE4
MDE2Y2NjZGM2ZDk4NS4uMGRiZjc2ZDQ3NzZmZWJhMGNiZjRiNDQ3YTM4ODMyNmIwMGQyYzUyMCAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEzLTAzLTE0ICBUZXJyeSBBbmRlcnNvbiAgPHRkYW5k
ZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhvdmVyIGVmZmVjdHMgZnJvbSBhIEdlc3R1
cmVUYXBEb3duIGFyZSBkaXNtaXNzZWQgYnkgYSBHZXN0dXJlVGFwIG9uIHRoZSBob3ZlciBlbGVt
ZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMy
ODMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUd28g
bGF5b3V0IHRlc3RzIGFkZGVkLiBTZWUgZGVzY3JpcHRpb25zIGlubGluZS4KKworICAgICAgICAq
IGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0
ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWw6IEFkZGVkLgorICAgICAgICAgICAgICBUZXN0cyB0aGF0
IGEgR2VzdHVyZVRhcCBvciBhIG1vdXNlIG1vdmUgb3V0c2lkZSBvZiB0aGUgaG92ZXJlZCBlbGVt
ZW50CisgICAgICAgICAgICAgIGNsZWFycyBpdHMgaG92ZXIgZWZmZWN0cy4KKyAgICAgICAgKiBm
YXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dl
c3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQuaHRtbDogQWRkZWQuCisgICAgICAgICAgICAgIFRl
c3RzIHRoYXQgYSBHZXN0dXJlVGFwIG9uIGFuIGVsZW1lbnQgd2hpY2ggaGFzIGJlZW4gbWFkZSB2
aXNpYmxlIGFzCisgICAgICAgICAgICAgIGEgaG92ZXIgZWZmZWN0IGlzIGRpc3BhdGNoZWQgdG8g
dGhlIGVsZW1lbnQgYW5kIGRvZXMgbm90IGRpc21pc3MgdGhlCisgICAgICAgICAgICAgIGhvdmVy
IGVmZmVjdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9n
ZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMTMtMDMtMTQg
IFhhYmllciBSb2RyaWd1ZXogQ2FsdmFyICA8Y2FsdmFyaXNAaWdhbGlhLmNvbT4KIAogICAgICAg
ICBbR1N0cmVhbWVyXSBTdG9wcGluZyBwbGF5YmFjayBvZiBodG1sNSBtZWRpYSB3aGVuIHJlY2Vp
dmluZyBhIGhpZ2hlciBwcmlvcml0eSBhdWRpbyBldmVudCBuZWVkcyBpbXBsZW1lbnRhdGlvbgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LXRhcC1ob3Zlci1jbGVhci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90
b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi5iZDdkZDI3NzZjNTAxNzMwNTM5NDc1ZjQwOTRiMGQ5NGM3ZjA1NGZmCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRh
cC1ob3Zlci1jbGVhci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNCBAQAorSG92ZXIgb3ZlciBt
ZQorQ2xpY2sgbWUKK1Rlc3RzIHRoYXQgaG92ZXIgZWZmZWN0cyBmcm9tIGEgZ2VzdHVyZSB0YXAg
ZG93biBjYW4gYmUgY2xlYXJlZCBieSBhIGdlc3R1cmUgdGFwIG9yIG1vdXNlbW92ZSBvdXRzaWRl
IG9mIHRoZSBob3ZlcmVkIGVsZW1lbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNl
cmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKwor
CitTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3Ig
ZGV0YWlscy4KKworR2VzdHVyZVRhcERvd24gb3IgR2VzdHVyZVRhcCBpcyBub3Qgc3VwcG9ydGVk
IGJ5IHRoaXMgcGxhdGZvcm0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVT
VCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9n
ZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2V2
ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMTRhZjJjOThiYjE1OGRjZDhhZDhlNGVmMmU0NzBmZTkxZmQ2NzAzNAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAt
aG92ZXItY2xlYXIuaHRtbApAQCAtMCwwICsxLDg4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+CisKKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cis6Oi13ZWJraXQtc2Nyb2xsYmFyIHsK
KyAgICB3aWR0aDogMHB4OworICAgIGhlaWdodDogMHB4OworfQorCitkaXYgeyAKKyAgICBsaW5l
LWhlaWdodDogMTAwcHg7Cit9CisKKyNob3Zlcm1lIHsgCisgICAgYmFja2dyb3VuZC1jb2xvcjog
bGlnaHRibHVlOworfQorCisjY2xpY2ttZSB7IAorICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0
Z3JlZW47Cit9CisKKyNkb250Y2xpY2ttZSB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93
OworICAgIGRpc3BsYXk6IG5vbmU7IAorfQorCisjaG92ZXJtZTpob3ZlciAjZG9udGNsaWNrbWUg
eyAKKyAgICBkaXNwbGF5OiBibG9jazsKK30KKzwvc3R5bGU+CisKKzxib2R5IHN0eWxlPSJtYXJn
aW46MCI+CisKKzxkaXYgaWQ9J2hvdmVybWUnPkhvdmVyIG92ZXIgbWUKKyAgPGRpdiBpZD0nZG9u
dGNsaWNrbWUnPkRvbid0IGNsaWNrIG1lPC9kaXY+Cis8L2Rpdj4KKzxkaXYgaWQ9J2NsaWNrbWUn
PkNsaWNrIG1lPC9kaXY+CisKKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPHA+U2VlIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMyODMgZm9yIGRldGFpbHMuPC9w
PgorCis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKworPHNjcmlwdD4KKy8vIFRlcnJ5OiBjaGFu
Z2UgdGhpcyAKK2Rlc2NyaXB0aW9uKCJUZXN0cyB0aGF0IGhvdmVyIGVmZmVjdHMgZnJvbSBhIGdl
c3R1cmUgdGFwIGRvd24gY2FuIGJlIGNsZWFyZWQgYnkgYSBnZXN0dXJlIHRhcCBvciBtb3VzZW1v
dmUgb3V0c2lkZSBvZiB0aGUgaG92ZXJlZCBlbGVtZW50LiIpOworCit2YXIgY2xpY2tNZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCdjbGlja21lJyk7Cit2YXIgZG9udENsaWNrTWUgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgnZG9udGNsaWNrbWUnKTsKKworZnVuY3Rpb24gcnVuVGVzdHMo
KQoreworICAgIGlmICghd2luZG93LmV2ZW50U2VuZGVyKSB7CisgICAgICAgIGRlYnVnKCdUaGlz
IHRlc3QgcmVxdWlyZXMgRFJULicpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYg
KCFldmVudFNlbmRlci5nZXN0dXJlVGFwRG93biB8fCAhZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcCB8
fCAhZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8pIHsKKyAgICAgICAgZGVidWcoJ0dlc3R1cmVUYXBE
b3duLCBHZXN0dXJlVGFwLCBvciBNb3VzZU1vdmVUbyBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMg
cGxhdGZvcm0nKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGRlYnVnKCJUaGUgRG9u
J3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZS4iKTsKKyAgICBzaG91bGRCZSgi
ZG9udENsaWNrTWUub2Zmc2V0VG9wIiwgIjAiKTsKKworICAgIGRlYnVnKCJUaGUgRG9uJ3QgQ2xp
Y2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhl
IEhvdmVyIE92ZXIgTWUgZGl2LiIpOworICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXBEb3duKDUw
LCA1MCk7CisgICAgc2hvdWxkQmUoImRvbnRDbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsKKwor
ICAgIGRlYnVnKCJUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZSBh
ZnRlciBhIEdlc3R1cmVUYXAgb24gdGhlIENsaWNrIE1lIGRpdi4iKTsKKyAgICBldmVudFNlbmRl
ci5nZXN0dXJlVGFwKDI1MCwgMjUwKTsKKyAgICBzaG91bGRCZSgiZG9udENsaWNrTWUub2Zmc2V0
VG9wIiwgIjAiKTsKKworICAgIGRlYnVnKCJUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBi
ZSB2aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2
LiIpOworICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXBEb3duKDUwLCA1MCk7CisgICAgc2hvdWxk
QmUoImRvbnRDbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsKKworICAgIGRlYnVnKCJUaGUgRG9u
J3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZSBhZnRlciBhIG1vdXNlIG1vdmUg
dG8gYmVsb3cgdGhlIENsaWNrIE1lIGRpdi4iKTsKKyAgICBldmVudFNlbmRlci5tb3VzZU1vdmVU
bygzNTAsIDM1MCk7CisgICAgc2hvdWxkQmUoImRvbnRDbGlja01lLm9mZnNldFRvcCIsICIwIik7
Cit9CisKK3J1blRlc3RzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9qcy9y
ZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10
YXAtb24taG92ZXItZWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmEzMzNhZWUzNDE3NjY1Y2VkNjY0MjY4MmQ1YWY0MDBjNmVjZjg5MmUKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dl
c3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMTUgQEAK
K0hvdmVyIG92ZXIgbWUKK0NsaWNrIG1lCitEb24ndCBjbGljayBtZQorVGVzdHMgdGhhdCBhIGdl
c3R1cmUgdGFwIGlzIGRpc3BhdGNoZWQgYmVmb3JlIHRoZSBob3ZlciBzdGF0ZSBvbiB0aGUgYWN0
aXZlIGVsZW1lbnQgaXMgY2xlYXJlZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1NlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMjgzIGZvciBk
ZXRhaWxzLgorCitHZXN0dXJlVGFwRG93biBvciBHZXN0dXJlVGFwIGlzIG5vdCBzdXBwb3J0ZWQg
YnkgdGhpcyBwbGF0Zm9ybQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dl
c3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50Lmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uNmI3YjI2ZWUzNzMzZTAwZGFmYjdkMDVlNDE5N2Y4NjZiMDVhNzE4NAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2Vz
dHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sCkBAIC0wLDAgKzEsODcgQEAKKzwhRE9DVFlQ
RSBodG1sPgorPGh0bWw+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KKworPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKzo6LXdlYmtp
dC1zY3JvbGxiYXIgeworICAgIHdpZHRoOiAwcHg7CisgICAgaGVpZ2h0OiAwcHg7Cit9CisKK2Rp
diB7IAorICAgIGxpbmUtaGVpZ2h0OiAxMDBweDsKK30KKworI2hvdmVybWUgeyAKKyAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBsaWdodGJsdWU7Cit9CisKKyNjbGlja21lIHsgCisgICAgYmFja2dyb3Vu
ZC1jb2xvcjogbGlnaHRncmVlbjsKKyAgICBkaXNwbGF5OiBub25lOyAKK30KKworI2RvbnRjbGlj
a21lIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7Cit9CisKKyNob3Zlcm1lOmhvdmVy
ICNjbGlja21lIHsgCisgICAgZGlzcGxheTogYmxvY2s7Cit9Cis8L3N0eWxlPgorCis8Ym9keSBz
dHlsZT0ibWFyZ2luOjAiPgorCis8ZGl2IGlkPSdob3Zlcm1lJz5Ib3ZlciBvdmVyIG1lCisgIDxk
aXYgaWQ9J2NsaWNrbWUnPkNsaWNrIG1lPC9kaXY+Cis8L2Rpdj4KKzxkaXYgaWQ9J2RvbnRjbGlj
a21lJz5Eb24ndCBjbGljayBtZTwvZGl2PgorCis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxw
PlNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMjgzIGZvciBk
ZXRhaWxzLjwvcD4KKworPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+CisKKzxzY3JpcHQ+CisvLyBU
ZXJyeTogY2hhbmdlIHRoaXMgCitkZXNjcmlwdGlvbigiVGVzdHMgdGhhdCBhIGdlc3R1cmUgdGFw
IGlzIGRpc3BhdGNoZWQgYmVmb3JlIHRoZSBob3ZlciBzdGF0ZSBvbiB0aGUgYWN0aXZlIGVsZW1l
bnQgaXMgY2xlYXJlZC4iKTsKKwordmFyIGNsaWNrTWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgnY2xpY2ttZScpOwordmFyIGRvbnRDbGlja01lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2RvbnRjbGlja21lJyk7Cit2YXIgY2xpY2tNZUNvdW50ID0gMDsKK3ZhciBkb250Q2xpY2tNZUNv
dW50ID0gMDsKKworZnVuY3Rpb24gcnVuVGVzdHMoKQoreworICAgIGlmICghd2luZG93LmV2ZW50
U2VuZGVyKSB7CisgICAgICAgIGRlYnVnKCdUaGlzIHRlc3QgcmVxdWlyZXMgRFJULicpOworICAg
ICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKCFldmVudFNlbmRlci5nZXN0dXJlVGFwRG93
biB8fCAhZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcCkgeworICAgICAgICBkZWJ1ZygnR2VzdHVyZVRh
cERvd24gb3IgR2VzdHVyZVRhcCBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgcGxhdGZvcm0nKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGNsaWNrTWUuYWRkRXZlbnRMaXN0ZW5lcigi
Y2xpY2siLCBmdW5jdGlvbigpIHsgY2xpY2tNZUNvdW50Kys7IH0sIGZhbHNlKTsKKyAgICBkb250
Q2xpY2tNZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uKCkgeyBkb250Q2xpY2tN
ZUNvdW50Kys7IH0sIGZhbHNlKTsKKworICAgIGRlYnVnKCJUaGUgQ2xpY2sgTWUgZGl2IHNob3Vs
ZCBub3QgYmUgdmlzaWJsZS4iKTsKKyAgICBzaG91bGRCZSgiY2xpY2tNZS5vZmZzZXRUb3AiLCAi
MCIpOworCisgICAgZGVidWcoIlRoZSBDbGljayBNZSBkaXYgc2hvdWxkIGJlIHZpc2libGUgYWZ0
ZXIgYSBHZXN0dXJlVGFwRG93biBvbiB0aGUgSG92ZXIgT3ZlciBNZSBkaXYuIik7CisgICAgZXZl
bnRTZW5kZXIuZ2VzdHVyZVRhcERvd24oNTAsIDUwKTsKKyAgICBzaG91bGRCZSgiY2xpY2tNZS5v
ZmZzZXRUb3AiLCAiMTAwIik7CisKKyAgICBkZWJ1ZygiVGFwcGluZyBvbiB0aGUgQ2xpY2sgTWUg
ZGl2IHNob3VsZCBkaXNwYXRjaCBhIGNsaWNrIHRvIHRoZSBDbGljayBNZSBkaXYgYW5kIG5vdCB0
byB0aGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IGFuZCB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBzdGls
bCBiZSB2aXNpYmxlLiIpOworICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXAoMTUwLCAxNTApOwor
ICAgIHNob3VsZEJlKCJjbGlja01lQ291bnQiLCAiMSIpOworICAgIHNob3VsZEJlKCJkb250Q2xp
Y2tNZUNvdW50IiwgIjAiKTsKKyAgICBzaG91bGRCZSgiY2xpY2tNZS5vZmZzZXRUb3AiLCAiMTAw
Iik7Cit9CisKK3J1blRlc3RzKCk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZXZlbnRzL3Rv
dWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJl
LXRhcC1ob3Zlci1jbGVhci1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTI0MWFmNGIyZDA3OThm
NzgyOTQwMmMwZjBjYmRiYWQ1OGFkZmNmYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAt
aG92ZXItY2xlYXItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjMgQEAKK0hvdmVyIG92ZXIgbWUK
K0NsaWNrIG1lCitUZXN0cyB0aGF0IGhvdmVyIGVmZmVjdHMgZnJvbSBhIGdlc3R1cmUgdGFwIGRv
d24gY2FuIGJlIGNsZWFyZWQgYnkgYSBnZXN0dXJlIHRhcCBvciBtb3VzZW1vdmUgb3V0c2lkZSBv
ZiB0aGUgaG92ZXJlZCBlbGVtZW50LgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJp
ZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKwor
U2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMyODMgZm9yIGRl
dGFpbHMuCisKK1RoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIG5vdCBiZSB2aXNpYmxlLgor
UEFTUyBkb250Q2xpY2tNZS5vZmZzZXRUb3AgaXMgMAorVGhlIERvbid0IENsaWNrIE1lIGRpdiBz
aG91bGQgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVUYXBEb3duIG9uIHRoZSBIb3ZlciBPdmVy
IE1lIGRpdi4KK1BBU1MgZG9udENsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAorVGhlIERvbid0IENs
aWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUgYWZ0ZXIgYSBHZXN0dXJlVGFwIG9uIHRo
ZSBDbGljayBNZSBkaXYuCitQQVNTIGRvbnRDbGlja01lLm9mZnNldFRvcCBpcyAwCitUaGUgRG9u
J3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24g
b24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2LgorUEFTUyBkb250Q2xpY2tNZS5vZmZzZXRUb3AgaXMg
MTAwCitUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZSBhZnRlciBh
IG1vdXNlIG1vdmUgdG8gYmVsb3cgdGhlIENsaWNrIE1lIGRpdi4KK1BBU1MgZG9udENsaWNrTWUu
b2Zmc2V0VG9wIGlzIDAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0
L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gv
Z2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4zOTk5NmE1MzA5ZmMyM2ZiMTE1MWFiZjYzZTNkNTAwODI1YjA4ZTY4Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gv
Z2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDIyIEBACitIb3ZlciBvdmVyIG1lCitDbGljayBtZQorRG9uJ3QgY2xpY2sgbWUKK1Rlc3Rz
IHRoYXQgYSBnZXN0dXJlIHRhcCBpcyBkaXNwYXRjaGVkIGJlZm9yZSB0aGUgaG92ZXIgc3RhdGUg
b24gdGhlIGFjdGl2ZSBlbGVtZW50IGlzIGNsZWFyZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEw
MzI4MyBmb3IgZGV0YWlscy4KKworVGhlIENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2li
bGUuCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDAKK1RoZSBDbGljayBNZSBkaXYgc2hvdWxk
IGJlIHZpc2libGUgYWZ0ZXIgYSBHZXN0dXJlVGFwRG93biBvbiB0aGUgSG92ZXIgT3ZlciBNZSBk
aXYuCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAorVGFwcGluZyBvbiB0aGUgQ2xpY2sg
TWUgZGl2IHNob3VsZCBkaXNwYXRjaCBhIGNsaWNrIHRvIHRoZSBDbGljayBNZSBkaXYgYW5kIG5v
dCB0byB0aGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IGFuZCB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBz
dGlsbCBiZSB2aXNpYmxlLgorUEFTUyBjbGlja01lQ291bnQgaXMgMQorUEFTUyBkb250Q2xpY2tN
ZUNvdW50IGlzIDAKK1BBU1MgY2xpY2tNZS5vZmZzZXRUb3AgaXMgMTAwCitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193386</attachid>
            <date>2013-03-15 15:47:46 -0700</date>
            <delta_ts>2013-03-15 15:53:31 -0700</delta_ts>
            <desc>comments from rbyers addressed</desc>
            <filename>bug-103283-20130315184341.patch</filename>
            <type>text/plain</type>
            <size>13800</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1OTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTk1MzJmMDA3ZDE4MmQy
MzM0MjUwNGNjMTk0MTZkMDQ2ODM1Njk0NS4uZmNhZGZhM2RmZjYwZmI2ZjFkZDJkMjk3YTJiY2E0
ZjQ2MDgzYjFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAzLTE1ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhvdmVyIGVm
ZmVjdHMgZnJvbSBhIEdlc3R1cmVUYXBEb3duIGFyZSBkaXNtaXNzZWQgYnkgYSBHZXN0dXJlVGFw
IG9uIHRoZSBob3ZlciBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDMyODMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBPbiBhIEdlc3R1cmVUYXAgZXZlbnQgb3ZlciBhbiBlbGVtZW50IHRoYXQg
d2FzIG1hZGUgdmlzaWJsZSBhcyBhIGhvdmVyIGVmZmVjdCwgdGhlCisgICAgICAgIEdlc3R1cmVU
YXAgc2hvdWxkIGJlIGFwcGxpZWQgdG8gdGhhdCBlbGVtZW50IGFuZCB0aGUgaG92ZXIgZWZmZWN0
cyBzaG91bGQgbm90IGJlIGRpc21pc3NlZC4gCisgICAgICAgIEEgR2VzdHVyZVRhcCBvciBhIG1v
dXNlIG1vdmUgdG8gYSBsb2NhdGlvbiBvdXRzaWRlIG9mIHRoZSBlbGVtZW50IHNob3VsZCBzdGls
bCBkaXNtaXNzIHRoZQorICAgICAgICBob3ZlciBlZmZlY3RzLgorCisgICAgICAgIFRlc3RzOiBm
YXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92
ZXItZWxlbWVudC5odG1sCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudCk6CisKIDIwMTMt
MDMtMTUgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0Nd
IFJlbW92ZSBjdXN0b20gV2ViQXVkaW8gbWFyayBmdW5jdGlvbnMgdGhhdCB3ZSBjYW4gZ2VuZXJh
dGUgaW5zdGVhZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBkNDY5MDEx
NDg4ZjBjNGYzMDJiODU4NTQ3MTlhZDI0ZTIyODY3YzU0Li40NGU5NTI5Y2Q3NGNjZGJhYmU5MGJh
MjQ4M2Q1N2IzNWQ2NmJmNjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBA
IC0yNDc1LDggKzI0NzUsMTMgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVu
dChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQogICAgICAgICBhZGp1
c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgog
ICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpBY3RpdmU7Ci0gICAgfSBlbHNlIGlm
IChnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2Vz
dHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkK
KyAgICB9IGVsc2UgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2Vz
dHVyZVRhcERvd25DYW5jZWwpCiAgICAgICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OlJl
bGVhc2U7CisgICAgZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50
OjpHZXN0dXJlVGFwKSB7CisgICAgICAgIC8vIFRoZSBtb3VzZXVwIGV2ZW50IHN5bnRoZXNpemVk
IGZvciB0aGlzIGdlc3R1cmUgd2lsbCBjbGVhciB0aGUgYWN0aXZlIHN0YXRlIG9mIHRoZQorICAg
ICAgICAvLyB0YXJnZXRlZCBub2RlLCBzbyBwZXJmb3JtaW5nIGEgUmVhZE9ubHkgaGl0IHRlc3Qg
aGVyZSBpcyBmaW5lLgorICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpSZWFkT25s
eTsKKyAgICB9CiAgICAgZWxzZQogICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpB
Y3RpdmUgfCBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1YmEyOGUwYmJkNjRi
MzIzZGIyNDQ4YmE4NjU2NTM2ODkzNzQ3ZTkzLi5lMDkyNzNlM2U4MGNlZWEwZWJmZmExMjRmZTY3
N2E4YjUwMWUyNGQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTMtMDMtMTUgIFRlcnJ5IEFu
ZGVyc29uICA8dGRhbmRlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSG92ZXIgZWZmZWN0
cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRpc21pc3NlZCBieSBhIEdlc3R1cmVUYXAgb24g
dGhlIGhvdmVyIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMzI4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFR3byBsYXlvdXQgdGVzdHMgYWRkZWQuIFNlZSBkZXNjcmlwdGlvbnMgaW5saW5l
LgorCisgICAgICAgICogZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1ob3Zl
ci1jbGVhci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNo
L2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbDogQWRkZWQuCisgICAgICAgICAg
ICAgIFRlc3RzIHRoYXQgYSBHZXN0dXJlVGFwIG9yIGEgbW91c2UgbW92ZSBvdXRzaWRlIG9mIHRo
ZSBob3ZlcmVkIGVsZW1lbnQKKyAgICAgICAgICAgICAgY2xlYXJzIGl0cyBob3ZlciBlZmZlY3Rz
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92
ZXItZWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3Rv
dWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sOiBBZGRlZC4KKyAg
ICAgICAgICAgICAgVGVzdHMgdGhhdCBhIEdlc3R1cmVUYXAgb24gYW4gZWxlbWVudCB3aGljaCBo
YXMgYmVlbiBtYWRlIHZpc2libGUgYXMKKyAgICAgICAgICAgICAgYSBob3ZlciBlZmZlY3QgaXMg
ZGlzcGF0Y2hlZCB0byB0aGUgZWxlbWVudCBhbmQgZG9lcyBub3QgZGlzbWlzcyB0aGUKKyAgICAg
ICAgICAgICAgaG92ZXIgZWZmZWN0LgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9n
ZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KwogMjAxMy0wMy0xNCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBDb2xsZWN0IHNhbXBsZXMgZm9yIHVucmVzcG9uc2l2ZSB3ZWIgcHJvY2Vzc2VzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUt
dGFwLWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Rv
dWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmJkN2RkMjc3NmM1MDE3MzA1Mzk0NzVmNDA5NGIwZDk0YzdmMDU0ZmYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFw
LWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitIb3ZlciBvdmVyIG1l
CitDbGljayBtZQorVGVzdHMgdGhhdCBob3ZlciBlZmZlY3RzIGZyb20gYSBnZXN0dXJlIHRhcCBk
b3duIGNhbiBiZSBjbGVhcmVkIGJ5IGEgZ2VzdHVyZSB0YXAgb3IgbW91c2Vtb3ZlIG91dHNpZGUg
b2YgdGhlIGhvdmVyZWQgZWxlbWVudC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1NlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMjgzIGZvciBk
ZXRhaWxzLgorCitHZXN0dXJlVGFwRG93biBvciBHZXN0dXJlVGFwIGlzIG5vdCBzdXBwb3J0ZWQg
YnkgdGhpcyBwbGF0Zm9ybQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dl
c3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42MTNiM2EzZGYyMGMwMGExNDU3MDk1YTY4ZjllZjQ0MjcyMGMyMzc0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1o
b3Zlci1jbGVhci5odG1sCkBAIC0wLDAgKzEsOTAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKworPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKzo6LXdlYmtpdC1zY3JvbGxiYXIgewor
ICAgIHdpZHRoOiAwcHg7CisgICAgaGVpZ2h0OiAwcHg7Cit9CisKK2RpdiB7IAorICAgIGxpbmUt
aGVpZ2h0OiAxMDBweDsKK30KKworI2hvdmVybWUgeyAKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBs
aWdodGJsdWU7Cit9CisKKyNjbGlja21lIHsgCisgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRn
cmVlbjsKK30KKworI2RvbnRjbGlja21lIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7
CisgICAgZGlzcGxheTogbm9uZTsgCit9CisKKyNob3Zlcm1lOmhvdmVyICNkb250Y2xpY2ttZSB7
IAorICAgIGRpc3BsYXk6IGJsb2NrOworfQorPC9zdHlsZT4KKworPGJvZHkgc3R5bGU9Im1hcmdp
bjowIj4KKworPGRpdiBpZD0naG92ZXJtZSc+SG92ZXIgb3ZlciBtZQorICA8ZGl2IGlkPSdkb250
Y2xpY2ttZSc+RG9uJ3QgY2xpY2sgbWU8L2Rpdj4KKzwvZGl2PgorPGRpdiBpZD0nY2xpY2ttZSc+
Q2xpY2sgbWU8L2Rpdj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8cD5TZWUgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0YWlscy48L3A+
CisKKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRl
c3RzIHRoYXQgaG92ZXIgZWZmZWN0cyBmcm9tIGEgZ2VzdHVyZSB0YXAgZG93biBjYW4gYmUgY2xl
YXJlZCBieSBhIGdlc3R1cmUgdGFwIG9yIG1vdXNlbW92ZSBvdXRzaWRlIG9mIHRoZSBob3ZlcmVk
IGVsZW1lbnQuIik7CisKK3ZhciBjbGlja01lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Ns
aWNrbWUnKTsKK3ZhciBkb250Q2xpY2tNZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkb250
Y2xpY2ttZScpOworCitmdW5jdGlvbiBydW5UZXN0cygpCit7CisgICAgaWYgKCF3aW5kb3cuZXZl
bnRTZW5kZXIpIHsKKyAgICAgICAgZGVidWcoJ1RoaXMgdGVzdCByZXF1aXJlcyBEUlQuJyk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWV2ZW50U2VuZGVyLmdlc3R1cmVUYXBE
b3duIHx8ICFldmVudFNlbmRlci5nZXN0dXJlVGFwIHx8ICFldmVudFNlbmRlci5tb3VzZU1vdmVU
bykgeworICAgICAgICBkZWJ1ZygnR2VzdHVyZVRhcERvd24sIEdlc3R1cmVUYXAsIG9yIE1vdXNl
TW92ZVRvIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBwbGF0Zm9ybScpOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgZGVidWcoIlRoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIG5v
dCBiZSB2aXNpYmxlLiIpOworICAgIHNob3VsZEJlKCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAi
MCIpOworCisgICAgZGVidWcoIlRoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIGJlIHZpc2li
bGUgYWZ0ZXIgYSBHZXN0dXJlVGFwRG93biBvbiB0aGUgSG92ZXIgT3ZlciBNZSBkaXYuIik7Cisg
ICAgc2hvdWxkQmUoZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCg1MCwgNTApLmlkLCAiaG92ZXJt
ZSIpOworICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXBEb3duKDUwLCA1MCk7CisgICAgc2hvdWxk
QmUoImRvbnRDbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsKKworICAgIGRlYnVnKCJUaGUgRG9u
J3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVUYXAg
b24gdGhlIENsaWNrIE1lIGRpdi4iKTsKKyAgICBzaG91bGRCZShkb2N1bWVudC5lbGVtZW50RnJv
bVBvaW50KDI1MCwgMjUwKS5pZCwgImNsaWNrbWUiKTsKKyAgICBldmVudFNlbmRlci5nZXN0dXJl
VGFwKDI1MCwgMjUwKTsKKyAgICBzaG91bGRCZSgiZG9udENsaWNrTWUub2Zmc2V0VG9wIiwgIjAi
KTsKKworICAgIGRlYnVnKCJUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxl
IGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2LiIpOworICAg
IHNob3VsZEJlKGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoNTAsIDUwKS5pZCwgImhvdmVybWUi
KTsKKyAgICBldmVudFNlbmRlci5nZXN0dXJlVGFwRG93big1MCwgNTApOworICAgIHNob3VsZEJl
KCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAiMTAwIik7CisKKyAgICBkZWJ1ZygiVGhlIERvbid0
IENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUgYWZ0ZXIgYSBtb3VzZSBtb3ZlIHRv
IGJlbG93IHRoZSBDbGljayBNZSBkaXYuIik7CisgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
MzUwLCAzNTApOworICAgIHNob3VsZEJlKCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAiMCIpOwor
fQorCitydW5UZXN0cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFw
LW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
dG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hMzMzYWVlMzQxNzY2NWNlZDY2NDI2ODJkNWFmNDAwYzZlY2Y4OTJlCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0
dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitI
b3ZlciBvdmVyIG1lCitDbGljayBtZQorRG9uJ3QgY2xpY2sgbWUKK1Rlc3RzIHRoYXQgYSBnZXN0
dXJlIHRhcCBpcyBkaXNwYXRjaGVkIGJlZm9yZSB0aGUgaG92ZXIgc3RhdGUgb24gdGhlIGFjdGl2
ZSBlbGVtZW50IGlzIGNsZWFyZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitT
ZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0
YWlscy4KKworR2VzdHVyZVRhcERvd24gb3IgR2VzdHVyZVRhcCBpcyBub3Qgc3VwcG9ydGVkIGJ5
IHRoaXMgcGxhdGZvcm0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0
dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjc2ODI3MTE4OWFmOGJmOWQ0NjczMzE2NjViOTQ1YzMxMjRjYWFmOTEKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQuaHRtbApAQCAtMCwwICsxLDg5IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+CisKKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cis6Oi13ZWJraXQt
c2Nyb2xsYmFyIHsKKyAgICB3aWR0aDogMHB4OworICAgIGhlaWdodDogMHB4OworfQorCitkaXYg
eyAKKyAgICBsaW5lLWhlaWdodDogMTAwcHg7Cit9CisKKyNob3Zlcm1lIHsgCisgICAgYmFja2dy
b3VuZC1jb2xvcjogbGlnaHRibHVlOworfQorCisjY2xpY2ttZSB7IAorICAgIGJhY2tncm91bmQt
Y29sb3I6IGxpZ2h0Z3JlZW47CisgICAgZGlzcGxheTogbm9uZTsgCit9CisKKyNkb250Y2xpY2tt
ZSB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OworfQorCisjaG92ZXJtZTpob3ZlciAj
Y2xpY2ttZSB7IAorICAgIGRpc3BsYXk6IGJsb2NrOworfQorPC9zdHlsZT4KKworPGJvZHkgc3R5
bGU9Im1hcmdpbjowIj4KKworPGRpdiBpZD0naG92ZXJtZSc+SG92ZXIgb3ZlciBtZQorICA8ZGl2
IGlkPSdjbGlja21lJz5DbGljayBtZTwvZGl2PgorPC9kaXY+Cis8ZGl2IGlkPSdkb250Y2xpY2tt
ZSc+RG9uJ3QgY2xpY2sgbWU8L2Rpdj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8cD5T
ZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0
YWlscy48L3A+CisKKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorLy8gVGVy
cnk6IGNoYW5nZSB0aGlzIAorZGVzY3JpcHRpb24oIlRlc3RzIHRoYXQgYSBnZXN0dXJlIHRhcCBp
cyBkaXNwYXRjaGVkIGJlZm9yZSB0aGUgaG92ZXIgc3RhdGUgb24gdGhlIGFjdGl2ZSBlbGVtZW50
IGlzIGNsZWFyZWQuIik7CisKK3ZhciBjbGlja01lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2NsaWNrbWUnKTsKK3ZhciBkb250Q2xpY2tNZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdk
b250Y2xpY2ttZScpOwordmFyIGNsaWNrTWVDb3VudCA9IDA7Cit2YXIgZG9udENsaWNrTWVDb3Vu
dCA9IDA7CisKK2Z1bmN0aW9uIHJ1blRlc3RzKCkKK3sKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNl
bmRlcikgeworICAgICAgICBkZWJ1ZygnVGhpcyB0ZXN0IHJlcXVpcmVzIERSVC4nKTsKKyAgICAg
ICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcERvd24g
fHwgIWV2ZW50U2VuZGVyLmdlc3R1cmVUYXApIHsKKyAgICAgICAgZGVidWcoJ0dlc3R1cmVUYXBE
b3duIG9yIEdlc3R1cmVUYXAgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIHBsYXRmb3JtJyk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBjbGlja01lLmFkZEV2ZW50TGlzdGVuZXIoImNs
aWNrIiwgZnVuY3Rpb24oKSB7IGNsaWNrTWVDb3VudCsrOyB9LCBmYWxzZSk7CisgICAgZG9udENs
aWNrTWUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbigpIHsgZG9udENsaWNrTWVD
b3VudCsrOyB9LCBmYWxzZSk7CisKKyAgICBkZWJ1ZygiVGhlIENsaWNrIE1lIGRpdiBzaG91bGQg
bm90IGJlIHZpc2libGUuIik7CisgICAgc2hvdWxkQmUoImNsaWNrTWUub2Zmc2V0VG9wIiwgIjAi
KTsKKworICAgIGRlYnVnKCJUaGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxlIGFmdGVy
IGEgR2VzdHVyZVRhcERvd24gb24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2LiIpOworICAgIHNob3Vs
ZEJlKGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoNTAsIDUwKS5pZCwgImhvdmVybWUiKTsKKyAg
ICBldmVudFNlbmRlci5nZXN0dXJlVGFwRG93big1MCwgNTApOworICAgIHNob3VsZEJlKCJjbGlj
a01lLm9mZnNldFRvcCIsICIxMDAiKTsKKworICAgIGRlYnVnKCJUYXBwaW5nIG9uIHRoZSBDbGlj
ayBNZSBkaXYgc2hvdWxkIGRpc3BhdGNoIGEgY2xpY2sgdG8gdGhlIENsaWNrIE1lIGRpdiBhbmQg
bm90IHRvIHRoZSBEb24ndCBDbGljayBNZSBkaXYgYW5kIHRoZSBDbGljayBNZSBkaXYgc2hvdWxk
IHN0aWxsIGJlIHZpc2libGUuIik7CisgICAgc2hvdWxkQmUoZG9jdW1lbnQuZWxlbWVudEZyb21Q
b2ludCgxNTAsIDE1MCkuaWQsICJjbGlja21lIik7CisgICAgZXZlbnRTZW5kZXIuZ2VzdHVyZVRh
cCgxNTAsIDE1MCk7CisgICAgc2hvdWxkQmUoImNsaWNrTWVDb3VudCIsICIxIik7CisgICAgc2hv
dWxkQmUoImRvbnRDbGlja01lQ291bnQiLCAiMCIpOworICAgIHNob3VsZEJlKCJjbGlja01lLm9m
ZnNldFRvcCIsICIxMDAiKTsKK30KKworcnVuVGVzdHMoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBz
cmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9i
b2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0v
ZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1ob3Zlci1jbGVhci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9n
ZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4y
ZDE3ZTk4NmRkYzllODkyNWVkYTYwZGRkZmRlZGNhNzA2MjZlOTU2Ci0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVy
ZS9nZXN0dXJlLXRhcC1ob3Zlci1jbGVhci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNiBAQAor
SG92ZXIgb3ZlciBtZQorQ2xpY2sgbWUKK1Rlc3RzIHRoYXQgaG92ZXIgZWZmZWN0cyBmcm9tIGEg
Z2VzdHVyZSB0YXAgZG93biBjYW4gYmUgY2xlYXJlZCBieSBhIGdlc3R1cmUgdGFwIG9yIG1vdXNl
bW92ZSBvdXRzaWRlIG9mIHRoZSBob3ZlcmVkIGVsZW1lbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMzI4MyBmb3IgZGV0YWlscy4KKworVGhlIERvbid0IENsaWNrIE1lIGRpdiBzaG91bGQgbm90
IGJlIHZpc2libGUuCitQQVNTIGRvbnRDbGlja01lLm9mZnNldFRvcCBpcyAwCitUaGUgRG9uJ3Qg
Q2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24g
dGhlIEhvdmVyIE92ZXIgTWUgZGl2LgorUEFTUyBob3Zlcm1lIGlzIGhvdmVybWUKK1BBU1MgZG9u
dENsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAorVGhlIERvbid0IENsaWNrIE1lIGRpdiBzaG91bGQg
bm90IGJlIHZpc2libGUgYWZ0ZXIgYSBHZXN0dXJlVGFwIG9uIHRoZSBDbGljayBNZSBkaXYuCitQ
QVNTIGNsaWNrbWUgaXMgY2xpY2ttZQorUEFTUyBkb250Q2xpY2tNZS5vZmZzZXRUb3AgaXMgMAor
VGhlIERvbid0IENsaWNrIE1lIGRpdiBzaG91bGQgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVU
YXBEb3duIG9uIHRoZSBIb3ZlciBPdmVyIE1lIGRpdi4KK1BBU1MgaG92ZXJtZSBpcyBob3Zlcm1l
CitQQVNTIGRvbnRDbGlja01lLm9mZnNldFRvcCBpcyAxMDAKK1RoZSBEb24ndCBDbGljayBNZSBk
aXYgc2hvdWxkIG5vdCBiZSB2aXNpYmxlIGFmdGVyIGEgbW91c2UgbW92ZSB0byBiZWxvdyB0aGUg
Q2xpY2sgTWUgZGl2LgorUEFTUyBkb250Q2xpY2tNZS5vZmZzZXRUb3AgaXMgMAorUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2Vz
dHVyZS10YXAtb24taG92ZXItZWxlbWVudC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhv
dmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIwMDU1YjExOTVmZWQ2ZTkzZjlj
NWJlYTUzZDQxMjc3OWU1YzlkZTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhv
dmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMjQgQEAKK0hvdmVyIG92ZXIgbWUK
K0NsaWNrIG1lCitEb24ndCBjbGljayBtZQorVGVzdHMgdGhhdCBhIGdlc3R1cmUgdGFwIGlzIGRp
c3BhdGNoZWQgYmVmb3JlIHRoZSBob3ZlciBzdGF0ZSBvbiB0aGUgYWN0aXZlIGVsZW1lbnQgaXMg
Y2xlYXJlZC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBt
ZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1NlZSBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMjgzIGZvciBkZXRhaWxzLgorCitUaGUg
Q2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZS4KK1BBU1MgY2xpY2tNZS5vZmZzZXRU
b3AgaXMgMAorVGhlIENsaWNrIE1lIGRpdiBzaG91bGQgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1
cmVUYXBEb3duIG9uIHRoZSBIb3ZlciBPdmVyIE1lIGRpdi4KK1BBU1MgaG92ZXJtZSBpcyBob3Zl
cm1lCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAorVGFwcGluZyBvbiB0aGUgQ2xpY2sg
TWUgZGl2IHNob3VsZCBkaXNwYXRjaCBhIGNsaWNrIHRvIHRoZSBDbGljayBNZSBkaXYgYW5kIG5v
dCB0byB0aGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IGFuZCB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBz
dGlsbCBiZSB2aXNpYmxlLgorUEFTUyBjbGlja21lIGlzIGNsaWNrbWUKK1BBU1MgY2xpY2tNZUNv
dW50IGlzIDEKK1BBU1MgZG9udENsaWNrTWVDb3VudCBpcyAwCitQQVNTIGNsaWNrTWUub2Zmc2V0
VG9wIGlzIDEwMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBM
RVRFCisK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>193388</attachid>
            <date>2013-03-15 15:53:34 -0700</date>
            <delta_ts>2013-03-19 11:22:57 -0700</delta_ts>
            <desc>comments from rbyers addressed</desc>
            <filename>bug-103283-20130315184929.patch</filename>
            <type>text/plain</type>
            <size>13776</size>
            <attacher name="Terry Anderson">tdanderson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1OTIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTk1MzJmMDA3ZDE4MmQy
MzM0MjUwNGNjMTk0MTZkMDQ2ODM1Njk0NS4uZmNhZGZhM2RmZjYwZmI2ZjFkZDJkMjk3YTJiY2E0
ZjQ2MDgzYjFmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEzLTAzLTE1ICBUZXJy
eSBBbmRlcnNvbiAgPHRkYW5kZXJzb25AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEhvdmVyIGVm
ZmVjdHMgZnJvbSBhIEdlc3R1cmVUYXBEb3duIGFyZSBkaXNtaXNzZWQgYnkgYSBHZXN0dXJlVGFw
IG9uIHRoZSBob3ZlciBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDMyODMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBPbiBhIEdlc3R1cmVUYXAgZXZlbnQgb3ZlciBhbiBlbGVtZW50IHRoYXQg
d2FzIG1hZGUgdmlzaWJsZSBhcyBhIGhvdmVyIGVmZmVjdCwgdGhlCisgICAgICAgIEdlc3R1cmVU
YXAgc2hvdWxkIGJlIGFwcGxpZWQgdG8gdGhhdCBlbGVtZW50IGFuZCB0aGUgaG92ZXIgZWZmZWN0
cyBzaG91bGQgbm90IGJlIGRpc21pc3NlZC4gCisgICAgICAgIEEgR2VzdHVyZVRhcCBvciBhIG1v
dXNlIG1vdmUgdG8gYSBsb2NhdGlvbiBvdXRzaWRlIG9mIHRoZSBlbGVtZW50IHNob3VsZCBzdGls
bCBkaXNtaXNzIHRoZQorICAgICAgICBob3ZlciBlZmZlY3RzLgorCisgICAgICAgIFRlc3RzOiBm
YXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVyLWNsZWFyLmh0bWwKKyAg
ICAgICAgICAgICAgIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92
ZXItZWxlbWVudC5odG1sCisKKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVudCk6CisKIDIwMTMt
MDMtMTUgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0Nd
IFJlbW92ZSBjdXN0b20gV2ViQXVkaW8gbWFyayBmdW5jdGlvbnMgdGhhdCB3ZSBjYW4gZ2VuZXJh
dGUgaW5zdGVhZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBkNDY5MDEx
NDg4ZjBjNGYzMDJiODU4NTQ3MTlhZDI0ZTIyODY3YzU0Li40NGU5NTI5Y2Q3NGNjZGJhYmU5MGJh
MjQ4M2Q1N2IzNWQ2NmJmNjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCkBA
IC0yNDc1LDggKzI0NzUsMTMgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZUdlc3R1cmVFdmVu
dChjb25zdCBQbGF0Zm9ybUdlc3R1cmVFdmVudCYgZ2VzdHVyZUV2ZW50KQogICAgICAgICBhZGp1
c3RHZXN0dXJlUG9zaXRpb24oZ2VzdHVyZUV2ZW50LCBhZGp1c3RlZFBvaW50KTsKICNlbmRpZgog
ICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpBY3RpdmU7Ci0gICAgfSBlbHNlIGlm
IChnZXN0dXJlRXZlbnQudHlwZSgpID09IFBsYXRmb3JtRXZlbnQ6Okdlc3R1cmVUYXAgfHwgZ2Vz
dHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50OjpHZXN0dXJlVGFwRG93bkNhbmNlbCkK
KyAgICB9IGVsc2UgaWYgKGdlc3R1cmVFdmVudC50eXBlKCkgPT0gUGxhdGZvcm1FdmVudDo6R2Vz
dHVyZVRhcERvd25DYW5jZWwpCiAgICAgICAgIGhpdFR5cGUgfD0gSGl0VGVzdFJlcXVlc3Q6OlJl
bGVhc2U7CisgICAgZWxzZSBpZiAoZ2VzdHVyZUV2ZW50LnR5cGUoKSA9PSBQbGF0Zm9ybUV2ZW50
OjpHZXN0dXJlVGFwKSB7CisgICAgICAgIC8vIFRoZSBtb3VzZXVwIGV2ZW50IHN5bnRoZXNpemVk
IGZvciB0aGlzIGdlc3R1cmUgd2lsbCBjbGVhciB0aGUgYWN0aXZlIHN0YXRlIG9mIHRoZQorICAg
ICAgICAvLyB0YXJnZXRlZCBub2RlLCBzbyBwZXJmb3JtaW5nIGEgUmVhZE9ubHkgaGl0IHRlc3Qg
aGVyZSBpcyBmaW5lLgorICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpSZWFkT25s
eTsKKyAgICB9CiAgICAgZWxzZQogICAgICAgICBoaXRUeXBlIHw9IEhpdFRlc3RSZXF1ZXN0OjpB
Y3RpdmUgfCBIaXRUZXN0UmVxdWVzdDo6UmVhZE9ubHk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1YmEyOGUwYmJkNjRi
MzIzZGIyNDQ4YmE4NjU2NTM2ODkzNzQ3ZTkzLi5lMDkyNzNlM2U4MGNlZWEwZWJmZmExMjRmZTY3
N2E4YjUwMWUyNGQzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTMtMDMtMTUgIFRlcnJ5IEFu
ZGVyc29uICA8dGRhbmRlcnNvbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSG92ZXIgZWZmZWN0
cyBmcm9tIGEgR2VzdHVyZVRhcERvd24gYXJlIGRpc21pc3NlZCBieSBhIEdlc3R1cmVUYXAgb24g
dGhlIGhvdmVyIGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMzI4MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFR3byBsYXlvdXQgdGVzdHMgYWRkZWQuIFNlZSBkZXNjcmlwdGlvbnMgaW5saW5l
LgorCisgICAgICAgICogZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1ob3Zl
ci1jbGVhci1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNo
L2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbDogQWRkZWQuCisgICAgICAgICAg
ICAgIFRlc3RzIHRoYXQgYSBHZXN0dXJlVGFwIG9yIGEgbW91c2UgbW92ZSBvdXRzaWRlIG9mIHRo
ZSBob3ZlcmVkIGVsZW1lbnQKKyAgICAgICAgICAgICAgY2xlYXJzIGl0cyBob3ZlciBlZmZlY3Rz
LgorICAgICAgICAqIGZhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92
ZXItZWxlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZXZlbnRzL3Rv
dWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sOiBBZGRlZC4KKyAg
ICAgICAgICAgICAgVGVzdHMgdGhhdCBhIEdlc3R1cmVUYXAgb24gYW4gZWxlbWVudCB3aGljaCBo
YXMgYmVlbiBtYWRlIHZpc2libGUgYXMKKyAgICAgICAgICAgICAgYSBob3ZlciBlZmZlY3QgaXMg
ZGlzcGF0Y2hlZCB0byB0aGUgZWxlbWVudCBhbmQgZG9lcyBub3QgZGlzbWlzcyB0aGUKKyAgICAg
ICAgICAgICAgaG92ZXIgZWZmZWN0LgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL2Zhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9n
ZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
KwogMjAxMy0wMy0xNCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAog
ICAgICAgICBDb2xsZWN0IHNhbXBsZXMgZm9yIHVucmVzcG9uc2l2ZSB3ZWIgcHJvY2Vzc2VzCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUt
dGFwLWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3Rv
dWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmJkN2RkMjc3NmM1MDE3MzA1Mzk0NzVmNDA5NGIwZDk0YzdmMDU0ZmYKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFw
LWhvdmVyLWNsZWFyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE0IEBACitIb3ZlciBvdmVyIG1l
CitDbGljayBtZQorVGVzdHMgdGhhdCBob3ZlciBlZmZlY3RzIGZyb20gYSBnZXN0dXJlIHRhcCBk
b3duIGNhbiBiZSBjbGVhcmVkIGJ5IGEgZ2VzdHVyZSB0YXAgb3IgbW91c2Vtb3ZlIG91dHNpZGUg
b2YgdGhlIGhvdmVyZWQgZWxlbWVudC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1NlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMjgzIGZvciBk
ZXRhaWxzLgorCitHZXN0dXJlVGFwRG93biBvciBHZXN0dXJlVGFwIGlzIG5vdCBzdXBwb3J0ZWQg
YnkgdGhpcyBwbGF0Zm9ybQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNU
IENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL3RvdWNoL2dl
c3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtaG92ZXItY2xlYXIuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li42MTNiM2EzZGYyMGMwMGExNDU3MDk1YTY4ZjllZjQ0MjcyMGMyMzc0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1o
b3Zlci1jbGVhci5odG1sCkBAIC0wLDAgKzEsOTAgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+
Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Nj
cmlwdD4KKworPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKzo6LXdlYmtpdC1zY3JvbGxiYXIgewor
ICAgIHdpZHRoOiAwcHg7CisgICAgaGVpZ2h0OiAwcHg7Cit9CisKK2RpdiB7IAorICAgIGxpbmUt
aGVpZ2h0OiAxMDBweDsKK30KKworI2hvdmVybWUgeyAKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBs
aWdodGJsdWU7Cit9CisKKyNjbGlja21lIHsgCisgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRn
cmVlbjsKK30KKworI2RvbnRjbGlja21lIHsKKyAgICBiYWNrZ3JvdW5kLWNvbG9yOiB5ZWxsb3c7
CisgICAgZGlzcGxheTogbm9uZTsgCit9CisKKyNob3Zlcm1lOmhvdmVyICNkb250Y2xpY2ttZSB7
IAorICAgIGRpc3BsYXk6IGJsb2NrOworfQorPC9zdHlsZT4KKworPGJvZHkgc3R5bGU9Im1hcmdp
bjowIj4KKworPGRpdiBpZD0naG92ZXJtZSc+SG92ZXIgb3ZlciBtZQorICA8ZGl2IGlkPSdkb250
Y2xpY2ttZSc+RG9uJ3QgY2xpY2sgbWU8L2Rpdj4KKzwvZGl2PgorPGRpdiBpZD0nY2xpY2ttZSc+
Q2xpY2sgbWU8L2Rpdj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8cD5TZWUgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0YWlscy48L3A+
CisKKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorZGVzY3JpcHRpb24oIlRl
c3RzIHRoYXQgaG92ZXIgZWZmZWN0cyBmcm9tIGEgZ2VzdHVyZSB0YXAgZG93biBjYW4gYmUgY2xl
YXJlZCBieSBhIGdlc3R1cmUgdGFwIG9yIG1vdXNlbW92ZSBvdXRzaWRlIG9mIHRoZSBob3ZlcmVk
IGVsZW1lbnQuIik7CisKK3ZhciBjbGlja01lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Ns
aWNrbWUnKTsKK3ZhciBkb250Q2xpY2tNZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkb250
Y2xpY2ttZScpOworCitmdW5jdGlvbiBydW5UZXN0cygpCit7CisgICAgaWYgKCF3aW5kb3cuZXZl
bnRTZW5kZXIpIHsKKyAgICAgICAgZGVidWcoJ1RoaXMgdGVzdCByZXF1aXJlcyBEUlQuJyk7Cisg
ICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWV2ZW50U2VuZGVyLmdlc3R1cmVUYXBE
b3duIHx8ICFldmVudFNlbmRlci5nZXN0dXJlVGFwIHx8ICFldmVudFNlbmRlci5tb3VzZU1vdmVU
bykgeworICAgICAgICBkZWJ1ZygnR2VzdHVyZVRhcERvd24sIEdlc3R1cmVUYXAsIG9yIE1vdXNl
TW92ZVRvIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBwbGF0Zm9ybScpOworICAgICAgICByZXR1
cm47CisgICAgfQorCisgICAgZGVidWcoIlRoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIG5v
dCBiZSB2aXNpYmxlLiIpOworICAgIHNob3VsZEJlKCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAi
MCIpOworCisgICAgZGVidWcoIlRoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIGJlIHZpc2li
bGUgYWZ0ZXIgYSBHZXN0dXJlVGFwRG93biBvbiB0aGUgSG92ZXIgT3ZlciBNZSBkaXYuIik7Cisg
ICAgc2hvdWxkQmUoZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCg1MCwgNTApLmlkLCAiaG92ZXJt
ZSIpOworICAgIGV2ZW50U2VuZGVyLmdlc3R1cmVUYXBEb3duKDUwLCA1MCk7CisgICAgc2hvdWxk
QmUoImRvbnRDbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsKKworICAgIGRlYnVnKCJUaGUgRG9u
J3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3QgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVUYXAg
b24gdGhlIENsaWNrIE1lIGRpdi4iKTsKKyAgICBzaG91bGRCZShkb2N1bWVudC5lbGVtZW50RnJv
bVBvaW50KDI1MCwgMjUwKS5pZCwgImNsaWNrbWUiKTsKKyAgICBldmVudFNlbmRlci5nZXN0dXJl
VGFwKDI1MCwgMjUwKTsKKyAgICBzaG91bGRCZSgiZG9udENsaWNrTWUub2Zmc2V0VG9wIiwgIjAi
KTsKKworICAgIGRlYnVnKCJUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxl
IGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2LiIpOworICAg
IHNob3VsZEJlKGRvY3VtZW50LmVsZW1lbnRGcm9tUG9pbnQoNTAsIDUwKS5pZCwgImhvdmVybWUi
KTsKKyAgICBldmVudFNlbmRlci5nZXN0dXJlVGFwRG93big1MCwgNTApOworICAgIHNob3VsZEJl
KCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAiMTAwIik7CisKKyAgICBkZWJ1ZygiVGhlIERvbid0
IENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUgYWZ0ZXIgYSBtb3VzZSBtb3ZlIHRv
IGJlbG93IHRoZSBDbGljayBNZSBkaXYuIik7CisgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8o
MzUwLCAzNTApOworICAgIHNob3VsZEJlKCJkb250Q2xpY2tNZS5vZmZzZXRUb3AiLCAiMCIpOwor
fQorCitydW5UZXN0cygpOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFw
LW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
dG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5hMzMzYWVlMzQxNzY2NWNlZDY2NDI2ODJkNWFmNDAwYzZlY2Y4OTJlCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0
dXJlLXRhcC1vbi1ob3Zlci1lbGVtZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE1IEBACitI
b3ZlciBvdmVyIG1lCitDbGljayBtZQorRG9uJ3QgY2xpY2sgbWUKK1Rlc3RzIHRoYXQgYSBnZXN0
dXJlIHRhcCBpcyBkaXNwYXRjaGVkIGJlZm9yZSB0aGUgaG92ZXIgc3RhdGUgb24gdGhlIGFjdGl2
ZSBlbGVtZW50IGlzIGNsZWFyZWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmll
cyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitT
ZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0
YWlscy4KKworR2VzdHVyZVRhcERvd24gb3IgR2VzdHVyZVRhcCBpcyBub3Qgc3VwcG9ydGVkIGJ5
IHRoaXMgcGxhdGZvcm0KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBD
T01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0
dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVudC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjAxNGM5YTZjODYxMjdmNGI0ZDY0MGE3ZGIyMjU2NGQ0NTU2ZThiMmQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1
cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQuaHRtbApAQCAtMCwwICsxLDg4IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0
LXByZS5qcyI+PC9zY3JpcHQ+CisKKzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cis6Oi13ZWJraXQt
c2Nyb2xsYmFyIHsKKyAgICB3aWR0aDogMHB4OworICAgIGhlaWdodDogMHB4OworfQorCitkaXYg
eyAKKyAgICBsaW5lLWhlaWdodDogMTAwcHg7Cit9CisKKyNob3Zlcm1lIHsgCisgICAgYmFja2dy
b3VuZC1jb2xvcjogbGlnaHRibHVlOworfQorCisjY2xpY2ttZSB7IAorICAgIGJhY2tncm91bmQt
Y29sb3I6IGxpZ2h0Z3JlZW47CisgICAgZGlzcGxheTogbm9uZTsgCit9CisKKyNkb250Y2xpY2tt
ZSB7CisgICAgYmFja2dyb3VuZC1jb2xvcjogeWVsbG93OworfQorCisjaG92ZXJtZTpob3ZlciAj
Y2xpY2ttZSB7IAorICAgIGRpc3BsYXk6IGJsb2NrOworfQorPC9zdHlsZT4KKworPGJvZHkgc3R5
bGU9Im1hcmdpbjowIj4KKworPGRpdiBpZD0naG92ZXJtZSc+SG92ZXIgb3ZlciBtZQorICA8ZGl2
IGlkPSdjbGlja21lJz5DbGljayBtZTwvZGl2PgorPC9kaXY+Cis8ZGl2IGlkPSdkb250Y2xpY2tt
ZSc+RG9uJ3QgY2xpY2sgbWU8L2Rpdj4KKworPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8cD5T
ZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0
YWlscy48L3A+CisKKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorCis8c2NyaXB0PgorZGVzY3Jp
cHRpb24oIlRlc3RzIHRoYXQgYSBnZXN0dXJlIHRhcCBpcyBkaXNwYXRjaGVkIGJlZm9yZSB0aGUg
aG92ZXIgc3RhdGUgb24gdGhlIGFjdGl2ZSBlbGVtZW50IGlzIGNsZWFyZWQuIik7CisKK3ZhciBj
bGlja01lID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NsaWNrbWUnKTsKK3ZhciBkb250Q2xp
Y2tNZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkb250Y2xpY2ttZScpOwordmFyIGNsaWNr
TWVDb3VudCA9IDA7Cit2YXIgZG9udENsaWNrTWVDb3VudCA9IDA7CisKK2Z1bmN0aW9uIHJ1blRl
c3RzKCkKK3sKKyAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikgeworICAgICAgICBkZWJ1Zygn
VGhpcyB0ZXN0IHJlcXVpcmVzIERSVC4nKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAg
IGlmICghZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcERvd24gfHwgIWV2ZW50U2VuZGVyLmdlc3R1cmVU
YXApIHsKKyAgICAgICAgZGVidWcoJ0dlc3R1cmVUYXBEb3duIG9yIEdlc3R1cmVUYXAgaXMgbm90
IHN1cHBvcnRlZCBieSB0aGlzIHBsYXRmb3JtJyk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBjbGlja01lLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24oKSB7IGNsaWNr
TWVDb3VudCsrOyB9LCBmYWxzZSk7CisgICAgZG9udENsaWNrTWUuYWRkRXZlbnRMaXN0ZW5lcigi
Y2xpY2siLCBmdW5jdGlvbigpIHsgZG9udENsaWNrTWVDb3VudCsrOyB9LCBmYWxzZSk7CisKKyAg
ICBkZWJ1ZygiVGhlIENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUuIik7CisgICAg
c2hvdWxkQmUoImNsaWNrTWUub2Zmc2V0VG9wIiwgIjAiKTsKKworICAgIGRlYnVnKCJUaGUgQ2xp
Y2sgTWUgZGl2IHNob3VsZCBiZSB2aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhl
IEhvdmVyIE92ZXIgTWUgZGl2LiIpOworICAgIHNob3VsZEJlKGRvY3VtZW50LmVsZW1lbnRGcm9t
UG9pbnQoNTAsIDUwKS5pZCwgImhvdmVybWUiKTsKKyAgICBldmVudFNlbmRlci5nZXN0dXJlVGFw
RG93big1MCwgNTApOworICAgIHNob3VsZEJlKCJjbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsK
KworICAgIGRlYnVnKCJUYXBwaW5nIG9uIHRoZSBDbGljayBNZSBkaXYgc2hvdWxkIGRpc3BhdGNo
IGEgY2xpY2sgdG8gdGhlIENsaWNrIE1lIGRpdiBhbmQgbm90IHRvIHRoZSBEb24ndCBDbGljayBN
ZSBkaXYgYW5kIHRoZSBDbGljayBNZSBkaXYgc2hvdWxkIHN0aWxsIGJlIHZpc2libGUuIik7Cisg
ICAgc2hvdWxkQmUoZG9jdW1lbnQuZWxlbWVudEZyb21Qb2ludCgxNTAsIDE1MCkuaWQsICJjbGlj
a21lIik7CisgICAgZXZlbnRTZW5kZXIuZ2VzdHVyZVRhcCgxNTAsIDE1MCk7CisgICAgc2hvdWxk
QmUoImNsaWNrTWVDb3VudCIsICIxIik7CisgICAgc2hvdWxkQmUoImRvbnRDbGlja01lQ291bnQi
LCAiMCIpOworICAgIHNob3VsZEJlKCJjbGlja01lLm9mZnNldFRvcCIsICIxMDAiKTsKK30KKwor
cnVuVGVzdHMoKTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2pzL3Jlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVy
ZS9nZXN0dXJlLXRhcC1ob3Zlci1jbGVhci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLWhvdmVy
LWNsZWFyLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZDE3ZTk4NmRkYzllODkyNWVkYTYwZGRk
ZmRlZGNhNzA2MjZlOTU2Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Y2hyb21pdW0vZmFzdC9ldmVudHMvdG91Y2gvZ2VzdHVyZS9nZXN0dXJlLXRhcC1ob3Zlci1jbGVh
ci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyNiBAQAorSG92ZXIgb3ZlciBtZQorQ2xpY2sgbWUK
K1Rlc3RzIHRoYXQgaG92ZXIgZWZmZWN0cyBmcm9tIGEgZ2VzdHVyZSB0YXAgZG93biBjYW4gYmUg
Y2xlYXJlZCBieSBhIGdlc3R1cmUgdGFwIG9yIG1vdXNlbW92ZSBvdXRzaWRlIG9mIHRoZSBob3Zl
cmVkIGVsZW1lbnQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFT
UyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitTZWUgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzI4MyBmb3IgZGV0YWlscy4KKwor
VGhlIERvbid0IENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUuCitQQVNTIGRvbnRD
bGlja01lLm9mZnNldFRvcCBpcyAwCitUaGUgRG9uJ3QgQ2xpY2sgTWUgZGl2IHNob3VsZCBiZSB2
aXNpYmxlIGFmdGVyIGEgR2VzdHVyZVRhcERvd24gb24gdGhlIEhvdmVyIE92ZXIgTWUgZGl2Lgor
UEFTUyBob3Zlcm1lIGlzIGhvdmVybWUKK1BBU1MgZG9udENsaWNrTWUub2Zmc2V0VG9wIGlzIDEw
MAorVGhlIERvbid0IENsaWNrIE1lIGRpdiBzaG91bGQgbm90IGJlIHZpc2libGUgYWZ0ZXIgYSBH
ZXN0dXJlVGFwIG9uIHRoZSBDbGljayBNZSBkaXYuCitQQVNTIGNsaWNrbWUgaXMgY2xpY2ttZQor
UEFTUyBkb250Q2xpY2tNZS5vZmZzZXRUb3AgaXMgMAorVGhlIERvbid0IENsaWNrIE1lIGRpdiBz
aG91bGQgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVUYXBEb3duIG9uIHRoZSBIb3ZlciBPdmVy
IE1lIGRpdi4KK1BBU1MgaG92ZXJtZSBpcyBob3Zlcm1lCitQQVNTIGRvbnRDbGlja01lLm9mZnNl
dFRvcCBpcyAxMDAKK1RoZSBEb24ndCBDbGljayBNZSBkaXYgc2hvdWxkIG5vdCBiZSB2aXNpYmxl
IGFmdGVyIGEgbW91c2UgbW92ZSB0byBiZWxvdyB0aGUgQ2xpY2sgTWUgZGl2LgorUEFTUyBkb250
Q2xpY2tNZS5vZmZzZXRUb3AgaXMgMAorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9t
aXVtL2Zhc3QvZXZlbnRzL3RvdWNoL2dlc3R1cmUvZ2VzdHVyZS10YXAtb24taG92ZXItZWxlbWVu
dC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50
cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmIwMDU1YjExOTVmZWQ2ZTkzZjljNWJlYTUzZDQxMjc3OWU1YzlkZTcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS9mYXN0L2V2ZW50
cy90b3VjaC9nZXN0dXJlL2dlc3R1cmUtdGFwLW9uLWhvdmVyLWVsZW1lbnQtZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEsMjQgQEAKK0hvdmVyIG92ZXIgbWUKK0NsaWNrIG1lCitEb24ndCBjbGljayBt
ZQorVGVzdHMgdGhhdCBhIGdlc3R1cmUgdGFwIGlzIGRpc3BhdGNoZWQgYmVmb3JlIHRoZSBob3Zl
ciBzdGF0ZSBvbiB0aGUgYWN0aXZlIGVsZW1lbnQgaXMgY2xlYXJlZC4KKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1NlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAzMjgzIGZvciBkZXRhaWxzLgorCitUaGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBub3Qg
YmUgdmlzaWJsZS4KK1BBU1MgY2xpY2tNZS5vZmZzZXRUb3AgaXMgMAorVGhlIENsaWNrIE1lIGRp
diBzaG91bGQgYmUgdmlzaWJsZSBhZnRlciBhIEdlc3R1cmVUYXBEb3duIG9uIHRoZSBIb3ZlciBP
dmVyIE1lIGRpdi4KK1BBU1MgaG92ZXJtZSBpcyBob3Zlcm1lCitQQVNTIGNsaWNrTWUub2Zmc2V0
VG9wIGlzIDEwMAorVGFwcGluZyBvbiB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBkaXNwYXRjaCBh
IGNsaWNrIHRvIHRoZSBDbGljayBNZSBkaXYgYW5kIG5vdCB0byB0aGUgRG9uJ3QgQ2xpY2sgTWUg
ZGl2IGFuZCB0aGUgQ2xpY2sgTWUgZGl2IHNob3VsZCBzdGlsbCBiZSB2aXNpYmxlLgorUEFTUyBj
bGlja21lIGlzIGNsaWNrbWUKK1BBU1MgY2xpY2tNZUNvdW50IGlzIDEKK1BBU1MgZG9udENsaWNr
TWVDb3VudCBpcyAwCitQQVNTIGNsaWNrTWUub2Zmc2V0VG9wIGlzIDEwMAorUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisK
</data>

          </attachment>
      

    </bug>

</bugzilla>