<?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>93292</bug_id>
          
          <creation_ts>2012-08-06 13:05:32 -0700</creation_ts>
          <short_desc>[Chromium] Pinch Zoom prototype tracking issue.</short_desc>
          <delta_ts>2012-10-08 16:16:01 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>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>
          <dependson>95094</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeff Timanus">twiz</reporter>
          <assigned_to name="Jeff Timanus">twiz</assigned_to>
          <cc>abarth</cc>
    
    <cc>aelias</cc>
    
    <cc>danakj</cc>
    
    <cc>dglazkov</cc>
    
    <cc>enne</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>rjkroege</cc>
    
    <cc>senorblanco</cc>
    
    <cc>shawnsingh</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>vangelis</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>wjmaclean</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>688368</commentid>
    <comment_count>0</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-06 13:05:32 -0700</bug_when>
    <thetext>This issue is to track the work required to implement accelerated pinch-zoom in the Chromium compositor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688395</commentid>
    <comment_count>1</comment_count>
      <attachid>156756</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-06 13:42:08 -0700</bug_when>
    <thetext>Created attachment 156756
Hacking around - first protypes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688423</commentid>
    <comment_count>2</comment_count>
      <attachid>156756</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-06 14:30:48 -0700</bug_when>
    <thetext>Comment on attachment 156756
Hacking around - first protypes

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

This change is very rough, but I wanted to upload it to be explicit about the changes I&apos;m trying to make.  Should this be the beginning of the correct direction?

Does your recent change, https://bugs.webkit.org/attachment.cgi?id=155910, have an impact on the plans discussed?

&gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:768
&gt; +#if 0

I removed this call, as part of the first steps to correct the scrolling behaviour, as we discussed.

&gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1045
&gt; +#if 0

I found that the resulting zoom behaviour is very jumpy when removing these optimization calls.  Is this potentially expected?  Is the recalculation of the zoom causing layout to be performed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688460</commentid>
    <comment_count>3</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-08-06 15:20:12 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 156756 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=156756&amp;action=review
&gt; 
&gt; This change is very rough, but I wanted to upload it to be explicit about the changes I&apos;m trying to make.  Should this be the beginning of the correct direction?

Seems fine.  Right now you just removed pageScaleFactor entirely instead of changing the way it&apos;s applied though (any pinch zoom you still see is due to pageScaleDelta only).  Next thing is to actually apply it the new way in both calls to CCLayerTreeHostCommon::calculateDrawTransforms().

&gt; 
&gt; Does your recent change, https://bugs.webkit.org/attachment.cgi?id=155910, have an impact on the plans discussed?

No change to the plans.  It&apos;s a future-looking cleanup that will allow doing the coordinate switch on Android, but it doesn&apos;t have much impact on you.

&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:768
&gt; &gt; +#if 0
&gt; 
&gt; I removed this call, as part of the first steps to correct the scrolling behaviour, as we discussed.
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1045
&gt; &gt; +#if 0
&gt; 
&gt; I found that the resulting zoom behaviour is very jumpy when removing these optimization calls.  Is this potentially expected?  Is the recalculation of the zoom causing layout to be performed?

By removing that whole block, the current pinch state is being sent to the main thread incrementally as fast as possible.  So any bugs in the pinch implementation will be seen continually, instead of only when you let go of the pinch.  If there are no bugs, then you will just see a lot of checkerboard on the edges while zooming out.  Anyway, I recommend only #if 0&apos;ing these lines:

#if 0
if (m_pinchGestureActive)
    computePinchZoomDeltas(scrollInfo.get());
else if (m_pageScaleAnimation.get())
    computeDoubleTapZoomDeltas(scrollInfo.get());
#endif

as these are the actually coordinate-space sensitive optimizations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>694154</commentid>
    <comment_count>4</comment_count>
      <attachid>158123</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-13 15:24:34 -0700</bug_when>
    <thetext>Created attachment 158123
Patch attempting to apply zoom without Frame::frameScaleFactor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>694161</commentid>
    <comment_count>5</comment_count>
      <attachid>158129</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-13 15:28:27 -0700</bug_when>
    <thetext>Created attachment 158129
Effect of zoom out from patch 158123.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>701942</commentid>
    <comment_count>6</comment_count>
      <attachid>159943</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-22 08:31:14 -0700</bug_when>
    <thetext>Created attachment 159943
Patch that updates (in a very hacky way), LayerChromium::contentsScale.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702522</commentid>
    <comment_count>7</comment_count>
      <attachid>160035</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-22 16:52:01 -0700</bug_when>
    <thetext>Created attachment 160035
Apply scale to root scrolling layer.

This patch finally gets a basic pinch-zoom working without using a CSS-scale.

 - The LayerChromium::contentsScale is assigned for all layer descendents of the root scroll layer, so that the tiles are painted at the proper scale.
 - The page-scale-factor is installed as a transform on the root scrolling layer in the main thread, just before calculating the drawing transforms.  The previous approach of applying the scale to the entire tree was the root cause of the viewport snapping to a smaller size on pinch-zoom release.

This is still a prototyping patch, but demonstrates that a non-CSS zoom is possible.

Glaring problems that still need correction:
 - How to separate this zooming behaviour from the old zoom?  Some ports likely want to preserve frameScale, etc.  
 - LCD text is used when the page is rendered during the interactive zoom - this can cause colour sparkling.  LCD text needs to be disabled when zoom starts.
 - The scroll position is totally broken after a pinch release, and needs to be corrected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702527</commentid>
    <comment_count>8</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-22 17:03:20 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Created an attachment (id=159943) [details]
&gt; Patch that updates (in a very hacky way), LayerChromium::contentsScale.

If you don&apos;t mind, I think I&apos;d like to have this in a separate prerequisite patch, ideally one that also removes the contentsScale-related code from GraphicsLayerChromium and WebContentLayer.

I think there is definitely more to it than what you do here, because although this handles page scale, you&apos;re calling updateLayerScale with just the PSF, whereas GraphicsLayerChromium sets the contentsScale to DSF * PSF.  Although, as another wrinkle, I think this is different on the NCCH layer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703150</commentid>
    <comment_count>9</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-08-23 10:56:44 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; Created an attachment (id=159943) [details] [details]
&gt; &gt; Patch that updates (in a very hacky way), LayerChromium::contentsScale.
&gt; 
&gt; If you don&apos;t mind, I think I&apos;d like to have this in a separate prerequisite patch, ideally one that also removes the contentsScale-related code from GraphicsLayerChromium and WebContentLayer.
&gt; 
&gt; I think there is definitely more to it than what you do here, because although this handles page scale, you&apos;re calling updateLayerScale with just the PSF, whereas GraphicsLayerChromium sets the contentsScale to DSF * PSF.  Although, as another wrinkle, I think this is different on the NCCH layer.

I&apos;m looking into the correct way to remove the contentsScale code from these classes, but I&apos;m unsure of the correct location to relocate this scale.

My plan is to remove the scale, and try to place it in the CCLTH, with the hope that the unit tests will highlight the regressions due to corner cases.  

Is my present solution of applying it during CCLayerTreeHost::updateLayers(...) reasonable?  (Assuming that I also apply the device scale factor correctly.)

I&apos;m still not quite sure how to deal with the different scaling behaviour in the NonCompositedContentHost, but am discussing the issue with danakj@.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703167</commentid>
    <comment_count>10</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-08-23 11:10:34 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; (In reply to comment #6)
&gt; &gt; &gt; Created an attachment (id=159943) [details] [details] [details]
&gt; &gt; &gt; Patch that updates (in a very hacky way), LayerChromium::contentsScale.
&gt; &gt; 
&gt; &gt; If you don&apos;t mind, I think I&apos;d like to have this in a separate prerequisite patch, ideally one that also removes the contentsScale-related code from GraphicsLayerChromium and WebContentLayer.
&gt; &gt; 
&gt; &gt; I think there is definitely more to it than what you do here, because although this handles page scale, you&apos;re calling updateLayerScale with just the PSF, whereas GraphicsLayerChromium sets the contentsScale to DSF * PSF.  Although, as another wrinkle, I think this is different on the NCCH layer.
&gt; 
&gt; I&apos;m looking into the correct way to remove the contentsScale code from these classes, but I&apos;m unsure of the correct location to relocate this scale.

Those classes are just the indirect callers of LayerChromium::setContentsScale. Moving the calling code to somewhere like CCLTH or CCLTHCommon where you can call it on every layer every update seems like the right way to relocate this.

The only downside of setting contents scale late in the update pass is that any invalidations you get are in the wrong space (because contentBounds is wrong). However, it looks like when you change the contents scale, then we correctly invalidate the entire layer.  Those invalidations are now all moot, regardless of whether you set the contents scale before or after the invalidations.  So, I think it&apos;s still correct to set contents scale ta the beginning of update.

&gt; My plan is to remove the scale, and try to place it in the CCLTH, with the hope that the unit tests will highlight the regressions due to corner cases.  

That will get you most of the way there.  I don&apos;t think we have good testing for the NonCompositedContentHost other than via layout tests.  I think (but am not 100% positive) that we have some device scale compositing layout tests, so maybe you&apos;re covered there too.

&gt; Is my present solution of applying it during CCLayerTreeHost::updateLayers(...) reasonable?  (Assuming that I also apply the device scale factor correctly.)

Seems pretty reasonable.  I would either put it there or add it as part of the &quot;calculateDrawTransforms&quot; pass in CCLayerTreeHostCommon where we already recurse through the entire layer tree and update a bunch of derived layer state.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703168</commentid>
    <comment_count>11</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-08-23 11:15:27 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; That will get you most of the way there.  I don&apos;t think we have good testing for the NonCompositedContentHost other than via layout tests.  I think (but am not 100% positive) that we have some device scale compositing layout tests, so maybe you&apos;re covered there too.

Turning on DSF layout tests is still being worked on I believe. tdanderson@ should know the state of it all though.

&gt; &gt; Is my present solution of applying it during CCLayerTreeHost::updateLayers(...) reasonable?  (Assuming that I also apply the device scale factor correctly.)
&gt; 
&gt; Seems pretty reasonable.  I would either put it there or add it as part of the &quot;calculateDrawTransforms&quot; pass in CCLayerTreeHostCommon where we already recurse through the entire layer tree and update a bunch of derived layer state.

calcDraw will be harder because this is a main-thread-only construct. So updateLayers is probably the best place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716076</commentid>
    <comment_count>12</comment_count>
      <attachid>163130</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 07:57:04 -0700</bug_when>
    <thetext>Created attachment 163130
Alpha version of the new pinch zoom algorithm.

Patch indicating a general idea of the new pinch zoom algorithm.

Style and variable naming still need to be addressed, but there are functional issues that I&apos;m still trying to track down.  The naming of the blue-box viewport is to correspond with the terminology of the new design.

High-level summary:
 - On pinch, the Impl thread maintains a &apos;blue box&apos; viewport.  The entire page is scaled, and this viewport moves within the scaled page.  
 - Movement of the blue-box viewport is not reflected by the current scroll-bar position.  This viewport can only be positioned via a pinch-zoom move, or during a scroll-to-edge-of-page event.
 - During scroll, the main page is scrolled first.  If it is not possible for the page to scroll, then the blue box viewport applies the scroll.

I&apos;d like to request some assistance resolving bugs in the following areas.  Please look for in-line comments for further explanation.
 - The center of the pinch zoom is not correct.  I believe this is because of either the order that the transformations are applied, or because I&apos;m confusing the coordinates in which the layers reside.
 - The performance of the scroll is very bad.  I think this is because I&apos;m somehow triggering re-painting of the tiles.
 - I am unable to scroll to the bottom of the page.  This is likely a max-scroll position problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716108</commentid>
    <comment_count>13</comment_count>
      <attachid>163130</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 08:33:48 -0700</bug_when>
    <thetext>Comment on attachment 163130
Alpha version of the new pinch zoom algorithm.

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

I have a few questions about the correctness of the approach that I&apos;ve taken here.  Can reviewers/experts please remark on if this is the correct path?

The focus here is the architecture of the change.  I would like correct style, and bike-shed the variable names in a subsequent review.

&gt; WebKit/chromium/src/WebViewImpl.cpp:212
&gt; +const float WebView::minPageScaleFactor = 1.0;

For the moment, I modified this constant to prevent zoom-out.  This simplifies the scrolling logic, for the moment.

Zoom-in is much more critical in terms of feature-set.

&gt; WebCore/platform/graphics/chromium/cc/CCThreadProxy.cpp:479
&gt; +    m_pendingBeginFrameRequest-&gt;blueBox = m_layerTreeHostImpl-&gt;blueBox();

When beginning a new frame, push the blue box coordinates to the main thread, so that the translation offsets can be used in the calculation of the tiles that need to be drawn.

Note that I do not follow the m_sentPageScaleFactor model of the CCLayerTreeHostImpl class.  I send the real-time position of the box.  This should be safe, because a translation will potentially only result in new tiles at the boundary of the viewport being painted, correct?

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:323
&gt; +        m_rootScrollLayerImpl-&gt;setTransform(scaleMatrix);

Apply the transformation to position the &apos;blue box&apos; viewport in the impl thread to the root scroll layer.

I&apos;m concerned that there may be a problem here with the order of transformations.  During pinch zoom, the transformation is first applied via the page scale delta, and then the application of this matrix.  After pinch zoom, the delta is pushed into m_pageScale, and so the entire scaling is performed in this matrix.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:920
&gt; +    maxScroll.scale(1 / (m_deviceScaleFactor * m_pageScale));

This is not sufficient to allow scrolling to the bottom of the page.  Is there another scroll factor that needs to be updated?  I&apos;m presently debugging this.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1032
&gt; +        viewport-&gt;applyScroll(unscrolled);

Apply the portion of the scroll that was outside of the m_maxScrollPosition to the blue-box viewport, to allow scrolling into the zoomed in portion of the page.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:502
&gt; +    if (false /*layer-&gt;boundsContainPageScale()*/)

I&apos;ve come across a problem here with the current page scale implementation.

Respecting the boundsContainPageScale prevents the root scroll layer from being re-painted at the correct resolution after pinch zoom release.  I don&apos;t think that it&apos;s safe to blindly disregard this setting.

My understanding is that the NCCH is corresponding to the root scroll layer.  Because of this the page-scale semantics may need to be changed.  These layers need to be re-painted at the correct resolution, and the only means I know of to do this is via page scale.  

Can someone chime in on if it&apos;s possible to entirely remove the boundsContainPageScale flag, so that scale is applied uniformly?

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:541
&gt; +                              -m_blueBoxLocation.y());

From how I understand the system, the calculateDrawTransforms(...) routine is invoked to compute the set of tiles needed for display.

I pass the page scale and blue box position to ensure that the correct set of tiles are ready for use in the impl thread.

Question:  Are there performance/correctness concerns with this approach?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716256</commentid>
    <comment_count>14</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 10:46:41 -0700</bug_when>
    <thetext>There are other correctness issues with this change:  

Flash elements are not scaled properly during the zoom.

For example, watching a clip on youtube has the following behaviour:
 - During pinch zoom there is no change to the scale/positioning of the flash player
 - On pinch release, the flash element is re-positioned, but at an incorrect location.  The scale is still not modified.

Strangly, some flash elements still render correctly:
 - The pre-roll ad on this flash game scales properly during pinch zoom.
 - Once the game starts, the game itself exhibits similar problems to the youtube issue above.
 - http://www.addictinggames.com/action-games/soul-searchin-game.jsp

Also, fixed position elements are not scrolled at the same rate as the page when a page scale is applied.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716372</commentid>
    <comment_count>15</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 12:40:18 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; There are other correctness issues with this change:  
&gt; 
&gt; Flash elements are not scaled properly during the zoom.
&gt; 
&gt; For example, watching a clip on youtube has the following behaviour:
&gt;  - During pinch zoom there is no change to the scale/positioning of the flash player
&gt;  - On pinch release, the flash element is re-positioned, but at an incorrect location.  The scale is still not modified.
&gt; 
&gt; Strangly, some flash elements still render correctly:
&gt;  - The pre-roll ad on this flash game scales properly during pinch zoom.
&gt;  - Once the game starts, the game itself exhibits similar problems to the youtube issue above.
&gt;  - http://www.addictinggames.com/action-games/soul-searchin-game.jsp
&gt; 
&gt; Also, fixed position elements are not scrolled at the same rate as the page when a page scale is applied.

Shawn, can you please have a look at this?  I&apos;m reviewing the scroll compensation path in CCLayerTreeHostCommon to determine if it is not taking page scale into account, but have found any solid leads.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716380</commentid>
    <comment_count>16</comment_count>
      <attachid>163130</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-10 12:47:40 -0700</bug_when>
    <thetext>Comment on attachment 163130
Alpha version of the new pinch zoom algorithm.

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

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:117
&gt; +        overflow.setWidth(m_redBounds.width() - localBounds.maxX());

Negative overflow width? (I guess this is unused atm)

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:321
&gt; +        scaleMatrix.scale(m_pageScale);
&gt; +#if 1
&gt; +        scaleMatrix.translate(-m_blueBox.location().x(),
&gt; +                              -m_blueBox.location().y());

FYI in this order, the translate will also get scaled.

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:323
&gt;&gt; +        m_rootScrollLayerImpl-&gt;setTransform(scaleMatrix);
&gt; 
&gt; Apply the transformation to position the &apos;blue box&apos; viewport in the impl thread to the root scroll layer.
&gt; 
&gt; I&apos;m concerned that there may be a problem here with the order of transformations.  During pinch zoom, the transformation is first applied via the page scale delta, and then the application of this matrix.  After pinch zoom, the delta is pushed into m_pageScale, and so the entire scaling is performed in this matrix.

I think we should apply the scaling the same way we apply deviceScaleFactor, by passing it to calcDrawTransforms. Not by setting a transform on any layers here. You should be able to just include it with the m_deviceScaleFactor being passed to calcDraw below.

I think the translation should go in the same way, and it can be set on the deviceScaleTransform inside CCLTHCommon, instead of setting it on a layer also. In terms of ordering, I think it would be:
deviceScaleTransform.scale(deviceScaleFactor)
deviceScaleTransform.scale(pageScaleFactor)
deviceScaleTransform.translate(-blueBoxOffset)

This is assuming the blueBox position is in logical pixels (ie. redBox pixels/layout pixels)

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:913
&gt; -            viewBounds.scale(m_deviceScaleFactor);
&gt; +            viewBounds.scale(m_deviceScaleFactor * m_pageScale);

I think viewBounds should be the number of physical pixels that can be displayed. So it should not be scaled by pageScale.

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:920
&gt;&gt; +    maxScroll.scale(1 / (m_deviceScaleFactor * m_pageScale));
&gt; 
&gt; This is not sufficient to allow scrolling to the bottom of the page.  Is there another scroll factor that needs to be updated?  I&apos;m presently debugging this.

This should be correct. You&apos;re getting a size in the layer&apos;s contentSpace, which will include the pageScale now. I think maybe taking out the pageScale above should fix things up?

maxScroll is &quot;in content pixels&quot; might be better said than &quot;in physical pixels&quot;. And scroll positions are &quot;in logical pixels&quot;.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1066
&gt; -    pendingDelta.scale(m_deviceScaleFactor);
&gt; +    pendingDelta.scale(m_deviceScaleFactor * m_pageScale);

This scale should really be moved into the scrollLayerWithScreenSpaceDelta() function, given the name of the function. But I&apos;m now getting confused about scrollOffset being content pixels or logical pixels and seeing inconsistency, I will keep reading to figure this out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716540</commentid>
    <comment_count>17</comment_count>
      <attachid>163130</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-10 14:45:26 -0700</bug_when>
    <thetext>Comment on attachment 163130
Alpha version of the new pinch zoom algorithm.

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

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1066
&gt;&gt; +    pendingDelta.scale(m_deviceScaleFactor * m_pageScale);
&gt; 
&gt; This scale should really be moved into the scrollLayerWithScreenSpaceDelta() function, given the name of the function. But I&apos;m now getting confused about scrollOffset being content pixels or logical pixels and seeing inconsistency, I will keep reading to figure this out.

After more reading I think this line is in the wrong place, but it&apos;s doing the &quot;right thing&quot; in the wrong place. This assumes that the screenSpaceTransform() for the layer has a pageScale built in, which it will, so yay. But its wrong if m_scrollDeltaIsInScreenSpace is false.

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:502
&gt;&gt; +    if (false /*layer-&gt;boundsContainPageScale()*/)
&gt; 
&gt; I&apos;ve come across a problem here with the current page scale implementation.
&gt; 
&gt; Respecting the boundsContainPageScale prevents the root scroll layer from being re-painted at the correct resolution after pinch zoom release.  I don&apos;t think that it&apos;s safe to blindly disregard this setting.
&gt; 
&gt; My understanding is that the NCCH is corresponding to the root scroll layer.  Because of this the page-scale semantics may need to be changed.  These layers need to be re-painted at the correct resolution, and the only means I know of to do this is via page scale.  
&gt; 
&gt; Can someone chime in on if it&apos;s possible to entirely remove the boundsContainPageScale flag, so that scale is applied uniformly?

We should remove it, as the goal of this change is to make all layers have !boundsContainPageScale(). Also stop setting the flag to true in NCCH again (I know you just added that :))</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716587</commentid>
    <comment_count>18</comment_count>
      <attachid>163130</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 15:19:09 -0700</bug_when>
    <thetext>Comment on attachment 163130
Alpha version of the new pinch zoom algorithm.

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

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:117
&gt;&gt; +        overflow.setWidth(m_redBounds.width() - localBounds.maxX());
&gt; 
&gt; Negative overflow width? (I guess this is unused atm)

Good point.  I think there may be an error here.

This code path is used for when the user is pinch-zoom-moving (scrolling while pinched) to position the blue box viewport.  If the viewport is adjacent to the edge of the red-viewport, then the scroll overflow will be used to attempt to scroll the root scroll layer.

You are correct, the overflow should be positive in this case, and below.

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:321
&gt;&gt; +                              -m_blueBox.location().y());
&gt; 
&gt; FYI in this order, the translate will also get scaled.

Thanks for the remark.

This was a problem with the translation offsets.  Because they were being scaled, the blue box was scrolling at a rate proportional to the scale - hence it would not &apos;stick&apos; to the user&apos;s fingerpress.  I believe this may be in relation to your comment in CCLayerTreeHostImpl::scrollBy.

However, by adding a scaling factor of 1/m_pageScale to the transformation, I am getting incorrect results on pinch-release.  I believe this may be due to the scale moving from m_pageScaleDelta to m_pageScale, and the order of transformations in CCLTHC.  Investigating.

&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:323
&gt;&gt;&gt; +        m_rootScrollLayerImpl-&gt;setTransform(scaleMatrix);
&gt;&gt; 
&gt;&gt; Apply the transformation to position the &apos;blue box&apos; viewport in the impl thread to the root scroll layer.
&gt;&gt; 
&gt;&gt; I&apos;m concerned that there may be a problem here with the order of transformations.  During pinch zoom, the transformation is first applied via the page scale delta, and then the application of this matrix.  After pinch zoom, the delta is pushed into m_pageScale, and so the entire scaling is performed in this matrix.
&gt; 
&gt; I think we should apply the scaling the same way we apply deviceScaleFactor, by passing it to calcDrawTransforms. Not by setting a transform on any layers here. You should be able to just include it with the m_deviceScaleFactor being passed to calcDraw below.
&gt; 
&gt; I think the translation should go in the same way, and it can be set on the deviceScaleTransform inside CCLTHCommon, instead of setting it on a layer also. In terms of ordering, I think it would be:
&gt; deviceScaleTransform.scale(deviceScaleFactor)
&gt; deviceScaleTransform.scale(pageScaleFactor)
&gt; deviceScaleTransform.translate(-blueBoxOffset)
&gt; 
&gt; This is assuming the blueBox position is in logical pixels (ie. redBox pixels/layout pixels)

Yes, the assignment of the transform here feels hacky to me.

My concerns with passing it into calcDrawTransforms are the following:
 a) Only the root-scrolling-layer should be scaled, which means that the recursive descent in calculateDrawingTransforms would have to pick out this layer to apply the transformation.
 b) My earlier patches in this issue tried this approach of combining the page-scale-factor directly into the device-scale-factor, and found it to be problematic because it scales the entire layer-tree.  See the attached image on the issue to observe the effect.

&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:913
&gt;&gt; +            viewBounds.scale(m_deviceScaleFactor * m_pageScale);
&gt; 
&gt; I think viewBounds should be the number of physical pixels that can be displayed. So it should not be scaled by pageScale.

Yes, I think you are right here.

Removed.

&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:920
&gt;&gt;&gt; +    maxScroll.scale(1 / (m_deviceScaleFactor * m_pageScale));
&gt;&gt; 
&gt;&gt; This is not sufficient to allow scrolling to the bottom of the page.  Is there another scroll factor that needs to be updated?  I&apos;m presently debugging this.
&gt; 
&gt; This should be correct. You&apos;re getting a size in the layer&apos;s contentSpace, which will include the pageScale now. I think maybe taking out the pageScale above should fix things up?
&gt; 
&gt; maxScroll is &quot;in content pixels&quot; might be better said than &quot;in physical pixels&quot;. And scroll positions are &quot;in logical pixels&quot;.

Noted.

Unfortunately, the above suggestion did not resolve the scroll-to-page-boundaries issue.

&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1066
&gt;&gt;&gt; +    pendingDelta.scale(m_deviceScaleFactor * m_pageScale);
&gt;&gt; 
&gt;&gt; This scale should really be moved into the scrollLayerWithScreenSpaceDelta() function, given the name of the function. But I&apos;m now getting confused about scrollOffset being content pixels or logical pixels and seeing inconsistency, I will keep reading to figure this out.
&gt; 
&gt; After more reading I think this line is in the wrong place, but it&apos;s doing the &quot;right thing&quot; in the wrong place. This assumes that the screenSpaceTransform() for the layer has a pageScale built in, which it will, so yay. But its wrong if m_scrollDeltaIsInScreenSpace is false.

Good point.  I&apos;ll look into moving it.

&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:502
&gt;&gt;&gt; +    if (false /*layer-&gt;boundsContainPageScale()*/)
&gt;&gt; 
&gt;&gt; I&apos;ve come across a problem here with the current page scale implementation.
&gt;&gt; 
&gt;&gt; Respecting the boundsContainPageScale prevents the root scroll layer from being re-painted at the correct resolution after pinch zoom release.  I don&apos;t think that it&apos;s safe to blindly disregard this setting.
&gt;&gt; 
&gt;&gt; My understanding is that the NCCH is corresponding to the root scroll layer.  Because of this the page-scale semantics may need to be changed.  These layers need to be re-painted at the correct resolution, and the only means I know of to do this is via page scale.  
&gt;&gt; 
&gt;&gt; Can someone chime in on if it&apos;s possible to entirely remove the boundsContainPageScale flag, so that scale is applied uniformly?
&gt; 
&gt; We should remove it, as the goal of this change is to make all layers have !boundsContainPageScale(). Also stop setting the flag to true in NCCH again (I know you just added that :))

Will there be larger ramifications by removing it?  Will other assumptions in NCCH be broken?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716605</commentid>
    <comment_count>19</comment_count>
      <attachid>163130</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-10 15:28:35 -0700</bug_when>
    <thetext>Comment on attachment 163130
Alpha version of the new pinch zoom algorithm.

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

&gt;&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1066
&gt;&gt;&gt;&gt; +    pendingDelta.scale(m_deviceScaleFactor * m_pageScale);
&gt;&gt;&gt; 
&gt;&gt;&gt; This scale should really be moved into the scrollLayerWithScreenSpaceDelta() function, given the name of the function. But I&apos;m now getting confused about scrollOffset being content pixels or logical pixels and seeing inconsistency, I will keep reading to figure this out.
&gt;&gt; 
&gt;&gt; After more reading I think this line is in the wrong place, but it&apos;s doing the &quot;right thing&quot; in the wrong place. This assumes that the screenSpaceTransform() for the layer has a pageScale built in, which it will, so yay. But its wrong if m_scrollDeltaIsInScreenSpace is false.
&gt; 
&gt; Good point.  I&apos;ll look into moving it.

Im making a bug regarding this line, there are deeper issues afoot.

&gt;&gt;&gt;&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:502
&gt;&gt;&gt;&gt; +    if (false /*layer-&gt;boundsContainPageScale()*/)
&gt;&gt;&gt; 
&gt;&gt;&gt; I&apos;ve come across a problem here with the current page scale implementation.
&gt;&gt;&gt; 
&gt;&gt;&gt; Respecting the boundsContainPageScale prevents the root scroll layer from being re-painted at the correct resolution after pinch zoom release.  I don&apos;t think that it&apos;s safe to blindly disregard this setting.
&gt;&gt;&gt; 
&gt;&gt;&gt; My understanding is that the NCCH is corresponding to the root scroll layer.  Because of this the page-scale semantics may need to be changed.  These layers need to be re-painted at the correct resolution, and the only means I know of to do this is via page scale.  
&gt;&gt;&gt; 
&gt;&gt;&gt; Can someone chime in on if it&apos;s possible to entirely remove the boundsContainPageScale flag, so that scale is applied uniformly?
&gt;&gt; 
&gt;&gt; We should remove it, as the goal of this change is to make all layers have !boundsContainPageScale(). Also stop setting the flag to true in NCCH again (I know you just added that :))
&gt; 
&gt; Will there be larger ramifications by removing it?  Will other assumptions in NCCH be broken?

I don&apos;t think so as long as the contents size for the layer is correct. You should verify that view-&gt;contentsSize() is not being affected by page scale anymore in WebViewImpl::updateLayerTreeViewport.

Also WebViewImpl::didChangeContentsSize should not have anything to do with page scale anymore, but this is inside ENABLE(VIEWPORT) so maybe we dont care about it at the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716623</commentid>
    <comment_count>20</comment_count>
      <attachid>163238</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-10 15:53:05 -0700</bug_when>
    <thetext>Created attachment 163238
Remove references to blue-box position from the main thread.

From a discussion with danakj@, we decided that it would be simpler if the main thread prepared all of the necessary tiles for the pinch zoom.  

Previously, the main thread applied a scale corresponding to the page-scale, and translation corresponding to the blue-box viewport to the set of drawing transforms.  This ensured that only those tiles visible from the zoomed viewport would be painted, at the expense of some complexity.  By removing these transforms, all the tiles are prepared at a resolution scaled by the page scale.

The downside is that for high-scale-factors many tiles are prepared, when only a few are visible in the blue-box viewport.  For a v1 implementation, this is an acceptable trade-off.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717176</commentid>
    <comment_count>21</comment_count>
      <attachid>163364</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-11 08:09:23 -0700</bug_when>
    <thetext>Created attachment 163364
Pinch zoom with correct fixed position offsets.

This patch shows how to resolve the problems with regards to the following:
 - Fixed position element positions during scroll.
 - Scrolling to the end of the page.

The previous problems were a result of the order of transformations in CCLTHC.  

During pinch zoom, the scroll is applied after the application of the page scale delta.  This meant that scroll offsets are multiplied by the page scale delta.  In my previous patches, I had been using the layer&apos;s transform to apply the page scale to the layer.  This transform happens after the translation for scrolling.  As a result, after pinch, when the delta is reset to 1, the scroll offsets were no longer being scaled.  It was not possible to scroll to the extents of the page because the transform was incorrect.

Because I now scroll the root-scroll-layer at the correct rate with respect to the page scale, the positioning of the fixed-position-elements is also correct.  They were already moving at the correct scrolling rate.

Fallout from this change is the following issue:
 - scrolling in screen-space is incorrect, because I did not modify the code to take into consideration these new transforms.
 - The use of CCLayerTreeHostImpl::contentBounds changed when updating the max scroll position.  Now all scrolling is performed entirely in layout space.  The page scale should have no effect on the current scroll offset, or the maximum extents of the scroll.  (Is this an ok assumption?)

Remaining high-level issues:
 - Scaling of flash elements is still broken, as previously noted.
 - I still disregard the boundsContainContentScale setting in CCLayerTreeHost to ensure that the tiles are re-painted at the correct resolution for the scale.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717474</commentid>
    <comment_count>22</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-11 12:26:51 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; Created an attachment (id=163364) [details]
&gt; Pinch zoom with correct fixed position offsets.
&gt; 
&gt; This patch shows how to resolve the problems with regards to the following:
&gt;  - Fixed position element positions during scroll.
&gt;  - Scrolling to the end of the page.
&gt; 
&gt; The previous problems were a result of the order of transformations in CCLTHC.  
&gt; 
&gt; During pinch zoom, the scroll is applied after the application of the page scale delta.  This meant that scroll offsets are multiplied by the page scale delta.  In my previous patches, I had been using the layer&apos;s transform to apply the page scale to the layer.  This transform happens after the translation for scrolling.  As a result, after pinch, when the delta is reset to 1, the scroll offsets were no longer being scaled.  It was not possible to scroll to the extents of the page because the transform was incorrect.
&gt; 
&gt; Because I now scroll the root-scroll-layer at the correct rate with respect to the page scale, the positioning of the fixed-position-elements is also correct.  They were already moving at the correct scrolling rate.
&gt; 
&gt; Fallout from this change is the following issue:
&gt;  - scrolling in screen-space is incorrect, because I did not modify the code to take into consideration these new transforms.
&gt;  - The use of CCLayerTreeHostImpl::contentBounds changed when updating the max scroll position.  Now all scrolling is performed entirely in layout space.  The page scale should have no effect on the current scroll offset, or the maximum extents of the scroll.  (Is this an ok assumption?)
&gt; 
&gt; Remaining high-level issues:
&gt;  - Scaling of flash elements is still broken, as previously noted.

Manual testing has found that flapper-flash content works correctly.

Windowed plugins will not work with this scaling approach as-is without a means  to explicitly sent the zoom/translation transform on each plugin window.

&gt;  - I still disregard the boundsContainContentScale setting in CCLayerTreeHost to ensure that the tiles are re-painted at the correct resolution for the scale.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717496</commentid>
    <comment_count>23</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-09-11 13:22:07 -0700</bug_when>
    <thetext>Here is jam@&apos;s initial patch for Aura NPAPI plugin support: https://codereview.chromium.org/10905122/

We chatted offline and he told me that the scrolling jank in this approach is not currently seen as a major concern, considering the rarity of NPAPI plugins.  I&apos;m guessing bugginess with pinch zoom may not be either.

In the long run, the solution to both scrolling jank and pinch zoom is to attach root scroll/pageScaleFactor as metadata to ubercompositor frames.  Then they can be exported to RenderWidgetHost as frames arrive and used to adjust plugin size/scale.  So maybe we can wait until ubercompositor is shipping before solving the NPAPI problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717515</commentid>
    <comment_count>24</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-09-11 13:45:16 -0700</bug_when>
    <thetext>We aren&apos;t supporting any impl-thread manipulations (scrolling, zooming, etc) with NPAPI plugins.  They&apos;ll update eventually, but for now we don&apos;t think it&apos;s worth effort getting them working smoothly.  NPAPI is the old and busted.  PPAPI is the new hotness and should work fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717663</commentid>
    <comment_count>25</comment_count>
      <attachid>163466</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-11 16:03:45 -0700</bug_when>
    <thetext>Created attachment 163466
Working V1 prototype.

Patch that corrects the screen-space scrolling issues that were present in previous patches.  

The problem was that the page-scale was being applied to the scroll delta, but because all scrolling is now in layout space, this factor is not needed.  Note that I haven&apos;t tested this change extensively with --force-device-scale-factor, so there may be lurking issues.

Given the previous comments on NPAPI scaling, I think that this patch represents a reasonable state for an initial check-in, on which we can iterate/bug-fix.  I&apos;m thinking something along the lines of #if USE(COMPOSITOR_PINCH_ZOOM) to selectively enable the patch.  I will need some guidance on how to best test this behaviour.

I will start a separate patch to see if I can remove the use of LayerChromium::boundsContainPageScale(...).  If we can submit this patch with a conditional #define, then removing boundsContainPageScale may not be a strict prerequisite.

Question:  Do we need to preserve the CSS-transform based pinch implementation, even after this patch has fully landed and is enabled?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717749</commentid>
    <comment_count>26</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-11 17:13:35 -0700</bug_when>
    <thetext>(In reply to comment #25)
&gt; Created an attachment (id=163466) [details]
&gt; Working V1 prototype.
&gt; 
&gt; Patch that corrects the screen-space scrolling issues that were present in previous patches.  
&gt; 
&gt; The problem was that the page-scale was being applied to the scroll delta, but because all scrolling is now in layout space, this factor is not needed.  Note that I haven&apos;t tested this change extensively with --force-device-scale-factor, so there may be lurking issues.

Nice job on all the fixes!

&gt; Given the previous comments on NPAPI scaling, I think that this patch represents a reasonable state for an initial check-in, on which we can iterate/bug-fix.  I&apos;m thinking something along the lines of #if USE(COMPOSITOR_PINCH_ZOOM) to selectively enable the patch.  I will need some guidance on how to best test this behaviour.

There are page-scale layout tests already, but they test the non-compositor-based path currently. We should do something for page-scale similar to what is being done for device-scale: https://bugs.webkit.org/show_bug.cgi?id=90192

I think adding some layout tests that cover both features together would be admirable.

&gt; I will start a separate patch to see if I can remove the use of LayerChromium::boundsContainPageScale(...).  If we can submit this patch with a conditional #define, then removing boundsContainPageScale may not be a strict prerequisite.

Instead of an ifdef, how about we add a WebSettings value &quot;appliesPageScaleFactorInCompositor&quot; similar to device scale factor? Aura/mac/win8 can set this to true. Android can set this to false until they don&apos;t need it anymore. Can the changes to scrolling be done separately as a pre-req to this patch so that they can be reviewed in their own right?

When WebSettings::appliesPageScaleFactorInCompositor is true, then boundsContainPageScale() is false for the NCCH layer.

&gt; Question:  Do we need to preserve the CSS-transform based pinch implementation, even after this patch has fully landed and is enabled?

We should keep it until android is done with it so we don&apos;t diverge from their tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717764</commentid>
    <comment_count>27</comment_count>
      <attachid>163466</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-11 17:35:53 -0700</bug_when>
    <thetext>Comment on attachment 163466
Working V1 prototype.

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

&gt; WebKit/chromium/src/WebViewImpl.cpp:212
&gt; -const float WebView::minPageScaleFactor = 0.25;
&gt; +const float WebView::minPageScaleFactor = 1.0;

Hardcoding this will break layout tests. It should not be changed here, chromium can set its limits appropriately.

&gt; WebKit/chromium/src/WebViewImpl.cpp:3917
&gt; +        WebPoint scrollPoint(scrollOffset.width, scrollOffset.height);
&gt; +        setPageScaleFactor(pageScaleFactor() * pageScaleDelta, scrollPoint);

This should only be done if applyPageScaleInCompositor is true. @aelias this change would break android for now, wouldn&apos;t it?

&gt; WebCore/page/Frame.cpp:956
&gt; +    return 1;
&gt; +#if 0

If the WebSettings::appliesPageScaleInCompositor is moved into WebCore::Settings, then we could use it here to decide to return 1.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:872
&gt; +    IntSize scaledContentSize = contentSize();
&gt; +    scaledContentSize.scale(1 / m_pageScale);

This can give you off-by-ones! When converting between bounds-contentBounds, you must use the ratio between the two, both for width and height independently. Why not use a function that returns bounds() instead of contentBounds()?

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:874
&gt; +    IntSize maxScroll = scaledContentSize - expandedIntSize(viewBounds);

The viewBounds is currently scaled by device scale factor. So you can&apos;t compare it to this logical pixels value 1:1. Why do you want this function to not work in content space anymore?

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:1092
&gt; +    // Compute the appliation of the delta with respect to the current page zoom of the page.
&gt; +    move.scale(1 / m_pageScale);

Please don&apos;t work in a coordinate space that includes device scale but not page scale. Use them both together (physical pixels) or use neither (logical pixels). I know this code is currently a bit inconsistent, but it is attempting to work in content space. If you want to include the device scale in the working coordinate space, then I&apos;d prefer that you also include the page scale.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHost.cpp:485
&gt; -    if (layer-&gt;boundsContainPageScale())
&gt; +    if (false /*layer-&gt;boundsContainPageScale()*/)

This means boundsContainPageScale() is wrong on the NCCH layer. It should be false if we are applying page scale in the compositor, since its bounds will not contain the page scale anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>717995</commentid>
    <comment_count>28</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-09-12 00:32:32 -0700</bug_when>
    <thetext>&gt; &gt; WebKit/chromium/src/WebViewImpl.cpp:3917
&gt; &gt; +        WebPoint scrollPoint(scrollOffset.width, scrollOffset.height);
&gt; &gt; +        setPageScaleFactor(pageScaleFactor() * pageScaleDelta, scrollPoint);
&gt; 
&gt; This should only be done if applyPageScaleInCompositor is true. @aelias this change would break android for now, wouldn&apos;t it?

Yes, it would.  Please make the behavior change conditional on applyXYZScaleFactorInCompositor or your new ENABLE flag.

Thanks for keeping Android in mind.  Yes, we need to keep the old path around for now.  When Android gets around to transitioning to the new one, I&apos;ll delete the old behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718031</commentid>
    <comment_count>29</comment_count>
      <attachid>163466</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-09-12 01:11:01 -0700</bug_when>
    <thetext>Comment on attachment 163466
Working V1 prototype.

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

Very promising patch, a few minor comments.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerImpl.h:205
&gt; +    float pageScale() const { return m_pageScale; }

Could we call it pageScaleFactor everywhere?  It was my inconsistency in the first place, but we should take the opportunity to fix it.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerImpl.h:365
&gt; +    float m_pageScale;

Now that we are up to three of these values we should probably collapse them into a precomputed WebTransformationMatrix m_implTransform.  (By &quot;impl&quot; I mean that it&apos;s set directly on the impl thread and not synchronized from the main-thread layer.)  It&apos;s getting to be too much specialized stuff just for the root scroll layer.  And &quot;m_localOffset&quot; is an unclear name I&apos;d like to get rid of.

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:86
&gt; +private:

Could we move CCLayerTreeHostImpl::m_pageScaleDelta into this class as well?

&gt; WebCore/platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:87
&gt; +    float m_scaleFactor;

Rename these to m_pageScaleFactor and m_pinchViewportScrollDelta.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718638</commentid>
    <comment_count>30</comment_count>
      <attachid>163676</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-12 13:04:05 -0700</bug_when>
    <thetext>Created attachment 163676
Rename pageScale, and easy comments addressed.

Patch for sharing with other team members.  Please do not review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718644</commentid>
    <comment_count>31</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-09-12 13:09:18 -0700</bug_when>
    <thetext>If you don&apos;t want something reviewed all you have to do is not set &quot;review?&quot;.  If you&apos;re using webkit-patch, pass the --no-review flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>718883</commentid>
    <comment_count>32</comment_count>
      <attachid>163735</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-12 16:50:14 -0700</bug_when>
    <thetext>Created attachment 163735
Addition of Settings flag to disable page-scale pinch zoom.

I updated this change to reflect GTFO.

The corresponding CC changes are now tracked in the following issue: https://codereview.chromium.org/10916279

I added a new setting to the various Settings classes, applyPageScaleFactorInCompositor, and selectively disabled the behaviour that I introduced based on its setting.

This flag will be controlled by a chromium command line argument, added in the corresponding chromium change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719139</commentid>
    <comment_count>33</comment_count>
      <attachid>163735</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-13 00:16:53 -0700</bug_when>
    <thetext>Comment on attachment 163735
Addition of Settings flag to disable page-scale pinch zoom.

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

&gt; WebKit/chromium/src/WebViewImpl.cpp:3802
&gt; +            if (m_webSettings-&gt;applyPageScaleFactorInCompositor())
&gt; +                m_minimumPageScaleFactor = 1;

This will still make it hard to run the layout tests with the new page scale method since they test &lt; 1. The right place for this is around here, based on pinch being enabled: http://code.google.com/searchframe#OAMlx_jo-ck/src/content/renderer/render_view_impl.cc&amp;l=2962

&gt; WebCore/page/Frame.cpp:957
&gt; +    if (page-&gt;settings()-&gt;applyPageScaleFactorInCompositor())
&gt; +        return 1;

There&apos;s a null check for page below but it is being dereffed here, so the ordering is off. It should be null checked before this deref.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719493</commentid>
    <comment_count>34</comment_count>
      <attachid>163877</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-13 08:03:58 -0700</bug_when>
    <thetext>Created attachment 163877
Address review comments from danakj.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719495</commentid>
    <comment_count>35</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-13 08:07:25 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719566</commentid>
    <comment_count>36</comment_count>
      <attachid>163877</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-13 09:03:09 -0700</bug_when>
    <thetext>Comment on attachment 163877
Address review comments from danakj.

Thanks twiz, the only piece missing from my pov is that NCCH is still setting boundsContainPageScale() when they do not (ie when applyPageScaleInCompositor is true).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719654</commentid>
    <comment_count>37</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-09-13 10:37:07 -0700</bug_when>
    <thetext>Assuming folks like the rest of this change, the API change LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719688</commentid>
    <comment_count>38</comment_count>
      <attachid>163914</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-13 11:08:48 -0700</bug_when>
    <thetext>Created attachment 163914
Correct NCCH to respect applyPageScaleFactorInCompositor setting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719691</commentid>
    <comment_count>39</comment_count>
      <attachid>163916</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-13 11:10:03 -0700</bug_when>
    <thetext>Created attachment 163916
Set of failing layout tests.

Attaching a set of layout test failures wrt the changes in NCCH.

If this patch is applied, and enabled, then the following compositing tests will fail.  (Note that this is without the corresponding change in the chromium side.)

Unexpected flakiness: image-only failures (2)
  compositing/geometry/fixed-position-iframe-composited-page-scale.html = IMAGE+TEXT IMAGE PASS
  compositing/geometry/fixed-position-transform-composited-page-scale.html = IMAGE+TEXT IMAGE PASS


Regressions: Unexpected text failures : (1)
  compositing/geometry/object-clip-rects-assertion.html = TEXT

Regressions: Unexpected image-only failures : (2)
  compositing/geometry/fixed-position-composited-page-scale.html = IMAGE
  compositing/geometry/fixed-position-iframe-composited-page-scale-down.html = IMAGE

Since the flag is disabled by default, these tests are not an immediate issue, and will be resolved when the chromium compositor change lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719700</commentid>
    <comment_count>40</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-09-13 11:15:06 -0700</bug_when>
    <thetext>You shouldn&apos;t cause a test to start being flaky - that&apos;s pretty much always the sign of a bug.  If the other tests are definitely going to fail then mark them in TestExpectations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>719729</commentid>
    <comment_count>41</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-13 11:40:59 -0700</bug_when>
    <thetext>(In reply to comment #40)
&gt; You shouldn&apos;t cause a test to start being flaky - that&apos;s pretty much always the sign of a bug.  If the other tests are definitely going to fail then mark them in TestExpectations

This change is a no-op.  The failures I mentioned above were to indicate the failures that would occur, if applyPageScaleFactorInCompositor were enabled.

No new tests fail when the change is applied with the flag disabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725549</commentid>
    <comment_count>42</comment_count>
      <attachid>165142</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-21 09:00:06 -0700</bug_when>
    <thetext>Created attachment 165142
Rebaseline to 129227.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725550</commentid>
    <comment_count>43</comment_count>
      <attachid>165142</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-09-21 09:02:10 -0700</bug_when>
    <thetext>Comment on attachment 165142
Rebaseline to 129227.

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

Should we land this first so we have the ability to turn the feature on, regardless of the compositor page scaling being landable yet?

&gt; Source/WebKit/chromium/ChangeLog:1118
&gt; +&gt;&gt;&gt;&gt;&gt;&gt;&gt; .r128636

merge error</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725615</commentid>
    <comment_count>44</comment_count>
      <attachid>165152</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-21 10:18:51 -0700</bug_when>
    <thetext>Created attachment 165152
Correct merge error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725619</commentid>
    <comment_count>45</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-21 10:25:21 -0700</bug_when>
    <thetext>(In reply to comment #43)
&gt; (From update of attachment 165142 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=165142&amp;action=review
&gt; 
&gt; Should we land this first so we have the ability to turn the feature on, regardless of the compositor page scaling being landable yet?

Yes, I think we should land this change.  However, it may be worth double checking that the use of the flag in this change is fully compatible with the corresponding cr change.

On the CR side change the major missing components are unittests for this new path.

&gt; 
&gt; &gt; Source/WebKit/chromium/ChangeLog:1118
&gt; &gt; +&gt;&gt;&gt;&gt;&gt;&gt;&gt; .r128636
&gt; 
&gt; merge error</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726972</commentid>
    <comment_count>46</comment_count>
      <attachid>165441</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-24 13:53:37 -0700</bug_when>
    <thetext>Created attachment 165441
Rebaseline to 129404</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728068</commentid>
    <comment_count>47</comment_count>
      <attachid>165699</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-25 16:19:06 -0700</bug_when>
    <thetext>Created attachment 165699
Stop applying page-scale factor to scroll offsets in WebViewImpl.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728984</commentid>
    <comment_count>48</comment_count>
      <attachid>165878</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-26 14:35:06 -0700</bug_when>
    <thetext>Created attachment 165878
Add WebCompositor::setPageScalePinchZoomEnabled(...) settings exports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>729004</commentid>
    <comment_count>49</comment_count>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-09-26 14:57:19 -0700</bug_when>
    <thetext>(In reply to comment #48)
&gt; Created an attachment (id=165878) [details]
&gt; Add WebCompositor::setPageScalePinchZoomEnabled(...) settings exports.

These exports are required to pass the pinch-zoom-in-compositor flag to the instance of the CC in the chromium repository.

See comments on the corresponding cr issue for full details:  https://codereview.chromium.org/10916279/#msg12</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>731935</commentid>
    <comment_count>50</comment_count>
      <attachid>166532</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-10-01 13:38:09 -0700</bug_when>
    <thetext>Created attachment 166532
Rebaseline to 130047.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>732008</commentid>
    <comment_count>51</comment_count>
      <attachid>165878</attachid>
    <who name="Jeff Timanus">twiz</who>
    <bug_when>2012-10-01 14:44:36 -0700</bug_when>
    <thetext>Comment on attachment 165878
Add WebCompositor::setPageScalePinchZoomEnabled(...) settings exports.

I think this version of the change is ready for landing.  Can a reviewer please take a look?

There should not be any more changes on the Chromium side of this work that will require modifications here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>732298</commentid>
    <comment_count>52</comment_count>
      <attachid>166532</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2012-10-01 23:09:31 -0700</bug_when>
    <thetext>Comment on attachment 166532
Rebaseline to 130047.

LGTM.  James, can you review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734011</commentid>
    <comment_count>53</comment_count>
      <attachid>166532</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-10-03 13:57:37 -0700</bug_when>
    <thetext>Comment on attachment 166532
Rebaseline to 130047.

R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734031</commentid>
    <comment_count>54</comment_count>
      <attachid>166532</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-03 14:22:07 -0700</bug_when>
    <thetext>Comment on attachment 166532
Rebaseline to 130047.

Clearing flags on attachment: 166532

Committed r130321: &lt;http://trac.webkit.org/changeset/130321&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734033</commentid>
    <comment_count>55</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-03 14:22:16 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737190</commentid>
    <comment_count>56</comment_count>
      <attachid>165878</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-10-08 16:16:01 -0700</bug_when>
    <thetext>Comment on attachment 165878
Add WebCompositor::setPageScalePinchZoomEnabled(...) settings exports.

Cleared review? from obsolete attachment 165878 so that this bug does not appear in http://webkit.org/pending-review.  If you would like this patch reviewed, please attach it to a new bug (or re-open this bug before marking it for review again).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156756</attachid>
            <date>2012-08-06 13:42:08 -0700</date>
            <delta_ts>2012-09-10 07:57:04 -0700</delta_ts>
            <desc>Hacking around - first protypes</desc>
            <filename>webkit_pinch.patch</filename>
            <type>text/plain</type>
            <size>2434</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcCBTb3VyY2UvV2ViQ29yZS9w
YWdlL0ZyYW1lLmNwcAppbmRleCA1NjkyMDhmLi45NDdiYTJhIDEwMDY0NAotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCkBA
IC05NzYsMTIgKzk3NiwxNSBAQCB2b2lkIEZyYW1lOjpzZXRQYWdlQW5kVGV4dFpvb21GYWN0b3Jz
KGZsb2F0IHBhZ2Vab29tRmFjdG9yLCBmbG9hdCB0ZXh0Wm9vbUZhY3RvcgogCiBmbG9hdCBGcmFt
ZTo6ZnJhbWVTY2FsZUZhY3RvcigpIGNvbnN0CiB7CisgICAgcmV0dXJuIDE7CisjaWYgMAogICAg
IFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAKICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxl
ZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFpbmVyIGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBz
Y2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBtYWluIGZyYW1lLgogICAgIGlmICghcGFnZSB8fCBw
YWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQogICAgICAgICByZXR1cm4gMTsKICAgICByZXR1cm4g
cGFnZS0+cGFnZVNjYWxlRmFjdG9yKCk7CisjZW5kaWYKIH0KIAogdm9pZCBGcmFtZTo6c3VzcGVu
ZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCkKZGlmZiAtLWdpdCBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcCBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhv
c3RJbXBsLmNwcAppbmRleCA0OTNmMzVhLi5iYzRhNTQ0IDEwMDY0NAotLS0gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJU
cmVlSG9zdEltcGwuY3BwCkBAIC0xODAsNyArMTgwLDcgQEAgYm9vbCBDQ0xheWVyVHJlZUhvc3RJ
bXBsOjpjYW5EcmF3KCkKICAgICB9CiAgICAgcmV0dXJuIHRydWU7CiB9Ci0KKyAKIENDR3JhcGhp
Y3NDb250ZXh0KiBDQ0xheWVyVHJlZUhvc3RJbXBsOjpjb250ZXh0KCkgY29uc3QKIHsKICAgICBy
ZXR1cm4gbV9jb250ZXh0LmdldCgpOwpAQCAtNzY1LDggKzc2NSwxMCBAQCB2b2lkIENDTGF5ZXJU
cmVlSG9zdEltcGw6OnNldFBhZ2VTY2FsZUZhY3RvckFuZExpbWl0cyhmbG9hdCBwYWdlU2NhbGUs
IGZsb2F0IG1pbgogICAgIGZsb2F0IHBhZ2VTY2FsZUNoYW5nZSA9IHBhZ2VTY2FsZSAvIG1fcGFn
ZVNjYWxlOwogICAgIG1fcGFnZVNjYWxlID0gcGFnZVNjYWxlOwogCisjaWYgMAogICAgIGlmIChw
YWdlU2NhbGVDaGFuZ2UgIT0gMSkKICAgICAgICAgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2FsZUNo
YW5nZShtX3Jvb3RTY3JvbGxMYXllckltcGwsIHBhZ2VTY2FsZUNoYW5nZSk7CisjZW5kaWYKIAog
ICAgIC8vIENsYW1wIGRlbHRhIHRvIGxpbWl0cyBhbmQgcmVmcmVzaCBkaXNwbGF5IG1hdHJpeC4K
ICAgICBzZXRQYWdlU2NhbGVEZWx0YShtX3BhZ2VTY2FsZURlbHRhIC8gbV9zZW50UGFnZVNjYWxl
RGVsdGEpOwpAQCAtMTAzOSwxNSArMTA0MSwxNyBAQCBzdGF0aWMgdm9pZCBjb2xsZWN0U2Nyb2xs
RGVsdGFzKENDU2Nyb2xsQW5kU2NhbGVTZXQqIHNjcm9sbEluZm8sIENDTGF5ZXJJbXBsKiBsYQog
UGFzc093blB0cjxDQ1Njcm9sbEFuZFNjYWxlU2V0PiBDQ0xheWVyVHJlZUhvc3RJbXBsOjpwcm9j
ZXNzU2Nyb2xsRGVsdGFzKCkKIHsKICAgICBPd25QdHI8Q0NTY3JvbGxBbmRTY2FsZVNldD4gc2Ny
b2xsSW5mbyA9IGFkb3B0UHRyKG5ldyBDQ1Njcm9sbEFuZFNjYWxlU2V0KCkpOwotCisgICAgIAor
I2lmIDAKICAgICBpZiAobV9waW5jaEdlc3R1cmVBY3RpdmUgfHwgbV9wYWdlU2NhbGVBbmltYXRp
b24pIHsKICAgICAgICAgbV9zZW50UGFnZVNjYWxlRGVsdGEgPSBzY3JvbGxJbmZvLT5wYWdlU2Nh
bGVEZWx0YSA9IDE7Ci0gICAgICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSkKKyAgICAgICBp
ZiAobV9waW5jaEdlc3R1cmVBY3RpdmUpCiAgICAgICAgICAgICBjb21wdXRlUGluY2hab29tRGVs
dGFzKHNjcm9sbEluZm8uZ2V0KCkpOwogICAgICAgICBlbHNlIGlmIChtX3BhZ2VTY2FsZUFuaW1h
dGlvbi5nZXQoKSkKICAgICAgICAgICAgIGNvbXB1dGVEb3VibGVUYXBab29tRGVsdGFzKHNjcm9s
bEluZm8uZ2V0KCkpOwogICAgICAgICByZXR1cm4gc2Nyb2xsSW5mby5yZWxlYXNlKCk7CiAgICAg
fQorI2VuZGlmCiAKICAgICBjb2xsZWN0U2Nyb2xsRGVsdGFzKHNjcm9sbEluZm8uZ2V0KCksIG1f
cm9vdExheWVySW1wbC5nZXQoKSk7CiAgICAgbV9zZW50UGFnZVNjYWxlRGVsdGEgPSBzY3JvbGxJ
bmZvLT5wYWdlU2NhbGVEZWx0YSA9IG1fcGFnZVNjYWxlRGVsdGE7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>158123</attachid>
            <date>2012-08-13 15:24:34 -0700</date>
            <delta_ts>2012-09-10 07:57:04 -0700</delta_ts>
            <desc>Patch attempting to apply zoom without Frame::frameScaleFactor.</desc>
            <filename>broken_zoom.diff</filename>
            <type>text/plain</type>
            <size>8200</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcCBTb3VyY2UvV2ViQ29yZS9w
YWdlL0ZyYW1lLmNwcAppbmRleCA1NjkyMDhmLi5mZWU1Mjg2IDEwMDY0NAotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9GcmFtZS5jcHAKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCkBA
IC05NzYsMTIgKzk3NiwxNyBAQCB2b2lkIEZyYW1lOjpzZXRQYWdlQW5kVGV4dFpvb21GYWN0b3Jz
KGZsb2F0IHBhZ2Vab29tRmFjdG9yLCBmbG9hdCB0ZXh0Wm9vbUZhY3RvcgogCiBmbG9hdCBGcmFt
ZTo6ZnJhbWVTY2FsZUZhY3RvcigpIGNvbnN0CiB7CisjaWYgMQorICAgIHJldHVybiAxOworI2Vu
ZGlmCisjaWYgMAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAKICAgICAvLyBNYWlu
IGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFpbmVyIGJ1dCBpbm5lciBm
cmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBtYWluIGZyYW1lLgogICAg
IGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQogICAgICAgICByZXR1cm4g
MTsKICAgICByZXR1cm4gcGFnZS0+cGFnZVNjYWxlRmFjdG9yKCk7CisjZW5kaWYKIH0KIAogdm9p
ZCBGcmFtZTo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCkKZGlmZiAtLWdp
dCBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3QuY3BwIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
TGF5ZXJUcmVlSG9zdC5jcHAKaW5kZXggZTNiOGFkMS4uNzAzODJiNSAxMDA2NDQKLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5j
cHAKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUcmVlSG9zdC5jcHAKQEAgLTQ4Miw3ICs0ODIsNyBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6
dXBkYXRlTGF5ZXJzKExheWVyQ2hyb21pdW0qIHJvb3RMYXllciwgQ0NUZXh0dXJlVXBkYXRlciYg
dQogCiAgICAgewogICAgICAgICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdDo6
dXBkYXRlTGF5ZXJzOjpjYWxjRHJhd0V0YyIpOwotICAgICAgICBDQ0xheWVyVHJlZUhvc3RDb21t
b246OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zKHJvb3RMYXllciwgZGV2aWNlVmlld3BvcnRTaXpl
KCksIG1fZGV2aWNlU2NhbGVGYWN0b3IsIGxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS5tYXhU
ZXh0dXJlU2l6ZSwgdXBkYXRlTGlzdCk7CisgICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6
Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMocm9vdExheWVyLCBkZXZpY2VWaWV3cG9ydFNpemUoKSwg
bV9kZXZpY2VTY2FsZUZhY3RvciAqIG1fcGFnZVNjYWxlRmFjdG9yLCBsYXllclJlbmRlcmVyQ2Fw
YWJpbGl0aWVzKCkubWF4VGV4dHVyZVNpemUsIHVwZGF0ZUxpc3QpOwogCiAgICAgICAgIEZsb2F0
UmVjdCByb290U2Npc3NvclJlY3QoRmxvYXRQb2ludCgwLCAwKSwgZGV2aWNlVmlld3BvcnRTaXpl
KCkpOwogICAgICAgICBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZVZpc2libGVBbmRT
Y2lzc29yUmVjdHModXBkYXRlTGlzdCwgcm9vdFNjaXNzb3JSZWN0KTsKZGlmZiAtLWdpdCBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RD
b21tb24uY3BwIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
TGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAKaW5kZXggMDA5NDZmNC4uY2RkMmM3YSAxMDA2NDQKLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVl
SG9zdENvbW1vbi5jcHAKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5jcHAKQEAgLTg1MSwxMiArODUxLDEzIEBAIHN0
YXRpYyB2b2lkIGNhbGN1bGF0ZVZpc2libGVBbmRTY2lzc29yUmVjdHNJbnRlcm5hbChjb25zdCBM
YXllckxpc3QmIHJlbmRlclN1cmZhCiAgICAgfQogfQogCi12b2lkIENDTGF5ZXJUcmVlSG9zdENv
bW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMoTGF5ZXJDaHJvbWl1bSogcm9vdExheWVyLCBj
b25zdCBJbnRTaXplJiBkZXZpY2VWaWV3cG9ydFNpemUsIGZsb2F0IGRldmljZVNjYWxlRmFjdG9y
LCBpbnQgbWF4VGV4dHVyZVNpemUsIFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiYgcmVu
ZGVyU3VyZmFjZUxheWVyTGlzdCkKK3ZvaWQgQ0NMYXllclRyZWVIb3N0Q29tbW9uOjpjYWxjdWxh
dGVEcmF3VHJhbnNmb3JtcyhMYXllckNocm9taXVtKiByb290TGF5ZXIsIGNvbnN0IEludFNpemUm
IGRldmljZVZpZXdwb3J0U2l6ZSwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIC8qZmxvYXQgcGFn
ZVNjYWxlRmFjdG9yLCovIGludCBtYXhUZXh0dXJlU2l6ZSwgVmVjdG9yPFJlZlB0cjxMYXllckNo
cm9taXVtPiA+JiByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KQogewogICAgIEludFJlY3QgdG90YWxE
cmF3YWJsZUNvbnRlbnRSZWN0OwogICAgIFdlYlRyYW5zZm9ybWF0aW9uTWF0cml4IGlkZW50aXR5
TWF0cml4OwogICAgIFdlYlRyYW5zZm9ybWF0aW9uTWF0cml4IGRldmljZVNjYWxlVHJhbnNmb3Jt
OwogICAgIGRldmljZVNjYWxlVHJhbnNmb3JtLnNjYWxlKGRldmljZVNjYWxlRmFjdG9yKTsKKyAg
ICAvL2RldmljZVNjYWxlVHJhbnNmb3JtLnNjYWxlKHBhZ2VTY2FsZUZhY3Rvcik7CiAKICAgICBz
ZXR1cFJvb3RMYXllckFuZFN1cmZhY2VGb3JSZWN1cnNpb248TGF5ZXJDaHJvbWl1bSwgVmVjdG9y
PFJlZlB0cjxMYXllckNocm9taXVtPiA+ID4ocm9vdExheWVyLCByZW5kZXJTdXJmYWNlTGF5ZXJM
aXN0LCBkZXZpY2VWaWV3cG9ydFNpemUpOwogCkBAIC04NjUsMTIgKzg2NiwxMyBAQCB2b2lkIEND
TGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMoTGF5ZXJDaHJvbWl1
bSogcm9vdExheWVyLCBjbwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJvb3RMYXllci0+cmVuZGVyU3VyZmFjZSgpLT5sYXll
ckxpc3QoKSwgMCwgbWF4VGV4dHVyZVNpemUsIGRldmljZVNjYWxlRmFjdG9yLCB0b3RhbERyYXdh
YmxlQ29udGVudFJlY3QpOwogfQogCi12b2lkIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3Vs
YXRlRHJhd1RyYW5zZm9ybXMoQ0NMYXllckltcGwqIHJvb3RMYXllciwgY29uc3QgSW50U2l6ZSYg
ZGV2aWNlVmlld3BvcnRTaXplLCBmbG9hdCBkZXZpY2VTY2FsZUZhY3RvciwgQ0NMYXllclNvcnRl
ciogbGF5ZXJTb3J0ZXIsIGludCBtYXhUZXh0dXJlU2l6ZSwgVmVjdG9yPENDTGF5ZXJJbXBsKj4m
IHJlbmRlclN1cmZhY2VMYXllckxpc3QpCit2b2lkIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2Fs
Y3VsYXRlRHJhd1RyYW5zZm9ybXMoQ0NMYXllckltcGwqIHJvb3RMYXllciwgY29uc3QgSW50U2l6
ZSYgZGV2aWNlVmlld3BvcnRTaXplLCBmbG9hdCBkZXZpY2VTY2FsZUZhY3RvciwgLypmbG9hdCBw
YWdlU2NhbGVGYWN0b3IsKi8gQ0NMYXllclNvcnRlciogbGF5ZXJTb3J0ZXIsIGludCBtYXhUZXh0
dXJlU2l6ZSwgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIHJlbmRlclN1cmZhY2VMYXllckxpc3QpCiB7
CiAgICAgSW50UmVjdCB0b3RhbERyYXdhYmxlQ29udGVudFJlY3Q7CiAgICAgV2ViVHJhbnNmb3Jt
YXRpb25NYXRyaXggaWRlbnRpdHlNYXRyaXg7CiAgICAgV2ViVHJhbnNmb3JtYXRpb25NYXRyaXgg
ZGV2aWNlU2NhbGVUcmFuc2Zvcm07CiAgICAgZGV2aWNlU2NhbGVUcmFuc2Zvcm0uc2NhbGUoZGV2
aWNlU2NhbGVGYWN0b3IpOworICAgIC8vZGV2aWNlU2NhbGVUcmFuc2Zvcm0uc2NhbGUocGFnZVNj
YWxlRmFjdG9yKTsKIAogICAgIHNldHVwUm9vdExheWVyQW5kU3VyZmFjZUZvclJlY3Vyc2lvbjxD
Q0xheWVySW1wbCwgVmVjdG9yPENDTGF5ZXJJbXBsKj4gPihyb290TGF5ZXIsIHJlbmRlclN1cmZh
Y2VMYXllckxpc3QsIGRldmljZVZpZXdwb3J0U2l6ZSk7CiAKZGlmZiAtLWdpdCBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24u
aCBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RDb21tb24uaAppbmRleCBiNmUyYTA3Li41MTUyMmYxIDEwMDY0NAotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9u
LmgKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUcmVlSG9zdENvbW1vbi5oCkBAIC00MSw4ICs0MSw4IEBAIGNsYXNzIENDTGF5ZXJUcmVlSG9z
dENvbW1vbiB7CiBwdWJsaWM6CiAgICAgc3RhdGljIEludFJlY3QgY2FsY3VsYXRlVmlzaWJsZVJl
Y3QoY29uc3QgSW50UmVjdCYgdGFyZ2V0U3VyZmFjZVJlY3QsIGNvbnN0IEludFJlY3QmIGxheWVy
Qm91bmRSZWN0LCBjb25zdCBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9uTWF0cml4Jik7CiAKLSAg
ICBzdGF0aWMgdm9pZCBjYWxjdWxhdGVEcmF3VHJhbnNmb3JtcyhMYXllckNocm9taXVtKiByb290
TGF5ZXIsIGNvbnN0IEludFNpemUmIGRldmljZVZpZXdwb3J0U2l6ZSwgZmxvYXQgZGV2aWNlU2Nh
bGVGYWN0b3IsIGludCBtYXhUZXh0dXJlU2l6ZSwgVmVjdG9yPFJlZlB0cjxMYXllckNocm9taXVt
PiA+JiByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KTsKLSAgICBzdGF0aWMgdm9pZCBjYWxjdWxhdGVE
cmF3VHJhbnNmb3JtcyhDQ0xheWVySW1wbCogcm9vdExheWVyLCBjb25zdCBJbnRTaXplJiBkZXZp
Y2VWaWV3cG9ydFNpemUsIGZsb2F0IGRldmljZVNjYWxlRmFjdG9yLCBDQ0xheWVyU29ydGVyKiwg
aW50IG1heFRleHR1cmVTaXplLCBWZWN0b3I8Q0NMYXllckltcGwqPiYgcmVuZGVyU3VyZmFjZUxh
eWVyTGlzdCk7CisgICAgc3RhdGljIHZvaWQgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMoTGF5ZXJD
aHJvbWl1bSogcm9vdExheWVyLCBjb25zdCBJbnRTaXplJiBkZXZpY2VWaWV3cG9ydFNpemUsIC8q
ZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsKi8gZmxvYXQgcGFnZVNjYWxlRmFjdG9yLCBpbnQgbWF4
VGV4dHVyZVNpemUsIFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiYgcmVuZGVyU3VyZmFj
ZUxheWVyTGlzdCk7CisgICAgc3RhdGljIHZvaWQgY2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMoQ0NM
YXllckltcGwqIHJvb3RMYXllciwgY29uc3QgSW50U2l6ZSYgZGV2aWNlVmlld3BvcnRTaXplLCAv
KmZsb2F0IGRldmljZVNjYWxlRmFjdG9yLCovIGZsb2F0IHBhZ2VTY2FsZUZhY3RvciwgQ0NMYXll
clNvcnRlciosIGludCBtYXhUZXh0dXJlU2l6ZSwgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIHJlbmRl
clN1cmZhY2VMYXllckxpc3QpOwogCiAgICAgc3RhdGljIHZvaWQgY2FsY3VsYXRlVmlzaWJsZUFu
ZFNjaXNzb3JSZWN0cyhWZWN0b3I8Q0NMYXllckltcGwqPiYgcmVuZGVyU3VyZmFjZUxheWVyTGlz
dCwgY29uc3QgRmxvYXRSZWN0JiByb290U2Npc3NvclJlY3QpOwogICAgIHN0YXRpYyB2b2lkIGNh
bGN1bGF0ZVZpc2libGVBbmRTY2lzc29yUmVjdHMoVmVjdG9yPFJlZlB0cjxMYXllckNocm9taXVt
PiA+JiByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0LCBjb25zdCBGbG9hdFJlY3QmIHJvb3RTY2lzc29y
UmVjdCk7CmRpZmYgLS1naXQgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKaW5kZXggNDkzZjM1YS4u
ZDA0Yjc0YiAxMDA2NDQKLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcApAQCAtMTgwLDcg
KzE4MCw3IEBAIGJvb2wgQ0NMYXllclRyZWVIb3N0SW1wbDo6Y2FuRHJhdygpCiAgICAgfQogICAg
IHJldHVybiB0cnVlOwogfQotCisgCiBDQ0dyYXBoaWNzQ29udGV4dCogQ0NMYXllclRyZWVIb3N0
SW1wbDo6Y29udGV4dCgpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fY29udGV4dC5nZXQoKTsKQEAg
LTI1Miw3ICsyNTIsNyBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OmNhbGN1bGF0ZVJlbmRl
clN1cmZhY2VMYXllckxpc3QoQ0NMYXllckxpc3QmIHJlbmRlclN1cgogCiAgICAgewogICAgICAg
ICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdEltcGw6OmNhbGNEcmF3RXRjIik7
Ci0gICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMo
bV9yb290TGF5ZXJJbXBsLmdldCgpLCBkZXZpY2VWaWV3cG9ydFNpemUoKSwgbV9kZXZpY2VTY2Fs
ZUZhY3RvciwgJm1fbGF5ZXJTb3J0ZXIsIGxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS5tYXhU
ZXh0dXJlU2l6ZSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7CisgICAgICAgIENDTGF5ZXJUcmVl
SG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMobV9yb290TGF5ZXJJbXBsLmdldCgp
LCBkZXZpY2VWaWV3cG9ydFNpemUoKSwgbV9kZXZpY2VTY2FsZUZhY3RvciAqIG1fcGFnZVNjYWxl
LCAmbV9sYXllclNvcnRlciwgbGF5ZXJSZW5kZXJlckNhcGFiaWxpdGllcygpLm1heFRleHR1cmVT
aXplLCByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KTsKIAogICAgICAgICB0cmFja0RhbWFnZUZvckFs
bFN1cmZhY2VzKG1fcm9vdExheWVySW1wbC5nZXQoKSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7
CiAKQEAgLTc2NSw4ICs3NjUsMTAgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXRQYWdl
U2NhbGVGYWN0b3JBbmRMaW1pdHMoZmxvYXQgcGFnZVNjYWxlLCBmbG9hdCBtaW4KICAgICBmbG9h
dCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKICAgICBtX3BhZ2VT
Y2FsZSA9IHBhZ2VTY2FsZTsKIAorI2lmIDAKICAgICBpZiAocGFnZVNjYWxlQ2hhbmdlICE9IDEp
CiAgICAgICAgIGFkanVzdFNjcm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UobV9yb290U2Nyb2xsTGF5
ZXJJbXBsLCBwYWdlU2NhbGVDaGFuZ2UpOworI2VuZGlmCiAKICAgICAvLyBDbGFtcCBkZWx0YSB0
byBsaW1pdHMgYW5kIHJlZnJlc2ggZGlzcGxheSBtYXRyaXguCiAgICAgc2V0UGFnZVNjYWxlRGVs
dGEobV9wYWdlU2NhbGVEZWx0YSAvIG1fc2VudFBhZ2VTY2FsZURlbHRhKTsKQEAgLTEwMzksMTMg
KzEwNDEsMTYgQEAgc3RhdGljIHZvaWQgY29sbGVjdFNjcm9sbERlbHRhcyhDQ1Njcm9sbEFuZFNj
YWxlU2V0KiBzY3JvbGxJbmZvLCBDQ0xheWVySW1wbCogbGEKIFBhc3NPd25QdHI8Q0NTY3JvbGxB
bmRTY2FsZVNldD4gQ0NMYXllclRyZWVIb3N0SW1wbDo6cHJvY2Vzc1Njcm9sbERlbHRhcygpCiB7
CiAgICAgT3duUHRyPENDU2Nyb2xsQW5kU2NhbGVTZXQ+IHNjcm9sbEluZm8gPSBhZG9wdFB0cihu
ZXcgQ0NTY3JvbGxBbmRTY2FsZVNldCgpKTsKKyAgICAgCiAKICAgICBpZiAobV9waW5jaEdlc3R1
cmVBY3RpdmUgfHwgbV9wYWdlU2NhbGVBbmltYXRpb24pIHsKICAgICAgICAgbV9zZW50UGFnZVNj
YWxlRGVsdGEgPSBzY3JvbGxJbmZvLT5wYWdlU2NhbGVEZWx0YSA9IDE7Ci0gICAgICAgIGlmICht
X3BpbmNoR2VzdHVyZUFjdGl2ZSkKKyNpZiAwCisgICAgICAgaWYgKG1fcGluY2hHZXN0dXJlQWN0
aXZlKQogICAgICAgICAgICAgY29tcHV0ZVBpbmNoWm9vbURlbHRhcyhzY3JvbGxJbmZvLmdldCgp
KTsKICAgICAgICAgZWxzZSBpZiAobV9wYWdlU2NhbGVBbmltYXRpb24uZ2V0KCkpCiAgICAgICAg
ICAgICBjb21wdXRlRG91YmxlVGFwWm9vbURlbHRhcyhzY3JvbGxJbmZvLmdldCgpKTsKKyNlbmRp
ZgogICAgICAgICByZXR1cm4gc2Nyb2xsSW5mby5yZWxlYXNlKCk7CiAgICAgfQogCg==
</data>
<flag name="review"
          id="168177"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="168178"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>158129</attachid>
            <date>2012-08-13 15:28:27 -0700</date>
            <delta_ts>2012-09-10 07:57:04 -0700</delta_ts>
            <desc>Effect of zoom out from patch 158123.</desc>
            <filename>broken_zoom.png</filename>
            <type>image/png</type>
            <size>143536</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAABIsAAAMDCAIAAACtqQICAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAP+lSURBVHhe7L0FYFzXtf3tf1/7XimFcMzMFjMz
40gasUbMzCxZBtmWGWOGOBzbSZw4cbhhZuY0VHjl9hXT9629zzkXZka27KR5bb+4q5Or0cwd0MD9
nbX32pMmGf7l5eV96zsXfOs73/vWd7+H029++7v/9a3v/Oc3v/2N//rm1//zv/7jG//5H1//xtf+
A/q6Wd/42te/gV99/Rv/iYvhwv/5X9/CtXBd7EEI20apc77NO/+Wnf7zm3R1sQfjTrS90QbdT76r
37nAcD+/9Y3/lHcVdwbbuCf/hf2Iy3/3e9++4Aff+R70w+9C34cuhC6AfnARNvCrb1/wffHA5aP+
xn/9x9f5UTt/4HbPw7/rj/RHx5OAF8DXv/FfeFbx98Lzg2eJ/gR4qeCJ/e73hcQrx/xHob+I1Ddo
g14h3/yW+Mvikt/+7ve+I/8u4q/zA/yIPwTvUO2N/8raLapfmf70dBN4ifKdHP91qL0U6QXGwmPR
5OQlZ/e6dXwx8wW+TS8zuUO5Z3EO/cr84lc/qhc/v2L5zivRj9/k55mfanq2DbI/R3sghtvFLYo7
Q28u2pXav3py5B9Rvk/pDSLepw5vVeOdl8+YeMOqffLHwlfvkX/X9/5Xj+urZ+CrZ+CrZ+CrZ+Cr
Z+CrZ+DrdBj8dRxE/ScOgcAUQInvXXjJhZdeccnk6VdMnzNt9sIZ85bMnL901gKX2Ytc5yxym01y
JS10nbnAZcb8ZdPnLZk6Z/HkWYsun7Hg0unzL5k696Ipcy6cPOeHV8z+weWzfnDZjAsunXXZwuAZ
XqlzgwsXRdfofIZj60svu2Ll6tEPPvz4409/8vEnP/nok08/+viTDz/6+MOPPvrxhx998OMPP/jx
jz/4wEE4k4TffoiLQXyVj3FdFu3EqT78SOz8Y3EtKfqRzlT65EPcB96D2NCk7Rz7+THv5IMfyzv5
/gc/hugu0W6xK97DJ5/iQX386U81ffKTn37yk58p4Xx6yLgk9oYr4urYyXvvf8B6/933Jqj33n0P
Ehd+7913Se/Y6115zjvvvvPOu2+b9M7b77zz9tvvvGXS22+99fabJr315ptvvWHSm6+/Yac3Xn/9
jdfs9Nrrrzrq1ddeffW1V5zpZeOZ4oq0Q9wQbv3tN95+903Se2++895bLNp++9033nr39bfewWVe
ff1NXOWVV1/Hfl5+BXoVp/jx1ddoJ6+98RYuRjuh677Pol2R3n4P57+B32I/b0JvK9E59Ku3+Sbe
fBs7wV165TW6iZdeefWll3ETr/Ldfv2V197Ar3AfcJnX3qBLaqI7RnoD9wTCJenCdHlxYbvLa2fq
ezDuzbyNCwud8cJ86+Jui2dG3HmcivuvHgI9V+JR8KmdxKMg8fNpulFxFXpo6vmnm1B/Aty0erz8
h+Bn2O4+4y9o/yjU82bYLd/tl1+BXnwJevkrTfwZeOGll8fViy+/MK5eeuHFL1vPv/iS1AsvPX8m
vfj8C1+qnnvhxTPp+Ref0/XCc8//C+vZ5184Nz33wrP/QD3/7HP/JDI8TPNTdL5/bn7NGF5XE3hJ
G94U2jvlS3+Tqo+FM3x0OPxqnI+giX+I/btekj6ZTZ/A+MjFOef9wct742d7/GeMvkYdxIcEZjke
rRmP6+yO+hyODN98403IdABpPryko8233obsDkT56NT+kBVHs0L2B7q/+93vcnJz//ZF/9u0adMX
u8udDeVf7A4/z96yI8OOnbj1sgVBM7zS5oXYJKF969vfWbNu7Imnnt259/Dw6o2Dq9YPrBzrHR7t
GljR3jPY0tnX2NZd39xe29BSU99UrVRT31yDcxpbcFrb1NbQ2tnU3tPaNdDWM9TZP9I1uKJnaLRn
mDW0untwVdfgKpyy6MfOgRFcsqV7oKWzv6VrgITtroHW7sHWnqG23uH2vuUd/SOdAyu7Bui62IA6
+ldAdCbtcHXnwKr23uW4YmN7b31LV21Te01Da1V9c1VdS11zZ0N7b0v3YHvfiq6h0d6VY4OrNw+v
3Ta8bjs0sn4ntGLDrhUbrlyxcffI2I7B0S29K8Y6B1a39Aw3tPXWNLaX1zSWVNTayqsLS6sKSyoK
SsoL6JQ28m1l+cVQuTjNs5VJFZXm2UpzC0k5hSWs4uyC4pyCYmu+zVpgw2lmXlFmbmFmTiFOLTkF
6db8tKy8dCgzLzUjJ9WSk2LJTk63JqVnJaZmJqbSaXxyRnyyJTYxPTYxLTo+FYqKS4mMTYbCoxOh
sKiE0Mj44Ii44PDYoLCYwLDogNAo/9BI/5AIv+BI3+AIn8BwyDsg1Ms/1NM/xNMv2MM32N03yN0n
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
WpYAFFolukSIEwRAAASqhABpruunP/j8W40LVq3T/bufjELb9suvvr7x9rtvuPWu62+dPuXya846
bzB8aFVSbDADBEAABECgnglAodVz6SPvIAACbZ6AKrQX3mp8b9V62j2F1pEU2je33Dnjpjvuuen2
e6Zeee05FwyFQmvzFQIZBAEQAAEQqH4CUGjVX0awEARAAARKJiAK7YHn31y64KNvdadRjvweWruO
23719Te33jXrlukzSKelrr7+3AuHQaGVDBoXggAIgAAIgEC5CEChlYsk4gEBEACBKiTACu3O+59/
c8mCj77R3cwUogrt9rvvu/WumbdOn3H5NTecN3g4FFoVFiFMAgEQAAEQqDcCUGj1VuLILwiAQF0R
yK3QOmzDCu2e+24jhXbXzL+WrtBWJRILHVN3nErM989vSS/U5XT88+lUOExQMulUeZbf4Xgo1gSv
LppOiQVyXPGNVnc1yweZZL0UMw01sbIQr/pjM8GL1fIyQKnyguMokw0UJ5eTSSuTDK80REFcos4A
uiz7ZHlta+3YZNUly79MxqRbYBGnIkytZEPgJauUXqaB6lgmYlYlky6CQGsFra3sl9/a5jQEbphx
5eadb+pWWchq13Svg0JrrfaBdEEABECgBQiQQrth+gMvvLXkvVXf6v69nW2fFdod99x3+92zbrt7
5hXX3nh+8T60TMOCRGJ+0im09EI9pvPJlDmWTK4iYZZ9PpFcEFzrwaDOVTJVjs4pdfxFAPBvajql
vbQcv69lLotAoW3J6g2Uv8NRZuM1OsqCy0WFFJpTfalEinbpUEdxxSm0UJiy68aK0Cw2UunklTtr
zemYFpuBAsJXsCGkfVEmzwHCGq2CSReQ8VYPUlvZL7+1zWkIUGitXn1hAAiAAAi0BQKk0G6868F5
bzcu/GT9B7J//9N/tqPZ9mnFalJod957P4m0O+6ZdeW1N10wpMRRjoEqa1gbKK5MoztuSM4P9JY9
TypuixcmCrusv8qq03TzjytXwvwI326SSoYI0G879xNN1sS5xs6jlvDpFZ9T6cRYiVsphSYpsBps
yBAc/UsfVZUpLjqWzjXjIjMinj1CWG4ZUzyqClzBjxaEv8m7VBKpulwk5tirSMSKqxP9Q5cZt61X
5eSUftnam1evyLtFZon/1Li4pTloHUjSpvXB2q3BNAuMIvctQuqP85/rMcUpXNS/4SedaZC7kwtP
qXAgSoes0QZLifpNQKpcTBjL1jRtjtVFLvzpllA8/4wtdzaGvcfGReO30BBVaRRSgcQQ9U+bGqLJ
CzodX0BhTO7sbcpvfRSPXGDiD6qPwg/VN43aVD5B5IYtMC6t0YpUJTMlZM3w4YdquGI3aaknX/Ll
6kyYakyhuGy6LGscfjbDhZIxkVPe89YNr85Q7QqSdnWMzZYPQcVwYzqsn83VJdvATVj40IpvKbgC
BEAABGqJACm0m++Z/cq7K5as3kT74tWbfvjXz9t37pHYql0HUmjT773/znvuu/OeWVddd9OFQ0eU
9h6aKjHVYLEKLZFaFTCzqkx6S4GKi0Itn0JzEkh+y7nz1wKb70PTfqHqNe6k2KxZFddCJhWVa+lM
mk2KtSKjHLUDQx0uqTvU7WJPmiRnNteR4u5LKm36i9JjVqukM8qXFLJpZ44u0r/60Z0sJIaWCkN9
RLuZZxtssxs4a46lIhnZL48AXF9We7SuytkwzXEdlC3r1GP27Xd+VK85kJ0ZkW5SH4L2wgUdvTzO
LkLFOkxqlWo5kgQWglwQ7vRzQN/fbnvVtm/NbGMVGl3nhzG2GF0dlIgro5Ic+BKPb5Lt3AcosrCY
3Es2rQNR4wll368hmkak9bnGpWkFsC1ANc2LWB5C6RYatmBSVwJaOoYGBQvB5ytdDclWaE6txVE1
csgvFPtIjg2wx9wQ/JtMuBJZUGSYZi2ubigr28qMQjMMbQHpTcY9F5Fq2EBh+HmBr9DMPYgyHfwW
QKGFCwWfQAAEQKCtESDNdduMh19/76Nlme91J4W2Q5eerNC+/uabu2Y+MH3G/bRfc/0tg4eNbI5C
U3JxCm1t0DPgXzBPlVVaoclPoilS261vmRJ2Ci22A63uEfrt52fBLSUai8q4/wYU9TAqqNDEW6K2
ud6M6WBJ98j40ORhtusvagCr0KpR4hZFOxJY/Yq68bGtxvxoP3xslK3zkPj9Zl+zVY8PTZuh+kB8
mRRuDlolTH3wFZptxcHlcaCp1Zs3G9Mpqr3qT/J8aNw/dh19KzCiPjS6IKrQsvxskTBBoUnb9tSL
8WGW5kOLV2hhkhGqvkLL5UMTTxFnSZ93pBpYTAQ5EkSmxdm0nBKLPAsIzgc+NCrBkA9NfwUiCo1S
Fh+XBz9a27me6IOtqFqztdqjGqPQ8vvQfHlpiy9wWuaqG2QOPy0yrjx9t5mTNuet+mJlF/Jbu2wK
HONPo1IwZvsPm6gO4z205txFcS0IgAAIVDkB0lx3zHr0Hws/WfnlT7r/+O//7rhrb1JoHb/+5tt7
7/vbPfc9eM+sB6+96bYhwy+qjEJbFRpb1YIKTfSP2fzjFigzzwXF3SDuALEhqiXYQ6J/kw3pkh6r
VzoHIWcL9eQqqtACjZp2bx+Km0twOW8eHQc9GBmlpt1Q5y2pNJQWiz80kYD2cqX6mnbkjn1nbIrH
qoX6zaEqp8PejO+xxTISm5CWrG+tDvTym4NxlsoAvIgPzbl9gvPCxYow46IxyMRf6vSDtkrf2Rh0
+rldstdRIovp6GvdU2+HeHpjwjhpLQlJYw+XUSFTRGRBy+lDC0jyBEghqr5Cs0YLTN3ssw9lbpyN
YSet2u9anGuPfgyR+qZfBZDtsSKNVWjWaB++V9uN1JEbZoxCk7RS5GjV+2p8wXluLpOKbQjBTcZ/
JsKmUpRaR517MFw3AtaSW7mHG0eYXmW4BTe0wECpP2ywV5e4hQcNXMJSFFBoWW0BJ0AABECg7RAg
zXXn/X9/c/GnH339L91Joe3UtXdi6/Ydv/n225kND814YPaM+2ffcMsdw0aOLlah0TQhZdnbDm/k
BARamEC2f6OFDajK5KwUY+OMKmtFO31/V4ubYeZJMUIsZ/Llnji06Xw29+FU+aiSh94z1xsO2nQm
8oUwIyFLjQQKrVRyuA4EQAAEaoAAaa7pDzz21tLPVn37H96/+c9PrND6JLbusM033667f/aj9/3t
kfsefOSm26aPGHVJsQqtBgDARBAAARAAARCoNQJQaLVWYrAXBEAABIogwAqtYc4/G1d/vO5n3X/6
z5adu/VJtOuw7bfr1j/4yJyGhx9reOixW++456KLL4VCKwItgoIACIAACIBAZQhAoVWGK2IFARAA
gaogQJrr7gfnzG9c/en6nz+RXRRa30S7jqzQHvr7k7Mfffxvjz5+210zRl8yDgqtKgoNRoAACIAA
CNQ3ASi0+i5/5B4EQKCNE1CF9k7j6s/W/0wijfZAoa1bv+GROU8//NiTDz325J33zLx47HgotDZe
HZA9EAABEACBWiAAhVYLpQQbQQAEQKBEAr5CI5FGe0ihPfr40w/PeYpE2p33zrpk7AQotBIx4zIQ
AAEQAAEQKB8BKLTysURMIAACIFB1BEhz3fPgnHeXrV694WfaP9vgFFqHbciH9ujjzzzy+NPkSZs+
4z4otKorPRgEAiAAAiBQlwSg0Oqy2JFpEACBeiEQUWgk0v6l76Ft3Z4V2t+feIbcaLTfNeO+MeMm
wodWL/UC+QQBEAABEKhiAlBoVVw4MA0EQAAEmkuANNe9D85ZsGz1mg0/624U2lbtO5JCe+zJZ0mk
0X73jPsvLVWhJRML2cz0QlkbbYExOViZeq2umSbn9VjCZxr5ONkYn0W3VGgzCchKo7pYqr+UajNj
bfJyb8Vqt5pqkxdVUQCDTBZHVrP4TM5CCa1wXXg2OHotm3RKVxw2CXlR+Ism+StW03VmWd7C06ut
kLpec56t6DZSYjFVFptdlVgrArYYAnITMy2x6EJvogrpnaoQ7EHrc6GtYcFi14VE1HQYXqK6QKti
F6z3l7nPfddq2o7WDQGF1rr8kToIgAAIVJRAboXWrsP69RvmPPXsnCdpf+beWQ+MHV+0Dy3TsIBU
llFoJh+rtFuZSC7Q8ymn2dxxppE6Y/YqE96nQL/NyVQ5OmykAJINFDP38tMp7e42d5nUworLEw9Z
3eLy9rEKs6fYUNobS7F+SquEyqsWSu36m945JyRpxSQUp9BCycV0HIvNbRWGFzLlzlqpxdQSfMq2
THBLGNuiaQRLTdPa02XVG+GYm8pUrEIzsto25KbisN/nC893bQ2nd9H8rSBOoQX1vLgWVGV3Zii0
QqsTwoEACIBADRIghTbjb3MWLF/9+cafdbc+NFJoGzY88fRzjz899/Gn5s6478FxEy8rbZRjoNDY
LbaAKJFyIxeZnicvmfOh+aosJV41Chkvxcr6Y6k6TTf/uHIF6vnQ9Pk0d0CpW8Iq0WRNukfsRapG
JxvZxT0kkWX0lyyXTDRIh0lyJOaT9XKaA+qxnhdll0om+Sr6joUyxWRFso/dJUSRuIRUlSkuOhZp
zfFSf4ufjtsaU0gHrnJFXNGYw8RMn1WqrnfsVSRixVS0JEzH26tyckq/bO3NWMV5yTQYm/lxAJ+n
tuBZyG2D6w9/a46p7Dkb5rzUNwOh7Qq8SKsht5XUf0WhTUFBacPQ9sK+byFMPFXDmJtPuO2FqoMF
6xqyNGpp+GKD3/BNNPYubZ3hXuFuIT+YKzh3r7M2N6Ho0uxB85q55lFvmHqr0Zqj+dWa4+eMs+9i
aKKZGNu44mlI+5crniHM5jJh73ekBdoRFFoLQEYSIAACINBaBFShvScKLSO7U2gd12/Y+OSzzz/5
zHNPPPPczPv/Nn7i5OYqNM4l+8Tk5zNQaJL5tdLDlvGNEsZuMT40r+NVBm7ux1t6IC0kh3wfmnYm
tM8Q9APsqMsWM6k4lBnu6Uv3zzi4XKGYx9LSj7FdFn5obY+5l8YCgyUDxaCRyHDJ2MFUQUIUhj1p
FNrpW+1fquXUETN9ROl3SjBGW/hjcqkA3LnTv/rRnSyOT2VDm1FeXj+VbbZdVnssRWB73iJRwl1M
V+VsmCrwoQXj4qw7yI5ypCrjckh0+bTrEPvOcNu5d+WuRVnZAmnF2ANHlxhhRZHqB22hbqQA1QFt
L9azxLXCb02hfGTF7Jp2cLPaIo0lkMqBAYExVii6u5zc06xmJnVnRKboHF//WGtyjWnkGpCxDdw0
VL6F+kJebuqhmuPn0XkdczYTe7fJpdBUs1mGLVrNoNBasdkhaRAAARCoNAGn0FSeBQpt6/YdN2zY
+PRz856e++JTc1+4r2H2hMumlEmhrVKnGe2eKmOFZkY8yihHs/nHPowy+dDot9WlVe6XJfKVXXSU
o58d20cRmREM6al0VSgyfrLS6GhybpF7y3XIcik022PmyzhX4g5paGDFZbZIj9DWAJsQe9E0IV90
OYVG8QWdciPkilNoRRJoveBebeEuZtCRDWCqC4Xrtun+CtywQgtamQ3T+j60uIYgxWqFvXt2Y1WZ
VjwtenbpZCk0UvVUc1qvtCqdctBs2LsVp9AcHPdEI6zQrLSPWhqNWeOxVc7T8xLQb/hB25Uj4/wM
3bSNQmPx7LxYbpRmHh+a+OM0fs2Fs0pvmNkKTR8Jxd5nAk2Yu5m4aGN9aFahefexShe4jR8KraVI
Ix0QAAEQaAUCpLlmzp7z/oo1azf9l/bMpv/+62edy7HDNhs2bnruxVfmvvDysy+81DD7kUlTpjVH
oek7aWYWEO5UGR+anR1EZwpR8ebNLFLJmUKM40ae0PrHLVAO7rm1622IE0m7Eewh0b9JUifWR9QC
VhWVRODcS6dMF8+McpTOihUDkgtxahn3iOTRPlY3kRj68d3omITMk3sO7x5f03Gg3GSsl8rguBdR
ispo1QWO6W4KQKOv3HHQWadaJtOK+ApNh7oFr/TYYmrt7KpVvrVOoakU44LWrHrT/OixXmW77LbT
7Opna2etUunbm1fQ7rQtOEXk4Nj3bH2FZj3Y3Jp0UHGwhWNWsNri6NbErctruXkUmhuGGhQuSW7y
iNtxqyZKV0W1FINHCFFy6lVTta4hQ1ZZp5b7lm+nXnTubs8xNNFMzH1YrtY7MwlObizszw80J/sS
tVZGGVaq1LdAoVUMLSIGARAAgdYnQJpr1uw5H6xc88Xm/+r+b1Vo7Tpsu3Hjpudfeu25ea/Q/uBD
j06emipWoTlfWTMPWp8TLACBGiWgYz7j/ZM1mqXizG7LQxyLI1FVoavszcAabCZQaFVVoWEMCIAA
CJSXQKDQNv33C9mtQuu47cZNm158+fUXXnr1+Zdenf3w3ydPu7xYhVZeWxEbCIAACIAACIAAEYBC
QzUAARAAgTZMwCi0Fau/2PSz7r5C2zzv1TdefOX1F19+bfajc6ak/gqF1oarArIGAiAAAiBQKwSg
0GqlpGAnCIAACJRAwPrQVn+x+WfeIwrtpVf/QSKN9of//vjU1BVQaCUgxiUgAAIg0AIE9G2u7IQK
n840l5G5YrDnzeSienn2S7ZN5r04CwuaJqqgUZSREbDB63Bhi4szr8nclikAFFqZQCIaEAABEKhG
AqrQFq5c/eXmn3UP3kPbtGnzy6+lSaS9/No/HnnsiWmXQ6FVYxHCJhAAARBwMyI2PSFnQQonRDSv
Qsu9hHTxCRVUjgVFW5BCC60A6E8pmd+OggwoKCvNCQSF1hx6uBYEQAAEqpxAToVGczkahfbaP15S
hfbXK+FDq/LihHkgAAJ1RcBMbqlrV8jaX9nZ13kdVY0EyzDYeR114ky6lL7Vv/5y87oGdFM+NFkV
zU6W6ALrrIZqoS44xusByAedZNWdp0vM5I28/qERV8Gq5ZEshQSSmVJS5n30j80S5y45q2DJ3Ucz
UqY5054ZdOwA6hSR/mYA2oW/3RSOmoUIQG9R+MrWRCi0yvJF7CAAAiDQqgRyK7T2HUmhvfJ6WvdH
5zyR+utVUGitWlhIHARAAARCBHScnogsVh3+Ao8unAoMt4x7aM00WURONJjEo4MkwxKoAIXGF/Hc
+SLS3ChH1YRWsPnL1nN4/zwd6/z63vJoZnW7GJdg9qJ5sgxa2IuYSekiHy475ior/8hUs0YgZ1kw
GoBuBZQIQIsomGRfsxAB6FlS2boKhVZZvogdBEAABFqVAGmu+2bPWbRy9Vebf9bdjHLcql3HTZs3
v/aPt177x5uvvfHmY088dfkVUGitWlZIHARAAASyCJgl3e0gvWxJ46+NFj22sYUWkTMLG+orbSx+
oj40f9G5HEtIy1JpqvpYxujmu/j883qcTsmS9DECLJznAhWaW6g6tAygp9BsPLzqZJBuMGgzS6Gx
kU0ClIXTZLH4Cm9QaBUGjOhBAARAoDUJsEJ7aM6iD1d/9d3PuocU2uus0Hif88RTf73yavjQWrOs
kDYIgAAIZBHgpZNl82cKMf4r58UK1mWmwDyxh7i7gnWWsxWavwa0VVA8qM+syCyrPjsd4i8h7Umv
tCQjYyCtd05Dir3BeedP0whlYWuz/rie0URN0rIAd2S16ywCqsQymk9dY1qiMitlS3ij1gigpuLP
FKIANUU7ytEqtLwAnUJjqaf8vajKWH+h0MoIE1GBAAiAQLURIM11/0NzFn+4+uvvftbdKLStaZTj
5u9eT/9T98effPqKq66BQqu28oM9IAACIAACBRMIzSDixG3Bl1dRQCi0KioMmAICIAAC5SaQR6Ft
s3nzd2+8+Tbt/3jr7SeeevbKq6+FQis3f8QHAiAAAiDQYgRCCi0y236LGVGWhKDQyoIRkYAACIBA
dRLIqdDaddh283ffpf/5ju5PPjP3qmuug0KrzlKEVSAAAiAAAnVFAAqtroobmQUBEKg3AqrQlny4
+pvvfqY9GOXYriMptO/fmr/gzbffpf2pZ5+76prrodDqrX4gvyAAAiAAAlVIAAqtCgsFJoEACIBA
uQhEFBqJNLtitSi0f77z3lvzVaE9f/W1UGjlwo54QAAEQAAEQKB0AlBopbPDlSAAAiBQ9QRyKrT2
HX/xnSi0f76zgDxpT899AQqt6ksTBoIACIAACNQFASi0uihmZBIEQKBeCbBCezgY5fjN954PjRTa
2+++/893SaS998xzL1xz3Q0Y5Viv9QT5BgEQAAEQqCICUGhVVBgwBQRAAATKTYA01wMPz1n60Zpv
v/+v7v/5ecvO3fomaKaQ777//p33Ppi/gPdnn3/x2utvhEIrN3/EBwIgAAIgAAJFE4BCKxoZLgAB
EACB2iFAmqvh4TmNq9as++G/uhuFtnWHbfQ9NBrlSPvTc0t/Dy2ZWMhA0gsTifmJxAI+zjRmHc8X
aGvlvH8s12ZvdgHW5qKWxU91vVJZrtSuXdrceJu4XtMKFnKtcHJlj95gklVrNXI+k7NQ0rJka/Eb
TYYdrMbLpeQthlt8bG3sinSqCapFt5FSi6mcYHkydC51txZyYZFLTXRLIYevKZpDrVUzu4Kz3Fp1
XeYcW/EoJKLQDPWFFUjeUCWaERdnnqgy+dpHcXUsVyr++UIylTNMPsK5TIVCK0NVRBQgAAIgUK0E
cvrQdMVqXQ+N9seffKbUFatXJUShJRML+AczvZA6ECnRYJmGBe6YztO36dR87slnGvWYDvVv1sb9
sSK7cLElwPHQF4lEkpOSGOW44lvQBTXJeikW8ktfcQObSCCRbJDSSaRSKe3DJfN1h0rt+kOh5SwH
RlO0jmmiVEstpnLXxuJ6z/psRVsvaZXsilgLDao5CCnz2gbzPiUpNIU4dVySQvMabzTtFikRf62z
7Cc7xdYxrV3RH50WyQgUWqF1F+FAAARAoA0RCK+H9t9gtv2t2nfcsGHjs8+/9OwLvD8w++GJk6cV
O8oxk15Fisv40LQT0bCAzjQkRXelF3qelVXUxfJD2uNV2T1/UXF5HxUXWUKq03Tzj4uMpojgvkJz
6UpPS50BrBKNU6BYb0IRVpQeVCkluTcsT6rTKVcolLXAm6G5SYm3xzzpp6xJh08kBmeTxJ7xgGRp
Yyi0HEUkYNKEzXwvAE1Lcce2jYiAaVDmDUzdXKVlozEExVR6pSjLldaHlrLuWesdyxW76YhL7WIg
HJ4zFbjEiYNEogRSSX64o98KsUxKoaTSTulxhz6gR7HFhDH2SDXWBptMpoLIJdKyEGkiksgjHr/Q
7cOmwFcv34ZaqLZKrR68pV1g7/6ToQcxnEnhpQFCt2WJxORXjzN8Iw3qpKtjapIameeGYPMc3EmM
Djd2Buezc2SvTclTJJcpvU25C7kBuToWSo6zpnkxz0Do5sapBHfmXFVL2QZNTOtGwNZmPOZ2J7dE
zzw/HqPQ0pQhEeEKM5WGD60l2hfSAAEQAIFWIkCaa+bsOe+vWLN2089rN/2X9n/pe2ik0D79bM0F
I8acP/yS84ePOfXcwb87OlmsQtNM+bor24cmv9QL1M9mxjeKPy2PQgt+48tBjX5G3ZNR/7gcceeM
I1Bo1GkW9SI2iBMjJD7pRztLt1TUsgIjT3Mn2Hgdkw1GKpjeUtAJU1eb5ss+xpZjvoT+p2+5a8J9
alcGvgFQaDmKw/aQtXtuXMGKOnjEoBVJxbO6iP3K5lc5G6bEwagF1pmCgoVGOXrVIqd/j+qV6lW5
1VC1lCZjciRJ2lyr7vKbmDQu4yDSTrnGFKPQpH76YTQ3tiFrDRfd4oB7z30KynppgfycSmZV/AT3
Ezs6QFGIiohpoa4Bhn1oev8xiKSZZzn9OQg3c654tsHyVVEfmnehlVXBzSF8QwiTkKL3q7H5Orhb
+jly1/q3lLAPjS90jim/jgWXyHMnukElU/Q/5yugmrtqKVtXwcKN1FRFChN3u/O9lF5dknTZVHq0
Is3YmC3nodBKazG4CgRAAARqggBprhtmznnx/TXvr/2v7t//SxQajXJc0ri8796H9Bl0SN9Bh/Qa
sH+nHv3KoNC2sE/MV1861tF2d/Sts7XSa18gXYrG2K57uXxoviQr+6CxPDXA6wZlqTLbG5Cf5GpV
aFwApj/fkKRNlJjf8ZLjXAqNcyU9mYYG6lLbLXvAp5d97e7gPTTH2TYZ6W3L5hxi5jhOoQUdTf9B
QLUqNCpz0+XVhxdxG3dfbXOi3rZRa+FutOY60F027+VWaEYvi6W+bM5zJ2j+V0GzUY2UpdAkCQ2V
u4VGFZpKWdMAfYVmYgsqW6EKLYcZUrLxNwRrQ1Sh+eezcmSAyiMkt+l9w69Lrs5ER8VaHyyJIhGG
UrdyK7RI1TI10d79TE1wv2HhRuf9tDFh3zw/HjXVPqrjoeV0y6XsQKE1v/EgBhAAARCoWgKkuaZO
n/PwW6tfWvUz7S+v+nnjT0ahbUMKrfdeB/fa8yDau++x707d+jZHoZGXTH7MGrlfLqMcVZvR+2mO
jnnrTN5Vy/seWplGOXKnzXZwza9+C5WUU2hkgvyKm4F/+nuvXQOBYAZQtZBZxSRDskyDUxZMLyer
t6T+HAqgo544tPX66CUaiXM+eF0W19FKaC/HhLej8oqxtK2FDQY3Sg0R7cEYudMcPhaeTJxOqw/N
6757Vc6GqR4fGmt7GpGY5kxpQ8it0JLSqeZhaDwMzHgujM+Qydhce54xo2pEZuTwoVlnUa4wWquM
P0Tic/40Be5Gk1a6/tlXZzMKzRW6U2XufpKt0FwL9RSa8QR69x8TM2XJ3Z28xwFGi0p+3XFQFU32
vduampHnhuAav1f0XjW290bnrTIPbjz947+EpncYbSAuQi4fW8ciFppRsnJrMje3yFMzaUqxVctX
Vlo3TNOz90qpJwFhWze4EvrmZSs05xZWNUsXQqFVumUhfhAAARBoRQKs0O6c89Cbq+d99LPuG3+0
s+0vXbai796HkUijvUf//XfuXqIPrRWzh6RBAASEQE4fVJXx8Yd7FWZadE7LFnNe5Tevar3fsWaX
oXq0yHjsMthZWK0qY6hCbC6m2lshCoVWxkJCVCAAAiBQbQRyK7SO2y5dtnK3fQ/vs/ehfQYd2nPA
AZ2671aaD63a8gx7QKCuCAQTRVR9tslUcZkWu5n5Okq9vNjkmggfM5dGmVMoW3QWnB1KUFLEGkml
HbA1VI2VYuFsC6+3MkkJOX55g0IrqbbiIhAAARCoDQJNKbT9ftd3n8P67n1oz4EHdOoBhVYbhQor
QQAEQAAE2jYBKLS2Xb7IHQiAQJ0TyKnQ2nf8xdLlK3ff7/f99v1tv31+22vPAzv12B0+tDqvLsg+
CIAACIBANRCAQquGUoANIAACIFAhAk340JpUaPOxgQAIgAAIgAAItCwBKLQK9YoQLQiAAAhUA4Em
Zgqh99D60SjHfQ6jUY474z20aigx2AACIAACIFD3BKDQ6r4KAAAIgEBbJkAKbUrsXI5bd9hmiczl
SOuh0d6j/347dcNcjm25KiBvIAACIAACtUIACq1WSgp2ggAIgEAJBFShzc6ebV9XrO6958G9BvJ6
aN1232fHrn3wHloJiHEJCIAACIAACJSXABRaeXkiNhAAARCoKgJOob340c+6m/XQtmrfcfHS5T0G
HNij/wE9+x/Qtd/eO+zaGwqtqgoPxoAACIAACNQnASi0+ix35BoEQKBOCDSl0Pof0L3//iTSWKF1
KU2hrUokFhLNZGIBL5iTXpjesiWVmE9nMg0LlDJ91DDp1HxeDSnTqEvr0Ec9n7XxorQUT7M3s7ht
IkHLAaVTEqMcV3xLJjQ1l6yXol2QtOJGNCOBZCJpM7AlkUyWoyyaYU25LuUFjMxaQxxl3oIIhSyX
AUXEI4stuTIo4sI8QQtZWrc8KRUUSwkNIdPgmBCe7KXVWrvUCsp3sYHsAlkZznsJ0HKkV3obN7dS
rqJN5yXbYO9MItnQdAxeiDzlS/d6DahWBXfg+ARilpC2MQjnwrfylUgkTSi0wgsBIUEABECg5gjk
VGg0ynFxI/vQuvc/gBTaruxDK3qUYya9ijpJSU9lkSrzzqwiJUZhSJJpGD8kLciZtucjWEXFNRTz
I9lEuZDecyH848oVp6/QNBVKV3paLBpVJcoKrWXvhZcnT2R/0nSe0mktCzVcSdq1WsuTWIvFEqvQ
/HyZYy4dIhDkt8UstAmJpWnX6VT4Zslgd2zbCK9ym2rgXmWmoUEWFw5XOf4kNS1V6UWHC+EULPdM
9ktetD+sDURbvb8kdOhYJIrkN51syJjwJNvslVpqiiKZpOMUHbilkOlKWRE4oSe1JlNY0++X45gw
Nld6LTPMNKTECI1HyqqQrJcUxsihoGYE0CJmiGA19gsoWxO0WnvPJiQybeP6rMy0cXtT0sQMKz32
qk4kKuVMAPz24pgzYUk/yLx3b1fy2tIEIdXgoCJkAT/X8I8DGZaLaWeAWqUlpBHKoSi0kGFhwWnv
Fdq4OHLbuBSFi9bcz4PwXCtM3duiZnAeg7ZccC2AQisYFQKCAAiAQO0RyKPQtqH30HrteXDPgQfR
3m33fXfsWuJMIYHuyjQmEgvkF9f40EzHxSqxRJICkN/MethyKDT9pS5jn8d/UlvsU9vSyly7Al6X
hTsE9MPtiU/peXEXgfVAtW3Uc6JeBluV5g4HWWp6YWnu5ZvjspZRSxCwwtL0F22+NJuSL5NlKiYq
QT1fxnpYeB7JEvFIp7QDrYZJ1fWODX82kXJmZAldZl0cQZWTUxSmChSa+PE4Ew0sIcgsbgLUhTUN
RPMYhAkdcxite5pfpURnpPPNALTUVDvpsX6rTOiU8tTUVWvJVaJerEKLhjHF5pzwHLlTlZJcZRWa
2GM360XUPIbNCPLIssHmUQWkufl4MWkbV9T2fmtuSlJP5DiujUduoaalaHhpR64E9XanpRy0I9+H
JmnodxJtRllKqcUAz+sjVTlkpKBVzf5t1uRIIuFEmVEIrsSg1hjFZRoOR6vtx1RXL1rNTkShiRkq
GrPJF3gfgEIrEBSCgQAIgEAtEsip0Np12Jbmcuwz6DASabR332P/kudyDHvG2G9mN3vsKTT5ai33
rvin2fjWYsiWr/fvJJD02bin2wKb91TddAu09+A6hWSDVXEtZFJRueZOTEb7I7b3ZuUNnY12bIqK
2gtsokyZjpF+1L+lRpn3ulgfmvGxqIcq6OT5vfaKGJMvUuqn2s30bNkw28m1x9JGbP9Purm2s6hd
RlflbJiqGOUoPgfj5gq6ttZabaFBGP9YesuWB2tXcolpbXQstdS09uqx/ZYvtG4WjSQgFlFoEpsX
RmM3alkisXcnjbylfWhijuZRZY9vhubRmsS5cE+LIvrcUEqS0yqISgPz2Ad9nBS3RX1o1jvnrnUl
KCCNgMlWaEbahYreK9844L5Cy3mjEO3t7sDuNhvOUYag5RLWVK+0/rjGFRS671tjVBwyTqFpPTRb
aU9GoNBa/MaLBEEABECg5QjkVmgdt126bEW/fQ7vPejQ3nsdSgMdS14PTRUavVEmP1SN9LueEk8a
vWZmMmqVmDkj76rJj3eFFRr/mlr9o4/MW2pz/YPYDrQ+tyYIMsqmWhWaOAe4CyxdEO1Uk8G+D60l
kZah6OIUmhuDJL06KQspmlZUaP6AKD621di6hthIPZZ2ZB7zRxWap0BcmNYvL22G6ogIdW2NXlLZ
4IeJHGuvmjW8cdc4HxpX1WyFFvGh6X0notA0DGGmqGNUnKl5IZeO3sH0Qk88l6GSZkdhbxEsKpwq
8xWaNYOzla3QjFrLeualrMSdadq4uyn5PrTsOmOdsVwvRSdzPKFrbQmqdAn+mtu+EZaMTvxmqrrV
taVPf7J9aAo8uJ9nYbIOUqMtVb2Hb7POh0YtSBJVX67ZTHaMVXE+NM0I2+nfvc0vC9dp1zCVialL
pT5thEKrSHNCpCAAAiBQHQTyK7SV/fb9XR9eEu3QHgNIoe2OuRyro9RgBQgUS6Aq/GPFGl1s+Mjj
DNZ52nNv1c0MSW1VG9pK4taHVl35MUOLW9goKLQWBo7kQAAEQKAlCeRUaO07/mLp8pW77ff7vvv8
tu/ev+058MASFJq+VNb8vSWJIC0QaFMEfH9Fm8pYTGbEgWE1WTrV6vJMXTrVoRPbRtlXmULz3bkt
DhgKrcWRI0EQAAEQaDkCTfjQmqnQWi4fSAkEQAAEQAAE6oYAFFrdFDUyCgIgUI8E8s0Uwu+h7Xt4
XxrluPdhNMpxp+67YZRjPdYR5BkEQAAEQKDKCEChVVmBwBwQAAEQKCeB3LPtd9hG53LsvdchtHff
Y7+dSp1tv5z2Ii4QAAEQAAGPgJ07MeMW9dLhnWYSFBpmKZ95DlSe7TIyD0exKONfaKS4zejSHDOO
aDJmvYpcaZrJVkxGglA6/UbeGTXM8NZmh3GJhtdPC1lsSMo5f15QDaQT+ShzOpa5Uniwq5ZIGd+L
hEIrtu4iPAiAAAjUEIF8K1b766F13W2fElasriEQMBUEQAAEao+Av5IYWR8jUcKCJ9960P6SzXos
Ex56azHrBPFODvHM+/KB/tASdEzPzs2oAXWBCrOIiC4d/qRZ50CWTNBZM3mBb1m3WmJwm1lJWxZr
i67qwZrHU2W6DIad2l5jUEs0EmuJC8MG67odFojOmG8D24kW0ymd81HOG/N0sXhdKy2q0Ox8sKxF
w3PDZtIhedz8mgaF1nyGiAEEQAAEqpZAToW2VfuOi5cu7zHgwO79D6Cp9nftt/cOXXpjlGPVFiQM
AwEQqEcCdlkwk/fIRzmrGsUEyLcetL9ks5swXtaO07UPrUxSaeSvJaBTzDtd5K9h4K9L4ekZnvND
1ongFQKyprY3ZtM/qqmcQjPzc9oVL1Tg0d8YH5pZcT5Y290PQ+JMM+XW0KPVuaNLL3CWWQqqPy20
bKCdiD+fQpMwobUWSp1YP7ZiQ6HVY3tHnkEABOqGQFMKrf8B3fvvTyJt136DoNDqplYgoyAAAjVC
IJ8PLTwiUdfNC1aZE83mrQcdWrLZKD2+JrQwnSeH/IWwzUJzdhSlvw54vELz16EOnF1hH5rzaHkK
zbiuZL2ysOIy7rhgGKFbD9AK1FzhSZvxim/B4uZm+fK0nRpUPYfqDBTHm9mIn1NoZoFs34dmVVww
YBIKrUZaFcwEARAAgVYnkG+U4+LGsA9t1z7wobV6gcEAEAABEPAJhFasZs1gVAwJAxmIJytZ61rK
3pLW7J6KrgftL9kc8qEFazF7Ci3qQzNp8KtWYR+avIVlL7Rj/0JLkKuscktdawZ0VGEeH5r603Ql
cbMCtS+BTIrBytR+mJDPTUZCUlpRHxqdEqXqLy3tL7FHUTf5HppkwSpPKDQ0XRAAARAAgcII5FFo
2/jvoXXbfd8du/aFQiuMKkKBAAiAQF0QwHrcrVXMGOXYWuSRLgiAAAi0AIF8s+3rXI699jyY9u57
7L9Tt35QaC1QJEgCBEAABKqfANbjbt0ygkJrXf5IHQRAAAQqSiD/itUr+u1zeO9Bh/be61CaLATr
oVW0JBA5CIAACIAACBRIAAqtQFAIBgIgAAK1SCC/QlvZb9/f0XLVfQYdSitW74wVq2uxhGEzCIAA
CIBAmyMAhdbmihQZAgEQAIGAQE6F1r7jL5YuX7nbfr/ru89v++79254DD9y5++7ZoxznYwMBEAAB
EAABEGhZAlBo6MqBAAiAQBsm0IQPrUmF1obRIGsgAAIgAAIgUJ0EoNCqs1xgFQiAAAiUhUC+mUKW
LlvRb19yoB1GAx1plCPeQysLcUQCAiAAAiAAAs0kAIXWTIC4HARAAASqmUDu2fY7bCNzOdI0IYfQ
3n2P/Xbqirkcq7koYRsIgAAIgEC9EIBCq5eSRj5BAATqkkC+FatlPbSD6A002rvutvcOWLG6LqsI
Mg0CIAACIFBtBKDQqq1EYA8IgAAIlJFAToW2VfuOi5cuo0n2aSW0Hnvsv2u/QTt06VXaemjJxEK2
OL0wkZifSCwQ69fK8Xw+zDQG52OO52dis5tpSJcFQ6YhkUikJK4kHdnjssSdJxJNS7ZkpdOqUPwm
C8IumUhVJJVMgwPVEF8PCk6WozJG0gEZndPmdCo2rUrlseAcRAPmsDMIVnQbSTcXcsl5ad6F6ZRp
S9qQI1vRBVc0t+ZZ38yr5Q6mWxmKr7C8awvSzT/2s6IrWRcNv5k0wpdzxWArSt28m8YWPS6MT6np
FXcdFFpxvBAaBEAABGqKQBMKjeRZtz32o7+79i1FoWUaFpD6MgrNcFlFP5gpo9P0B1702xY+7x+n
U6Lf4jaWNanYzliR7OkHPNlA19Bv75Z0Sn/I+bjym9etyeoWV1MnIBcJ6vmYrzINFeyHeT0k7h81
R5QXrNAondhuZev2NaMFIdkpt0k1qdCCqsiMMtkd8nJTqvzdoagUvNsF3c5Cl9qviiBQ2M2nkLao
Ci3fVlhaRcGIBC4i47HJ+ApNA1Te5sLzC4VWOCuEBAEQAIGaI5BvlOPipcu79z+gm/rQSKHt2rtZ
PjT+eSN32QL6N5FUv5lqMPGnJRsjx6TiPJ9bFtiy/lKqTtPNP65ccXo+NJU6GZIf1B/gLo3JWpoF
iTwErpwZJcccoUTZ4ajEZHOsH+QPZUnCp7XPluQccX6bpu31kNS7qd1xOpZv0hQ/RUnH9FeltU0i
S2YXqtBEpVi5rl1eP86WcrI2UTKm+2vs5CcNFqZ37FUkyj3jo38oe7ZQgionp/TL1t4Mf6kwIrfE
QWYahSlE01g0DFlOIdR+OeaLtJ5YZ6mpM65yGlEnHKjaSKa5clIUTEC4mc69HMeEMZgMSkqfrtIq
bato8x4oFF4Mng9Nys+ZlHRyQvOiLUZvMtRItT5o8wweS9kzNqT5ihpY+PKoD01bfbiROh+aMUnM
iDHPNWrv7mHM4kJMct0mOyxhrhCalhhuj6WiyPmg7ZsUs8JbuuYe5ao9pyL3Mb2rhOL3fGiKy9yu
Cy+pcoeEQis3UcQHAiAAAlVEII9C24beQ+s58KCeAw6kvdtu++zYtW9zFRpnnH1lTo/R73wuH5qF
xOFjtvIpNCeB5OdefqErv/k+NO0qBeOUgiff1TsMkrtH3uZ3Z82xEQ+qxPy/4qUMupV5gWc9ww58
ntwhS1KfPJXgXft2Omo03qdXkEKTKqCb6YKm3aHmSwvOC1D5uhJX+93Atmw7WWx4/W/bj5Qi0Kpl
/7oqZ8NUhQ9NRyxG9YO1WUea2ewnVVrasmI3OOl/ucOQeDObX3B6bL/lC6048aponEKTuELVmE/4
jnfbbF0VDURMRetIyIemutTeN8I+NH/AsLv/EGh9wGFszKobRDsj/8de7lpEqHUIfDfKMaJkss3z
iYW9XlQhM/QYhp/EuBGG/sAH26jpKj50AyL8oo8L79WNyOhQTtHdVczIRpXrnkLzUVS0bPNHDoXW
ivCRNAiAAAhUmkC+2fZpLsfeex1KIq3XwIO67176XI7ZoxztmbWtrtDoZ1eeIvPWku4RX6G5x/aR
TpL0moxLpNL1oNj4vaFl3EeOUWjWgSO5iFFoDnu+pLMUmiakLiNGk2yg592qUvy+XdzopoCk9YmF
RCabEVJxQa9VK4bfBy0WV5nDe51ycUgGFTh0rMGcny1LoQVFYMNUgQ9NcsDuEPfOj7hxwgotsJzP
G4WmDhCtDPkVmq0erEibpdBsQXCFDCs0deu1xBYZ5ahuQG0jUYUWdXxJsJQv0EIa3lrfIMrdu2XF
HOdRaE7HahPLZV7se2spCd7QIA9h/DpgM+jS1Sc2kqOwD802agUSujMYY0IPJijF4K7iKcCwQsu6
dbRESUfTgEJrDepIEwRAAARaiED+FatX9N37t71otv09abb9/XfqVuJs+6rH9J20hHnrrOmZQsLh
s3CUw4fmJhig56j+cQuwd09hnTNKXAfa287IQB3+SwKkZd6LKyHLvq8pRqGZZ/kmR54nzfSJ1VXS
5JsqUa0l/hNzlY4rCybMYN+RfqVXSZ/NOgckh2qzZjZbxYWCq0iQauHH6fdTS4BWlktCrxvpqDHP
zuDYd8amUsGDgEBXuCrHHhIayFYNCk2KyJQb0yc3qY5fFQvZlyK9cBuGR0JqXRIGtuscmgGIT2rB
uYqqqdD5XApN3amUIl0VE4aiEljakEMPWTTpJt/CKktVkBuraYlEwN492CSGxvcQ9RMGtURyHVTj
dCqkJOPqhjI3lSxyeRisidYjYBUU26g3AbXWN0+z4Lcyx4bwStELbHfPd+F9BWVR+K3DL26NIdzq
zT3WJ0ApBneVHApN3dQtNuAiV02BQitXG0I8IAACIFCFBJpSaPsc3luWROvef/+duhet0PRls+bv
VQgOJlU/AVJw1SA5WhmUOgrM6z+tbEtJyYsPLfcmvWjrrorojZLSa+ZF6tVsMRdaM61Vx2Nb2GSY
o5JvC9kpIA9QaAVAQhAQAAEQqFUCORVa+46/WLpsZb99f9dn78P6DDqsx4ADduq+W2nvodUqG9gN
AiAAAiAAAlVJAAqtKosFRoEACIBAeQg04UODQisPZsQCAiAAAiAAAuUjAIVWPpaICQRAAASqjkAT
M4X03ee3fWiU46BDeZRjqe+hVV2mYRAI5CRg3pMBIRAAARCoZgJQaNVcOrANBEAABJpJgBXaHXNm
v7n6xY9+1n3jj1t27tY3sXUHnm2f3kDrtefBtHfbfd+SZ9tvpom4HARaikAw32NoYons5MsxUU1L
ZQrpgAAItEECUGhtsFCRJRAAARCwBIxCS69+8cOfeQ8UWvuOi2k9tAEH9uh/AL2Etmu/vXfo0gfv
oaHmtHUCMkubnXnCTu4fTO9mpnqzawmEloqW6Sr4Ert4sb+IdvaC2rUymURbL3HkDwRqkgAUWk0W
G4wGARAAgcIIRBXah9aHthUptKXLaJL9brvv132P/br03Wv7Lr2g0AqjilC1TUCmbWe9FZ6bm9dN
0gWR7cTfPMG7yapdvJg/2kWf3OptbhFtu+hTeMbz2qYF60EABFqBABRaK0BHkiAAAiDQUgSaUmi7
70fjG7tBobVUeSCd1iSga6DJplO429WcdO0rVWi6qpMsBm03XTktWHktvFKwhvLFnr+8b2vmF2mD
AAjULAEotJotOhgOAiAAAk0TyKnQts7yoe3QpTd8aE0TRYgaJ6Ar6qrcUp0maxfz6uGq2dy6wBwi
tKS1HSAZ6LdgEW1d5TZ78WuKoMaBwXwQAIFWIACF1grQkSQIgAAItBSBPAqNZwox76H1P6Drbnvv
0BXvobVUsSCduiFA76zVTV6RURAAgbIRgEIrG0pEBAIgAALVRyCnQmvXYdsljSt67XkIiTTau+22
705d+8KHVn0lCItAAARAAATqjgAUWt0VOTIMAiBQTwRyK7SO2y5ZtqLPoMN67nlwz4E02/5+O3Xt
B4VWT3UDeQUBEAABEKhSAlBoVVowMAsEQAAEykEgn0JbSgpt78N6yZJoNFkIVqwuB3DEUfUE0il9
Wyyyhed15MlC9I012XhuRmwgAAIg0GIEoNBaDDUSAgEQAIGWJ5BTobXv+AtSaH33/i0tWk179/77
Q6G1fPEgxZYnQEosKsbEiNiTkUkdW95apAgCIFCfBKDQ6rPckWsQAIE6IdDEKEdPocGHVidVot6z
SZM1BvMrhqZqdMukeYjcxPpJnqmfpnlUnxqFcJG49a/rnSzyDwIgUD4CUGjlY4mYQAAEQKDqCDQx
U0ifQYf23vPgXnvRKMd9d8R7aFVXfDCo3ATMsmY8sT5twYLU7EOLW2Y6WPrMH+jIK6fROEiOJLxy
WrnNRXwgAAJ1SgAKrU4LHtkGARCoDwK5Z9vvwLPt9xp4MM/lOPDArrvts8OumG2/PipF3eYyw+uf
ae5Jj7m30dQ5Fr/MdGRx6kyDW9taBF6qIYlX1Oq2PiHjIFBBAlBoFYSLqEEABECgtQnkX7F6eY/+
B3TfY396Ca1L3722x4rVrV1aSL+iBFKeKpOlqFPhBalZvNkVq60hEYW2JePWtuYQ6ZT64rCBAAiA
QHkJQKGVlydiAwEQAIGqIpBToW3VvuPipctokv2uu+/bbfd9SaFt17knZtuvqsKDMdVOAEMcq72E
YB8I1CoBKLRaLTnYDQIgAAIFEGhCoXXdbV8a30h/u/TZa7tdoNAKIIogIKAEeDp+M2YSSEAABECg
vASg0MrLE7GBAAiAQFURyD/KcVnX3ffblUXavp1JocGHVlVFB2NAAARAAATqlQAUWr2WPPINAiBQ
FwTyKLRtFi9dTi+h0VrV3fag99AGbd8FM4XURZ1AJkEABEAABKqcABRalRcQzAMBEACB5hDIP9v+
8p4DDqJpQrr3P2DXfvFzOc7HBgIgAAIgAAIg0LIEoNCa0/XBtSAAAiBQ5QTyrljduKL3nof0GHhg
jwE02/6+O3Tti5lCqrw4YR4IgAAIgEA9EIBCq4dSRh5BAATqlgBprsl3zJmdXv3ihz/rvvHHLTt3
65to13HbJctW9Nrr0J4DD+L10HanFauh0Oq2niDjIAACIAACVUQACq2KCgOmgAAIgEC5CeRUaO07
/oIUWu9Bh/Xc82Bat5om3IdCKzd8xAcCIAACIAACpRCAQiuFGq4BARAAgRoh0IQPrfegQ0mh9Rx4
MPnQMMqxRsoUZoIACIAACLRxAlBobbyAkT0QAIH6JpBboXXYdknj8l57kTw7sMfAg3bdLX6mkALo
rUokFlKwZGJBQ2bLlvTCtLvGHqcS8zUMbelU/HE4oXQqkQjiKcCIHEE4HvoqkUhyyhKjHFd8SyY0
NZesl2JNLHNsaGUakgyQslMRZBy9iVmJVSohz3pK0hVORTJVnkgZTbntTHMLbeUtYxtG8+wopBHR
gnWamLCMZr2QGJpnY7muttUgwwdNma0N1t/4Jigcsr/Kb2ELNEZ3f6aaSXby/VlMNefl2D8fmCQ3
qMjHcgGvknig0KqkIGAGCIAACFSCgFNoL0TeQ9u6wzaLG5fTHCE6l6PMtt+72JlCMulV1O9JWvUl
faEF2hOig0SykQ/Sq7ZkGm2Yten441DeOYamOiJFwdLfe93846IiKSqwr9BcurLAMfeXVCXyv7SV
p8dalHVNB46sxUzZUWPpymTS9Pio12vlbibVQMs3J7Qr7PpYdNiEzG4NhUbmaZ+PtoakZML0X4Nj
LaVW1DMCJrAzZI+zzbYRYd7Amcg0NEgJhKscf5JsploxR7bOiUKTLISagDYLrWM2F0kx128mUkJS
XJR3uSRX61GAsqp4ggJSVFql42PINKQEooZXShSBqcxyUq4NVIEeZ4dxTUtbB0clkYuc4K1YmUTX
+5nUu4c8C5NDK0HdocZvA5mM+DGYW5PmVD5o61baXrRpReHCcxaSKc2Ll/YWvpBwy23BXG5xuQht
xeM4s+8JekNRuSVl1cSxRqslYoDLRy1oPt9sk5q+RVY+BBRa5RkjBRAAARBoNQK+QiORRruZKWTr
9h0XL11Gi6HR+EZat5pWrP7NLj2LVWiaLV+hOR8anQx+ia0qS5FmizuOwVM+hUadB2eJf1zRMgkU
GnU3pZcmNogTI5Q17lRU1JLSIqeejn8hdVb5o1juH5scbVHHiHGPcB/R5rGJ3LW8QkunTD9UykO7
s9qb94+py1gat3JdFfSX2U7jCpbIvWOF7OfIr2x+lbNhqkKhkYqUMrBb0ARMrm0uPB+OhDG5kOti
woTYawNUZaLH8TFoL19jsz1+7edrfVANo3U7VqFFwhgjLHxOVCO3xpdataweDd8Y1VS/tYpojL2l
sDpyNPQSK404fHDLCsukkEKzmlPvZkHr5ibkJ8o3Oim+UHV1GswvKndP9hWakcpWQIqpgXJzFSCo
IbYEg5ibYVK5WnEz44FCayZAXA4CIAAC1Uwgp0LbihTakmU0uLFLv71pMbRdeu/5m049yqDQtqwy
fZ2Gtd6PpfrQaDwkDXHkPZX2j+MAlkmh+ZKsJd1VXncnS5Vp1kyXokoVmteP5OFEpidkFJo8t/YF
QG6F1lTbiPbOvU55U5eW8H1IEAa98GyFpnG3ZIUJ5car/H7H13dsqsMnW6Fp1Qr+arxVpdDSprcd
aQJB7qz9nnaKUWiax1wVRj1o6mFSjcV/wxpPvjQKLTi2YqCMCs0rpuJ9+Ga8MZvqP/vQihGr0Oxz
E1OnvGoc6MywQuMWbfVnEK2yDSs0lav6vMnbbEHY6uoUWmBDbGH592fVe75QDKR12IGpddq52tzH
spgUyVkrfoRCa0X4SBoEQAAEKk0gn0JbRAqt396k0LqwQhvYTIVGb5rJj3ejPIxeGxp9FIxs5ACB
z80/zvrJj3YCSkDlP0bNfshaQoQFX+L6GWSCAJHOoq/NpOMlD8ZjH3gXnFJlApLZorSZIP0bo9D0
vT77ulrUh2Y7x00qLiIgfNJmeFKFXnjTTpy6DOwxpai509P+sXY0W0uhuUGYarMUgrEnciyZ4TKg
IH4Fk/NelbNhqsKHpvWefDh+E0h7IzB9hRZqJvJBafhh4poAhWHnkqgyPjLxm/oaxBBWaPpgQss9
l0LLH8ba4uy2Qjp4D7ZY92zGucj4wN7HVNDq4EQ1SbNsRjmaMYtsDo97FY+Z3ous7DGDId3zF+N1
9KK1IlCHiyaJib2tmarlu7D0WK2i4jXyya+6UnJiJ4fRzX8AEX4PTSq8tNbY99BcXjQee5v1qoIV
jcWaFFebWuccFFrrcEeqIAACINAiBJoY5UjeM/Gh7c0KbZcSfWgtkhEkAgLlJ+C/FJTzBaEM926r
fhNXLTZHgOV46NlHqcMLy8y0qkY12/e2ypxHRFcWAlBoZcGISEAABECgOgnkUWjb0Hto9Abarrvt
23W3fbv02Wu7ziW+h1adOYdVINAkgYIUWpOxtHYAmYGiGj2xrQ1G3Ee6hd+rbBXD1JAqEdLsYaoa
Y1qlOKo/USi06i8jWAgCIAACJRPIqdDaddiW5nLs3v9AEmm0lzaXY8lm4UIQAAEQAAEQAIFcBKDQ
UDdAAARAoA0TyK3QOvJ6aD0HHtSt//7d9qDZ9vfevkuf0mYKacP4kDUQAAEQAAEQaHkCUGgtzxwp
ggAIgECLEciv0Fb03PPg7gMO4PXQ+u29w65QaC1WLkioNQjETf0XnctE5jYw84nwhBY8QQI2EGht
AjrrqZkVJrJcoZmxx7x65yYpsQNfZYYcd60/u0xc3aZJ+XUmD36z0X9rzk/UGKMTq5g5j9w429j5
aTlaLzlvElebHE1uQo3P4+y/WqnHJmvNHinK8xL5abmsuUUIzaRCMsGMHvvTTqqR/vnsN/r8EdTh
SVB0jhadv0bnYfLmdfHyD4XW2o0O6YMACIBABQnkVGjtO/5iybIVvfY6pMfAA2nd6l13g0KrYDEg
6qogEFFo/uIBW+xauhImaVaLSqXtjPZudWD6Nm55X55Ozi0BTF1JtzKvWcm3KvIPI2qSgNS9lIgi
u963Xc0sS/a4iSKDhchs/99cKxPK+MchJjrZo0y7aDbVVcFkibowm0yn6VYw08AU0jM1JlpVaH4Y
moLUnyfWrROgYVSJ+ccSgZmQk+2Im/rVPx9/HFophF5WjLfBpWXWxPOXapDvgvPS9mnTm4ASU4L+
FLW+irMr0QXTWoaWIJf4odBqsrnCaBAAARAojEATPjQotMIwIlSbIJBLoXl9Te136vP1YP56yb1d
M5e/8ldt8tek8jtefvg2gQ+ZaA0CbkVy8aGp8ydYDc9bNtpXa8FxsHaZuVZ9aBpPrH84bmkNO0W+
LpOgy3/TZp9KGLUWMjXKyjSZcHaMIJSwsiiA8ZKJNBO/WdZSfkaVhVVWkJh/Ptexn9aWdGBDVpya
Fs8KGofLP2/WKvAmpFEfmq7w4aSsak5HnkWd9adpFnwVB4XWGu0NaYIACIBACxHIN1MIv4e250E9
aJTjABrlOGj7Lr3xHloLFQuSaRUC+RSaPgS3noEMD0Hi/qtdd0u/dYvkumV83Xntuepjdet/CMK3
SnaRaBsgYJ1XMizQSgg9tl4uFksUzI39ixwbCLnlSoRSrEJTx5AMAfYUmhUV7rmGKqvYFQW0yfjZ
0bF/4WHGrMpcmMhxKJs2+9ERj/75XMcmw5xWyIawQnMY7eOY6IIW/vlcCk1uOVGF5mZe9W8atkCD
coRCawPtF1kAARAAgVwEcs+234Fm26e5HA/otsd+tHfpi9n2UYvaOoGcoxy9tXSDhW5lwJh02vzV
gbVDmb28ry63pWOc3Mq8dG2Ta3a3dejIXzMJuHfPeJRj4EOzK5LroMRAqPjHdt1tscBcq4MWi/Sh
yahIo76M28cpMfOSlveqW+zaD07P6DtdLoxtIIFecq/MuXfPjFgKZc1fkN0n7J/Pdeynxde6Rure
Q/PfDRNZGuNy9M9r7vQm4JYOF++crpruXtiLW6RbrvVvMpofKLRmthxcDgIgAALVTKCJFau77r4v
rYdG+y699/xNJ6xYXc1FCdtqgACWAK6BQoKJIFALBKDQaqGUYCMIgAAIlEggp0Lbqn3HRUsaaQrH
zn33pqn2O/Ua+OtO3THKsUTMuKzuCWAJ4LqvAjUIwJsRxM5qUZ5cuIlGyKvc7KkX85pUsSzEpBqM
LJUR0RXeoNAqDBjRgwAIgEBrEmhKofUZ1LnvXp37DurUqz8UWmsWFNIGARAAARAAAUsACg11AQRA
AATaMIF8oxwXLVlGDrRd+gzq0mdQp54DfgMfWhuuCMgaCIAACIBA7RCAQqudsoKlIAACIFA0gTwK
jWYKWUZvoHXptw/t/B7aLj2zRznOxwYCIAACIAACINCyBKDQiu7v4AIQAAEQqB0C+WbbX9y4vNse
B+hMIZ377LV95154D612ShaWggAIgAAItFkCUGhttmiRMRAAARDYsiX/itXLeww4qOse+3fdff8u
fbEeGuoLCIAACIAACFQFASi0qigGGAECIAAClSHQlEIbeFA3XhINCq0y+BErCIAACIAACBRPAAqt
eGa4AgRAAARqhkBOhda+4y+WNK7ouefB3Qcc2L3/gTTt/vZd+mCUY80ULAwFARAAARBouwSg0Npu
2SJnIAACINDUKMeeex7SbIW2KpFYSKSTiQW87k16YXrLllRiPp3JNCygv+kUH+tfCsNlkhUmq6DS
qUSC4mn2xvFQJLJ2TTolMbbAOjaSU03NJetlJdNQjqw1m03+CAwtXmxIs1OR9Dh6E7MSq1RCnvWU
pCscP1PZSSeSZiWnVEqNFBr0R5ho4VbMYFnmyVaiMsFPV3ZlqjJZGRONwNDzvNBWsiESpmKlULks
FRGzrQaZ5tSHECJ7C0pqFY/ekdK24m+JoOZyEPh8YzWVM0OBg9udyVbGNhmOnILa1mNvI17Dzy5K
vT3qrTv/pncnWzFi7lFqW1PR8Pd8J7L35VyXOBqhG4Kx1jErJLWCwkChFYQJgUAABECgNgk0MVNI
j4EHdadRjv0PoPfQtutS9EwhpMESiflJUWh2W0U/+fYMH6dUlWUaPVkSDRNhy32wVDk6p9SPkP4E
/5CnU9QVMceVL0vv5z6rW1wLCi3oHmUapEAL6uUUzbU1FBrlJTY72SdtIabTW2injesT9TgbGsxi
tfy5kmTKHXmtKjSqjV7/1zw18CtbuUEVXZEreUFQas3JZpxCszFn3ZGM/JK2H9psg00lUrRro9D7
Q+ipE0Xo4nTtxVdlBSg0+0gtH9qmFFqm8HtXIQrNMgzfEMTALI1ahhoBhVYGiIgCBEAABKqVQO7Z
9jvQbPs8l2PX3fejneZyjJ1tv5B8BQot05gQPeZ8aPS77as1+SWbnx0mJpWyyhj/SXD2A/hC8lhs
GH7Sbze5NkMoqFvCHR6TNfFS8bNo090vNomKho9QMh4MMdl6M4z90jPLSPi09qPpMbvml7YmaLeC
QpNeqZXrrLjESDFb3a1BX1MEfoZs5HorB/wlFx/3/DhwKt2cTnOeEpSUnZ2iDA1M79irSGQb203/
0GXW/xlUOTmlX7b2ZqoK1XtbVXxHd6x1WpdMFvRYHv2I/0QgZNdP4+MRFOyAs/VT/KAss+UqiUyO
Y8IYW5x5KbmWE9WkDfPKA6XkeNOKGbi/Utzu5KzY4x+78QJss16XpdA8jxy7uexmqj/nOrbx0heu
OQStI6TQ/OpqDNaGE9gQKL1oo/OkjpS75FfrvzZbU+7pFNUBilFqNOdXIjfq3ViepjPidPVuxVIX
TBtxlUSj0koSH5WUsuY97oZg6lJ57wZQaJVvW0gBBEAABFqNQN4Vq7310Dr1GvjrTj1Kew8t24dm
s5vLV8bn/TAxeMqn0JwEkv6V/NJXfvN9aNrP0E6CP6bIdh1ayKSiMm0GJtlrTM/D9mtdb8kqMe1D
G1WmQwFtpyhv7lpaoUkV8Pu7pCpt11fzqAVnOsQ8oLGBfAV0PnAaKATp5WkvvyiwhQWm3nZOO1kJ
q81iiZH9Cl9bjf3rqpwNUw0+NFNV1PthfCCmtuSoKkaaiR5TaS2+HV8/ZNdP63Tj5Kx7xEs6TqF5
ddhz0/l+eFtdbdKmwhdWpmUI5bSlVlTX4gSLNYaO/fECIUVnbVDZ5lxksTfbXHdgfjrBNV8EC3vS
XKvR2IMm5kloSitWobkxDkYYhpxRUl3tYwitzJyAdy91PjTzrCRo31SX2DwLKoDvy3KV3Hpbdj60
uKgCbqztYm8IFRikDYVWhjaDKEAABECgWgnkVGhbte+4aElj575779JnUOc+g3buOeBXO3dvjkKj
t9Gkd9gojzkXyA948AaaHusba9lhYuiVRaHp83LdskfsVLLMnEKL7UCre4Rw6ZPqShpSYtzW38IE
ydgYhWYzIH21LIVm+4tNChgiwH3uLebVlybDl5gfucx7eUYGLPI7Kgxf9Y6v0FwqGkyqj4gyObIF
V6k39PRRvW58bKsxy+bwsekoi38iqtB8zVZNPjTjt3IKTUpFSiFHQ5CWq0y4j27dzs6HFoxk854g
RHxoUfVlPDPGtUMYY1RcUALGz+M0Rsv60NTryJtz8milVd+13G/FhxYch3xoUknUs203e3dlgSLe
LQ0T2nLfgZNJE5VrFP4YP9+dxhYFEpEfLJgkbDVWkr7j2kXlylfapqQo2dJIqBYEPjQRnL4PjY6d
hzNyS/EVmqbromK8cVH5WCjvsTcEjba8ty8otOxaiTMgAAIg0GYIqEL72z9WP7/y5xdk3/jjlp27
9U0YhdZn0C599iKRtnPP/s1UaPpOmtFg6YV8nGwUjjSViDmfO0wR/YPCy0b0j9n848JjKDmkN7TG
dErEFu3ZsIdE/yYb0v6rFCUnV4kLfV9TnELT4UMmR1EfmvQa9eF0k1vwdLzcXZxI0lZtyWkVBlIt
1MhYhUYBTBbSKfOYX3ucVieUt0+mBpsxXfpBO9uencGx3/dNiZ2+D80UgelMyxiurNeKmiyb8gfI
9qEZR4Y2BFViTqNKb5jnolDPoWCw7hbrS3Flp9l3ddXVz1w+NE2YsORSaE6Tm0riXL6atDKv/Obu
XZqathfx5PCEHJIFpuQdm6F9vsfef88qkGQ6btMf5ejm58it0AItbRuFu90lG570mXBh2XgkKavQ
VOwSd0nav8RFldXczN1G3V5051TvqLt72JbI9UTEmyk971bMKfoKLRKVAgyqk1S5SBEHb0SGbwhQ
aJVvB0gBBEAABNoUAVJok277e8Mbn85d/m/eV/x7w4//3alrn8TW7ENb5vvQft2paB+aSK8y7G0K
OTIDAi1JQJ3DxmvSkgm3XFoqpUx6oldaLu24lHyXTqta4g+zbOkhl62a8bpIHD60uihmZBIEQKBe
CZBCm3jbow+89smzjT/xvuynDT8YhUYzhSzbdbd9u/Tbh/Zdeu9Z8kwh9coW+QYBEAABEACBihCA
QqsIVkQKAiAAAtVBgBTa+JsfnvXKR08t+f7pJd89vfi79T/8vOOuvRPtOmy7uJHnciSRRjvN5bhd
56Jn26+OPMIKEAABEAABEGhTBKDQ2lRxIjMgAAIgECZACm3cjX+b8eKyx9/f+Pj7G2hf9/1/duzS
K9Gu47ZLGpf3GHBQ1z3277r7/rQe2vZdepc2UwiYgwAIgAAIgAAIlJEAFFoZYSIqEAABEKg2AqS5
xlx7/11zFz86/6tH3v7qkflffvvdv7fv3EMV2ooeAw+m5aq77QGFVm0FB3tAAARAAATqlwAUWv2W
PXIOAiBQBwRIoY268t7bnljw4BurG17/jKYM+WbTT9t16p5o3/EXpNB67nlI9wEHdu9/YJd+e2/f
pQ98aHVQJZBFEAABEACBaicAhVbtJQT7QAAEQKAZBEhzDU9Nv+mRt2a99OHMeStnzFvx9cYff7Nz
V+NDg0JrBltcCgIgAAIgAAIVIQCFVhGsiBQEQAAEqoMAKbShU267bvbr9zzfePdzS2i441cbvv/1
TruamUJ6DDyoO41y7H8AvYe2Hd5Dq44ygxUgAAIgAAJ1TgAKrc4rALIPAiDQtgmQQhs86ZZrGl6e
/uyiO59ZeOfTH3y1/vtf79glsXUHmm2f53Lsuvt+tNNcjiXPtp9MLHQQ7fHaYPVq+i7TGHM+0yhh
FsQXQO71UosrMFkRVRc/1aVL7Xq3xUVTbGhvmVSzZHCxMbR6eJMF4VWJdZk5g24JYEkiWG641TPf
2gb4S/GWZAutGlbNFa8C5nl1yS3xHNPYvWCFgi3XvajQ9LLCeWtzB4tNlxybXmjidIQyZu3nHPdH
vRvIfdS/3JyJ3u5CS2DbVaqzGntBOWh1+AVZGVNkAavwl4SxwHXOodBKY4+rQAAEQKAmCJBCu3Di
zVfdP+/OZz644+n373jqfVJov2KFRitWe+uhdeo18NedehT7HlqmYQGprEChpRfqcUp1V6aRfqUo
TDIVc95etYrX2836DUumyqGkuB/YQHFTf5eW9NV0+Ljym+oN2dLRDNZCn4NWBXZdMbIfCq3yVcZP
IagzTD63qPCqWcTACkigciKooHlB1ZV7UDLS/EpQaOXMeAlxBYuR80rZ5bl7BMtbEw+6MQZ6PiZ+
RqZ28xHfUaOXR293sUaWptBKANYilzRxS8xVTMUUHxRai5QkEgEBEACB1iGgCu3q+1+682l2oJFI
Mz60rUihLWns3HfvXfoM6txn0M49B/xq5+7FKjTNk2otVmINa/U4qr6sDy18XvxsycZ4MMX8kjWJ
VnWabv5xkxeWHMB7qKydG+7TaGfI9rGk48VP+6vR1xGhRNnhTIjJ5lg/mN5jRsKn6S9lkPuRtg/X
BG340HLUMKoWgcPXUjLaI50SzcwlYnvGpnZpKWhNq856FTbPVBvKl6023B64kXqNwvd6y7ELo9pV
wzsdyyg0EvpSjqk2mkus3PUv4WMHlmKnGOVRDldmioIrtNyLTI9cjmPCmHI07UHt0Yc0NkelPhiy
j5ZMCuSeknjjkuAv1DauP9Z+OhPcfDSWUJxqc1prXEx9tM+5zJUUJuvy6O3O96EFXjo2ROPXequy
UCWfikC12d5h9MaZC7i5/4gAN3VekvLutLZQVKS71qEGuAJySVOobDOYs92MjpXs27z4yXkmidl+
eFd8cj64nZrjrDpG10KhxdRGnAIBEACBtkKARzledjOPcpy7ePqzi6c/s4gVGr2HZhRan0G79NmL
RFrzFVoq2Si/W4UqtFRivvz+LpBuTNZWPoVGv/guCf+4okUcPFT2OnnGnxbKWgWdCc3JYJZC476U
7aoGx9ZDqM/UzZN17uXYPDYx1g4KLW8hcT/b6K2gm6jMRQZbhWZoS10yvecqrVdh80y10W6x79x2
1YayIb1r3sxxoFfZoeQ4GE+joDCizvWSfY0RvcRg1BQIrDXDq9JxCk3Ch6q9ayB0wPZrw7ePhMKe
vWKaZpZC02hVYwTHkqizX1WZWmjvRZ4zP0ahGcYxIq0ghWZ1WOh2F85mVmP3HfUqeJSblqnZrEKL
B64jFFydpyzbtuC5TgMnZEhbxtHLNsP3lfmF6Cv28EAJMcnUvSzF69clMd6/0/pxUlpQaMW0E4QF
ARAAgRojwDOFTKaZQt6498Xl97647N4Xln294Qeey5FHOS5Z5vvQft2pOT60VfJSGe/y3HqB9Fd4
lKMeZI9+zDPK0e/rNJO3L8la6h0003+ysjD4wfb7HLZ3VaU9aa8vwv0bv+sQ1zXJqdCaKr4g+9b/
5kuRpq5uq997XUqVu8rc9lxVoekZ7YezLDFbTSs02zt3zgc/X/ZmYmjY3rzh4Ck086SAIiMmTCiq
0MKXBP6QMis0NVi74KUrNOunNpHYslaFpkk4XZFXofmtJTpM0fMUBV/ZC8o0ylGKQePUxm6OI+N4
I8NQcyk0o69yKbSYWwPn0ZemYXp6QaDHgkaXdUcyQwnkvN/0fJPCTTKoxgUrNIobCi2mFHEKBEAA
BNoKAVJoI1LTb/77P+9/7WPeX10l66F1I4VGM4Us23W3fbv024f2XXrvWdaZQlSw2RlEgplCvPOV
nynETRjA77ibcWM5RvKUu7y9YT/mB17S1w5KRh5U899kQ7pl3osrIX/+zAExCs3MvGJyFPWh6Tir
RCL7JcNsS/zhVZV64a2E/LfqJa66SkdWeotpdu9onXGaWc9QCK1d1qNCRw1VO1MIj7805mX70GSI
G1WbJO92S/rHysNULb8bbY75xTP1PQpD2712MwbFXOKmzeDKnMuHppaR5dTbjglDzUHoq9XOi+Ks
bVZx2NrgSwJfoQVArG2+D00HeWaNetVhjW4MIg2blE30pEhap6E4WW3OgdKwoyKtRHSFZXSL+6z1
02163nwUu2w6bI9yC90EcvrQzP1TM8DYUzz617WF7ERd6zDZDkSUTZqviZoRMsYUhKknbhSrf2PX
5mmUmxfe2KOJmlGgcvP0poHx6xiVARRaq96DkTgIgAAIVJYAr1h91Yzbn3xv9lsZ3b/d/K/tO/cw
s+3TXI4k0minuRy369yr2PfQnN+smQeVZYDYQQAE6oaAkbOa33QqkCCtREA9n/7rTK1kSNtNVp1X
nue5bWQVCq1tlCNyAQIgAAKxBEhzjbn2floJ7e/vfvPYgm8fe/fbdd/9Z4cuPXXF6uU9BhzUdY/9
u+6+P62Htj3WQ0MlAgEQqH0Cgc/NmyKotbKljpFCnMmtZWEbSFfdf20gI34WoNDaWIEiOyAAAiDg
EyCFNvbGv814cfkTH2zSff33/9lx196q0Fb0GHgwLVfdbQ8oNFQbEAABEAABEKgWAlBo1VISsAME
QAAEKkCAFNr4mx+e9fJHTy35/mnef1j/w887de2TaN/xF6TQeu55SPcBB3bvf2CXfntv36VPsaMc
K2AwogQBEAABEACBeicAhVbvNQD5BwEQaNMESHNNuOWR+1/9+JmlPz3TyPuGH/7LCk19aFBobbr0
kTkQAAEQAIGaJACFVpPFBqNBAARAoDACpNAm3vro/a9/8uyyn55d9q9nl/9rw4//3bkbKbQO2y6m
99AGHtSdRjn2P4DeQ9sO76EVxhShQAAEQAAEQKCiBKDQKooXkYMACIBA6xJghXbbow+8/ilps7m8
/1sUWt/E1h1otv3lNJdj1933o53mcix5tv3WzSFSBwEQAAEQAIE2RgAKrY0VKLIDAiAAAj4Bq9DI
h8YONBJpVqHRitXeemideg38daceeA8NtQcEQAAEQAAEWp0AFFqrFwEMAAEQAIHKEVCFljXKsW9i
K1JoSxo79917lz6DOvcZtHPPAb/auXtpCi3pVqbmlUOzV6lem2P1alqss9G/NkQhWE60eXDcSrV2
MdmWWR/JW7G6VueANlkQXhVaSJoXdNXySKfcCrneIrr8jb+id2BGpkFXbfaW0G1ePanCq9NmBd6c
phXdRtJtZM73ojOuVcysohxTaYqPsKXrnlnK2y6HTflxy3bbY7vCNC/lbNqFd/cLL/NtUITrg03D
ANL1xGWzqypHlrHWLymu0OLWTTUlt3i33mGaCl7E9+6uWw47edVul/F8dhZTebgSHnFhnruWX6+g
0IooewQFARAAgVojYN5De+2TZ/g9NH4VzfjQjELrM2iXPnuRSNu5Z/8SFFqmYQGpr0BlpRfqMZ1P
psxxKrFAfuMb6WfJP88/7ckFsQqNl7Ypy0qz/CPbYHr56ZR2I/wef+VK0/uhzeoWF/OLXjkL88dM
HQnXOaNuXIUUGlUIjTmVSNGuWi2iIuIUWihMpWxrLfSarpApd9aqXqHZ+lBu9twx9uLMRHvw1d8k
PTJ8U7NNMvtY9Y/ef9zdTx9nSENj1eHqlV6uW3BsaIQUmhEV8kwlVDrFoxMLgxLRFb3LsgV33ezV
q4u20yg0p6bKsOa4ks9rCRRaWWoCIgEBEACB6ifAczne+sj9pNBoIkcRaTSXo7yHxj60Zb4P7ded
ivahZdKr6Pfdqqy1DUmr0NKrnH/MfruKugIU3vObrU3n8KFxn6HoH9R8ZeH3z8J9tUqVoN9XsB0g
Ep7UudFH+dwpyf1Iv1JWFR5vpDtC2VFrufOXNJ4veWKtvatMqqGBv9Wn8CK19IKmfFymo5ZMNjTQ
/1TwRkin5WruC7rVh7XfGe7bUUocso24hrzikb5cmuiYc1JrTDbdsW0jwpydisSfOLrn/VIEpj8t
h0055QqvH6WHNFWFcueqirYJyp3WGa0G0fpmz2g26Y9fJ42vQyFIldCKp3VVYWoYeWhDXibGoi4X
E6HEr8ekjDmA56SiCIy1clKrotrgjrPDOEhBS5HI5ULJabJgD5Inq7R96bWqsJz6iig3d+ehK1x4
X6H5TmiuOCH3oig0dW4Hd2PRLaZ1KwHebIEJDXq6Rnm0OfWLQ4uVY8hWelq+UkxaspSuvYuyJVof
1EI91OagElNbSvZzMdMErHdQjTGlr/cxa6d/v5Ig9MyI1ay7g3kZ1xLUlpVJPSlhgiTUHJOK1je1
09Q3CW9M1fhN3WawptlLHYMPrfTbDK4EARAAgaonoArtvtc+1qn2SaQ5hUYzhSzbdbd9u/Tbh/Zd
eu9Z8kwhqsFSyUbpK0RHOfoKTX7RzMhGCt8Soxzlp9P9yvrHFS27oK9AnWbiYn7pxYkREp+mx1NR
Y0qIXJ++u8085zY9Y+5JhHJE3RTppGgHj/uCNo9uRFNOG9Lc0dG+ICXqeloSnnG5Xqz06YkraxCN
ze8ll5DHar7E+jbUF+C7gLxj272TnqqE9CubX+Ws7q0CKWuqihai/A3lKOw25Arg+1hMtcyqh7a6
MoSwXLG9XurWC0qtMyoShJtsyk273f6x9Sw5a109j1VomiO/LURbikZuk6Z+fKGV0FNoBETVLF1r
JIuKSUnaz77kzNz9XHhfoWlU4Y01jEKhpma+DW5ZbIdr+07D2NudKS+9y+nfwHcnDZziNQotfIdR
G6yLz5SaSmv66yw0/jd3Qw+b7ik0qWZZd11bu7x6Fbo/+xUj6kOL3NbUKv4rqfggfRohAz0fmq/Q
RCmagKZEJE4otEJbB8KBAAiAQA0S8BTajyGFprPt01yOJNJop7kct+vcqxnvoa2Sl814Nz82Tol5
oxzld18VWlb4CNwy+dB8SRZ5RFzR0ow+zfWzo8emI1ilCs3rOwa9Xue7iPY7cyu0AiATDu0HUlnR
xn04v5se6DF5pq4RWh9I4McoIKHaCeLVlpA+8QaYqZNH5Zuv0LRqBX8101Wt0Ey5aI6sV0o75dqT
DhW6q3vmvO0fm3xaiaKRej4u8/jAOGGo4oQVmvaQVaEFxxVQaF6RGZVVUL3MO8rRZdaITytE/btf
oJRyjHL0bo/BAxfzhMVVSPV9Zd3NvNtd2DvkD1v1FZony/lWw8G4xP1BmGow+fD4nmBls//EJ3vY
YWCGPtmIs9PR9utPKKRrUGEfWjTjpMbT7PjPrdCyCjaHQjPhxGZfuUGhFdQ0EAgEQAAEapOAU2hP
N4pCkxWreZSjrFi9vMeAg7rusX/X3fdvznpoTc0UomIsewaRwJ8Ww7YcCs0OjOIRJ/5xCxSlDmhx
I2qk88EjdyRpGmRFT6n5LzmNihjp1AJ2e0n4w4r83ozrMQdjt7IVmh3lWIjTxmLh7ph9lqyDkRgX
D76SzXW4BWGDuNQ4uPVatCydSqYWcjwGXrT8oxxlBGNYm3lVjkej0UjSQoqjkjnjkjN958CHZkZ5
iW1mQKIWOrtUjeKyY8h0bJsd5ag1QfviOjJNh7yxQ0lkq9ZV7v43ZGSAXTDITb6Vi+h6X5W5O094
lKPGE/GhqVkpWw8jYYIRbq7tBwlJ0oW/ghUACM0C4g98lRyb7KvIDO5BkkeDJTsqW+R2tB0/JXEl
5QaIGlbynVYtf3SAq2y+xnD2OF+cn2vXrrXc2Txx0DldrZdLXvhuaQLkG+VocuxcUkETsP40CcE3
lpBCC9+vtLGoXHQMFZJEaGqXlrurgVqd1GaXrj/K0WRNLNEMUyqq2H2rXJxQaLZi4l8QAAEQaIME
WKHdwqMcSaGpSPMV2ooeAw+m5aq77cEKbXusWN0GKwCyVCcEqn4WkJYohxwQuAesD0fMxn6bKtiK
UGhVYC1MaGECUGgtDBzJgQAIgEBLEjAK7dWPn17KCo12o9Dad/zFksYVPfc8pHv/A0mkdem79/Zd
+pQ2yrEl84O0QAAEIgTcA/i6JWPdQiEZFqHhnLGRdyxbBZrxCFm3V6vYgESrnAAUWpUXEMwDARAA
geYQIM01/paHZ726ihWa7Ou9UY4rehofGim0QdvBh9Yc0rgWBEAABEAABMpEAAqtTCARDQiAAAhU
IwFWaDezQntq6Q+0ewpNZgrpPuBAeQ9tP5oppOS5HKsx37AJBEAABNoEAX1jSf1t6i917xO6uTEi
53Vq1Eju9UUp57fz5+PJxSnupVN9fy/GXal2alReQllDT73XrvRFryZcif662yFD+eU0w8Jfvzsr
jL6Vl/ONX33ZTCPKGQ/HECAt4jVpmf3S38IvOgYeXXtexuQyRii0NtF8kQkQAAEQiCdgFNorq55a
wgqNduND27oDz7ZP2oxn2++79849B5SwYjWogwAIgAAIVJJAmrSDmUHFTtZvpzGkiU/MZBU6ib83
vWGMQgsvd2YmRM1vuUuIkrEzQ/L0Lf4skTYGY6d89FVZVKGZ6UllChx9ITBiWMQkEyZrYQDKIWU6
Zu0B73pdvcNfQS4mv7Lgh242reCMH94pNAqmqq+ALarQgmu9dBlZSuN0BZeGQisAL4KAAAiAQK0S
CCk0EWlWoemK1X0Gdeq9Z6dee+7Qbfdf7rgr3kOr1XKG3SAAAm2SgJ2E0MkDmZqefSyiT9y0hTpl
PZ9nj5AuuOymc9QJKz1fVUMyFetDk1kFjT7xwpjVqyUC/1jnNpTwbvGx980bf3bdZp1gM7qRtWo/
fcELpRmFaef8Vz9bkDlOSDPhTmevyZG9upsfv50gVDMRxENT5jvj1N/lltejtIwSE3sUaYZml4z1
ofk2B8fmHUnjoguu5cVFPCgZWveN0lI/J2tg+NDaZHNGpkAABEDAElCFNvOVj55c8j270ZaQQvuZ
Z9vfqh0ptMadew3cqUd/2rfr0vd/tu8MhYaaAwIgAAJVRUAmf/eW5fB8Zb5CMz40fzkvkw2z+LIu
RaCOGqeOQjl1KktCemGMf0yvVZ8eH4fC64oOZuV0+tbpnPg1HuySZSRI/AUzjFoTs9yxc9n5s7zQ
haymstfv9rIUUWhsvUg9Px67FJvn0/OW5vPX1y5klKM/uFSOjQ9NvXm82fUhXLqy6ptZV80tNkAB
4UOrqmYIY0AABECgvASMQnv5oycXf68izSm0DqzQeg7YsfseO3bffbsuff7PdrtAoZWXPmIDARAA
gTIQ8Jd+9t4xCyk0PR9ecFlVmScbaMxhsDak56PyxIPIMF2iyzisfCUWc+zlz1uRrwmF5o2E1Fy4
RatlmXL2L6lC80dUhpUV+99U3YV8cZ45mnG3cKJh0ZDJns9T04pd11v4Nag9IZXll2t00W1jf06F
Zq+lOB1q1pxeQUOhlaHhIAoQAAEQqFYCgUJbwgrtyUCh8ShHUmgDRaHtQT40KLRqLUTYBQIgULcE
+D0u9fzQP+q5StoJOYxCC50374nxZB5yXsSWOfaHOsaNcpQRjN4QPhsmE/jNtoSOvfDGTi4niUHf
6SJjIz40NyqSxKMZiinZ0vPqE/OPzXtrUv4ap757Zt4x85YLDw2LlPCR99DEK8gX+PFoWoSUvjWj
HPmM8X0JAUaotuVUaNaxqaid/RqPphu61oZxRen51tge2qDQ6rbNI+MgAAL1QMAf5UjyLPChbU0K
bemyXfoMooGO5Enbvmu/X+7QBT60eqgTyCMIgAAIgECVE4BCq/ICgnkgAAIg0BwCVqGtUnkW+NDa
yVyOu+62L4k0miyE3Gj/u1NXKLTmsMa1IAACIFBLBOxS3zKeMersKltGdDp7s1k3VNliD0fUgmnp
rB66xb9r17w8QqE1jx+uBgEQAIGqJhD2ofFAR/MeWjtZD63bHvvTbPudMdt+VRcijAMBEAABEKgv
AlBo9VXeyC0IgECdESCFNo7mctSZQmS3Cq2jrFjd/0Byo5FI69Rr4K879YAPrc6qB7ILAiAAAiBQ
jQSg0KqxVGATCIAACJSJgCi0h2a8/NETi7+nPaTQlpBCG3AQLVrNYx177/WbXXpmK7T52EAABEAA
BEAABFqWABRamXpBiAYEQAAEqpEAK7SbSKF9+MTi72SP+NAGHJhfoVVjnmATCIAACIAACLRpAlBo
bbp4kTkQAIF6J0AKbSwptJc+fGKRKrTvIu+hHcCjHHfbhyYLwSjHeq8syD8IgAAIgEB1EIBCq45y
gBUgAAIgUBECIYUmIs0otK3tXI40TQhmCqkIe0QKAiAAAiAAAiURgEIrCRsuAgEQAIHaIJBbofGK
1ctIm9EbaLTv1KP/r3bqhplCaqNUYSUIgAAIgECbJgCF1qaLF5kDARCodwI5FdpW7UihNZI269Rr
T9ppPbRflbge2qpEYiFhTiXmp9JbtqQX8sowaT7jtnRqvgvDJyUMhafDTMMCuihrS6cSibjzxRYn
x0PX0FI/lCqbZ46Ljafo8MmEpuaS9WLINJQja0WbVI0X8HJMqZBhxcOJxlCN+SzBJlmpylaiEq6P
uyRdiVWbSrEtu9yLj4XwmItoCaxkQySCoAEWH3O1XUH1QEzKcH0ovoHkyY6tYRJzU1tMQ7PG8H02
qwjyxZevAvB3TdlSxPdF3x+yCRdUXT2zCwkfFyZiKhRaEcWMoCAAAiBQawREoc2m99AeX/Qd7fQ2
2vrvf965W99ERKHtxAqtaB9aJr2K5FhSFJrdVtFvfUNygXdmbTrTGBeGFRqpNYohsvGZsnZEVKfp
5h9XrjR9hebSlZ4Wd2ZEMZJulK2AvlHl7GzlmLWbkmloYDnCK+Y6OHIgKj3TkOIv6Q+fM6vqKkVB
p92ayq0b2yqIBEyacmlSl/wafeWObRsRPA0Mw5IMVzn+JLhSra/QpDTPDRb5TWsb0HLUQowcx/In
PhJMKglRMo9fzBmNgfFpbMkUJUp4JLzWoEyqQZZRTqWFHisfrYpa5aRSZYVxpphlkcWGJKXC7INS
KG+NsVkzsZKFki8tbm0adOCqB5nucqTZt/cchhzUKPkQkmWUa8mLuUXptdrQ5H7lF1BgjB5ZvRE0
S66LfiO15KMVIBuWWUU7u6WrMbYOc81R+zVTJmtSgp6pHEwvUWvUWq4P3m2HzmndcxqYYlMD+G9E
TXm0lbxwNAqNmeesP4zYpaI3Lk1FjQ8ptEwDFFp5WxJiAwEQAIGqImAV2srHF22W3Sq0rXWUY59B
PMqxz1470yjHnbuXNsrRV1/kE6MfnFRiQSJBfrMF8sO1YEtYoWmYLVvWcphkYzyvsio0//lucc96
Sy1M7Tvqpl0Y7QR64lP6R/LwudREav862y3mbgqjsF1kwcXdJnowT90pOSak0pHiTxRUjvk66dYY
71DLFG4LcDf9w3RKWgp3Fw0N/9i0Ea5IBFK77EpSgHlVTk7pl628aWnaLq96S7RdaPmq8f5xrMFy
ofOK87Hp6ErkVi+lXWxCxLU4qjAZqSpc5yTpZKxCi4axpmj1C5lqCZf/eYupAzZtkgSShjYWTc42
B/5EZOQOLE4tEiEZPhPcfHyaWTErdpc7GekgdycJGVMovg9NytVIXWabcQ+kQuTDFSCucLlyaBa0
gLSlh1uBlUPZjjtb+l4BUXGHm4OzQSqNsVNvOFIT5NDbQgrNmcS3HTVP9TzXybQ8BLEKLav+8BcU
OV/VlA+NwkChtfLNCsmDAAiAQCUJsEK7cfaMeSsfX6gKbbPxoW3dfpvFS5fRRI70KlqXvnvTXI6x
66EVYptTaCS9wl3AVfwbzz/cgQ+NZJuGsVdxmJitfArNSSB5Nisdjspv3iAr6Reah+7yNNd3fdjn
05W3qLgU9EGvKkx9pm2ebJe3B5rtuLBODCtvgw6TeeRsH1hLAKfQ9AF5E/5IlwUNWsF8FQc7OzT1
bu1mgHNZWPb2WFgZ2a+a1tLjLqZX5WyYKhjlGHJSGZcXZc0qbaevpFed+ybATkM7Fs5JEZtNvb0Y
xwahMMdGkGjnXh8BmI4+n8muitlhbEHZBwEciVbLUCk0t/TD12f70OT7wOOnDzJEm5E9ikWPNZvu
aVH0TpvtQ7MuJq18KnrdYybj4fELxZamqZm2yslt1jxkYXXnkw9XAM2q9yQrKBRCqnVAW7oEDGq+
zVTW/dz60Fz9cWYHmfKbifVcBRHmV2jiXFPCXGUCiSjqy9psfLCROmbrGzNpSqFRzFBo5W1JiA0E
QAAEqopAToXWrsO2i5cu77YHz7bPOq3PXr/p3Ks5PrSklV7yiyvjHjONRnxZhUZhHJ2GZJ730PJ1
zorgKz+hJrw8Tm6xzSm02A40W+Ie6LeUaGyxvBeRUJxCM4PQ5Dm23w31FZqOVgoUmi1c+8ZOESZU
YVB/KBof22qsbhOt0p6/MeRD0z6hwPM0WzX50GyvlXNhVFbuXrVkJGYjCIZSOkUy3fXgVaaq3nMo
bGMM+dDiFZoFJRUpS8VZQ8I+NBGTlfOhBa/Oit8veL7jHM5RH5qCdQrNHMfJXTfmU2O2A4Y5R4RX
MMr90zg2s2Rz9D00U+VUnzgPUsSH5leAuLI1PjR22alf3bq2gppvpU5oWKDGFVOX9Ccg5hGG1i6O
xIrVUn1orEi1Mnsks+uPyRp8aFV414VJIAACINDCBHIrtI7bLmlc3mPAQV332L/r7vt36Ttouy69
S1NoLZwlJAcCIJBFoAr8Yy1ZKjqcLNgi/qCWNCVkRks+BmqtTBaWrvWhFRa6PkIZFVdgZuFDKxAU
goEACIBALRJQhXbvvJVzaJSj7GaUYztWaCt6DDy4W/8Duu3BCm374hWavGxWhr0WycJmEKgKAuo/
rBKF0oJEaNCaS80/bkETvKTqtRRy04ZCy2YDhdY6rROpggAIgEAVEvAU2iYSabQbhda+4y9IofXc
85DuAw7s3v/ALv323r5LH/jQqrAIYRIIgAAIgEC9EYAPrd5KHPkFARCoKwJWoa2Ys5AUGou0dTrb
vvrQoNDqqjYgsyAAAiAAAjVBAAqtJooJRoIACIBAaQT8UY7qQ7MKjWYKoffQBh7UnUY59j8g13to
87GBAAiAAAiAAAi0LAEotNI6PbgKBEAABGqCQEShBe+hbd2BZtvnuRy77r4f7TyX4y49McqxJgoV
RoIACIAACLRtAlBobbt8kTsQAIE6JxCay9GfKYRWrKb10Lrutm+XfvvQ3qnXwF936gGFVufVBdkH
ARAAARCoBgJQaNVQCrABBEAABCpEIKLQglGOW7XvuGhJI61VvUufQZ37DNq554Bf7dwdCq1CxYBo
QQAEQAAEQKBwAlBohbNCSBAAARCoOQK+Qgu9h2YV2qBd+uxFIm3nnv2h0GqudGEwCIAACIBAmyQA
hdYmixWZAgEQAAElkFOh0SjHRUuX+T60X3cq0YeWTCx0uO3xWlknTc/r8Xw+zDTK8YLocXZxZRrS
ZSnDTAOtlZSSuJJ0ZI/LEneeSDQt2ZKVTgvxt00C0UWZs3JZdBuphlWtcyyTVWRe0inTurRph7Yi
o5I7Q6qqq5DcxMyab8XnrqqzBuNyE4BCQ+0AARAAgTZMII9Co5lClnXdfd9d++1D+y699yxhppBM
wwJSXIFCSy/U45TVYNR9MsfC2IZcRWvs+seRAmBZk4rpehVdTtSPSzbQVQ3JBC3pS+v6muOiIyr6
Aurz2a5jVrcYfayicdbfBby2barcyqGKFVoRJczqzAueSfKK3f6JMj3cKcKkigYNFiNP0uMe3D0q
CruaIodCq6bSgC0gAAIgUGYCOWcKaSez7dNa1TKX475d+u61fedepb2HplqL1FqyYa0e++orkVS/
mfjQ1J+WbMw6zsp2WTsiqtN084/LDNuLzvOhaW+SXQfU6+a+pMmadLy4twknW+XKoVZj5kcLVFfM
YwV+0mCrrnfsVSSqWlyd6B+6zHTpvSonp/TL1t7YKqrzYonXBCQv+lgjmeTM5rKVlWuanvtws1KX
uMAxeWZNSx4nOssti48lSiPq+AxjSFDi9LU2RnlaxCFVD8vfmDCWm7GZY3WRy8MY4+MqO1/7aMlE
rLnj5FzuHA3+wuWOb3SSOyVmbj5lNw8RVowAFFrF0CJiEAABEGh9ArkVmq5YPfBgWgyN5tyn4Y7b
d+ndHIVmRxLGKDTBsJYCFOhD4+DlU2hOAnG3q6XkkO9D066zjlPijqnNmlVx1ajQdDyo2izczN/A
NViOuq0xm4RSaT+hckQfjSNPcuXNV7ONzwSDZI0vlsvCumXtsVQk2/OW0YNatexfV+VsmKrwoZFy
cDkJmoDYLLo0Q+pK9vhNMJihkir0yLMUkh82+6q7jEBzvnRRXxS1/tVHJ7EKLRLGWGP0UkDbJW0j
bHbhRyIIXGhqr/EQBrmzT51UibncSW3R3JmtCvR5ueG06fig0Np08SJzIAAC9U6gKYW25yHdBxxI
i1Z36bf3Drv2aYZCW6WOMtrlqfYC6Uw0UifBvZnWKgqN+k+uq9dS76Bx1qOjHH3BaXuQxo3QUqKx
3ptCDeXfqy08sM1u4gIym7pQVH6IY0w68mGFFogcG6YK+uisGYyHUDw84uAyg/foKCXnGhqCnEbK
TR1CKlaNN0k8ZgJBtmyFZv1j4m1rnkKzfsvgUYtNOjz2soy1LZBonEScQlPvn1KNU2hW2pfRKERV
eQJQaJVnjBRAAARAoNUI5FRo7Tv+YsmyFb32OrTHwIN6DDho1932aZ5CMzl0XrJqmCnETSdAz5D9
4xYoDW+Uo+lrytQG2ttmD4n+TTakK/XovQUyiSQqQ0DHNJpN++dSfY2+cse+MzaVCjSDPe9VOXak
JBtUEbXupuJKZZLXBAJZpcMXDQEd62jHRBrfF33krBkfr2lfwTxA2QpNErQAcyg0tYlitaMc6SLf
z0bUFZwkJOaFneGhUisvY3vzCidqJXoodzEKzdQesdnlorwGIrZKEIBCqwRVxAkCIAACVUKgCR9a
MxWa85s186BKYMEMEKg9AuqJioyFq71sFGGxuMSsgzBdljmFikg9GtR4AuXFMGwgUD4CUGjlY4mY
QAAEQKDqCOSbKWRJ4/Keex7cg0Y5DjiQRjlu36XEUY5Vl2kYBAIgAAIgAAK1TAAKrZZLD7aDAAiA
QBMEciq0rTtso3M5dttjf9ppLsftSp3LEYUAAiAAAiAAAiBQRgJQaGWEiahAAARAoNoI5FZo7TvK
emj77brbvrTzemidepY2U0i15Rn2gAAIgEBbIZBjje/CshcsqSdvzZV7hT1jhM7JKq/XFr81NW0v
xe3mvKH3D4P5b4pPKtcV3mvD3iugpcVvp+2NoWFnrImNmN6ujLyTDIVWWgngKhAAARCoCQKs0G56
aMa8lY8v3Kz7+u9/3rlb38RW7TsuWrKsS799Ovfdm6ba79Rr4K87dYdCq4lChZEgAAJ1Q6CcCi0K
La9mKJhwsIpDKQowl0LzZq10i+PRVJ+VUWjuHcJm0WZiXnairyYq7bj80jd0KRRawVUOAUEABECg
5gkYhfbSh48v+u7xRdkKre/enfsOIpHWqdcAKLSaL21kAARAoK0RyPDa02bRbX+Ze9FFvFQBfWtW
J5fj0OZ5h9j7JAoqtOi5nalf3F8SvS4boGug0+USnUlXZtY09rjF6OiUzBpqVzOROTHppOgTt1a4
WefAxh+yIViD2854EywmITY3yCLm9KXKG0qODU3z/KUySalZpd0/r8eaC3/NbgqfvfhAICwlozbX
/prvNO8oZ8csJG9Tt6uWBwv0+QJMJyxV3aULiHsKzSNjdbKuNq60yX740NpaU0Z+QAAEQMAjEFZo
JNK+Mz60rcmHtjTkQ/tNpx7woaHygAAIgEA1ETC9f3WzWMXFx6qLdB08uyp1dJBejlGOaXehBrDS
jtPyj93lmq4qNLcWNn2IuH14+T6rN8y1xjaj0FSAqA5xNqhbjMPbxeU42vDKbyzCnAPKrD3P9php
Pb3VGtROFZDZa3Z704AGhRxx/YUt93Ntog1ohFeH52UYPBeZLvQXFFnEh+bIGJkdwFRxCYVWTc0Q
toAACIBAmQnkUWjb+O+hde6z12864z20MtNHdCAAAiDQPAJGofFSZv4a3xope2LiB87p93neQ9ML
NYANxn45q9DYk+O0iq4tHq/QvJUeVFkFcfKxislAoanU1C3iK3Pyxi1ibm1L88qR4oYSH5dZIS+i
0PzzVqGZXKgI1NjcsTMjl0LzQnqLpNtSyF6BkCOMjHL0x5H6Cs0n4/nQjJENGcoLFFrzGg6uBgEQ
AIGqJpBTobXrsK3O5UiThdDepe+g7bv0hg+tqgsTxoEACNQdgUwqxd4yESU01i5Y5l7cWsZVJP40
c+wv8B2v0IIF0O3acoGny3rkZA10e7lJ1/OeGcWiPjS7pLYM0gupPuNCcuP9AitjFl5XrRg469TJ
Zrx8BgArNHVLJRs89SW6yD9vFyCXldyNgeqENAotnpJVcVrLlKocmlLQY5e6Jymt2TEzhbC3UOWc
5IUvtwukJ/yRkP6EK3QMhVZ3bR0ZBgEQqCcCuRVax22XNK7oOfDgbv0P6LbHATRZCNZDq6eKgbyC
AAiAQAwB9XpVYA306FyFFaVv/GllW8m92TOINJHbdLZnDwqtojUEkYMACIBA6xJoSqHteQgtV929
/wG0YvUOu2LF6tYtLKQOAiAAAiAAAkwACg31AARAAATaMIGcCq19x18sWbai116H9hhwEIm0Xfvt
A4XWhusBsgYCIAACIFBDBKDQaqiwYCoIgAAIFEugCR9aL+NDO5B8aBjlWCxchAcBEACBihPQ17z0
/alMQ8WTQwLVQQAKrTrKAVaAAAiAQEUI5JspZEnj8h4DD5L30Pbv0nev7Tr3wkwhFSkERAoCIAAC
pRLQqTJ4LkfZ7IQgpUaH62qEABRajRQUzAQBEACBUgjknm2/A822v5y02a677UtDHDv1GogVq0sB
jGtAAARAoKIEZEp9N5OErr+Mrc0TgEJr80WMDIIACNQzgaZWrO679y599tql9147dt/jf3fqCh9a
PdcV5B0EQKAKCfiz6pN5sr6xrMaMrU0TgEJr08WLzIEACNQ7gZwKbat2HRctaezUe8+dew6gfftd
+/1yhy5QaPVeX5B/EACBqiKQTokaswuXQaFVVelU0hgotErSRdwgAAIg0MoE8ii0DqzQeg3cqUf/
nXrssV2Xvv+zfWcotFYuLiQPAiAAAmECuogzjWykwY70DVxodVJBoNDqpKCRTRAAgfokkFuhtRcf
Wq89RaH1325XKLT6rCHINQiAQC0RwEtotVRazbAVCq0Z8HApCIAACFQ7gXzvoS1euqxz371poCN5
0nbottsvd9wVPrRqL0/YBwIgUM8EMngFrV6KHwqtXkoa+QQBEKhLAnlm2+e5HLvuvh+JNJoshNxo
v9qpGxRaXVYSZBoEQAAEQKC6CEChVVd5wBoQAAEQKCuBfOuhLW5c3r3/ATTbfhfMtl9W6IgMBEAA
BEAABJpDAAqtOfRwLQiAAAhUOYHcCq3jtrxi9YCDyI1GIm2X3nv+plNP+NCqvDhhHgiAAAiAQD0Q
gEKrh1JGHkEABOqWQH6FtqLHwINp0Woe69hnr9/sAoVWt/UEGQcBEAABEKgiAlBoVVQYMAUEQAAE
yk2AFNq4mx6a8dKHjy/6Tvf13/+8c7e+iXZRHxoUWrnZIz4QAAEQAAEQKIkAFFpJ2HARCIAACNQG
gdwKrcM29B5atz3wHlptFCSsBAEQAAEQqB8CUGj1U9bIKQiAQB0SyKnQtm5Pczku27XfPp37DOK5
HLvv8audupb2HloysdCRDY4zjTHHmcZEYj7tHN4eZ2KLJdOQLktxZRp0sVfa3MKvZYk4fySalmzJ
FkiuVpPINCQTKTWeDqiU3MeK5IiTM1sNLCqVTjUxsXrRbSRdBTO1ZypBPk1rOdtlnaM1p2hKpipW
pAaWFKmrtQVdXXx+t/iXxF7u3UUpsLujWnsyyj5inte0+WvbzMPHyQb/KslpqIJwyYbDFAIh722E
7wKRSDSV+F+iQtKrTBgotMpwRawgAAIgUBUEciq0rWTF6l1679Wp58Cdew7Yvmu/X+7QpSSFtirh
KTR3nGIlZpRbOmWO6SRTSS/kH8N0oOv+/+29B3wUV57vq8/dCaAA2MaRoCx1K7RCC5QRNsmzs/fe
vXvffex7933effve3c/Gu7szu5NnvZNsZm2PZ2yMDTiSLDAYGxOMAwZjgxywScoyYHCQxybbBAc8
73/OqaqultSSAEnd1f3tz9+4VF11wvd/qvr86n/qnF6o1C/mUCg0lY4krmVSk/nlHxnJZPSGrmyv
HukldKFioi0NQyGioNB69iP7qFVMOEirySFWM3Gq0EQz2KCEWc9+dkx487KuHbt23WojcnVC95xL
ys06vY/0w++ioTuqlY18re9zPWRPk63Z9B3QetwQti2aSFq5u7BSQZVZqNnLX5GfcPWLIjKDPhRa
f7lcEswhOQmFNiQYSQQCEIBAbBJQCm3Bmj7eQxuVnCoKLa+kWqJnOcVTM/zl12fkX6xC6246JP0h
O1b2YePc/WZb9kuIzNnf5I6nKU6H5Ce4ce7uSMhUH2tI+1VGp5mPe3v4fOZWaE6+ustiHverbod3
ojnDxinaCk2H1HQXsLuxUT/A7+2gqDxa12BUbzXUC05KskqiW5Datq8RHXhoVN3aUC2spu5ENnSQ
Y6Cg3LD52ZVw97x5qvwqYmHKb9qAXXITyTA1MrEOfb30J1WNbjFHyemmyqGAueSiiRk+83TS5njD
U3KxIjd6pz43FM41272PcWpkmpBxhyRuaqQS7xWouVS6Wpi5bl9WduZGor+aO1e2/0bfT+YaqlJs
uz0bwnYLMW1dl012qr+a5olOavqDCCr7dAdXeIkj3UXtgFWY/te/C+6nIe4nVXrbar2us+w9jl5y
nOiGbOolxJ0bqbmnuq9TK2uXl10et6pvfG14KDwbrHi+OteJycoxrm3neuwhLC/VswOch0IbJrAk
CwEIQCAWCFgKbdvB9S1n1zefEbNmCnEptKnZRZeo0EwNjRKbN7fdpdbUIEZnv0utya/hbhNbm5u0
W599qO9Y2dApNPk1dbJwbw+re0IKTbqeoc607o6EVa3fh8TDWsRYSDy6Cs3dR3S7yekp9t00RwKc
PebK9GutIIbO2LVtyik9bLPfKDSngblrZx8TFbUZzssa5ag6uz0Umi656R9bNZL+ca9ee0/6+gBL
w+ht1b+3UtDHGiZGMLi39ZHylZErWhGro+XfPhVaj2OsYriLZxJXF3Sjuh+6ngoNRYuxZVP4jdFU
QTSmqaDRh1qhWaJRwbHG77k0UrcqaWOTlFPLFVvUmdNNE+oxULCfu2ifCs0CbtfcPQbS2RalNbcx
rFT6gnPdEm31HtrvLl4Ifs9Ri8bXpmCqPbi39R+GmPNxH+9UXMqhG45VJr1ttd7hHYxtZ4pCG4oL
hzQgAAEIxCiBMIUmIq3lrKPQ9CjH0prcgMTQKjP8wRsyfRcbQzOV1kpMxjqqF8zErAe+lkIL2y/y
rFen91DfvcYhUmjujsWQDxrrx+euEUe9VJndMdUVT2yF5qq+6UcOb9enR78zXKE5vdtwCS2hTtXP
G9GPq/G7u5I9u7l9KbS+a+EFhWZKHkGhRcavIFj9ZhPZUDolXKGZe47phYe2h0GhqcSHXKG5JIyj
pnR1VGVthaaaaLhCC6m1PhSanKiFWGPjPGfkZNgox/Arpf+HXFbIq9cd27mW+5RnlkfDH1f1FId9
KbRQOwnP0Z3LgApN/NQz5mZX2RTb/WPh3rZ4OdJtOO8LKLThpEvaEIAABKJMIKJCGy3vobV1+IL1
SqSVVGcVTpmQVXAZCs2qZ/8zhdhxM3Ww9ZZat4q89fEZEoWmn5Y6XYGRDCA4Ck2KEHr46tZm1hsZ
9ii7KLeTqGVvP6hW49OsbvTwlaVnZMDyQU9VYz+nNw1m5BWa+5UeE2syzdgMz3NvW7EFNcpvbmjk
mHXtaN3iigfKMSN5CURwY7cKMelxdybupzdt7WQ5yNkvx1i1iCjdtbOMKlPj1tzvOxkZ41Zl9rYJ
cJmed6QYWv/H2LVzLmNH/llBztAgusttz5qY/hh07mZpRjwaOO64mVtuSUUMZ/dQ0blzVYuSf53h
pu7Tw2Jo4XfRHtEnScQ0V3ejNaV1hhqGWp1deP290kg9zur5HpqrPWj/hreTUDzNvjps1DprxxE9
tnXY0MCMdLx7kp7wCXskUSNuR+CDQhsByGQBAQhAIFoEIis0mW2/rVOtVS0iTeZyDMhcjkWXptCi
VTfyhQAEbAJhMYG4wDLY8HKPuX+GenjhJbKMvckn4q+FXKJrLuu0XuM/Lyu1fk9GoQ0fW1KGAAQg
EHUCERVacupYWQ+tuIr10KLuIwoAgcsiYM3xcFlpxNbJpkaDD1XoySOsk6JeEx0VDJu4IrpFMuUZ
mTlso1vTYc9dzSnS36Q1Q1sAFNrQ8iQ1CEAAAjFFoA+Fdu5CblEwKTltbGt7Z6B6loTRCqZMzy+r
Tc8vIYYWU86jMBCAAAQgkJgEUGiJ6XdqDQEIJAiB/hVaV6BmdlHlTWqsY3ldug+FliCtgmpCAAIQ
gEBME0ChxbR7KBwEIACByyMwUAytZlb/Cm0XHwhAAAIQgAAERpYACu3yOj+cDQEIQCCmCURWaNZ7
aDMlgGbF0BjlGNOupHAQgAAEIJAoBFBoieJp6gkBCCQkgYgKbbSay7FDtJm/okEsr7Rmcl6A99AS
spFQaQhAAAIQiC0CKLTY8gelgQAEIDCkBCIrNL0emmgzX3m9mCyJNim3GIU2pPBJDAIQgAAEIHAp
BFBol0KNcyAAAQh4hEBEhTYqOa25tV20WX5ZnVhOoGpSLuuhecSrFBMCEIAABOKaAAotrt1L5SAA
gUQnMDiFVl6XqxTapcXQDiUl7XcwO9vzkna59/+haX+TPii0vyl0Vi8vyWK1Seb4y/uodCQFvRZQ
k1nIZmTWBZrrLJtjZeuqR3fjUFTt8sDExtlqpaa5jVIW5SdrnaHuHstgySFOYYWq2ZbTeu+MjToN
VSn0KlZDvPZS7KxZPMjVqFWB3Q2gP7gamN08krp7Heo0nqHy0IilI+1A59Wt2sOQ3j2ci86k3D+i
Ph0h66ypoqkLOHRJ9klGlvAWb3rXCyPmbicjFNrIMydHCEAAAiNGYKBRjsFpapRjsD6vtPoS3kPr
bjokPaG5lkL7sHHufrMt+//Q3W7vl5/+3Ulz23vsb5y7OxIF1bsa0o6I0Wnm494ePje4FZqTr+5p
qb6M6c1Ya+wOcS98+Oo0HClbEnru3MZG+U8c3zRP962bNBzVMXUWI5Zt3b2zTjF/NukjB7+08XDU
YTjS1L3lJqmqlbhuNVY1nW37GlELEs9rVO2ou1E4Wp1m3dTtzr1ubPPmxQIoUxLpr7svAdNxV5Xe
oJ9fmKtEF9jdAKz9+nKeO1fL+u7GeXPV0xwjNjSKJmlJlrpVSwxbMkTSDm3rc7UmsS5GlXWjOlh2
6qwtLWRdyBp1H8c4vtdnKbySpp24Tkf75XI+PR7xSEk0HONuqbupiNM81EMPu/x2S7BoGq6usmjJ
57oxWomYw80909DQ25ZCa5oXeobivktL29trnj0prOYSNqlrIH9u0jGO1tgVLpOm9SzCuvb7gGWO
tx+xqWRMSzZJ6m3J3rQZlafJyzjRNA/Tcuz2b5fNcdblOGjYzkWhDRtaEoYABCAQfQL9KLTQTCEF
UxryL2M9NEuVNe6e2/iho8rcCq1x7q5QT8BWbvOSdiepONvuviENqUIzgRrzcW8Pn39Ml8Lp3EgH
wjykdolP3fMaxLPn4StkLKRsuozSyVKdJf2v/Gn6bQaXbBvNJrhUL9rqzaldpvccl0/lTcDB0auW
nlHN2Io+qWZsXSOKjLAyXXZ1mtWndzU5vct8Ge2PVZJQWFtfAlZPXbcAqYfsMg3AdOKdBmD2S210
NMaSEPreoiprGolBYQCa4+12YsLpps2oba3wrOC6alcarwGrgrS6JD0UWs9jLJpOrN5SfSZxU4XL
V2hhThPJZIkQlZdJ3ORlamNwKTmiK2IAhm4+4e63pJhJxY6huSFb27ZA7Xm/CtNUAl97QV/JxqGm
FRvarqvVGc4wz1zvc+VjX/t9tU99vFU8HQdWF4Fylmu723n+ZXnU3FotRK6rxhKQ+ofAFXeN9nXR
R/4otBh0CkWCAAQgMFQEBjvbvj9Yn+kvu7SZQowqM7/yfSq0pHmHQvVxxdb0zkN99xqHTqE5w2/0
z7HqEIzAJxRDM/1l+1G0ecquUVkPkkesSBdVa/ME2ihME2mw4g2X29/sVYpuJSk0EOlFSWhlnotM
6Cm76u1JbMTulJs2c7EKzamCqd3w1uuicPc8WLqb9scCrnxhs7e3dUOyZL+RKKZp2f+aJISVfUz0
Rzk6JTGa036QoXrSqpj21WE/Rgkb5Wh0hlMpS5mbytq6z7QjrQqUOHA/jrGjNyFVb0diFDojY2yl
p6NAfSm0nscYx1mCQT9ZsHWOnbWRjpfx6R1Ds+4eSqGZtE1epgpGGrmr4zwt6kefG0XqIHUguwHK
1012ulZ9wu7SyllOMNzxrNbS5qK2ydu6zoTaRJpJJNy59k3KVgRMb9ttxsrTqEpHmtrbNmfL+6YG
lsw2TrKOtO4C1rex/HwHhXYZlw2nQgACEIh1Av2vWN1VUjO7qGpGUeUMf3Balr/8chSaIdGXQvsw
rI9iKzTrLbXu9rAnxA7PIVFo5lm4+ejHySP2cRRanx1o8+hXeld66M0IicYRq/vFZiQP0G0XmZGO
9ngq+8m92qWfhTvdKXtwlOnzxRtA91A0tW03Y3tgnqqv2baUrSuGFlJobs0WmzG08EtArgRznUoV
+oih6QZgBm0KE6ff78hRHTs0oaQkE2STjx1DU82qt0LrEUPrU6GZY8QDUqo+VJzV1nvE0FQhhyyG
Fnp1ttsVONXVsW+SPWJo5gpyqmNt93FHVQmam2Iocmialg3ZiaGZWJw6NHwsouU1ZyyAPQYy/AoN
V2h2kNdkZC5/HXiLdIN2YmhKcVlxM1390La8pGdFmJX3Q7dW+2mFuUvoHLX8NrF3R5Re7D1rRI5H
oY0IZjKBAAQgEB0CAym02jnF1TOLq2bItPtZBZeo0KJTM3KFAARCBKIfH4uuN5x3k0wxLPUV3TJp
QTOSD4aiX92oleCyY5VRK3nEjFFosecTSgQBCEBgyAhEVGgpaeNaO7pK624OVM8SkVZwSQpNv0g2
BDZk1SUhCCQaATuScJmD6byOzQxes2rRNO9yxxZeNg4rtNtjjOJlJ0sCEQig0GgaEIAABCDgJQID
xNBKrRjaTH/FtMxLHeXoJR6UFQIQgAAEIBDzBIihxbyLKCAEIACBSyegFdrqJdsOrm85a+zkuQu5
RcGk5NSxre2dgZpZ+j20m2SmkAxf6aW9h3bppeNMCEAAAhCAAAR6EUCh0SggAAEIxDGBiAptdKrM
tt8p2qxgynQZ4phXWjM5r48Vq3fxgQAEIAABCEBgZAmg0OK4Z0bVIAABCERWaClpzW0dMoWjrISW
X1aXU1w5MaeQGBotBgIQgAAEIBB1Aii0qLuAAkAAAhAYPgIRFdqo5LTm1vb8stq8kmqxrMKKCVl+
FNrweYKUIQABCEAAAoMkgEIbJCgOgwAEIOBFArZCO7C+5Yw2+z20UcmpSqGV1uQGqnIDlZn+4IRM
HwrNiz6mzBCAAAQgEGcEUGhx5lCqAwEIQMBNwFJoWw+sbz5jzJopZJSMclQKrVYrtKqsAlFoxNBo
PBCAAAQgAIHoE0ChRd8HlAACEIDAsBGIqNBGp6S1tHX45D20slqJpGUXTZmQXXBJMbRDSUn7nfKb
7XlJu9Sepv2yWmvTPLVt/jUb7uPlmL7WcWqSBWeHYn0nlY5kKqvZqpx1inp72D9zk+wFmXoviNTd
OBRVG/YqjEQGahGreSYjQ8z5c7hy7240jpGGMVdap8sXqmG4/uxdElnhau5ca8UtvWmVPLyo0uSG
oIHZzadbbbgo9cASamY9eQ1NMYbBCwOv4HzpbaC70eImG8q74R+PXnehYjeZOiXZlezRNvq+guz7
j1xp5iqzL7chaKWDbx7uiyLkX1018ZRJZ948UzbV3HukfLHX1MUeb2fb5xU9+FoOcGTkq7XvE1Fo
Q4aehCAAAQjEHoGICi1Zz+VYOPVGEWm+8rqcQNWknKKLVWjdjbtlxeq5jkJr2m+2k+a2axQfSvdy
XtJu/fvXbmRJ0tzdoeP/cMjScuHgZOXZuUOy5Kzqpqqff/WT3zTP9Nh6//wPh9dcP8a9uqQe7SkO
B6aRVmiuzp/J2uUL1TAGUGjzGhutfq3aGkaFFmozppCRRIv3FNogGv+lKjTrcYxpp4Ksp0YbRNbD
0cYvN82whwgiIUKPfNSi2ANdQeYRlb4DN4q+s9kOrJMvt9jh5/ej0JwiNf2hSf9G9PFw4WIV18Ue
b/hcasMbLCoU2mBJcRwEIACBBCAQeg+txyhHWQ+tpb2zuGqGzLbvjzzb/mAQGcUlam1u44cu9aX2
iCiy9xzSEYvdItWcYxrn7rIjTb3yGdLulPOYVrJxbw+mdpd2zFxRmfbH9I9MLESpRKtquqelepUj
+jD70qozXGcN1L8c4nxtxR5Ktkf3dyCFpnwoLmxyVJPlVt2olENVhexYnLjWuLhXNGfgasm56mMu
D5uS1dvWCUo28o3d54tQjIHzGfEjNGFTbNONNkLKVM2OApm4tzpGcJpvFWGtMdxUFWsdpjdH6udB
5lz513T09Xe2GldHqCtOuU+jdWLsonzUQSYvc5FaesaGr7vvfRxjE7QuZ5Wqk7j2ni7MZXx6PESw
nzRZKeoGZ39MFDrsztPjdie1UCf0vO069yLdsDVSRcn6WJJJJ2U947AavO21MJK6SMaDrv2hu5y7
hOYWaNq4agCN3Zq3Bqc+7kEQg8g64vFWcvbzDnfxrEbY4yozLcupiG6uoSZqHvO5nwH0bromS6u5
Ws1ek9ewbSe4yP+h26EqLVDkNzG0y7hsOBUCEIBArBPQCm2NXrHazBRiv4eWnKZXrK6eJWE0EWky
1jE9r+RiY2im9kZxmV9VR30lJe02HVO3QtO9pZBCS5p3KCK/oVNojgSyes8j4jJ3DM30EU2/STGx
q2b3VEJ9lxEp2qAyMfLAlNl0Aq2uYERJPahkex40wgot7DG57nf2aGYDK7Q/zJ3bOM+Ja9lulTZm
yW8jDEw6du9ZnG5IXgKjsDiJqxWZ5/1WM4tUjEvIb7hPcSk06X87ItQtJNxVM11hu9OuhKibqlN9
2a07v/oA8xRGwXecomsVcoodO3XH2G3tYcfYVVLuAKaj0Ex5TIpuKaHvdlYJTTH1nssO2rvapGpa
PUZND3QFuYSWuRvrkmv9GfpYqk9LIDcl1xGWp0KCULENec1N0qVpnWP6iaHphx5yvmrP8q+Yo8/C
Th9E1pGOd+rRy6Hyjd0IHZLW1WQUWugqC2+i5oIOhWlthea6KnWuvVWcIWw1XTd5qzlZQlTootCG
+25E+hCAAASiSMCl0M7KRI6huRy1QusK1MyWRavVWMfyuvT8y1JoppJGj801Ixv1p8d7aC6FpsZA
RvwMiULTv9hWFj06JcPsE0eh2R21UNfN6h45D08TOYamH5LrvqL1js1wDzSyQgS639zjxTPTIuwe
lVUedzMxPtV9URUONl32UIimVwzNDqFpWX5xH/U03ZzkiA21rfuLUgBX39EcF6EYF5fpiBzt6p6a
a9NQsgMUPbvFvRWam6pboZlRjSZGIVt279mJobllszO6tWcMTcrTU6H1irP1OCZ0n9ONwyhzfWNz
Xny9FGUeckYf76FZTrfbhmoV8nGLBOd0ExIzZZb/O9dX+GDvsBia/XDBStZoXbv5WfpBp2PR09+6
SLoUWoQYWihl8wsgL3VaVWq0NkJUQy8SDyLrvmJo7ltKT4XmrlpYNdXryj0UmruJGnruYF8khebE
0ExqTvOwzw2LoVlf208lUGgjcksiEwhAAALRIdC/QnPH0IZSocnLacb0T45MJeKaHSQUQ1PjHiN+
hkKhqV6D/XFvj4Ar3EOPTHa6LEYuSvdRfuDVv3Mbm8K7SiNQtJjLwh1fGnaFZmmz0ADCHk8JnHZi
MJkhWObjPPY2gVBTVONWO1wsWxJhs8SAGX8mLr6EuKNTDH2J6MyajKq0EjS5mz0RixFzrrbUi0NS
Cm/dBHTgwo7Dq6qZY3ortB4QnC6vjuh0K3fo2K/jVnMlGiEd0h7O7UXna1Suk5e5SK0Ymh2000Ge
Po5xWohxjnGXJTxM1pf5CCYUILWbot04nKbhbp/uMYRWRNFcYPqP0PXlzKpitW27GfcZQ9M52rdr
hbe318wwAfelYeVlPOuC4C6DARUKRjX1ev847PSBstbwXdm5jrcvYefKtYoRqlrYVWauOHcMzUrZ
alh9pCzfhB1vvGKH/kI3kLAwshmV6nrO4mpjKLQYvIFRJAhAAAJDRSCyQpOZQto7iyov6z00R4ld
5sZQ1ZZ0IDC0BOSVoqFNkNSGj4DVxbY6/b1ethq+jPtM2Q7a9xhnOMKlIDvvEkChedd3lBwCEIDA
gAQiKrTRKTKXY0dhRYO/vF7N5VhcOSmn8NLeQxuwEBwAAQhAAAIQgMDgCaDQBs+KIyEAAQh4jkBE
hWZWrBZtlldak1dSnVVYMSGLFas9518KDAEIQAACcUgAhRaHTqVKEIAABGwCkRVacqootLzSalkJ
LSdQmVlQfkNGPjE0Wk4cE1CvMNnvhOnpxJvcr71d7vtCcQyOqsUNgYt6v/eiDtaI5CKyptIZNmLu
V0PdmTiXtnkzUz6RjtRfuubhdL3pd/GT+lxEPc0cQwN8XJNzOgrtlP05ffq0bMq/A6XC9xCAAAQg
EOsEBqPQKrOLp2b4UWix7kvKd9kErBnnJJ3ea0Kh0C4bLwl4hMBA0ss96+BFVUkuIpEYlzA1jsll
gImCdLEl/T6LZJ/b1M/K164TwxSaM69MaL2Bi6r24A4eQKH1mqPFKLSTJ082NDT4/f6ampof/vCH
Z86cQaENjjdHQQACEIhpAv0oNDXKMb+sJrfExNCCN2T6iKHFtDMp3OUTsCZWbLJnX9SThusOmp6I
z7WgVmg/k4VcPndSuGQCrkW3TZvU8V81GaxZJ10vsa2nvFfxF/lezwvvXkhAr9Fnr9zgzH7pavnO
Et5WIR2F1muNb2s2S/eK1frCcbKz5JN7OXKTqDPvvCmhqYie/1CHvKxtc62py9Bep0StoGBFw1wL
D4RqZHM1xxj95lr52krKKrBFz7rSrUkUXXrVrGZuEFkFs9K3yFtf2eukW19aa5RbU4+aUJk53b2Y
hMnOTBnqPsZJxJ2vnOjE0ESS3X777Rs2bDh+/LgINhTaJV9LnAgBCEAgdgj0M1NImswU4q+oF5Em
Yx2zC6dMzCpAocWO5yjJMBEIdfj0M3unI2hmyTczk6tOp7WY7GWvODxM1SDZxCDgtE8jY/QoOSOT
zNME9wIA1rY6zL2EtD6zx5ID6lR3Cw+PqoXF0My4u/BF2J11BczFotcSE7moRjk6isme4d/a4R7i
Z2+HljRw1nE29TMXoTUm0JmCP6yQdo2cZtDnytfuK1qrJuvq1vrWGhjZ57L1rtGGbvLuZRucyFuP
9RV6r6XmwNGrolllcNZb66XQlEwV5qLQjh49akY4fvrpp93d3WYbhZYYlz61hAAE4pyAUmj3rlmy
9eD65rPGTp69kFsUTBots+23yWz7N4pI8wXrcgMyl2MRCi3OmwPV010fZzCV2rD7qc46ZmEdprBO
J/ggMOIE7PZppItWBSYmFlGhqThSaL0+RzLpFc9toeWKpGlZdREKzYS5jDZUiavTbUHYY6iweyyx
W6E56zWHVIq9SpirmlY+kqaztFpIFOkvw1cykCTUiteyX/7nrIHt1lFa8oXoWcMOB6PQbPJmwTc3
PXeB3aM03WujhSs0G2CPUZ3hoxyNQjMRsx6fTz75ZMRbIRlCAAIQgMAQExDN9VOt0J7ef9aYpdCS
U8e2tsuK1TMKp04vmNKQX1qTnleMQhti/CQXgwRcq+LavSi9oq/V3Qw9vDdPuwd+uT8G60iR4ohA
aNFtKwrU9wLHzurI1nwUocW4zSBEazlprVi6zXQaoRYerlKsldD7XONbh+OcNb7Vth62F75UtCtH
xxGutZvtdZz1iES99rqRPWadaK36dBxbJ6PDhk1m0XFTbL3DrpHL0X2ufG2SMgXWWyLjwiOQPd/K
07n0iKHZ5J2ihmla1/BL547Rx2rXVjFCq12Hv3cXlq9RaCLGzEdiaO5PHLVuqgIBCEAgQQkohTZ/
9aNbDqzbd+apvcpOnL2QU1ielJymFFpJ9SwJo4lI85XXpueXoNAStJlQbQhAwPME7FGOnq8IFVAE
RKF9HOEDIAhAAAIQ8DoB0Vw/vvvxh194e+3uT9fu/kTsxJmQQusqqZldXHWTGusYrMvwKYUmvwr9
fDo6Ol588cXnn3/+Bf1xNsyffCAAAQhAAAKXQ0B+Vsxnz549MplhInz6FGJe73xQfghAAAIQ6IeA
aK4f/XbVg5s717xxevXrp8SOn/kyu6CPGFpdulZo70X4vPvuu/LN8uXL5U1lZ+jF6dPOJhsQgAAE
IACByyUgPyti8kOzbds2mR4jET7OU1GRaidOnBCCokvp2UAAAhCAQBwTEM31/TtXLtzQ3th0onHn
cbFjn36Z5S9LSpaZQto7i6vs99DKrPfQfu/6yK/F4cOHnR3ym/HQQw/Jj4e8vswHAhAYkMDHHx99
773333nn8NGjxw4fPiL9zgFP4QAIQODEiZMffXx069atxxLjIx6Xn1rRZrJhnoGi0OK4W0bVIAAB
CAgBUWjfnbdi/tqWpduOLtn6sdjRT77I9JUljU6RuRw7Cqc0+IPOXI6FcrSjx2Se35UrV952223y
U2F2GoUmvyDS7/zoo48xCECgfwJbXtiybOnS737nOzJe6yc//rFcOxCDAAQGQ+CD7g9lRH1iCLRj
osqmTJlilDkKja4bBCAAgUQgIJrrH36x7Dcr9z7w7IcPbO4W+/jU5xl5pUmjUtSK1b7yurxStR5a
VlHFhCy/W6EtWbJk5syZ69ev76HQurs/PHjwnQMHDmIQgED/BLZte+mZZ56Zd9tt+/c333PPPXLt
QAwCEBgMgfb2zmefey5xFNrUqVMXLFggwx1RaInQM6OOEIAABERz/c2/Lvn1kt33Pf3+feuUfXTy
8/TckqRRyami0ESb5QSqcgKVmQXBGzJ9boUmIy5+97vfbd++vYdCkyFb+/e37tmzH4MABPon8OKL
W5977rm7fvObPXv2Ll60SB5tQAwCEBgMgTfeeGvTpk2Jo9D+4i/+orOzU5Y+Q6HRb4MABCCQCARE
c/3lDx/+5QO77l5zxNjvT3w2OSdMoVVmF1dm+HsqNBnWKCJt586dPRRaV9eBXbt2v/baLgwCEOif
wJtvviUfEWktLa0y7YGEBSAGAQgMhsArrzRt2LAxcRTa2rVrRZsxyjERumXUEQIQgIB5D+3//ZcH
b7n/tTsbD/1GbOU7Hx7/bFJ2QGJoapRjfllNbonE0KpUDC0rLIbmvHvWY6aQ119/88UXX9qCQQAC
AxF4cev2rdteFjMb8i8XDgQgMDCBLS89//zW9es3JIhCO378uDwPlX9RaPTbIAABCCQIAVFo/+O7
i386v+n25QdvX3HwjhUHPzz22cSsgMwUkiYzhfgr6kWkyVjH7KIpE7ML5GjnF1F+LXr/Ou7YsePp
p9evXfskBgEIQAACEBg+Ak89tS7RprU0Qxw//fRT5nJMkC4a1YQABBKWgGiu//s7i38yv+nfQwrt
vFZoMtt+W6daq7pCz+VYUjkpt0iOToTlQakjBCAAAQh4goB7AZg42+6ff8L2Wqg4BCAAgUQgIJrr
//nuAz9d8Oodjx1SAx1XHpIY2iRRaMmpY1vbOwPVPddDSwQo1BECEIAABCAAAQhAAAIQgEBUCKj3
0L7/4M8WvfHb1YfVTCFP6JlC5D205DSl0EqqZ0kYrXDqdF95bXp+iRwdlVKSKQQgAAEIQAACEIAA
BCAAgUQgIJrrr37yyK2PviWz7d+/4YOFGz6wZtvXCq2rpGZ2cdVNaqxjsC7Dh0JLhCZBHSEAAQhA
AAIQgAAEIACBqBEQhfb3P1ty52N7Hnzuw4ee/73Yx6e+UCtW94qh1aWj0KLmJjKGAAQgAAEIQAAC
EIAABBKCgCi0f7p1+d1rW5ZtP7r85WPLXzl27JMvsnxl8h7amJb2zuIq3kNLiHZAJSEAAQhAAAIQ
gAAEIACBWCAgCu17dzQu3NC+6rWTj78udur4p19m+8tltn2Zy7GjcEqDP6jncgxUTsop5D20WPAZ
ZYAABCAAAQhAAAIQgAAE4pWAaK4f3rXqgWc7n3jzk7VvKTtx5kJOQXnSqBS1YrWvvC6vVK2HllVU
MSHLj0KL13ZAvSAAAQhAAAIQgAAEIACBWCAgmuvHdz/+yAtvP7X303V7z6zbd+bE2Qs5haLQklNF
oYk2ywlU5QQqMwuCN2T6UGix4DPKAAEIQAACEIAABCAAAQjEKwHRXD+dv3rJiwee3n9m/f6zYifP
XsgtDLoVWmV2cWWGH4UWr22AekEAAhCAAAQgAAEIQAACsUJAFNq/3rtm6daDG5rPbmhRdvLchdwi
pdDUKMf8sprcEomhVakYWhYxtFhxG+WAAAQgAAEIQAACEIAABOKSgCi0WxasWbrtoJFnIYU2OiVN
ZgrxV9SLSJOxjtlFFROzCxjlGJeNgEpBAAIQgAAEIAABCEAAAjFCILJCk9n22zrVWtUVei7HkspJ
uUUotBhxG8WAAAQgAAEIQAACEIAABOKSQESFlpw6trW9M1DNemhx6XcqBQEIQAACEIAABCAAAQjE
IoHICi1NKbSS6lkSRiucOt1XXpueX0IMLRZ9SJkgAAEIQAACEIAABCAAgXghYCm0lw5uaD2rzJkp
JFkptK6SmtnFVTepsY7BugwfCi1e3E49IAABCEAAAhCAAAQgAIGYJGArtEMbWs9ps+dy1Aqts6Rm
FgotJh1HoSAAAQhAAAIQgAAEIACBOCTQS6Gds2bbt99Dm6lGOVZOl8lC0omhxWEDoEoQgAAEIAAB
CEAAAhCAQAwRiKjQRqu5HDtEnhVMaRCTOffT8wK8hxZDrqMoEIAABCAAAQhAAAIQgEDcEYis0PR6
aAVTpvuD0/zBelkSbXJeMQot7hoAFYIABCAAAQhAAAIQgAAEYoiAUWjLXjq00XoPzR7lOCo5rbm1
Q+SZr7xeLLekenIuCi2GPEdRIAABCEAAAhCAAAQgAIH4IzBYhZYnCo0YWvz5nxpBAAIQgAAEIAAB
CEAAArFEIKJCG21GOVY0qFGOFdPyS3kPLZb8RlkgAAEIQAACEIAABCAAgXgk0I9Ck5lCOosqb5JX
0QqnqLkcM/ylvIcWj22AOkEAAhCAAAQgAAEIQAACsUIgokKzZ9ufJSJNTCYLyfSXo9BixW+UAwIQ
gAAEIAABCEAAAhCIRwJuhSaThYjZ66GpFau7SmvnFFfPLK6aKcMdswpQaPHYBKgTBCAAAQhAAAIQ
gAAEIBAzBPpVaB1dpXU3B2pmBapnypJoWYUotJjxGwWBAAQgAAEIQAACEIAABOKRQESFlpI2rrWj
q6z+WyW1s0tqZhdOnZ5VGGSUYzy2AeoEAQhAAAIQgAAEIAABCMQKgQFiaCi0WHEU5YAABCAAAQhA
AAIQgAAEEoBAZIWWqt9Dq5tTIqMca2apUY68h5YADYIqQgACEIAABCAAAQhAAAJRJBBRoY1OHdPS
3hmonlVcNUNMz+VYxijHKLqKrCEAAQhAAAIQgAAEIACBuCcQWaHpFatlnv3CqTeK+crr0vNLUGhx
3yCoIAQgAAEIQAACEIAABCAQRQIRFdoordBkuWp/RYNMtZ9fVpueF0ChRdFVZA0BCEAAAhCAAAQg
AAEIxD2B/hRasyi0igZ/xTQRafllNSi0uG8NVBACEIAABCAAAQhAAAIQiC6BAUY5hsXQGOUYXV+R
OwQgAAEIQAACEIAABCAQ7wT6UWhjWto6nffQ/MG6DH8poxzjvT1QPwhAAAIQgAAEIAABCEAgmgT6
n21fzeUoIk3MH5yW5S9HoUXTV+QNAQhAAAIQgAAEIAABCMQ7gX5XrJb10GrnFFfPLK6aKS+ksR5a
vDcG6gcBCEAAAhCAAAQgAAEIRJlAvwqtQ1asvlmWqw5Uz1QrVhcSQ4uyt8geAhCAAAQgAAEIQAAC
EIhvAhEVWkrauNaOrrL6b5XUzi6pmV04dXpWYZBRjvHdGqgdBCAAAQhAAAIQgAAEIBBdAgPE0FBo
0XUPuUMAAhCAAAQgAAEIQAACCUWg/5lCZJTjnBIZ5VgzS41yLGCUY0K1DSoLAQhAAAIQgAAEIAAB
CIw0gciz7aeOaWlXczkWV80Q8wfrM/1ljHIcaf+QHwQgAAEIQAACEIAABCCQSAQGWLHaWQ/NV16X
zorVidQyqCsEIAABCEAAAhCAAAQgMPIEIiq0USlpLW0dBVOm+ysaZKr9/LLa9LwAMbSR9xA5QgAC
EIAABCAAAQhAAAKJQ0AptPvWLNt+aGPrOWMnz13ILQomiUJrFoVW0eCvmCYiDYWWOG2CmkIAAhCA
AAQgAAEIQAAC0SIQUaGN7h1DY5RjtLxEvhCAAAQgAAEIQAACEIBAYhDoR6GNaWnrdN5D8wfrMpgp
JDHaBLWEAAQgAAEIQAACEIAABKJFIKJCS04d26rnchSRJuYPTsvyM9t+tNxEvhCAAAQgAAEIQAAC
EIBAQhAQhfZv5j20tvD30JLTRKF1ldbOKa6eWVw1U15IYz20hGgRVBICEIAABCAAAQhAAAIQiB4B
o9CWbz+0SRSaNmumEKXQOmTF6ptluepA9Uy1YnUhMbToOYqcIQABCEAAAhCAAAQgAIEEIKAV2hPL
t7+zqe28NluhpaSNE4VWVv+tktrZJTWzC6dOzyoMMtt+AjQJqggBCEAAAhCAAAQgAAEIRI1ARIVm
YmgotKh5howhAAEIQAACEIAABCAAgcQjEFmhqZlCZJTjnBIZ5VgzS41yLGCUY+I1EGoMAQhAAAIQ
gAAEIAABCIwggYgKbXTqmBY9l2Nx1Qwxf7A+k9n2R9AxZAUBCEAAAhCAAAQgAAEIJCCBXgrtvDVT
iFmx2lkPzVdel86K1QnYQKgyBCAAAQhAAAIQgAAEIDCCBJRCu989U4gotK9yi4JJo7RCK5gy3V/R
IFPt55fVpucFmClkBF1DVhCAAAQgAAEIQAACEIBAwhEIU2it5ze1uhRasyi0igZ/xTQRaSi0hGsa
VBgCEIAABCAAAQhAAAIQGHEC1npoLx3a1HrOmB7lWJ5kRjmGxdAY5Tji7iFDCEAAAhCAAAQgAAEI
QCChCCiFtmDN8m0HNrWcUdZ85uTZC7mFSqGNaWnrdN5D8wfrMpgpJKGaBpWFAAQgAAEIQAACEIAA
BEacgCi0WxY8vmxr18bm09pOnTz7ZW5hWVKymm1fzeUoIk3MH5yW5We2/RH3DxlCAAIQgAAEIAAB
CEAAAolEQCm0+Y3LtrRv3Hdi497jYqLQcgpKk9SK1bIeWu2c4uqZxVUz5YU01kNLpIZBXSEAAQhA
AAIQgAAEIACBKBBQCu3u5cue379x9+83vvXhxjc/PHnm85yCEq3QOmTF6ptluepA9Uy1YnVhkLkc
o+AisoQABCAAAQhAAAIQgAAEEoaAaK5/veuRJZve3PD6kQ2vH17/2uGTn36W4w8kpaSNE4VWVv+t
kprZItIKp0xHoSVMq6CiEIAABCAAAQhAAAIQgEB0CIhC++kdi5es3/n0zq6nd3SKnfzkXI6vyIqh
lVkxtFkqhlbAe2jRcRK5QgACEIAABCAAAQhAAAIJQkAptH+/79GnXlq3vWXdyy3rXmo58cnZnPxC
M1NIV0ntbP0e2gyZKSSTuRwTpFFQTQhAAAIQgAAEIAABCEAgSgSUQps3/9G1W9Zt26ttz4nTZ3Ly
C5JGp6rZ9kWbFU69UYY4smJ1lBxEthCAAAQgAAEIQAACEIBAAhFQCu3Wux9d8/y6rW89tfWtdS++
pRRant9esbqiwRes95XX5waqJuUUMlNIAjUNqgoBCEAAAhCAAAQgAAEIjDgBrdB+9+ia557aulub
rdBGJac1t7bnl9flldaIZRVOmZDlR6GNuIPIEAIQgAAEIAABCEAAAhBIIAJKod1296NP6FGOL6mB
jidOy3toBUmjklOVQiurzS2pzi2pyiwIotASqF1QVQhAAAIQgAAEIAABCEAgGgSUQvv1giVPbVu3
vXXdK8pOyFyOMlPIqBQdQyur0wqtOquwAoUWDQeRJwQgAAEIQAACEIAABCCQQATUemi3L5LZ9tc3
vb3+VWUnPz2f4yu23kPzVzTIQEeJpGUXT53Ie2gJ1DCoKgQgAAEIQAACEIAABCAQBQKi0G75zUNL
n9m14Y0jG3a9K3byjF6xOlnmcmzvLKq8SUSaTBYiYbRJucW8hxYFF5ElBCAAAQhAAAIQgAAEIJAw
BJRC++3SZc/v27j7o417Ptq4++OTZ77IKSg166F1Bqpnymz7Bcy2nzANgopCAAIQgAAEIAABCEAA
AlEkIArt3+55bPmW9k37Tmzad1Ls5NkvcwvLkpLT9IrVNbMljCYizVdel55fQgwtiq4iawhAAAIQ
gAAEIAABCEAg7gkohTZ/5fKtnRubT29s+WRTyycnz13ILSy3FVrtHFm0Wo11DNZl+EpRaHHfIKgg
BCAAAQhAAAIQgAAEIBBFAqK5frZg9YqXDmxqPbOp9azYqTCF5o6h+YihRdFTZA0BCEAAAhCAAAQg
AAEIxD8BpdDuW7Ni+6FNbeeMqRhakcTQ9EwhxVW8hxb/jYAaQgACEIAABCAAAQhAAAIxQkArtCdW
vPzOpvbzxk6e+yq3KCiz7Y9paesonDLdH5ym5nIMVE3KKWKUY4y4jWJAAAIQgAAEIAABCEAAAnFJ
QCm0+5VCe6b9vLFTRqHpFas7fOX1eaW1eaU1WUVTJmQVoNDishFQKQhAAAIQgAAEIAABCEAgRgho
hba2L4WWnNrc2i7aLCdQJZZZELwh04dCixG3UQwIQAACEIAABCAAAQhAIC4JKIW2cO2KVw4/0/6Z
NieGFlJoldnFlRl+FFpcNgAqBQEIQAACEIAABCAAAQjEEAGj0B4ThdbRU6HJKMf2/LLa3BIrhjYh
y08MLYZcR1EgAAEIQAACEIAABCAAgbgj0EuhfWa9hzY6JU1mCvFXTBORJmMds4umTswuRKHFXQOg
QhCAAAQgAAEIQAACEIBADBFwFNrmjs+M2QpNZttv61RrVVfouRxLqiblFqPQYsh1FAUCEIAABCAA
AQhAAAIQiDsCERVacurY1vbOQDXrocWdz6kQBCAAAQhAAAIQgAAEIBCrBLRCe/KxV45s7vg8LIaW
nCYKraukZraE0Qqn3ugrr0vPLyGGFqt+pFwQgAAEIAABCEAAAhCAQDwQGEih1c4prpqhxjoG6zP8
pSi0ePA5dYAABCAAAQhAAAIQgAAEYpXAgAptNgotVn1HuSAAAQhAAAIQgAAEIACBeCMQrtDUQEdr
phD7PbRZEkDTMbS6DB+jHOPN/dQHAhCAAAQgAAEIQAACEIgpAhEV2mh7LseCKdPFZM593kOLKc9R
GAhAAAIQgAAEIAABCEAg/gj0Umifh62HJtrMH5wmJkuiTc5jtv34awDUCAIQgAAEIAABCEAAAhCI
IQIRFdqo5LTm1g7RZr7yerHckurJrIcWQ46jKBCAAAQgAAEIQAACEIBAHBIYrELLE4VGDC0OGwBV
ggAEIAABCEAAAhCAAARiiMBAoxwrGtQox4pp+aU16XkBZtuPIddRFAhAAAIQgAAEIAABCEAg7gj0
o9DGtLR1yiyO8ipa4ZTpPpnLkfXQ4s79VAgCEIAABCAAAQhAAAIQiCkCERVar9n267P85cTQYsp5
FAYCEIAABCAAAQhAAAIQiDMCorl+vvDJxh1HNnfIYmjK7PXQ0sa2tneV1s4prp5ZXDWzoKIhqwCF
FmfepzoQgAAEIAABCEAAAhCAQGwRcBTas529FVpHV2ndzYGaWYHqmQVTGrIKUWix5TxKAwEIQAAC
EIAABCAAAQjEGYGICi0lbVxrR1dZ/bdKameX1MwunDo9qzDIKMc4cz/VgQAEIAABCEAAAhCAAARi
ikC/oxxRaDHlKwoDAQhAAAIQgAAEIAABCMQ7AaPQHnul93toqfo9tLo5JTLKsWaWGuXIe2jx3hqo
HwQgAAEIQAACEIAABCAQXQLuUY7yKprYqfNf5RYFk0anjmlp7wxUzyqumiHmD9Zn+ssY5Rhdb5E7
BCAAAQhAAAIQgAAEIBDfBCIrtJS0lrYOWQ+tcOqNYr7yuvT8EhRafLcGagcBCEAAAhCAAAQgAAEI
RJdARIU2Sis0Wa7aX9EgU+3nl9Wm5wVQaNH1FrlDAAIQgAAEIAABCEAAAvFNoD+F1iwKraLBXzFN
RFp+WQ0KLb6bArWDAAQgAAEIQAACEIAABKJOYIBRjmExNEY5Rt1dFAACEIAABCAAAQhAAAIQiGsC
/Si0MS1tnc57aP5gXYa/lFGOcd0YqBwEIAABCEAAAhCAAAQgEGUCERVaspptX83lKCJNzB+cluUv
R6FF2V1kDwEIQAACEIAABCAAAQjENYHICi1Nr4dWO6e4emZx1Ux5IY310OK6JVA5CEAAAhCAAAQg
AAEIQCD6BESh/WLhkyt3HHlOL4YWWg8tWRRah6xYfbMsVx2onqlWrC4khhZ9h1ECCEAAAhCAAAQg
AAEIQCCOCSiFtqgvhZaSNk4UWln9t0pqZ5fUzC6cOj2rMMgoxzhuClQNAhCAAAQgAAEIQAACEIg6
AUuh7YwQQ0OhRd1DFAACEIAABCAAAQhAAAIQSBwCboVmBjqeOv9VblEwSc8UIqMc55TIKMeaWWqU
YwGjHBOnYVBTCEAAAhCAAAQgAAEIQCAKBCIqtNGpY1r0XI7FVTPE/MH6TH8Zoxyj4CKyhAAEIAAB
CEAAAhCAAAQShkAPhSZhNCuGNjolraWtw1kPzVdel86K1QnTLKgoBCAAAQhAAAIQgAAEIBAVAiGF
1vX5c9oshTZKK7SCKdP9FQ0y1X5+WW16XoAYWlScRKYQgAAEIAABCEAAAhCAQIIQ6E+hNYtCq2jw
V0wTkZZfVoNCS5A2QTUhAAEIQAACEIAABCAAgWgRiKjQzCjHsBgaoxyj5SXyhQAEIAABCEAAAhCA
AAQSg4BLoX0RNspxdMqYlrZO5z00f7Auw1/KKMfEaBXUEgIQgAAEIAABCEAAAhCIDoGICk3Ptq/m
chSRJuYPTsvyM9t+dJxErhCAAAQgAAEIQAACEIBAghCIrNDS9HpotXOKq2cWV82UF9JYDy1B2gTV
hAAEIAABCEAAAhCAAASiRaBfhdYhK1bfLMtVB6pnqhWrC4mhRctN5AsBCEAAAhCAAAQgAAEIJASB
iAotJW1ca0dXWf23Smpmi0grnDI9qzDIe2gJ0SioJAQgAAEIQAACEIAABCAQJQKiuX656MmVO488
1yUzhSiz1kNLllGOotCsGNosFUMrIIYWJS+RLQQgAAEIQAACEIAABCCQGASUQlv45KodR57v/OL5
MIWmZgrpKqmdrd9Dm+EP1mf6y4ihJUaroJYQgAAEIAABCEAAAhCAQHQIqFGOC00M7fPnOpXpGFp5
0uhUNdu+aLPCqTfKEMf8slpWrI6Oi8gVAhCAAAQgAAEIQAACEEgYAqLQfr7wicZXDj/b8dmznefl
31PnvsotFIVmVqyuaPAF633l9TmBqkk5hcTQEqZhUFEIQAACEIAABCAAAQhAIAoERHP9bMHqFdsP
PNN2Vmxz29lT5y7kiEIblZzW3NqeX16XV1ojllU4ZUKWH4UWBReRJQQgAAEIQAACEIAABCCQMARE
c91y78qlWzs2NJ/eKNbyyUml0MpEoaUqhVZWm1tSnVtSlVkQRKElTKugohCAAAQgAAEIQAACEIBA
dAiIQvvp3SuWvNCybs9Rsaf3Hjt59svsgtKkUSk6hlZWpxVadWZhBQotOi4iVwhAAAIQgAAEIAAB
CEAgYQiIQvvRXY88+MzutbveX7vrg7Vvdp8483mWv8R6D80XnJZXViuRtOziqRN5Dy1hmgUVhQAE
IAABCEAAAhCAAASiQkAU2vdvf2Dh+tdWNR1a1fTO468eOv7pZ1m+4qRkPZejTOQoIk3eRlMzheQW
8x5aVJxEphCAAAQgAAEIQAACEIBAghAQzfUvv77/vqdefuzljkaxVzqPfXI+M79IFNrYlnY1237B
lOn+igaZLGRyHgotQVoF1YQABCAAAQhAAAIQgAAEokNAFNp3b1tw7xPblm9rUfZS67FPzmXkFyYl
p8mK1Z2B6lkSRhORptdDKyGGFh0vkSsEIAABCEAAAhCAAAQgkBgElEK7df78NS8u27pf2bZmpdDy
LIXWFaiZXVR5kxrrWF6Xno9CS4xGQS0hAAEIQAACEIAABCAAgSgR0Art3vlrti7b2iy2fFvEGBoK
LUouIlsIQAACEIAABCAAAQhAIGEIiEL753kLFjz50ort7Su2tz32cvtx+z20MfIeWlEl76ElTFug
ohCAAAQgAAEIQAACEIBAtAnouRwXL1y/c9XOA6t2HFi186DM5ZgpczmOTpG5HDsKKhp85fVqLsfi
Smbbj7azyB8CEIAABCAAAQhAAAIQiHMCaj20Ox9+YOOuNa+/K/bEG+/p9dAC7hWra1ixOs5bAdWD
AAQgAAEIQAACEIAABGKDgCi0n/xu2SPP7Xtq90di6/Z8fPLsF9kFpUmjklObW9tFm2UXV8py1Rn+
8usz8pnLMTa8RikgAAEIQAACEIAABCAAgfgkIJrrX+c3Ln2xfcP+kxuaT21sPnXy3Jc5BWVuhTY1
qwiFFp/up1YQgAAEIAABCEAAAhCAQEwREIX2bwseX/7SgWfazmg7e+rchZxCpdDSJIYmC1XnBCSG
VpnhD16f6SOGFlPOozAQgAAEIAABCEAAAhCAQJwREM31s/ufWPHyO5vbz2/uUHbq3Fc5heUyU0ha
c1uHL1gvIk3GOmYVTpmQVYBCizP3Ux0IQAACEIAABCAAAQhAIKYIqBja/WtXvHz4mY7PNmuzFVqq
zOXYqdaqDuq5HAOVk3KKUGgx5TwKAwEIQAACEIAABCAAAQjEGQHRXLcsWLt0++GNbZ9tbP9sU/tn
J00MLTl1rKyHVlzFemhx5nGqAwEIQAACEIAABCAAAQjELgFRaD+994lHtx5+uuUzZa3nRaFlF4hC
Sxvb2t4ZqJ4lYbSCKdPzy2rT80qIocWuJykZBCAAAQhAAAIQgAAEIOB9AqK5fnD3msUvHFyz5+ya
veee2HvuxNkLWbZC6wrUzC6qvEmNdSyvS89HoXnf4dQAAhCAAAQgAAEIQAACEIhhAqLQ/vmuxxds
7nps1ycr3vz0sTc/PXbmQqa/rHcMDYUWw26kaBCAAAQgAAEIQAACEIBAXBAQhfYPt6/87fr2h5tO
PtJ06tFXTx399Mt0X6m8hzZG3kMrquQ9tLjwM5WAAAQgAAEIQAACEIAABLxAQBTa3/36sdufbFu0
/fjC7ccXvXz840++nJxfKrPty1yOHQUVDb5yPZdjsczlWMh7aF7wKWWEAAQgAAEIQAACEIAABLxK
QDTXX9+24rYnWhZsO3rvtqMLXjr60SdfTMorTRol66G1tueX1eWWmPXQKiZk+VFoXvUz5YYABCAA
AQhAAAIQgAAEvEBANNdf3bri1tUt97x49J6tR+dvNQqtJGlUcqooNNFm2cWVYhn+8usz8lFoXvAp
ZYQABCAAAQhAAAIQgAAEvErAUmhrWkSbiUkYzY6hhRTa1KyiqSg0r3qYckMAAhCAAAQgAAEIQAAC
3iEgCu1v5q349ZOt928/JrbQeQ9tVLIa5ZhXWpMTMDG04A2ZPmJo3vEsJYUABCAAAQhAAAIQgAAE
vEdANNf/+vfGu55uf2jHiQd3nHho50lrLsfR8h5aW4cvWC8iTb+HNmVCVgEKzXsepsQQgAAEIAAB
CEAAAhCAgHcIiOb6zp2r5m/qXPb6abHlb3wi66FlyHpoo2W2/bZOtVZ1UM/lGJC5HItQaN7xLCWF
AAQgAAEIQAACEIAABLxHQDTX93+3euHzBx7ffebxPWJnj5+9kKVWrE4dK+uhFVexHpr3nEqJIQAB
CEAAAhCAAAQgAAGPEhCF9pP5Tzy89Z2n9p8XW9d8/uS5r7ILypOS08a2tncGqmdJGK1gyvT8str0
vBJiaB51M8WGAAQgAAEIQAACEIAABDxBQDTXLfc9ufSlIxvbPt/Y9pmYKLScQkuhdQVqZhdV3qTG
OpbXpftQaJ7wKYWEAAQgAAEIQAACEIAABLxKQBTazxY++dgrRzZ3fmHs1PmQQusM1MxCoXnVt5Qb
AhCAAAQgAAEIQAACEPAaAVFov1j01Kqd7z7fdeG5ri/FlEIrCjrvoc2UAJoVQ8snhuY191JeCEAA
AhCAAAQgAAEIQMBTBESh/XLxusd3vvfC2xeMnTr/h1xRaHouxw7RZv6KBjGZc39yXoD30DzlXAoL
AQhAAAIQgAAEIAABCHiMgGiuXz2w7vFX39ty8MKWA8pOWwpNr4cm2sxXXi8mS6JNyi1GoXnMvRQX
AhCAAAQgAAEIQAACEPAUgTCFpkWapdBGJac1t7aLNssvqxPLCVSxHpqnPEthIQABCEAAAhCAAAQg
AAHvEeip0A72qdDK63JFoRFD855/KTEEIAABCEAAAhCAAAQg4CUCERXaaDPKMThNjXIM1ueVVPMe
mpccS1khAAEIQAACEIAABCAAAQ8S6EehhWYKKahoyGc9NA96lyJDAAIQgAAEIAABCEAAAt4iEFGh
JaeObWnvLK6yZtv3B+sz/WXMFOIt71JaCEAAAhCAAAQgAAEIQMBbBCIrtLSxre1dJTWzi6pmFFXO
kOGOWf5yFJq3vEtpIQABCEAAAhCAAAQgAAFvERhIodXOKa6eWVw1w18xLasAheYt51JaCEAAAhCA
AAQgAAEIQMBjBCIqtJS0ca0dXaV1NwdqZgWqZxVMaUChecy3FBcCEIAABCAAAQhAAAIQ8BqBAWJo
KDSvOZTyQgACEIAABCAAAQhAAAIeJtDfTCGt7Z0ltbMDMsqxeqaMcszkPTQPO5qiQwACEIAABCAA
AQhAAAIeIBB5tv3UMWYux6LKm8T8wboMXykzhXjApRQRAhCAAAQgAAEIQAACEPAsgf5WrG5p6yic
emPBlOli+WW16XklKDTPOpqCQwACEIAABCAAAQglgQMjAAAwlElEQVRAAAIeIBBRoY1KSWtu7fBX
NPiC02Sq/bzSmsl5xSg0D7iUIkIAAhCAAAQgAAEIQAACniUwkEILTvMF60WkodA862IKDgEIQAAC
EIAABCAAAQh4hkB/oxyb28JiaOl5AWJonnEsBYUABCAAAQhAAAIQgAAEPEigH4U2xv0emq+8Lt3H
e2ge9DBFhgAEIAABCEAAAhCAAAS8Q6C/2fbNXI4yWYiYP1if6S8jhuYdz1JSCEAAAhCAAAQgAAEI
QMB7BAZYsbqkZnZR1YyiyhkyWQjroXnPvZQYAhCAAAQgAAEIQAACEPAUgYEUWu0cWa66uGqGrFid
VVBODM1TzqWwEIAABCAAAQhAAAIQgIDHCERUaClp41o7ukrrbg7UzApUzyqY0oBC85hvKS4EIAAB
CEAAAhCAAAQg4DUCA8TQQgqtAoXmNd9SXghAAAIQgAAEIAABCEDAawT6mymktb2zpHZ2QEY5Vs+U
UY68h+Y151JeCEAAAhCAAAQgAAEIQMBjBCLPtp86xszlWFR5k5gvyGz7HnMtxYUABCAAAQhAAAIQ
gAAEPEegvxWr3euh5ZfVsmK157xLgSEAAQhAAAIQgAAEIAABbxGIqNBGpaQ1t3b4Kxp8wWky1X5e
ac3kvGLmcvSWdyktBCAAAQhAAAIQgAAEIOAtAgMptOA0X7BeLLekGoXmLddSWghAAAIQgAAEIAAB
CEDAcwT6G+XY3BYWQ2OUo+e8S4EhAAEIQAACEIAABCAAAW8R6EehjXG/h+Yrr0vPL2GUo7e8S2kh
AAEIQAACEIAABCAAAW8R6G+2fTOXY+HUG8X8wboMfxkKzVvepbQQgAAEIAABCEAAAhCAgLcIKIW2
eN3jTe9tOXhB2YELp89/lVtYnpScNra1vaukZnZR1YyiyhkyWQjroXnLtZQWAhCAAAQgAAEIQAAC
EPAcAVFov1z81ONN775w4Etlb3956vxXOSGFVjtHlqsurprBitWecy0FhgAEIAABCEAAAhCAAAQ8
R0ArtCdX7Tzy/NtfiD3X9fmpc1/lFJQlpaSNa+3oKq27OVAzK1A9s6CiIaugnFGOnnMwBYYABCAA
AQhAAAIQgAAEPERANNcvFq5duePwc52fiT3bfv7UuQvZBaXWKEdboc1SCs2PQvOQZykqBCAAAQhA
AAIQgAAEIOA9AqLQfn7/E40vH9rcdk7smZYzJ89+meUrSUpOlffQOktq5wSqZ8lARz3KkZlCvOdg
SgwBCEAAAhCAAAQgAAEIeIiAKLR/u/fx5Vvf3tj8idj6fSdPnPkiM784aXTqGDOXY1HlTWK+YF26
j9n2PeRZigoBCEAAAhCAAAQgAAEIeI+AKLR/nb9yyZb2p/eeeHrP8bVvfnz808/T84qSRqekuddD
yy+rZcVq77mXEkMAAhCAAAQgAAEIQAACniIgCu0nv1vx8LMtT7758dpdH61+9f1jn3w2OacgaVRK
WnNrh7+iQebZF8srrZmcV8xMIZ5yLoWFAAQgAAEIQAACEIAABDxGQDTXj+5a9uCmvWte+0DkWeOO
w0dPn5uU7bcVWnCaL1jvE4VWUo1C85hvKS4EIAABCEAAAhCAAAQg4DUCotB+cOeSRet3y5JoMuf+
iu0Hj54SheZToxyb21QMTeSZiaExytFrzqW8EIAABCAAAQhAAAIQgIDHCGiF9sjC9W/KhPsrX3ln
+bYDR0+dnZSlFNoY93tovnJmCvGYaykuBCAAAQhAAAIQgAAEIOA5Akqh3SEKbZcotMZXDmuFpkc5
ymz7Zi7Hwqk3ivmDdRnMtu8591JgCEAAAhCAAAQgAAEIQMBTBHQM7dFF699atfPdVTsOP7b9kPUe
WnKarIfWVVIzu6hqRlHlDBnomMmK1Z5yLYWFAAQgAAEIQAACEIAABDxHQBTaD+9c8sDG3atfe19m
Clm548ixT85Pzi1MshRa7RxZrrq4aoZesbqcuRw952AKDAEIQAACEIAABCAAAQh4iIBorh/ftfzh
zfvXvvHR2jd+v+a17uOffpYh66GlpI1r7egqrbs5UDMrUD2zoKIhqwCF5iHPUlQIQAACEIAABCAA
AQhAwHsERKH99O7HlrzQ9vSeY0/vPvbUW0dPnPkiMz9gxdBshTZLKTRiaN7zLyWGAAQgAAEIQAAC
EIAABLxEQBTaLfeuWrq1c8P+02Lr9506efbLLH+Jmimktb2zpHZOoHqWDHTUoxzLGOXoJd9SVghA
AAIQgAAEIAABCEDAawREc/1swZoV2w4+03J2U8sZsZNnL2T7S5NGp44xczkWVd4k5gsy277XfEt5
IQABCEAAAhCAAAQgAAGvEdAK7YnHXnrnmdbzz7SInTt57kJ2QZlasdq9Hlp+WS0rVnvNuZQXAhCA
AAQgAAEIQAACEPAYAa3Q1i7f9s6mlvNiG1vOnzz3lVJoo1LSmls7/BUNMs++WF5pzeS8YkY5esy9
FBcCEIAABCAAAQhAAAIQ8BQB9R7a/CeWvPjO+n3n1u899/Tec3qUo6PQgtN8wXqfKLSSahSapzxL
YSEAAQhAAAIQgAAEIAAB7xEQhfaT365++NkDT+46s1bbiTMXsnx6lGNzm4qhiTwzMTRGOXrPvZQY
AhCAAAQgAAEIQAACEPAUAVFo37991cL1HSt3nlq5Q9nxT7/MyJeZQlLGuN9D85UzU4inHEthIQAB
CEAAAhCAAAQgAAEPEhCF9p1bV9yzunXpi8eWvHhM/j12+ov0XD3bvpnLsXDqjWL+YF0Gs+170MEU
GQIQgAAEIAABCEAAAhDwEAFRaH9/y7I7lu1bvOmjB5756MHNH3186ovJOaLQ0mQ9tK6SmtlFVTOK
KmfIQMdMVqz2kGMpKgQgAAEIQAACEIAABCDgQQKi0P7qR4/e9vDu+9Z9cP/T3Quf/vDjk59Pyg7Y
Cq12jixXXVw1Q69YXc5cjh50MUWGAAQgAAEIQAACEIAABDxDQDTX//z+w79Y/OY9T7w3f+37C576
4CNRaFmBpJS0ca0dXaV1NwdqZgWqZxZUNGQVoNA841cKCgEIQAACEIAABCAAAQh4kYAotP/vew/9
fOGuu1e/N/+J9+998oOPTnw+URSaGeVoK7RZSqERQ/OihykzBCAAAQhAAAIQgAAEIOAdAiqG9j0T
Q1Py7L513VYMTWYKaW3vLKmdE6ieJQMd9SjHMkY5esezlBQCEIAABCAAAQhAAAIQ8B4B6z20R3ar
l9DWf7h4w+8/PvmFeg9tdOoYM5djUeVNYr4gs+17z7uUGAIQgAAEIAABCEAAAhDwFgFrLsfl+x/c
/PFDz3788PNHj5q5HGXFavd6aPlltaxY7S3XUloIQAACEIAABCAAAQhAwHMEzHpo81e3Lt92fMVL
J1ZsP3Hsky8z8kqTRqWkNbd2+CsaZJ59sbzSmsl5xYxy9JyDKTAEIAABCEAAAhCAAAQg4CECorm+
f/uqRes7H3/19OrXPhE7/umFzHxHoQWn+YL1PlFoJdUoNA/5laJCAAIQgAAEIAABCEAAAl4kIArt
J79b8+jzB9ftPvv0nnNiJ89eyPKXqVGOzW0qhibyzMTQGOXoRQdTZghAAAIQgAAEIAABCEDAQwRE
od2yYO3ybYc3tXxm7OS5r7ILykWhjXG/h+YrZ6YQD7mVokIAAhCAAAQgAAEIQAACniQgCu3n9z/Z
+PKR5zq+MHbq3Fc5heVJMtu+mcuxcOqNYv5gXQaz7XvSxRQaAhCAAAQgAAEIQAACEPAMAVFov1z0
1OM7332h60tjp88bhaZXrC6pmV1UNaOocoYMdMxkxWrPuJWCQgACEIAABCAAAQhAAAKeJCAK7VeL
1z3e9N6WAxeMnT7/h9yioK3QaufIctXFVTP0itXlzOXoSSdTaAhAAAIQgAAEIAABCEDAIwREc936
wLrVr7734sELxiyFlpI2rrWjq7Tu5kDNrED1zIKKhqwCFJpHvEoxIQABCEAAAhCAAAQgAAFvEoio
0MwoR1uhzVIKjRiaN31MqSEAAQhAAAIQgAAEIAABrxCIrNBSRaF1ltTOCVTPkoGOepRjGaMcveJX
ygkBCEAAAhCAAAQgAAEIeJFARIU2OnWMmcuxqPImMV+Q2fa96F/KDAEIQAACEIAABCAAAQh4iUBk
hZaS5l4PLb+slhWrveRYygoBCEAAAhCAAAQgAAEIeJBARIU2KiWtubXDX9Eg8+yL5ZXWTM4rZpSj
B11MkSEAAQhAAAIQgAAEIAABzxAYSKEFp/mC9T5RaCXVKDTPeJWCQgACEIAABCAAAQhAAALeJNDf
KMfmNhVDE3lmYmiMcvSmiyk1BCAAAQhAAAIQgAAEIOAZAv0otDHu99B85cwU4hmnUlAIQAACEIAA
BCAAAQhAwKME+ptt38zlWDj1RjF/sC6D2fY96mSKDQEIQAACEIAABCAAAQh4hMAAK1aX1MwuqppR
VDlDBjpmsmK1R5xKMSEAAQhAAAIQgAAEIAABjxIYSKHVzpHlqourZugVq8uZy9GjbqbYEIAABCAA
AQhAAAIQgIAnCERUaClp41o7ukrrbg5UzxKRJlOGoNA84VEKCQEIQAACEIAABCAAAQh4l8AAMbTS
2jkBFUObqUc5lhFD866nKTkEIAABCEAAAhCAAAQgEPsE+psppLW9M1AzS7+HdpPMFJLuK0Ghxb5H
KSEEIAABCEAAAhCAAAQg4F0CkWfbT5XZ9jtFmxVMmV5Q0SDroU3KLUahedfTlBwCEIAABCAAAQhA
AAIQiH0CA61YHZyWX16XX1aXXTx1YnYhCi32PUoJIQABCEAAAhCAAAQgAAHvEoio0EYlpzW3tueX
1eaWVItlFgRvyPSj0LzraUoOAQhAAAIQgAAEIAABCMQ+gX4UWqooNBncmBOoyglUZviD12fko9Bi
36OUEAIQgAAEIAABCEAAAhDwLoHICi1FxdDyVAxNFFqVKLQbMn0oNO96mpJDAAIQgAAEIAABCEAA
ArFPoL/30FraOnzBaSLSJJKWVThlQhajHGPfoZQQAhCAAAQgAAEIQAACEPAwgX5m21dzORZOvVFE
mkwWIgMdJ+UwU4iHPU3RIQABCEAAAhCAAAQgAIHYJ9Dfemgt7Z3FVTNktn0/s+3HvicpIQQgAAEI
QAACEIAABCDgfQKRFVraWLVidfUsCaOJSJNJHSfnBXgPzfsepwYQgAAEIAABCEAAAhCAQOwS6F+h
dQVqZsui1SLSZKBjel4JCi12PUnJIAABCEAAAhCAAAQgAAHvE7iIGFo6MTTv+5saQAACEIAABCAA
AQhAAAKxTKDfmULaO4sqeQ8tlt1H2SAAAQhAAAIQgAAEIACBuCLQz2z7MpdjR8GUBl95fX5ZXU5x
5UTmcowr11MZCEAAAhCAAAQgAAEIQCDmCAywYrVos9zSmtyS6syCIOuhxZz3KBAEIAABCEAAAhCA
AAQgEF8EIiu05NTm1nbRZhI9yy6emuEvvz4jj5lC4sv71AYCEIAABCAAAQhAAAIQiC0CAyu07OLK
rKKpGb6y69JRaLHlPEoDAQhAAAIQgAAEIAABCMQZgX4UWprE0PJKa3ICVSLSdAwtnxhanLmf6kAA
AhCAAAQgAAEIQAACMUWgn5lC0prbOnzB+rzSWhnrmFVYwXtoMeU5CgMBCEAAAhCAAAQgAAEIxB+B
yAotVeZy7JS1qkWkyXLVzOUYf76nRhCAAAQgAAEIQAACEIBArBHoZz20sS3tncVVrIcWay6jPBCA
AAQgAAEIQAACEIBA3BKIrNDSxra2dwaqZ0kYrWDK9Pyy2sl5Ad5Di9uGQMUgAAEIQAACEIAABCAA
gRgg0L9C6wrUzC6qvElEmgx0TM8rQaHFgMsoAgQgAAEIQAACEIAABCAQtwQuIoaWTgwtbpsBFYMA
BCAAAQhAAAIQgAAEYoJAP++hjZH30IoqeQ8tJvxEISAAAQhAAAIQgAAEIACBRCDQz2z7MpdjR8GU
Bl95fX4ZczkmQmOgjhCAAAQgAAEIQAACEIBAlAlEXrE6Ra1YLdost7RG1kPLLAiyHlqUfUX2EIAA
BCAAAQhAAAIQgEC8E4is0JJTRaGJNpOV0LKLp2b4y6/PyGOmkHhvD9QPAhCAAAQgAAEIQAACEIgm
gYEVWnZxZVbR1Axf2XXpKLRouoq8IQABCEAAAhCAAAQgAIG4J9CPQlOjHPNKa3ICVSLSdAwtnxha
3DcIKggBCEAAAhCAAAQgAAEIRJFAPzOFpDW3dfiC9XmltTLWMauwgvfQougnsoYABCAAAQhAAAIQ
gAAEEoFAZIWWKnM5dspa1SLSZLlqeRttYk4hMbREaBPUEQIQgAAEIAABCEAAAhCIFoF+1kMbK+uh
FVexHlq0XEO+EIAABCAAAQhAAAIQgEDCEYis0NLGtrZ3BqpnSRitYMr0/LLayXkBYmgJ10CoMAQg
AAEIQAACEIAABCAwggSUQlu8bnXTey8euGDs9Pk/5BYFk5KVQusK1MwuqrxJRJoMdEzPK0GhjaBr
yAoCEIAABCAAAQhAAAIQSDgCWqE9uXrnkRff/sLY6fNf5RaWG4UWFkNLJ4aWcM2DCkMAAhCAAAQg
AAEIQAACI0pAFNqvFq19fOfhLV2fGbMVmswU0t5ZVMl7aCPqDzKDAAQgAAEIQAACEIAABBKZgFJo
C9c8/srBLR1ntrQrO33uQm5hWdLoFJnLsaNgSoOvvD6/jLkcE7mRUHcIQAACEIAABCAAAQhAYIQI
iEL75YKVj29rf6Hl5AstJ8ROn/syp6A0aVSKWrFatFluaY2sh5ZZEGQ9tBHyCdlAAAIQgAAEIAAB
CEAAAolKQCm0+ctXbdn//L7fGzt19oscfyBpVHKqKDTRZrISWnbx1Ax/+fUZecwUkqjthHpDAAIQ
gAAEIAABCEAAAiNBQCm0ux9e+dybz7115Lk3D4udOvNZjq84pNCyiyuziqZm+MquS0ehjYRLyAMC
EIAABCAAAQhAAAIQSFgCotB+cdcDKzc1Pfv628++1iV26tPzOfmFotDUKMe80pqcQJWINB1DyyeG
lrANhYpDAAIQgAAEIAABCEAAAiNAQDTXz+9c2LjxlWdfbXu2qfXZppZTn57LyS+QmULSmts6fMH6
vNJaGeuYVVjBe2gj4A+ygAAEIAABCEAAAhCAAAQSmYBWaPc3btgu2mzzzpbNO5pthSaz7bd1ylrV
ItJkuWp5G21iTiExtERuK9QdAhCAAAQgAAEIQAACEBhuAlYMbcP2zU2tSqHttGNoyaljZT204irW
QxtuF5A+BCAAAQhAAAIQgAAEIAABi4BWaIsbN+7Y/FrH5lfbN7/apmNohUnJaWNb2zsD1bMkjFYw
ZXp+We3kvAAxNBoOBCAAAQhAAAIQgAAEIACB4SOgFNpdDzY+89rm1w9ufv3A5tfe1jOFFBmF1hWo
mVVUeZOINBnomJ5XgkIbPk+QMgQgAAEIQAACEIAABCAAAdFcP/vdI489++bmN49s3nVYzJpt3x7l
ONPE0GRSx8l5xSg0WgwEIAABCEAAAhCAAAQgAIHhI6AU2t1LH3t+7+bd3Zt3fyB26sznasXq0Wqm
kA7RZr7gNF95fU6gchIzhQyfH0gZAhCAAAQgAAEIQAACEIDAH/6gFNo9K1ZsaX5m78fK9nx86uwX
2aLQ7PXQamU9NDGZbd+8h8YHAhCAAAQgAAEIQAACEIAABIaPwN0rX1z18oGNe48ZO6kUWknSN0en
vLl7X26gMt1Xnu4rm5xfMjG3+IZM39UTsq66bvK4ayaMueq61CuuTh47fnTaFaNSxn4zWdk3kseI
qe2UsaNSxcYlj7ky7Yprxo6//oprJ42fkHHNpJzrM/ImZBdIRE6m75+YXTghq0BWWrsh0y8rYl+X
nqct99rJOddOUnbd5FzZI19J1nKYsuwCOXFSTtGk3GIZeCkmf8r+0OmTrdOvmZglpR1/Q8b469Ov
MnZdumyPn5B5zcRsycJK2U7WlERbKAvJSPbIkddMyh5/Q/oV10wcM/66lHFXJ4+5SqomdTcm28lj
rxIaKWPHy79q2z5glPCxTR98ZejgceNTx12desU1gkjZldcKqHFXT7ji2olXXjfZLmqW4pCeqyGo
4tk1DVESqlI8yyZmyYZTO+tgYSLHTMzWQITDZHHH2Ktv0E68RhV4zJWqkOIy5bhxst2jqOYY5Wt1
2Djlcdvp6hQbglTfrsh1UhfJQprKFSGbKNuyR0y+smz8DWOVXT/mqmvl3JRxhp6dl81W9htQUuax
41Xi4gjZFmjGnP2SmjDU+U6Ual553SSpbxhMq1HlhRqVeLxXu1JNNNtpElbD0G1VNVTNM0uatIap
MhKwQl6+kmOkWWb6y3OKp8oVJP9mF1ZkFZZn+ssyfCXpeYHJucWqAfeRvsmlb5PSXq+vDm1yUUj5
zXVhXxrWiWqPOthcUOZysC8oVWZpxuL98denXXlNqtAec1XI9catCWv69tWnfVNua9LO9dUhV4Fq
5/pqveK6SXJNKadnF2YWBAunTK+Y/u36b//5nP/2P//T//jHuX/zo//x3Vv/5w/v+Msf/eavfnzX
X//07r+9Zf7f/2zBP/xi4T/+avE/3frAP90m9uB35vW0f5r3oPrq1sX/qO0ffrXIMTnR7BSTA7TJ
kSYpl5mdypzDFv/jrxaJ/cMvFxr7X78Qu/9/yYa9R3bKAeaU79y2+LvzHtD24D/Pe/BfjP1a27+L
PfQ9ZQ9/73axR5XdseR7dy75vmVLv39nD1Nf/cCxO5b8oLe5D1Dbj4p9X+wOsUd+ELJHf3CHmE6h
5yl6j5Ny2LdLf3Cn2DJlv3HZXct+YCy0c+kPfqOtz8Qj7jSlcpfTbOv9ui59WZ9VMEXVporhlCSU
/vfvePj7t/eyUHZ9JmtKGMlUaYWzZbc/8n2xO4x/+8pL7+/TdMH06VYixoNO27A3pMGYlnP7I5GS
+t7tD/VhVtszLdA5wF0YSdBt9lfSXPUp0not+/VD/2KZNGz3tmrn/6zNavO9Nsy3cmloe8AyuWrE
bhVb9J1fLfwnsV+K3W/bQrVTvpIDzJHKzFWmTCfipNn3hlyP2uR4uUK16XTkgu3P5IpW+fYw2amt
x7l6p74PyN2gt0kVLs8MGbnVqLuN2yIna51iTrxIC5W2Z12s6tsQQk7RYP9ZmXKKufV9T8y+7zlX
3w9uf/gHt4df9Xc+8gPLQpf8D+989EfKlvzQ2G+W/Ggk7c4lknXI+sz6riU/smzpj+4Ss//sfXDo
SOeUCBuRM/rxXUt+fNfSXrbsx3f1Y3J8P9wE7yPaHu5lsvPREHBdfpVUn+Yus+U14zuVgin2T+5a
9tPfLvvp3cv/9e4Vyu5ZcYtlj91yTw9zvnJvPHbL/EZtK3uZ7JRvrUR+1/ji0i1ta1/v3rD3+Ia9
x57Zf/zj058phSafX/7qtpnf/i83ZBUYuz7Tf12G79rJueMnZF15XfpYpVWkk3dtyrhrRo8ZP3rM
VaOll69NNvSfSqvIt3LYOJEc12dcPTHrWtWzFJVVKHpvYk6RmGwrs3ORjNS3lgAryfCVSb8nq2iK
dHNlTTaJ5uWKlYhVG5Phl5kFFaIhRbDJiaqoIvaU3tP/Zirt50ozMDmvJD2/VI7P8JdrC4pJFmJ6
2+wsV5kWTskunipZy59yliQu1RctdNX1GeOk7iJvxouJThC7YayojmsnXXGtdNYny4bUV/boY0R4
iIpQQkI2xlylDh5z9QShZx1/nXSXzSnKZFvYShbjb8gUXJKdELsuI1+qo+WZwBFfqNopX2TkK0sX
ywuZ9MjlT+mdZ/gMAetgOWxyriQoyUriV16XIdlJSbRIU05MGSuy03JZqiltWL0mqRqNv16+cg42
XpYTde2ulwOk8NJhlYwkd1Ng40rHlNONu03ZjKdUdfKlbCKnhYBuWkY9XitmUpb9gkUlLkxU7XSt
dY0UJV1rU2Xh42pCAXm4oD3usvxS2SkxYWPyle3xiuyiqdKiVNMKVGUXTVGtwlemTrfNnCjVkVqo
iyLDr1ygVJBIaJWvfCupSXOV6U8LpjQUTp3ur5jmD9bJn9JuZb+Eo3VLU8laSekLIWTmilCmrgVV
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
blBmh8FD8XCVghMCGsLwlyvcdBEBrkHGwZzD7GiYVlz2sILBbzzfKcwHtvAEJYYZCsGFgmw6vKaj
ahILVUi1dyQ0arnGRNVMPE3ahh1SE7XWK6rmCqntfH+VWCiwpmNrdngtPMjmRNsuc0MH6wZpLpXo
RPb60Y2xEf0LC0JelMrtv/xWUjrmKUEzHRR9d9WOI9pEp+lI2msfiOQThfbkm0dDIm3YFNq2jpMS
PRN5ds0Nk7797W//3d/9naXQ5H9/9LVvXHnV+H/72c/f2r3Xtj1v7b5Mc5LSG3v27rZs3569+/fu
b97X3Nrc2i7T/bd2dLV1HmjvOtjx9qGOroOyoe2A7GzreFu+bWnrlCP3t7Tu3d+yd1/znn379+zd
t3uvpLNP/ty3v2V/S5uVVHunnGLOksW4W9o75VzJwlhzq1i7Tkodr8z6ynWM6zBzZC8L39ncul+b
VMdlLfuaxVqlzOZ09ZUUfr8p/H4pvNBw0Y60PRgXmHMHc6Q5RjtC6O3TXthvyqmAhMopkPdakHfv
Maj3u1G3CufOt8VH4i/ltbcPdR54R8xsi9keVL6w3KE80inAe9MwiYtznZKoVtHeKR7UJhtqWyWl
2knPTE3WJnfJV2Xnykil3CtxaRiqhYQaSYcUTJnVQqwGoxqP1YR6tBBpPK5jwluXq9lIkxCn60Zr
eApM+0KQK2KQpprKxZp1IQ++VXCkm4C5Walmb10mzfZNpr1T2ljXwSMHD7//znu/P9J99P2PTnQf
O/3745/+/oTYmY9Oip0V+1js1Dll+s8eO4+ePj8I++zo6UuzfhK/tAQ/O/qJsmPDaJ/3m7h8G5s2
rExI/CIJXOL1Yi6KwVyS+phT5+3r+oy66uXaP/7ph8c/+fDYJ/KvuRV8pG4FcgdQNwE5/iISH3wx
hvxIKaeqmq5dnNpR445L8six0+cv6gZ4/JPPtH2u7FMsZgkYN1m3Gstrtr9OnPkizM5+cWJ4bOFD
S2Vwo0TPRJ799V//9fe+972QQjNb/+GPvja89rWv/5G2r339m1//5qhvjkoelZwqa7KlpI1LHXtF
2rirxlwxXv617crUsVemjLlCvpWVtUelpMnMk9/45uivf2OUjMz82te/Iaryj77+DflTdspXKqmU
NDlSjk8ZM86cJYmPTnEsTQ6QdORIy1LUHjkmOdzUWdaJ+pRk1ynOuXpD8rUs/M9vjEoWC32rDlN7
vm7K//VvSsmFw3/4I7FhZt5H+sYF3/jaN0ZJeaxy2vVSkFU5NWTFWaFW/nIdrDinjTUuM14bc+XV
Y6+8Wv4dc4XYeONHcV+quE/7QrkjbazyiOavaYy2aOiMJEfxoymM40p1isskKUkzlOkVKlO36XxV
mzEZ6bpYDUalH554qJ3ogpk2YFyvt8OyNoW3WpS7UdktRzeYnq3FwLQareX0b/wH5feRdzo5XhQB
c6dSLd9qnHbjkTYgjXDsVddcec0N46+fdO2EjOsnZ0/MzJ+U7ZuU7Z+cI1aQLpZb6DbZaczszMgr
0lacke8y+dPZr7bDzX0k2xCAwMgTCF2hReZClitarnp17Wf5JirLF5NtfStwrnf7Yneu6JEvOTlC
AAI9f23dv7DmInWsODPfWCDTF8jylWT5R8JmzJjxp3/6p3/7t38r8uxnP/vZ/w9Jj3hBWzBqEAAA
AABJRU5ErkJggg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159943</attachid>
            <date>2012-08-22 08:31:14 -0700</date>
            <delta_ts>2012-09-10 07:57:04 -0700</delta_ts>
            <desc>Patch that updates (in a very hacky way), LayerChromium::contentsScale.</desc>
            <filename>pinch_zoom.diff</filename>
            <type>text/plain</type>
            <size>13164</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvcGFnZS9GcmFtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAkocmV2aXNpb24gMTI1NzE5KQorKysgV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtOTUzLDEyICs5NTMsMTcgQEAKIAogZmxvYXQgRnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IoKSBjb25zdAogeworI2lmIDEKKyAgICByZXR1cm4gMTsKKyNlbmRpZgorI2lm
IDAKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwogCiAgICAgLy8gTWFpbiBmcmFtZSBp
cyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRhaW5lciBidXQgaW5uZXIgZnJhbWVzIGFy
ZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUgbWFpbiBmcmFtZS4KICAgICBpZiAoIXBh
Z2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykKICAgICAgICAgcmV0dXJuIDE7CiAgICAg
cmV0dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpOworI2VuZGlmCiB9CiAKIHZvaWQgRnJhbWU6
OnN1c3BlbmRBY3RpdmVET01PYmplY3RzQW5kQW5pbWF0aW9ucygpCkluZGV4OiBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRy
ZWVIb3N0Q29tbW9uLmgJKHJldmlzaW9uIDEyNTcxOSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQxLDggKzQxLDggQEAKIHB1YmxpYzoKICAgICBzdGF0aWMgSW50UmVjdCBjYWxjdWxhdGVW
aXNpYmxlUmVjdChjb25zdCBJbnRSZWN0JiB0YXJnZXRTdXJmYWNlUmVjdCwgY29uc3QgSW50UmVj
dCYgbGF5ZXJCb3VuZFJlY3QsIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXgm
KTsKIAotICAgIHN0YXRpYyB2b2lkIGNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zKExheWVyQ2hyb21p
dW0qIHJvb3RMYXllciwgY29uc3QgSW50U2l6ZSYgZGV2aWNlVmlld3BvcnRTaXplLCBmbG9hdCBk
ZXZpY2VTY2FsZUZhY3RvciwgaW50IG1heFRleHR1cmVTaXplLCBWZWN0b3I8UmVmUHRyPExheWVy
Q2hyb21pdW0+ID4mIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwotICAgIHN0YXRpYyB2b2lkIGNh
bGN1bGF0ZURyYXdUcmFuc2Zvcm1zKENDTGF5ZXJJbXBsKiByb290TGF5ZXIsIGNvbnN0IEludFNp
emUmIGRldmljZVZpZXdwb3J0U2l6ZSwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIENDTGF5ZXJT
b3J0ZXIqLCBpbnQgbWF4VGV4dHVyZVNpemUsIFZlY3RvcjxDQ0xheWVySW1wbCo+JiByZW5kZXJT
dXJmYWNlTGF5ZXJMaXN0KTsKKyAgICBzdGF0aWMgdm9pZCBjYWxjdWxhdGVEcmF3VHJhbnNmb3Jt
cyhMYXllckNocm9taXVtKiByb290TGF5ZXIsIGNvbnN0IEludFNpemUmIGRldmljZVZpZXdwb3J0
U2l6ZSwgLypmbG9hdCBkZXZpY2VTY2FsZUZhY3RvciwqLyBmbG9hdCBwYWdlU2NhbGVGYWN0b3Is
IGludCBtYXhUZXh0dXJlU2l6ZSwgVmVjdG9yPFJlZlB0cjxMYXllckNocm9taXVtPiA+JiByZW5k
ZXJTdXJmYWNlTGF5ZXJMaXN0KTsKKyAgICBzdGF0aWMgdm9pZCBjYWxjdWxhdGVEcmF3VHJhbnNm
b3JtcyhDQ0xheWVySW1wbCogcm9vdExheWVyLCBjb25zdCBJbnRTaXplJiBkZXZpY2VWaWV3cG9y
dFNpemUsIC8qZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsKi8gZmxvYXQgcGFnZVNjYWxlRmFjdG9y
LCBDQ0xheWVyU29ydGVyKiwgaW50IG1heFRleHR1cmVTaXplLCBWZWN0b3I8Q0NMYXllckltcGwq
PiYgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7CiAKICAgICBzdGF0aWMgdm9pZCBjYWxjdWxhdGVW
aXNpYmxlUmVjdHMoVmVjdG9yPENDTGF5ZXJJbXBsKj4mIHJlbmRlclN1cmZhY2VMYXllckxpc3Qp
OwogICAgIHN0YXRpYyB2b2lkIGNhbGN1bGF0ZVZpc2libGVSZWN0cyhWZWN0b3I8UmVmUHRyPExh
eWVyQ2hyb21pdW0+ID4mIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwpJbmRleDogV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJU
cmVlSG9zdEltcGwuY3BwCShyZXZpc2lvbiAxMjU3MTkpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xODEsNyArMTgxLDcgQEAKICAgICB9CiAgICAgcmV0dXJuIHRydWU7CiB9Ci0KKyAKIEND
R3JhcGhpY3NDb250ZXh0KiBDQ0xheWVyVHJlZUhvc3RJbXBsOjpjb250ZXh0KCkgY29uc3QKIHsK
ICAgICByZXR1cm4gbV9jb250ZXh0LmdldCgpOwpAQCAtMjQ3LDYgKzI0Nyw3IEBACiAgICAgfQog
fQogCisKIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6Y2FsY3VsYXRlUmVuZGVyU3VyZmFjZUxh
eWVyTGlzdChDQ0xheWVyTGlzdCYgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCkKIHsKICAgICBBU1NF
UlQocmVuZGVyU3VyZmFjZUxheWVyTGlzdC5pc0VtcHR5KCkpOwpAQCAtMjU0LDExICsyNTUsMTUg
QEAKIAogICAgIHsKICAgICAgICAgVFJBQ0VfRVZFTlQwKCJjYyIsICJDQ0xheWVyVHJlZUhvc3RJ
bXBsOjpjYWxjRHJhd0V0YyIpOwotICAgICAgICBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1
bGF0ZURyYXdUcmFuc2Zvcm1zKG1fcm9vdExheWVySW1wbC5nZXQoKSwgZGV2aWNlVmlld3BvcnRT
aXplKCksIG1fZGV2aWNlU2NhbGVGYWN0b3IsICZtX2xheWVyU29ydGVyLCBsYXllclJlbmRlcmVy
Q2FwYWJpbGl0aWVzKCkubWF4VGV4dHVyZVNpemUsIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwor
ICAgICAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OmNhbGN1bGF0ZVJlbmRlclN1cmZh
Y2VMYXllckxpc3QgbV9wYWdlU2NhbGU9JWZcbiIsIG1fcGFnZVNjYWxlKTsKKyAgICAgICAgQ0NM
YXllclRyZWVIb3N0Q29tbW9uOjpjYWxjdWxhdGVEcmF3VHJhbnNmb3JtcyhtX3Jvb3RMYXllcklt
cGwuZ2V0KCksIGRldmljZVZpZXdwb3J0U2l6ZSgpLCBtX2RldmljZVNjYWxlRmFjdG9yICogbV9w
YWdlU2NhbGUsICZtX2xheWVyU29ydGVyLCBsYXllclJlbmRlcmVyQ2FwYWJpbGl0aWVzKCkubWF4
VGV4dHVyZVNpemUsIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwogICAgICAgICBDQ0xheWVyVHJl
ZUhvc3RDb21tb246OmNhbGN1bGF0ZVZpc2libGVSZWN0cyhyZW5kZXJTdXJmYWNlTGF5ZXJMaXN0
KTsKIAogICAgICAgICB0cmFja0RhbWFnZUZvckFsbFN1cmZhY2VzKG1fcm9vdExheWVySW1wbC5n
ZXQoKSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7CiAgICAgfQorCisgICAgcHJpbnRmKCIqKioq
Q0NMYXllclRyZWVIb3N0SW1wbDo6bV9yb290U2Nyb2xsTGF5ZXJJbXBsLnNjYWxlID0gJWYqKioq
XG4iLCBtX3Jvb3RTY3JvbGxMYXllckltcGwtPmRyYXdUcmFuc2Zvcm0oKS5tMTEoKSk7CisgICAg
cHJpbnRmKCItLS0tLUNDTGF5ZXJUcmVlSG9zdEltcGw6Om1fcm9vdFNjcm9sbExheWVySW1wbC5z
Y3JlZW5TY2FsZSA9ICVmLS0tLS1cbiIsIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2NyZWVuU3Bh
Y2VUcmFuc2Zvcm0oKS5tMTEoKSk7CiB9CiAKIGJvb2wgQ0NMYXllclRyZWVIb3N0SW1wbDo6Y2Fs
Y3VsYXRlUmVuZGVyUGFzc2VzKEZyYW1lRGF0YSYgZnJhbWUpCkBAIC03MTcsNiArNzIyLDggQEAK
IAogdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXRWaWV3cG9ydFNpemUoY29uc3QgSW50U2l6
ZSYgbGF5b3V0Vmlld3BvcnRTaXplLCBjb25zdCBJbnRTaXplJiBkZXZpY2VWaWV3cG9ydFNpemUp
CiB7CisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXRWaWV3cG9ydFNpemUgbGF5
b3V0PSVpKiVpIGRldmljZT0laSolaVxuIiwgbGF5b3V0Vmlld3BvcnRTaXplLndpZHRoKCksIGxh
eW91dFZpZXdwb3J0U2l6ZS5oZWlnaHQoKSwgZGV2aWNlVmlld3BvcnRTaXplLndpZHRoKCksIGRl
dmljZVZpZXdwb3J0U2l6ZS5oZWlnaHQoKSk7CisKICAgICBpZiAobGF5b3V0Vmlld3BvcnRTaXpl
ID09IG1fbGF5b3V0Vmlld3BvcnRTaXplICYmIGRldmljZVZpZXdwb3J0U2l6ZSA9PSBtX2Rldmlj
ZVZpZXdwb3J0U2l6ZSkKICAgICAgICAgcmV0dXJuOwogCkBAIC03NTUsNiArNzYyLDcgQEAKIAog
dm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXRQYWdlU2NhbGVGYWN0b3JBbmRMaW1pdHMoZmxv
YXQgcGFnZVNjYWxlLCBmbG9hdCBtaW5QYWdlU2NhbGUsIGZsb2F0IG1heFBhZ2VTY2FsZSkKIHsK
KyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnNldFBhZ2VTY2FsZUZhY3RvckFuZExp
bWl0cyA6IHBhZ2VTY2FsZT0lZlxuIiwgcGFnZVNjYWxlKTsKICAgICBpZiAoIXBhZ2VTY2FsZSkK
ICAgICAgICAgcmV0dXJuOwogCkBAIC03NjQsMTEgKzc3MiwxMyBAQAogICAgIG1fbWluUGFnZVNj
YWxlID0gbWluUGFnZVNjYWxlOwogICAgIG1fbWF4UGFnZVNjYWxlID0gbWF4UGFnZVNjYWxlOwog
Ci0gICAgZmxvYXQgcGFnZVNjYWxlQ2hhbmdlID0gcGFnZVNjYWxlIC8gbV9wYWdlU2NhbGU7Cisg
ICAgLy9mbG9hdCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKICAg
ICBtX3BhZ2VTY2FsZSA9IHBhZ2VTY2FsZTsKIAorI2lmIDAKICAgICBpZiAocGFnZVNjYWxlQ2hh
bmdlICE9IDEpCiAgICAgICAgIGFkanVzdFNjcm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UobV9yb290
U2Nyb2xsTGF5ZXJJbXBsLCBwYWdlU2NhbGVDaGFuZ2UpOworI2VuZGlmCiAKICAgICAvLyBDbGFt
cCBkZWx0YSB0byBsaW1pdHMgYW5kIHJlZnJlc2ggZGlzcGxheSBtYXRyaXguCiAgICAgc2V0UGFn
ZVNjYWxlRGVsdGEobV9wYWdlU2NhbGVEZWx0YSAvIG1fc2VudFBhZ2VTY2FsZURlbHRhKTsKQEAg
LTc3OSw2ICs3ODksOCBAQAogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnNldFBhZ2VTY2Fs
ZURlbHRhKGZsb2F0IGRlbHRhKQogeworICAgIHByaW50ZigiQ0NMYXllclRyZWVIb3N0SW1wbDo6
c2V0UGFnZVNjYWxlRGVsdGEgZGVsdGE9JWZcbiIsIGRlbHRhKTsKKwogICAgIC8vIENsYW1wIHRv
IHRoZSBjdXJyZW50IG1pbi9tYXggbGltaXRzLgogICAgIGZsb2F0IGZpbmFsTWFnbmlmeVNjYWxl
ID0gbV9wYWdlU2NhbGUgKiBkZWx0YTsKICAgICBpZiAobV9taW5QYWdlU2NhbGUgJiYgZmluYWxN
YWduaWZ5U2NhbGUgPCBtX21pblBhZ2VTY2FsZSkKQEAgLTkzMyw2ICs5NDUsNyBAQAogCiB2b2lk
IENDTGF5ZXJUcmVlSG9zdEltcGw6OnBpbmNoR2VzdHVyZUJlZ2luKCkKIHsKKyAgICBwcmludGYo
Ij4+Pj4+Pj4+Q0NMYXllclRyZWVIb3N0SW1wbDo6cGluY2hHZXN0dXJlQmVnaW4oKTw8PDw8PDw8
XG4iKTsKICAgICBtX3BpbmNoR2VzdHVyZUFjdGl2ZSA9IHRydWU7CiAgICAgbV9wcmV2aW91c1Bp
bmNoQW5jaG9yID0gSW50UG9pbnQoKTsKIApAQCAtOTc3LDYgKzk5MCw4IEBACiAgICAgICAgIG1f
cm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsYmFyQW5pbWF0aW9uQ29udHJvbGxlcigpLT5kaWRQ
aW5jaEdlc3R1cmVFbmQoKTsKIAogICAgIG1fY2xpZW50LT5zZXROZWVkc0NvbW1pdE9uSW1wbFRo
cmVhZCgpOworCisgICAgcHJpbnRmKCI+Pj4+Pj4+PkNDTGF5ZXJUcmVlSG9zdEltcGw6OnBpbmNo
R2VzdHVyZUVuZCgpPDw8PDw8PDw8PDxcbiIpOwogfQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdElt
cGw6OmNvbXB1dGVEb3VibGVUYXBab29tRGVsdGFzKENDU2Nyb2xsQW5kU2NhbGVTZXQqIHNjcm9s
bEluZm8pCkBAIC0xMDUzLDE3ICsxMDY4LDIwIEBACiBQYXNzT3duUHRyPENDU2Nyb2xsQW5kU2Nh
bGVTZXQ+IENDTGF5ZXJUcmVlSG9zdEltcGw6OnByb2Nlc3NTY3JvbGxEZWx0YXMoKQogewogICAg
IE93blB0cjxDQ1Njcm9sbEFuZFNjYWxlU2V0PiBzY3JvbGxJbmZvID0gYWRvcHRQdHIobmV3IEND
U2Nyb2xsQW5kU2NhbGVTZXQoKSk7Ci0KKyAgICAgCiAgICAgaWYgKG1fcGluY2hHZXN0dXJlQWN0
aXZlIHx8IG1fcGFnZVNjYWxlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1fc2VudFBhZ2VTY2FsZURl
bHRhID0gc2Nyb2xsSW5mby0+cGFnZVNjYWxlRGVsdGEgPSAxOwotICAgICAgICBpZiAobV9waW5j
aEdlc3R1cmVBY3RpdmUpCisjaWYgMAorICAgICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSkK
ICAgICAgICAgICAgIGNvbXB1dGVQaW5jaFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CiAg
ICAgICAgIGVsc2UgaWYgKG1fcGFnZVNjYWxlQW5pbWF0aW9uLmdldCgpKQogICAgICAgICAgICAg
Y29tcHV0ZURvdWJsZVRhcFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CisjZW5kaWYKICAg
ICAgICAgcmV0dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwogICAgIH0KIAogICAgIGNvbGxlY3RT
Y3JvbGxEZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSwgbV9yb290TGF5ZXJJbXBsLmdldCgpKTsKKyAg
ICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnByb2Nlc3NTY3JvbGxEZWx0YXMgOiBtX3Nl
bnRQYWdlU2NhbGVEZWx0YT0lZlxuIiwgbV9zZW50UGFnZVNjYWxlRGVsdGEpOwogICAgIG1fc2Vu
dFBhZ2VTY2FsZURlbHRhID0gc2Nyb2xsSW5mby0+cGFnZVNjYWxlRGVsdGEgPSBtX3BhZ2VTY2Fs
ZURlbHRhOwogCiAgICAgcmV0dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwpJbmRleDogV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1JlbmRlclBhc3MuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NSZW5kZXJQYXNz
LmNwcAkocmV2aXNpb24gMTI1NzE5KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ1JlbmRlclBhc3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05Nyw2ICs5Nyw4IEBA
CiAKIHZvaWQgQ0NSZW5kZXJQYXNzOjphcHBlbmRRdWFkc1RvRmlsbFNjcmVlbihDQ0xheWVySW1w
bCogcm9vdExheWVyLCBTa0NvbG9yIHNjcmVlbkJhY2tncm91bmRDb2xvciwgY29uc3QgQ0NPY2Ns
dXNpb25UcmFja2VySW1wbCYgb2NjbHVzaW9uVHJhY2tlcikKIHsKKyAgICAvL3JldHVybjsKKwog
ICAgIGlmICghcm9vdExheWVyIHx8ICFzY3JlZW5CYWNrZ3JvdW5kQ29sb3IpCiAgICAgICAgIHJl
dHVybjsKIApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xh
eWVyVHJlZUhvc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAkocmV2aXNpb24gMTI1NzE5KQorKysgV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0zODYsNiArMzg2LDcgQEAKIAogdm9pZCBDQ0xheWVyVHJlZUhvc3Q6
OnNldFBhZ2VTY2FsZUZhY3RvckFuZExpbWl0cyhmbG9hdCBwYWdlU2NhbGVGYWN0b3IsIGZsb2F0
IG1pblBhZ2VTY2FsZUZhY3RvciwgZmxvYXQgbWF4UGFnZVNjYWxlRmFjdG9yKQogeworICAgIHBy
aW50ZigiQ0NMYXllclRyZWVIb3N0OjpzZXRQYWdlU2NhbGVGYWN0b3JBbmRMaW1pdHMgOiBwYWdl
U2NhbGVGYWN0b3I9JWZcbiIsIHBhZ2VTY2FsZUZhY3Rvcik7CiAgICAgaWYgKHBhZ2VTY2FsZUZh
Y3RvciA9PSBtX3BhZ2VTY2FsZUZhY3RvciAmJiBtaW5QYWdlU2NhbGVGYWN0b3IgPT0gbV9taW5Q
YWdlU2NhbGVGYWN0b3IgJiYgbWF4UGFnZVNjYWxlRmFjdG9yID09IG1fbWF4UGFnZVNjYWxlRmFj
dG9yKQogICAgICAgICByZXR1cm47CiAKQEAgLTQ3MCwxNSArNDcxLDI4IEBACiAgICAgdXBkYXRl
TGF5ZXJzKHJvb3RMYXllcigpLCBxdWV1ZSk7CiB9CiAKK3N0YXRpYyB2b2lkIHVwZGF0ZUxheWVy
U2NhbGUoTGF5ZXJDaHJvbWl1bSogbGF5ZXIsIGZsb2F0IHBhZ2VTY2FsZSkKK3sKKyAgICBsYXll
ci0+c2V0Q29udGVudHNTY2FsZShwYWdlU2NhbGUpOworICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8
TGF5ZXJDaHJvbWl1bT4gPiYgY2hpbGRyZW4gPSBsYXllci0+Y2hpbGRyZW4oKTsKKyAgICBWZWN0
b3I8UmVmUHRyPExheWVyQ2hyb21pdW0+ID46OmNvbnN0X2l0ZXJhdG9yIGl0ZXIoY2hpbGRyZW4u
YmVnaW4oKSksIGVuZChjaGlsZHJlbi5lbmQoKSk7CisgICAgZm9yICg7IGl0ZXIgIT0gZW5kOyAr
K2l0ZXIpIHsKKyAgICAgICAgdXBkYXRlTGF5ZXJTY2FsZShpdGVyLT5nZXQoKSwgcGFnZVNjYWxl
KTsKKyAgICB9Cit9CisKIHZvaWQgQ0NMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllcnMoTGF5ZXJD
aHJvbWl1bSogcm9vdExheWVyLCBDQ1RleHR1cmVVcGRhdGVRdWV1ZSYgcXVldWUpCiB7CiAgICAg
VFJBQ0VfRVZFTlQwKCJjYyIsICJDQ0xheWVyVHJlZUhvc3Q6OnVwZGF0ZUxheWVycyIpOwogCiAg
ICAgTGF5ZXJMaXN0IHVwZGF0ZUxpc3Q7CiAKKyAgICB1cGRhdGVMYXllclNjYWxlKHJvb3RMYXll
ciwgbV9wYWdlU2NhbGVGYWN0b3IpOworCiAgICAgewogICAgICAgICBUUkFDRV9FVkVOVDAoImNj
IiwgIkNDTGF5ZXJUcmVlSG9zdDo6dXBkYXRlTGF5ZXJzOjpjYWxjRHJhd0V0YyIpOwotICAgICAg
ICBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zKHJvb3RMYXll
ciwgZGV2aWNlVmlld3BvcnRTaXplKCksIG1fZGV2aWNlU2NhbGVGYWN0b3IsIGxheWVyUmVuZGVy
ZXJDYXBhYmlsaXRpZXMoKS5tYXhUZXh0dXJlU2l6ZSwgdXBkYXRlTGlzdCk7CisgICAgICAgIHBy
aW50ZigiQ0NMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllcnMgbV9wYWdlU2NhbGVGYWN0b3I9JWZc
biIsIG1fcGFnZVNjYWxlRmFjdG9yKTsKKyAgICAgICAgQ0NMYXllclRyZWVIb3N0Q29tbW9uOjpj
YWxjdWxhdGVEcmF3VHJhbnNmb3Jtcyhyb290TGF5ZXIsIGRldmljZVZpZXdwb3J0U2l6ZSgpLCBt
X2RldmljZVNjYWxlRmFjdG9yICogbV9wYWdlU2NhbGVGYWN0b3IsIGxheWVyUmVuZGVyZXJDYXBh
YmlsaXRpZXMoKS5tYXhUZXh0dXJlU2l6ZSwgdXBkYXRlTGlzdCk7CiAgICAgICAgIENDTGF5ZXJU
cmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlVmlzaWJsZVJlY3RzKHVwZGF0ZUxpc3QpOwogICAgIH0K
IApAQCAtNjQ5LDggKzY2MywxMiBAQAogICAgICAgICBlbHNlCiAgICAgICAgICAgICBsYXllci0+
c2Nyb2xsQnkoaW5mby5zY3JvbGxzW2ldLnNjcm9sbERlbHRhKTsKICAgICB9CisKKyAgICBwcmlu
dGYoIkNDTGF5ZXJUcmVlSG9zdDo6YXBwbHlTY3JvbGxBbmRTY2FsZSBwYWdlU2NhbGVEZWx0YT0l
ZlxuIiwgaW5mby5wYWdlU2NhbGVEZWx0YSk7CisjaWYgMQogICAgIGlmICghcm9vdFNjcm9sbERl
bHRhLmlzWmVybygpIHx8IGluZm8ucGFnZVNjYWxlRGVsdGEgIT0gMSkKICAgICAgICAgbV9jbGll
bnQtPmFwcGx5U2Nyb2xsQW5kU2NhbGUocm9vdFNjcm9sbERlbHRhLCBpbmZvLnBhZ2VTY2FsZURl
bHRhKTsKKyNlbmRpZgogfQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdDo6c3RhcnRSYXRlTGltaXRl
cihXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0KQpJbmRleDogV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
clRyZWVIb3N0Q29tbW9uLmNwcAkocmV2aXNpb24gMTI1NzE5KQorKysgV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC03OTYsMTIgKzc5NiwxMyBAQAogICAgIH0KIH0KIAotdm9pZCBDQ0xheWVyVHJl
ZUhvc3RDb21tb246OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1zKExheWVyQ2hyb21pdW0qIHJvb3RM
YXllciwgY29uc3QgSW50U2l6ZSYgZGV2aWNlVmlld3BvcnRTaXplLCBmbG9hdCBkZXZpY2VTY2Fs
ZUZhY3RvciwgaW50IG1heFRleHR1cmVTaXplLCBWZWN0b3I8UmVmUHRyPExheWVyQ2hyb21pdW0+
ID4mIHJlbmRlclN1cmZhY2VMYXllckxpc3QpCit2b2lkIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6
Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMoTGF5ZXJDaHJvbWl1bSogcm9vdExheWVyLCBjb25zdCBJ
bnRTaXplJiBkZXZpY2VWaWV3cG9ydFNpemUsIGZsb2F0IGRldmljZVNjYWxlRmFjdG9yLCAvKmZs
b2F0IHBhZ2VTY2FsZUZhY3RvciwqLyBpbnQgbWF4VGV4dHVyZVNpemUsIFZlY3RvcjxSZWZQdHI8
TGF5ZXJDaHJvbWl1bT4gPiYgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCkKIHsKICAgICBJbnRSZWN0
IHRvdGFsRHJhd2FibGVDb250ZW50UmVjdDsKICAgICBXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBp
ZGVudGl0eU1hdHJpeDsKICAgICBXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBkZXZpY2VTY2FsZVRy
YW5zZm9ybTsKICAgICBkZXZpY2VTY2FsZVRyYW5zZm9ybS5zY2FsZShkZXZpY2VTY2FsZUZhY3Rv
cik7CisgICAgLy9kZXZpY2VTY2FsZVRyYW5zZm9ybS5zY2FsZShwYWdlU2NhbGVGYWN0b3IpOwog
CiAgICAgc2V0dXBSb290TGF5ZXJBbmRTdXJmYWNlRm9yUmVjdXJzaW9uPExheWVyQ2hyb21pdW0s
IFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiA+KHJvb3RMYXllciwgcmVuZGVyU3VyZmFj
ZUxheWVyTGlzdCwgZGV2aWNlVmlld3BvcnRTaXplKTsKIApAQCAtODEwLDEyICs4MTEsMTMgQEAK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByb290TGF5ZXItPnJlbmRlclN1cmZhY2UoKS0+bGF5ZXJMaXN0KCksIDAsIG1heFRl
eHR1cmVTaXplLCBkZXZpY2VTY2FsZUZhY3RvciwgdG90YWxEcmF3YWJsZUNvbnRlbnRSZWN0KTsK
IH0KIAotdm9pZCBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZURyYXdUcmFuc2Zvcm1z
KENDTGF5ZXJJbXBsKiByb290TGF5ZXIsIGNvbnN0IEludFNpemUmIGRldmljZVZpZXdwb3J0U2l6
ZSwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIENDTGF5ZXJTb3J0ZXIqIGxheWVyU29ydGVyLCBp
bnQgbWF4VGV4dHVyZVNpemUsIFZlY3RvcjxDQ0xheWVySW1wbCo+JiByZW5kZXJTdXJmYWNlTGF5
ZXJMaXN0KQordm9pZCBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZURyYXdUcmFuc2Zv
cm1zKENDTGF5ZXJJbXBsKiByb290TGF5ZXIsIGNvbnN0IEludFNpemUmIGRldmljZVZpZXdwb3J0
U2l6ZSwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIC8qZmxvYXQgcGFnZVNjYWxlRmFjdG9yLCov
IENDTGF5ZXJTb3J0ZXIqIGxheWVyU29ydGVyLCBpbnQgbWF4VGV4dHVyZVNpemUsIFZlY3RvcjxD
Q0xheWVySW1wbCo+JiByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KQogewogICAgIEludFJlY3QgdG90
YWxEcmF3YWJsZUNvbnRlbnRSZWN0OwogICAgIFdlYlRyYW5zZm9ybWF0aW9uTWF0cml4IGlkZW50
aXR5TWF0cml4OwogICAgIFdlYlRyYW5zZm9ybWF0aW9uTWF0cml4IGRldmljZVNjYWxlVHJhbnNm
b3JtOwogICAgIGRldmljZVNjYWxlVHJhbnNmb3JtLnNjYWxlKGRldmljZVNjYWxlRmFjdG9yKTsK
KyAgICAvL2RldmljZVNjYWxlVHJhbnNmb3JtLnNjYWxlKHBhZ2VTY2FsZUZhY3Rvcik7CiAKICAg
ICBzZXR1cFJvb3RMYXllckFuZFN1cmZhY2VGb3JSZWN1cnNpb248Q0NMYXllckltcGwsIFZlY3Rv
cjxDQ0xheWVySW1wbCo+ID4ocm9vdExheWVyLCByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0LCBkZXZp
Y2VWaWV3cG9ydFNpemUpOwogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL0dyYXBoaWNzTGF5ZXJDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwCShyZXZpc2lv
biAxMjU3MTkpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0dyYXBoaWNz
TGF5ZXJDaHJvbWl1bS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTczOCw3ICs3MzgsOSBAQAogICAg
ICAgICAvLyBTZXQgdGhlIG9sZCBsYXllciB0byBvcGFjaXR5IG9mIDEuIEZ1cnRoZXIgZG93biB3
ZSB3aWxsIHNldCB0aGUgb3BhY2l0eSBvbiB0aGUgdHJhbnNmb3JtIGxheWVyLgogICAgICAgICBt
X2xheWVyLnNldE9wYWNpdHkoMSk7CiAKKyNpZiAwCiAgICAgICAgIG1fbGF5ZXIuc2V0Q29udGVu
dHNTY2FsZShjb250ZW50c1NjYWxlKCkpOworI2VuZGlmCiAKICAgICAgICAgLy8gTW92ZSB0aGlz
IGxheWVyIHRvIGJlIGEgY2hpbGQgb2YgdGhlIHRyYW5zZm9ybSBsYXllci4KICAgICAgICAgaWYg
KCFtX2xheWVyLnBhcmVudCgpLmlzTnVsbCgpKQpAQCAtODE5LDExICs4MjEsMTMgQEAKIAogdm9p
ZCBHcmFwaGljc0xheWVyQ2hyb21pdW06OnVwZGF0ZUNvbnRlbnRzU2NhbGUoKQogeworI2lmIDAK
ICAgICAvLyBJZiBwYWdlIHNjYWxlIGlzIGFscmVhZHkgYXBwbGllZCB0aGVuIHRoZXJlJ3Mgbm8g
bmVlZCB0byBhcHBseSBpdCBhZ2Fpbi4KICAgICBpZiAoYXBwbGllc1BhZ2VTY2FsZSgpIHx8IG1f
bGF5ZXIuaXNOdWxsKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIG1fbGF5ZXIuc2V0Q29udGVu
dHNTY2FsZShjb250ZW50c1NjYWxlKCkpOworI2VuZGlmCiB9CiAKIHZvaWQgR3JhcGhpY3NMYXll
ckNocm9taXVtOjpzZXR1cENvbnRlbnRzTGF5ZXIoV2ViTGF5ZXIgY29udGVudHNMYXllcikK
</data>
<flag name="review"
          id="170373"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="170374"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160035</attachid>
            <date>2012-08-22 16:52:01 -0700</date>
            <delta_ts>2012-09-10 07:57:04 -0700</delta_ts>
            <desc>Apply scale to root scrolling layer.</desc>
            <filename>pinch_zoom2.diff</filename>
            <type>text/plain</type>
            <size>6925</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lvbiAxMjU3MTkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTUzLDEyICs5NTMsMTcgQEAK
IAogZmxvYXQgRnJhbWU6OmZyYW1lU2NhbGVGYWN0b3IoKSBjb25zdAogeworI2lmIDEKKyAgICBy
ZXR1cm4gMTsKKyNlbmRpZgorI2lmIDAKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwog
CiAgICAgLy8gTWFpbiBmcmFtZSBpcyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRhaW5l
ciBidXQgaW5uZXIgZnJhbWVzIGFyZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUgbWFp
biBmcmFtZS4KICAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykKICAg
ICAgICAgcmV0dXJuIDE7CiAgICAgcmV0dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpOworI2Vu
ZGlmCiB9CiAKIHZvaWQgRnJhbWU6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzQW5kQW5pbWF0aW9u
cygpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q0xheWVyVHJlZUhvc3RJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkocmV2aXNp
b24gMTI1NzE5KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE4MSw3ICsxODEs
NyBAQAogICAgIH0KICAgICByZXR1cm4gdHJ1ZTsKIH0KLQorIAogQ0NHcmFwaGljc0NvbnRleHQq
IENDTGF5ZXJUcmVlSG9zdEltcGw6OmNvbnRleHQoKSBjb25zdAogewogICAgIHJldHVybiBtX2Nv
bnRleHQuZ2V0KCk7CkBAIC0yNDcsNiArMjQ3LDcgQEAKICAgICB9CiB9CiAKKwogdm9pZCBDQ0xh
eWVyVHJlZUhvc3RJbXBsOjpjYWxjdWxhdGVSZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KENDTGF5ZXJM
aXN0JiByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0KQogewogICAgIEFTU0VSVChyZW5kZXJTdXJmYWNl
TGF5ZXJMaXN0LmlzRW1wdHkoKSk7CkBAIC0yNTQsNyArMjU1LDkgQEAKIAogICAgIHsKICAgICAg
ICAgVFJBQ0VfRVZFTlQwKCJjYyIsICJDQ0xheWVyVHJlZUhvc3RJbXBsOjpjYWxjRHJhd0V0YyIp
OworCiAgICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9y
bXMobV9yb290TGF5ZXJJbXBsLmdldCgpLCBkZXZpY2VWaWV3cG9ydFNpemUoKSwgbV9kZXZpY2VT
Y2FsZUZhY3RvciwgJm1fbGF5ZXJTb3J0ZXIsIGxheWVyUmVuZGVyZXJDYXBhYmlsaXRpZXMoKS5t
YXhUZXh0dXJlU2l6ZSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7CisKICAgICAgICAgQ0NMYXll
clRyZWVIb3N0Q29tbW9uOjpjYWxjdWxhdGVWaXNpYmxlUmVjdHMocmVuZGVyU3VyZmFjZUxheWVy
TGlzdCk7CiAKICAgICAgICAgdHJhY2tEYW1hZ2VGb3JBbGxTdXJmYWNlcyhtX3Jvb3RMYXllcklt
cGwuZ2V0KCksIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwpAQCAtNzIzLDYgKzcyNiwxMSBAQAog
ICAgIG1fbGF5b3V0Vmlld3BvcnRTaXplID0gbGF5b3V0Vmlld3BvcnRTaXplOwogICAgIG1fZGV2
aWNlVmlld3BvcnRTaXplID0gZGV2aWNlVmlld3BvcnRTaXplOwogCisjaWYgMAorICAgIG1fbGF5
b3V0Vmlld3BvcnRTaXplLnNjYWxlKDEvbV9wYWdlU2NhbGUpOworICAgIG1fZGV2aWNlVmlld3Bv
cnRTaXplLnNjYWxlKDEvbV9wYWdlU2NhbGUpOworI2VuZGlmCisKICAgICB1cGRhdGVNYXhTY3Jv
bGxQb3NpdGlvbigpOwogCiAgICAgaWYgKG1fbGF5ZXJSZW5kZXJlcikKQEAgLTc2NCwxMSArNzcy
LDEzIEBACiAgICAgbV9taW5QYWdlU2NhbGUgPSBtaW5QYWdlU2NhbGU7CiAgICAgbV9tYXhQYWdl
U2NhbGUgPSBtYXhQYWdlU2NhbGU7CiAKLSAgICBmbG9hdCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdl
U2NhbGUgLyBtX3BhZ2VTY2FsZTsKKyAgICAvL2Zsb2F0IHBhZ2VTY2FsZUNoYW5nZSA9IHBhZ2VT
Y2FsZSAvIG1fcGFnZVNjYWxlOwogICAgIG1fcGFnZVNjYWxlID0gcGFnZVNjYWxlOwogCisjaWYg
MAogICAgIGlmIChwYWdlU2NhbGVDaGFuZ2UgIT0gMSkKICAgICAgICAgYWRqdXN0U2Nyb2xsc0Zv
clBhZ2VTY2FsZUNoYW5nZShtX3Jvb3RTY3JvbGxMYXllckltcGwsIHBhZ2VTY2FsZUNoYW5nZSk7
CisjZW5kaWYKIAogICAgIC8vIENsYW1wIGRlbHRhIHRvIGxpbWl0cyBhbmQgcmVmcmVzaCBkaXNw
bGF5IG1hdHJpeC4KICAgICBzZXRQYWdlU2NhbGVEZWx0YShtX3BhZ2VTY2FsZURlbHRhIC8gbV9z
ZW50UGFnZVNjYWxlRGVsdGEpOwpAQCAtMTA1NiwxMCArMTA2NiwxMiBAQAogCiAgICAgaWYgKG1f
cGluY2hHZXN0dXJlQWN0aXZlIHx8IG1fcGFnZVNjYWxlQW5pbWF0aW9uKSB7CiAgICAgICAgIG1f
c2VudFBhZ2VTY2FsZURlbHRhID0gc2Nyb2xsSW5mby0+cGFnZVNjYWxlRGVsdGEgPSAxOwotICAg
ICAgICBpZiAobV9waW5jaEdlc3R1cmVBY3RpdmUpCisjaWYgMAorICAgICAgIGlmIChtX3BpbmNo
R2VzdHVyZUFjdGl2ZSkKICAgICAgICAgICAgIGNvbXB1dGVQaW5jaFpvb21EZWx0YXMoc2Nyb2xs
SW5mby5nZXQoKSk7CiAgICAgICAgIGVsc2UgaWYgKG1fcGFnZVNjYWxlQW5pbWF0aW9uLmdldCgp
KQogICAgICAgICAgICAgY29tcHV0ZURvdWJsZVRhcFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQo
KSk7CisjZW5kaWYKICAgICAgICAgcmV0dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwogICAgIH0K
IApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NM
YXllclRyZWVIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCShyZXZpc2lvbiAxMjU3MTkp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Miw2ICs1MiwyNCBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBMYXllckNocm9taXVtKiBmaW5kRmlyc3RTY3JvbGxhYmxl
TGF5ZXIoTGF5ZXJDaHJvbWl1bSogbGF5ZXIpCit7CisgICAgaWYgKCFsYXllcikKKyAgICAgICAg
cmV0dXJuIDA7CisKKyAgICBpZiAobGF5ZXItPnNjcm9sbGFibGUoKSkKKyAgICAgICAgcmV0dXJu
IGxheWVyOworCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBsYXllci0+Y2hpbGRyZW4oKS5z
aXplKCk7ICsraSkgeworICAgICAgICBMYXllckNocm9taXVtKiBmb3VuZCA9IGZpbmRGaXJzdFNj
cm9sbGFibGVMYXllcihsYXllci0+Y2hpbGRyZW4oKVtpXS5nZXQoKSk7CisgICAgICAgIGlmIChm
b3VuZCkKKyAgICAgICAgICAgIHJldHVybiBmb3VuZDsKKyAgICB9CisKKyAgICByZXR1cm4gMDsK
K30KKworCiBib29sIENDTGF5ZXJUcmVlSG9zdDo6c19uZWVkc0ZpbHRlckNvbnRleHQgPSBmYWxz
ZTsKIAogYm9vbCBDQ0xheWVyVHJlZUhvc3Q6OmFueUxheWVyVHJlZUhvc3RJbnN0YW5jZUV4aXN0
cygpCkBAIC0zODEsNiArMzk5LDExIEBACiAgICAgbV9sYXlvdXRWaWV3cG9ydFNpemUgPSBsYXlv
dXRWaWV3cG9ydFNpemU7CiAgICAgbV9kZXZpY2VWaWV3cG9ydFNpemUgPSBkZXZpY2VWaWV3cG9y
dFNpemU7CiAKKyNpZiAwCisgICAgbV9sYXlvdXRWaWV3cG9ydFNpemUuc2NhbGUoMS9tX3BhZ2VT
Y2FsZUZhY3Rvcik7CisgICAgbV9kZXZpY2VWaWV3cG9ydFNpemUuc2NhbGUoMS9tX3BhZ2VTY2Fs
ZUZhY3Rvcik7CisjZW5kaWYKKwogICAgIHNldE5lZWRzQ29tbWl0KCk7CiB9CiAKQEAgLTQ3MCwx
NSArNDkzLDM0IEBACiAgICAgdXBkYXRlTGF5ZXJzKHJvb3RMYXllcigpLCBxdWV1ZSk7CiB9CiAK
K3N0YXRpYyB2b2lkIHVwZGF0ZUxheWVyU2NhbGUoTGF5ZXJDaHJvbWl1bSogbGF5ZXIsIGZsb2F0
IHBhZ2VTY2FsZSkKK3sKKyAgICBsYXllci0+c2V0Q29udGVudHNTY2FsZShwYWdlU2NhbGUpOwor
ICAgIGNvbnN0IFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiYgY2hpbGRyZW4gPSBsYXll
ci0+Y2hpbGRyZW4oKTsKKyAgICBWZWN0b3I8UmVmUHRyPExheWVyQ2hyb21pdW0+ID46OmNvbnN0
X2l0ZXJhdG9yIGl0ZXIoY2hpbGRyZW4uYmVnaW4oKSksIGVuZChjaGlsZHJlbi5lbmQoKSk7Cisg
ICAgZm9yICg7IGl0ZXIgIT0gZW5kOyArK2l0ZXIpIHsKKyAgICAgICAgdXBkYXRlTGF5ZXJTY2Fs
ZShpdGVyLT5nZXQoKSwgcGFnZVNjYWxlKTsKKyAgICB9Cit9CisKIHZvaWQgQ0NMYXllclRyZWVI
b3N0Ojp1cGRhdGVMYXllcnMoTGF5ZXJDaHJvbWl1bSogcm9vdExheWVyLCBDQ1RleHR1cmVVcGRh
dGVRdWV1ZSYgcXVldWUpCiB7CiAgICAgVFJBQ0VfRVZFTlQwKCJjYyIsICJDQ0xheWVyVHJlZUhv
c3Q6OnVwZGF0ZUxheWVycyIpOwogCiAgICAgTGF5ZXJMaXN0IHVwZGF0ZUxpc3Q7CiAKKyAgICBM
YXllckNocm9taXVtKiByb290U2Nyb2xsTGF5ZXIgPSBmaW5kRmlyc3RTY3JvbGxhYmxlTGF5ZXIo
bV9yb290TGF5ZXIuZ2V0KCkpOworICAgIHVwZGF0ZUxheWVyU2NhbGUocm9vdFNjcm9sbExheWVy
LCBtX3BhZ2VTY2FsZUZhY3Rvcik7CisKICAgICB7CiAgICAgICAgIFRSQUNFX0VWRU5UMCgiY2Mi
LCAiQ0NMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllcnM6OmNhbGNEcmF3RXRjIik7CisKKyAgICAg
ICAgV2ViS2l0OjpXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBzY2FsZU1hdHJpeDsKKyAgICAgICAg
c2NhbGVNYXRyaXguc2NhbGUobV9wYWdlU2NhbGVGYWN0b3IpOworICAgICAgICByb290U2Nyb2xs
TGF5ZXItPnNldFRyYW5zZm9ybShzY2FsZU1hdHJpeCk7CisKICAgICAgICAgQ0NMYXllclRyZWVI
b3N0Q29tbW9uOjpjYWxjdWxhdGVEcmF3VHJhbnNmb3Jtcyhyb290TGF5ZXIsIGRldmljZVZpZXdw
b3J0U2l6ZSgpLCBtX2RldmljZVNjYWxlRmFjdG9yLCBsYXllclJlbmRlcmVyQ2FwYWJpbGl0aWVz
KCkubWF4VGV4dHVyZVNpemUsIHVwZGF0ZUxpc3QpOworCiAgICAgICAgIENDTGF5ZXJUcmVlSG9z
dENvbW1vbjo6Y2FsY3VsYXRlVmlzaWJsZVJlY3RzKHVwZGF0ZUxpc3QpOwogICAgIH0KIApAQCAt
NjE1LDIzICs2NTcsNiBAQAogICAgIHJldHVybiBuZWVkTW9yZVVwZGF0ZXM7CiB9CiAKLXN0YXRp
YyBMYXllckNocm9taXVtKiBmaW5kRmlyc3RTY3JvbGxhYmxlTGF5ZXIoTGF5ZXJDaHJvbWl1bSog
bGF5ZXIpCi17Ci0gICAgaWYgKCFsYXllcikKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBpZiAo
bGF5ZXItPnNjcm9sbGFibGUoKSkKLSAgICAgICAgcmV0dXJuIGxheWVyOwotCi0gICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBsYXllci0+Y2hpbGRyZW4oKS5zaXplKCk7ICsraSkgewotICAgICAg
ICBMYXllckNocm9taXVtKiBmb3VuZCA9IGZpbmRGaXJzdFNjcm9sbGFibGVMYXllcihsYXllci0+
Y2hpbGRyZW4oKVtpXS5nZXQoKSk7Ci0gICAgICAgIGlmIChmb3VuZCkKLSAgICAgICAgICAgIHJl
dHVybiBmb3VuZDsKLSAgICB9Ci0KLSAgICByZXR1cm4gMDsKLX0KLQogdm9pZCBDQ0xheWVyVHJl
ZUhvc3Q6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY29uc3QgQ0NTY3JvbGxBbmRTY2FsZVNldCYgaW5m
bykKIHsKICAgICBpZiAoIW1fcm9vdExheWVyKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vR3JhcGhpY3NMYXllckNocm9taXVtLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xh
eWVyQ2hyb21pdW0uY3BwCShyZXZpc2lvbiAxMjU3MTkpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9HcmFwaGljc0xheWVyQ2hyb21pdW0uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC03MzgsNyArNzM4LDkgQEAKICAgICAgICAgLy8gU2V0IHRoZSBvbGQgbGF5ZXIg
dG8gb3BhY2l0eSBvZiAxLiBGdXJ0aGVyIGRvd24gd2Ugd2lsbCBzZXQgdGhlIG9wYWNpdHkgb24g
dGhlIHRyYW5zZm9ybSBsYXllci4KICAgICAgICAgbV9sYXllci5zZXRPcGFjaXR5KDEpOwogCisj
aWYgMAogICAgICAgICBtX2xheWVyLnNldENvbnRlbnRzU2NhbGUoY29udGVudHNTY2FsZSgpKTsK
KyNlbmRpZgogCiAgICAgICAgIC8vIE1vdmUgdGhpcyBsYXllciB0byBiZSBhIGNoaWxkIG9mIHRo
ZSB0cmFuc2Zvcm0gbGF5ZXIuCiAgICAgICAgIGlmICghbV9sYXllci5wYXJlbnQoKS5pc051bGwo
KSkKQEAgLTgxOSwxMSArODIxLDEzIEBACiAKIHZvaWQgR3JhcGhpY3NMYXllckNocm9taXVtOjp1
cGRhdGVDb250ZW50c1NjYWxlKCkKIHsKKyNpZiAwCiAgICAgLy8gSWYgcGFnZSBzY2FsZSBpcyBh
bHJlYWR5IGFwcGxpZWQgdGhlbiB0aGVyZSdzIG5vIG5lZWQgdG8gYXBwbHkgaXQgYWdhaW4uCiAg
ICAgaWYgKGFwcGxpZXNQYWdlU2NhbGUoKSB8fCBtX2xheWVyLmlzTnVsbCgpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBtX2xheWVyLnNldENvbnRlbnRzU2NhbGUoY29udGVudHNTY2FsZSgpKTsK
KyNlbmRpZgogfQogCiB2b2lkIEdyYXBoaWNzTGF5ZXJDaHJvbWl1bTo6c2V0dXBDb250ZW50c0xh
eWVyKFdlYkxheWVyIGNvbnRlbnRzTGF5ZXIpCg==
</data>
<flag name="review"
          id="170502"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="170503"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163130</attachid>
            <date>2012-09-10 07:57:04 -0700</date>
            <delta_ts>2012-09-10 15:53:05 -0700</delta_ts>
            <desc>Alpha version of the new pinch zoom algorithm.</desc>
            <filename>pinch_zoom_alpha.diff</filename>
            <type>text/plain</type>
            <size>19815</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjA5LDcgKzIwOSw3IEBACiBjb25zdCBkb3VibGUgV2ViVmlldzo6dGV4dFNpemVNdWx0aXBsaWVy
UmF0aW8gPSAxLjI7CiBjb25zdCBkb3VibGUgV2ViVmlldzo6bWluVGV4dFNpemVNdWx0aXBsaWVy
ID0gMC41OwogY29uc3QgZG91YmxlIFdlYlZpZXc6Om1heFRleHRTaXplTXVsdGlwbGllciA9IDMu
MDsKLWNvbnN0IGZsb2F0IFdlYlZpZXc6Om1pblBhZ2VTY2FsZUZhY3RvciA9IDAuMjU7Citjb25z
dCBmbG9hdCBXZWJWaWV3OjptaW5QYWdlU2NhbGVGYWN0b3IgPSAxLjA7CiBjb25zdCBmbG9hdCBX
ZWJWaWV3OjptYXhQYWdlU2NhbGVGYWN0b3IgPSA0LjA7CiAKIApJbmRleDogV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lv
biAxMjgwMDQpCisrKyBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05
NTIsMTIgKzk1MiwxNSBAQAogCiBmbG9hdCBGcmFtZTo6ZnJhbWVTY2FsZUZhY3RvcigpIGNvbnN0
CiB7CisgICAgcmV0dXJuIDE7CisjaWYgMAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7
CiAKICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFp
bmVyIGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBt
YWluIGZyYW1lLgogICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQog
ICAgICAgICByZXR1cm4gMTsKICAgICByZXR1cm4gcGFnZS0+cGFnZVNjYWxlRmFjdG9yKCk7Cisj
ZW5kaWYKIH0KIAogdm9pZCBGcmFtZTo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRp
b25zKCkKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaHJl
YWRQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaHJlYWRQcm94eS5oCShyZXZpc2lvbiAxMjgwMDQpCisrKyBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuaAkod29ya2luZyBjb3B5KQpA
QCAtMTA4LDYgKzEwOCw3IEBACiAgICAgICAgIE93blB0cjxDQ1Njcm9sbEFuZFNjYWxlU2V0PiBz
Y3JvbGxJbmZvOwogICAgICAgICBib29sIGNvbnRlbnRzVGV4dHVyZXNXZXJlRGVsZXRlZDsKICAg
ICAgICAgc2l6ZV90IG1lbW9yeUFsbG9jYXRpb25MaW1pdEJ5dGVzOworICAgICAgICBCbHVlQm94
Vmlld3BvcnQgYmx1ZUJveDsKICAgICB9OwogICAgIE93blB0cjxCZWdpbkZyYW1lQW5kQ29tbWl0
U3RhdGU+IG1fcGVuZGluZ0JlZ2luRnJhbWVSZXF1ZXN0OwogCkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJJbXBsLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCShyZXZpc2lv
biAxMjgwMDQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTIwMiw3ICsyMDIsOCBAQAogICAgIGNvbnN0IElu
dFNpemUmIHNlbnRTY3JvbGxEZWx0YSgpIGNvbnN0IHsgcmV0dXJuIG1fc2VudFNjcm9sbERlbHRh
OyB9CiAgICAgdm9pZCBzZXRTZW50U2Nyb2xsRGVsdGEoY29uc3QgSW50U2l6ZSYgc2VudFNjcm9s
bERlbHRhKSB7IG1fc2VudFNjcm9sbERlbHRhID0gc2VudFNjcm9sbERlbHRhOyB9CiAKLSAgICB2
b2lkIHNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYgc2Nyb2xsKTsKKyAgICAvLyBSZXR1cm5zIHRo
ZSBkZWx0YSBvZiB0aGUgc2Nyb2xsIHRoYXQgd2FzIG91dHNpZGUgb2YgdGhlIGJvdW5kcyBvZiB0
aGUgaW5pdGlhbCBzY3JvbGwKKyAgICBGbG9hdFNpemUgc2Nyb2xsQnkoY29uc3QgRmxvYXRTaXpl
JiBzY3JvbGwpOwogCiAgICAgYm9vbCBzY3JvbGxhYmxlKCkgY29uc3QgeyByZXR1cm4gbV9zY3Jv
bGxhYmxlOyB9CiAgICAgdm9pZCBzZXRTY3JvbGxhYmxlKGJvb2wgc2Nyb2xsYWJsZSkgeyBtX3Nj
cm9sbGFibGUgPSBzY3JvbGxhYmxlOyB9CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGhyZWFkUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQcm94eS5jcHAJKHJldmlzaW9uIDEy
ODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaHJlYWRQ
cm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ3Niw2ICs0NzYsNyBAQAogICAgIG1fcGVuZGlu
Z0JlZ2luRnJhbWVSZXF1ZXN0ID0gYWRvcHRQdHIobmV3IEJlZ2luRnJhbWVBbmRDb21taXRTdGF0
ZSgpKTsKICAgICBtX3BlbmRpbmdCZWdpbkZyYW1lUmVxdWVzdC0+bW9ub3RvbmljRnJhbWVCZWdp
blRpbWUgPSBtb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWUoKTsKICAgICBtX3BlbmRpbmdCZWdp
bkZyYW1lUmVxdWVzdC0+c2Nyb2xsSW5mbyA9IG1fbGF5ZXJUcmVlSG9zdEltcGwtPnByb2Nlc3NT
Y3JvbGxEZWx0YXMoKTsKKyAgICBtX3BlbmRpbmdCZWdpbkZyYW1lUmVxdWVzdC0+Ymx1ZUJveCA9
IG1fbGF5ZXJUcmVlSG9zdEltcGwtPmJsdWVCb3goKTsKICAgICBtX3BlbmRpbmdCZWdpbkZyYW1l
UmVxdWVzdC0+Y29udGVudHNUZXh0dXJlc1dlcmVEZWxldGVkID0gbV9sYXllclRyZWVIb3N0SW1w
bC0+Y29udGVudHNUZXh0dXJlc1B1cmdlZCgpOwogICAgIG1fcGVuZGluZ0JlZ2luRnJhbWVSZXF1
ZXN0LT5tZW1vcnlBbGxvY2F0aW9uTGltaXRCeXRlcyA9IG1fbGF5ZXJUcmVlSG9zdEltcGwtPm1l
bW9yeUFsbG9jYXRpb25MaW1pdEJ5dGVzKCk7CiAKQEAgLTUyMCw2ICs1MjEsNyBAQAogICAgIC8v
IEZJWE1FOiB0ZWNobmljYWxseSwgc2Nyb2xsIGRlbHRhcyBuZWVkIHRvIGJlIGFwcGxpZWQgZm9y
IGRyb3BwZWQgY29tbWl0cyBhcyB3ZWxsLgogICAgIC8vIFJlLWRvIHRoZSBjb21taXQgZmxvdyBz
byB0aGF0IHdlIGRvbid0IHNlbmQgdGhlIHNjcm9sbEluZm8gb24gdGhlIEJGQUMgbWVzc2FnZS4K
ICAgICBtX2xheWVyVHJlZUhvc3QtPmFwcGx5U2Nyb2xsQW5kU2NhbGUoKnJlcXVlc3QtPnNjcm9s
bEluZm8pOworICAgIG1fbGF5ZXJUcmVlSG9zdC0+c2V0Qmx1ZUJveChyZXF1ZXN0LT5ibHVlQm94
LmxvY2F0aW9uKCkpOwogCiAgICAgaWYgKCFtX2luQ29tcG9zaXRlQW5kUmVhZGJhY2sgJiYgIW1f
bGF5ZXJUcmVlSG9zdC0+dmlzaWJsZSgpKSB7CiAgICAgICAgIG1fY29tbWl0UmVxdWVzdGVkID0g
ZmFsc2U7CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUcmVlSG9zdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTIyMyw2ICsyMjMsNyBAQAogICAgIHZvaWQgc3RhcnRQYWdlU2NhbGVBbmltYXRp
b24oY29uc3QgSW50U2l6ZSYgdGFyZ2V0UG9zaXRpb24sIGJvb2wgdXNlQW5jaG9yLCBmbG9hdCBz
Y2FsZSwgZG91YmxlIGR1cmF0aW9uU2VjKTsKIAogICAgIHZvaWQgYXBwbHlTY3JvbGxBbmRTY2Fs
ZShjb25zdCBDQ1Njcm9sbEFuZFNjYWxlU2V0Jik7CisgICAgdm9pZCBzZXRCbHVlQm94KGNvbnN0
IEZsb2F0UG9pbnQmIGxvY2F0aW9uKSB7IG1fYmx1ZUJveExvY2F0aW9uID0gbG9jYXRpb247IH0K
IAogICAgIHZvaWQgc3RhcnRSYXRlTGltaXRlcihXZWJLaXQ6OldlYkdyYXBoaWNzQ29udGV4dDNE
Kik7CiAgICAgdm9pZCBzdG9wUmF0ZUxpbWl0ZXIoV2ViS2l0OjpXZWJHcmFwaGljc0NvbnRleHQz
RCopOwpAQCAtMzA4LDYgKzMwOSw4IEBACiAgICAgVGV4dHVyZUxpc3QgbV9kZWxldGVUZXh0dXJl
QWZ0ZXJDb21taXRMaXN0OwogICAgIHNpemVfdCBtX3BhcnRpYWxUZXh0dXJlVXBkYXRlUmVxdWVz
dHM7CiAKKyAgICBGbG9hdFBvaW50IG1fYmx1ZUJveExvY2F0aW9uOworCiAgICAgc3RhdGljIGJv
b2wgc19uZWVkc0ZpbHRlckNvbnRleHQ7CiB9OwogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1w
bC5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY5LDYg
KzY5LDYzIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAordm9pZCBCbHVlQm94Vmlld3BvcnQ6
OnNldFNjYWxlKGZsb2F0IGZhY3RvcikKK3sKKyAgICBtX3NjYWxlRmFjdG9yID0gZmFjdG9yOwor
fQorCitGbG9hdFJlY3QgQmx1ZUJveFZpZXdwb3J0OjpibHVlQm91bmRzKCkKK3sKKyAgICBGbG9h
dFJlY3QgYm91bmRzOworCisgICAgRmxvYXRTaXplIGJsdWVTaXplID0gbV9yZWRCb3VuZHM7Cisg
ICAgaWYgKG1fc2NhbGVGYWN0b3IgPiAxKQorICAgICAgICBibHVlU2l6ZS5zY2FsZSgxIC8gbV9z
Y2FsZUZhY3Rvcik7CisKKyAgICBib3VuZHMuc2V0U2l6ZShibHVlU2l6ZSk7CisgICAgYm91bmRz
LnNldExvY2F0aW9uKG1fbG9jYXRpb24pOworCisgICAgcmV0dXJuIGJvdW5kczsKK30KKwordm9p
ZCBCbHVlQm94Vmlld3BvcnQ6OmVtaXQoKQoreworICAgIEZsb2F0UmVjdCBzY2FsZWRCb3VuZHMg
PSBibHVlQm91bmRzKCk7CisgICAgcHJpbnRmKCIoKCVmLCAlZikgLSAoJWYgeCAlZikpXG4iLCBz
Y2FsZWRCb3VuZHMueCgpLCBzY2FsZWRCb3VuZHMueSgpLCBzY2FsZWRCb3VuZHMud2lkdGgoKSwK
KyAgICAgICAgc2NhbGVkQm91bmRzLmhlaWdodCgpKTsKK30KKworRmxvYXRTaXplIEJsdWVCb3hW
aWV3cG9ydDo6YXBwbHlTY3JvbGwoRmxvYXRTaXplJiBkZWx0YSkKK3sKKyAgICBGbG9hdFNpemUg
b3ZlcmZsb3c7CisKKyAgICBGbG9hdFJlY3QgbG9jYWxCb3VuZHMgPSBibHVlQm91bmRzKCk7CisK
KyAgICBsb2NhbEJvdW5kcy5tb3ZlKGRlbHRhKTsKKyAgICBpZiAobG9jYWxCb3VuZHMueCgpIDwg
MCkgeworICAgICAgICBvdmVyZmxvdy5zZXRXaWR0aChsb2NhbEJvdW5kcy54KCkpOworICAgICAg
ICBsb2NhbEJvdW5kcy5zZXRYKDApOworICAgIH0KKworICAgIGlmIChsb2NhbEJvdW5kcy55KCkg
PCAwKSB7CisgICAgICAgIG92ZXJmbG93LnNldEhlaWdodChsb2NhbEJvdW5kcy55KCkpOworICAg
ICAgICBsb2NhbEJvdW5kcy5zZXRZKDApOworICAgIH0KKworICAgIGlmIChsb2NhbEJvdW5kcy5t
YXhYKCkgPiBtX3JlZEJvdW5kcy53aWR0aCgpKSB7CisgICAgICAgIGxvY2FsQm91bmRzLm1vdmUo
bV9yZWRCb3VuZHMud2lkdGgoKSAtIGxvY2FsQm91bmRzLm1heFgoKSwgMCk7CisgICAgICAgIG92
ZXJmbG93LnNldFdpZHRoKG1fcmVkQm91bmRzLndpZHRoKCkgLSBsb2NhbEJvdW5kcy5tYXhYKCkp
OworICAgIH0KKworICAgIGlmIChsb2NhbEJvdW5kcy5tYXhZKCkgPiBtX3JlZEJvdW5kcy5oZWln
aHQoKSkgeworICAgICAgICBsb2NhbEJvdW5kcy5tb3ZlKDAsIG1fcmVkQm91bmRzLmhlaWdodCgp
IC0gbG9jYWxCb3VuZHMubWF4WSgpKTsKKyAgICAgICAgb3ZlcmZsb3cuc2V0SGVpZ2h0KG1fcmVk
Qm91bmRzLmhlaWdodCgpIC0gbG9jYWxCb3VuZHMubWF4WSgpKTsKKyAgICB9CisgICAgbV9sb2Nh
dGlvbiA9IGxvY2FsQm91bmRzLmxvY2F0aW9uKCk7CisKKyAgICByZXR1cm4gb3ZlcmZsb3c7Cit9
CisKIGNsYXNzIENDTGF5ZXJUcmVlSG9zdEltcGxUaW1lU291cmNlQWRhcHRlciA6IHB1YmxpYyBD
Q1RpbWVTb3VyY2VDbGllbnQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENDTGF5ZXJUcmVl
SG9zdEltcGxUaW1lU291cmNlQWRhcHRlcik7CiBwdWJsaWM6CkBAIC0yNTMsNiArMzEwLDE4IEBA
CiAgICAgQVNTRVJUKG1fcmVuZGVyZXIpOyAvLyBGb3IgbWF4VGV4dHVyZVNpemUuCiAKICAgICB7
CisKKyAgICAgICAgLy9GbG9hdFBvaW50IHNjcm9sbFBvc2l0aW9uID0gbV9ibHVlQm94LmJvdW5k
cygpLmxvY2F0aW9uKCk7CisgICAgICAgIC8vbV9yb290TGF5ZXJJbXBsLT5zZXRTY3JvbGxQb3Np
dGlvbigKKworICAgICAgICBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9uTWF0cml4IHNjYWxlTWF0
cml4OyAvLyA9IHJvb3RTY3JvbGxMYXllci0+dHJhbnNmb3JtKCk7CisgICAgICAgIHNjYWxlTWF0
cml4LnNjYWxlKG1fcGFnZVNjYWxlKTsKKyNpZiAxCisgICAgICAgIHNjYWxlTWF0cml4LnRyYW5z
bGF0ZSgtbV9ibHVlQm94LmxvY2F0aW9uKCkueCgpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgLW1fYmx1ZUJveC5sb2NhdGlvbigpLnkoKSk7CisjZW5kaWYKKyAgICAgICAgbV9yb290
U2Nyb2xsTGF5ZXJJbXBsLT5zZXRUcmFuc2Zvcm0oc2NhbGVNYXRyaXgpOworCiAgICAgICAgIFRS
QUNFX0VWRU5UMCgiY2MiLCAiQ0NMYXllclRyZWVIb3N0SW1wbDo6Y2FsY0RyYXdFdGMiKTsKICAg
ICAgICAgQ0NMYXllclRyZWVIb3N0Q29tbW9uOjpjYWxjdWxhdGVEcmF3VHJhbnNmb3JtcyhtX3Jv
b3RMYXllckltcGwuZ2V0KCksIGRldmljZVZpZXdwb3J0U2l6ZSgpLCBtX2RldmljZVNjYWxlRmFj
dG9yLCAmbV9sYXllclNvcnRlciwgcmVuZGVyZXJDYXBhYmlsaXRpZXMoKS5tYXhUZXh0dXJlU2l6
ZSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdCk7CiAgICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1v
bjo6Y2FsY3VsYXRlVmlzaWJsZVJlY3RzKHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwpAQCAtNzQ3
LDYgKzgxNiw5IEBACiAgICAgbV9sYXlvdXRWaWV3cG9ydFNpemUgPSBsYXlvdXRWaWV3cG9ydFNp
emU7CiAgICAgbV9kZXZpY2VWaWV3cG9ydFNpemUgPSBkZXZpY2VWaWV3cG9ydFNpemU7CiAKKyAg
ICBtX2JsdWVCb3guc2V0UmVkQm91bmRzKEZsb2F0U2l6ZShsYXlvdXRWaWV3cG9ydFNpemUpKTsK
KyAgICBtX2JsdWVCb3guZW1pdCgpOworCiAgICAgdXBkYXRlTWF4U2Nyb2xsUG9zaXRpb24oKTsK
IAogICAgIGlmIChtX3JlbmRlcmVyKQpAQCAtNzU1LDYgKzgyNyw3IEBACiAgICAgbV9jbGllbnQt
Pm9uQ2FuRHJhd1N0YXRlQ2hhbmdlZChjYW5EcmF3KCkpOwogfQogCisjaWYgMAogc3RhdGljIHZv
aWQgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2FsZUNoYW5nZShDQ0xheWVySW1wbCogbGF5ZXJJbXBs
LCBmbG9hdCBwYWdlU2NhbGVDaGFuZ2UpCiB7CiAgICAgaWYgKCFsYXllckltcGwpCkBAIC03NzAs
NiArODQzLDcgQEAKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxheWVySW1wbC0+Y2hpbGRy
ZW4oKS5zaXplKCk7ICsraSkKICAgICAgICAgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2FsZUNoYW5n
ZShsYXllckltcGwtPmNoaWxkcmVuKClbaV0uZ2V0KCksIHBhZ2VTY2FsZUNoYW5nZSk7CiB9Cisj
ZW5kaWYKIAogdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXREZXZpY2VTY2FsZUZhY3Rvcihm
bG9hdCBkZXZpY2VTY2FsZUZhY3RvcikKIHsKQEAgLTc5MiwxMSArODY2LDEzIEBACiAgICAgbV9t
aW5QYWdlU2NhbGUgPSBtaW5QYWdlU2NhbGU7CiAgICAgbV9tYXhQYWdlU2NhbGUgPSBtYXhQYWdl
U2NhbGU7CiAKLSAgICBmbG9hdCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdlU2NhbGUgLyBtX3BhZ2VT
Y2FsZTsKKyAgICAvL2Zsb2F0IHBhZ2VTY2FsZUNoYW5nZSA9IHBhZ2VTY2FsZSAvIG1fcGFnZVNj
YWxlOwogICAgIG1fcGFnZVNjYWxlID0gcGFnZVNjYWxlOwogCisjaWYgMAogICAgIGlmIChwYWdl
U2NhbGVDaGFuZ2UgIT0gMSkKICAgICAgICAgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2FsZUNoYW5n
ZShtX3Jvb3RTY3JvbGxMYXllckltcGwsIHBhZ2VTY2FsZUNoYW5nZSk7CisjZW5kaWYKIAogICAg
IC8vIENsYW1wIGRlbHRhIHRvIGxpbWl0cyBhbmQgcmVmcmVzaCBkaXNwbGF5IG1hdHJpeC4KICAg
ICBzZXRQYWdlU2NhbGVEZWx0YShtX3BhZ2VTY2FsZURlbHRhIC8gbV9zZW50UGFnZVNjYWxlRGVs
dGEpOwpAQCAtODM0LDE4ICs5MTAsMjAgQEAKICAgICAgICAgLy8gQ29tcGVuc2F0ZSBmb3Igbm9u
LW92ZXJsYXkgc2Nyb2xsYmFycy4KICAgICAgICAgaWYgKGNsaXBMYXllci0+bWFza3NUb0JvdW5k
cygpKSB7CiAgICAgICAgICAgICB2aWV3Qm91bmRzID0gY2xpcExheWVyLT5ib3VuZHMoKTsKLSAg
ICAgICAgICAgIHZpZXdCb3VuZHMuc2NhbGUobV9kZXZpY2VTY2FsZUZhY3Rvcik7CisgICAgICAg
ICAgICB2aWV3Qm91bmRzLnNjYWxlKG1fZGV2aWNlU2NhbGVGYWN0b3IgKiBtX3BhZ2VTY2FsZSk7
CiAgICAgICAgIH0KICAgICB9CiAgICAgdmlld0JvdW5kcy5zY2FsZSgxIC8gbV9wYWdlU2NhbGVE
ZWx0YSk7CiAKICAgICAvLyBtYXhTY3JvbGwgaXMgY29tcHV0ZWQgaW4gcGh5c2ljYWwgcGl4ZWxz
LCBidXQgc2Nyb2xsIHBvc2l0aW9ucyBhcmUgaW4gbGF5b3V0IHBpeGVscy4KICAgICBJbnRTaXpl
IG1heFNjcm9sbCA9IGNvbnRlbnRTaXplKCkgLSBleHBhbmRlZEludFNpemUodmlld0JvdW5kcyk7
Ci0gICAgbWF4U2Nyb2xsLnNjYWxlKDEgLyBtX2RldmljZVNjYWxlRmFjdG9yKTsKKyAgICBtYXhT
Y3JvbGwuc2NhbGUoMSAvIChtX2RldmljZVNjYWxlRmFjdG9yICogbV9wYWdlU2NhbGUpKTsKICAg
ICAvLyBUaGUgdmlld3BvcnQgbWF5IGJlIGxhcmdlciB0aGFuIHRoZSBjb250ZW50cyBpbiBzb21l
IGNhc2VzLCBzdWNoIGFzCiAgICAgLy8gaGF2aW5nIGEgdmVydGljYWwgc2Nyb2xsYmFyIGJ1dCBu
byBob3Jpem9udGFsIG92ZXJmbG93LgogICAgIG1heFNjcm9sbC5jbGFtcE5lZ2F0aXZlVG9aZXJv
KCk7CiAKKyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnVwZGF0ZU1heFNjcm9sbFBv
c2l0aW9uICglZCwgJWQpXG4iLCBtYXhTY3JvbGwud2lkdGgoKSwgbWF4U2Nyb2xsLmhlaWdodCgp
KTsKKwogICAgIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2V0TWF4U2Nyb2xsUG9zaXRpb24obWF4
U2Nyb2xsKTsKIH0KIApAQCAtOTI0LDcgKzEwMDIsNyBAQAogICAgIHJldHVybiBTY3JvbGxJZ25v
cmVkOwogfQogCi1zdGF0aWMgRmxvYXRTaXplIHNjcm9sbExheWVyV2l0aFNjcmVlblNwYWNlRGVs
dGEoQ0NMYXllckltcGwmIGxheWVySW1wbCwgY29uc3QgRmxvYXRQb2ludCYgc2NyZWVuU3BhY2VQ
b2ludCwgY29uc3QgRmxvYXRTaXplJiBzY3JlZW5TcGFjZURlbHRhKQorc3RhdGljIEZsb2F0U2l6
ZSBzY3JvbGxMYXllcldpdGhTY3JlZW5TcGFjZURlbHRhKEJsdWVCb3hWaWV3cG9ydCogdmlld3Bv
cnQsIENDTGF5ZXJJbXBsJiBsYXllckltcGwsIGNvbnN0IEZsb2F0UG9pbnQmIHNjcmVlblNwYWNl
UG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NyZWVuU3BhY2VEZWx0YSkKIHsKICAgICAvLyBMYXll
cnMgd2l0aCBub24taW52ZXJ0aWJsZSBzY3JlZW4gc3BhY2UgdHJhbnNmb3JtcyBzaG91bGQgbm90
IGhhdmUgcGFzc2VkIHRoZSBzY3JvbGwgaGl0CiAgICAgLy8gdGVzdCBpbiB0aGUgZmlyc3QgcGxh
Y2UuCkBAIC05NDYsOCArMTAyNCwxOSBAQAogCiAgICAgLy8gQXBwbHkgdGhlIHNjcm9sbCBkZWx0
YS4KICAgICBGbG9hdFNpemUgcHJldmlvdXNEZWx0YShsYXllckltcGwuc2Nyb2xsRGVsdGEoKSk7
Ci0gICAgbGF5ZXJJbXBsLnNjcm9sbEJ5KGxvY2FsRW5kUG9pbnQgLSBsb2NhbFN0YXJ0UG9pbnQp
OworICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0gbGF5ZXJJbXBsLnNjcm9sbEJ5KGxvY2FsRW5k
UG9pbnQgLSBsb2NhbFN0YXJ0UG9pbnQpOworICAgIHByaW50ZigidW5zY3JvbGxlZDogJWYsICVm
XG4iLCB1bnNjcm9sbGVkLndpZHRoKCksIHVuc2Nyb2xsZWQuaGVpZ2h0KCkpOwogCisjaWYgMQor
ICAgIGlmICh2aWV3cG9ydCkgeworICAgICAgICB2aWV3cG9ydC0+YXBwbHlTY3JvbGwodW5zY3Jv
bGxlZCk7CisgICAgICAgIHByaW50ZigiU2Nyb2xsZWRCbHVlQm94OiIpOworICAgICAgICB2aWV3
cG9ydC0+ZW1pdCgpOworICAgICAgICBwcmludGYoIlxuIik7CisgICAgfQorI2VuZGlmCisKKwog
ICAgIC8vIENhbGN1bGF0ZSB0aGUgYXBwbGllZCBzY3JvbGwgZGVsdGEgaW4gc2NyZWVuIHNwYWNl
IGNvb3JkaW5hdGVzLgogICAgIEZsb2F0UG9pbnQgYWN0dWFsTG9jYWxFbmRQb2ludCA9IGxvY2Fs
U3RhcnRQb2ludCArIGxheWVySW1wbC5zY3JvbGxEZWx0YSgpIC0gcHJldmlvdXNEZWx0YTsKICAg
ICBGbG9hdFBvaW50IGFjdHVhbFNjcmVlblNwYWNlRW5kUG9pbnQgPSBDQ01hdGhVdGlsOjptYXBQ
b2ludChsYXllckltcGwuc2NyZWVuU3BhY2VUcmFuc2Zvcm0oKSwgYWN0dWFsTG9jYWxFbmRQb2lu
dCwgZW5kQ2xpcHBlZCk7CkBAIC05NjYsMjEgKzEwNTUsMjQgQEAKIAogdm9pZCBDQ0xheWVyVHJl
ZUhvc3RJbXBsOjpzY3JvbGxCeShjb25zdCBJbnRQb2ludCYgdmlld3BvcnRQb2ludCwgY29uc3Qg
SW50U2l6ZSYgc2Nyb2xsRGVsdGEpCiB7CisgICAgLy9wcmludGYoIkNDTGF5ZXJUcmVlSG9zdElt
cGw6OnNjcm9sbEJ5ICglZCwgJWQpLCAoJWQsICVkKVxuIiwgdmlld3BvcnRQb2ludC54KCksIHZp
ZXdwb3J0UG9pbnQueSgpLCBzY3JvbGxEZWx0YS53aWR0aCgpLCBzY3JvbGxEZWx0YS5oZWlnaHQo
KSk7CisKICAgICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnNjcm9s
bEJ5Iik7CiAgICAgaWYgKCFtX2N1cnJlbnRseVNjcm9sbGluZ0xheWVySW1wbCkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgRmxvYXRTaXplIHBlbmRpbmdEZWx0YShzY3JvbGxEZWx0YSk7CiAKLSAg
ICBwZW5kaW5nRGVsdGEuc2NhbGUobV9kZXZpY2VTY2FsZUZhY3Rvcik7CisgICAgcGVuZGluZ0Rl
bHRhLnNjYWxlKG1fZGV2aWNlU2NhbGVGYWN0b3IgKiBtX3BhZ2VTY2FsZSk7CiAKICAgICBmb3Ig
KENDTGF5ZXJJbXBsKiBsYXllckltcGwgPSBtX2N1cnJlbnRseVNjcm9sbGluZ0xheWVySW1wbDsg
bGF5ZXJJbXBsOyBsYXllckltcGwgPSBsYXllckltcGwtPnBhcmVudCgpKSB7CiAgICAgICAgIGlm
ICghbGF5ZXJJbXBsLT5zY3JvbGxhYmxlKCkpCiAgICAgICAgICAgICBjb250aW51ZTsKIAorICAg
ICAgICBCbHVlQm94Vmlld3BvcnQqIHZpZXdwb3J0ID0gbGF5ZXJJbXBsID09IG1fcm9vdFNjcm9s
bExheWVySW1wbCA/ICZtX2JsdWVCb3ggOiBOVUxMOwogICAgICAgICBGbG9hdFNpemUgYXBwbGll
ZERlbHRhOwogICAgICAgICBpZiAobV9zY3JvbGxEZWx0YUlzSW5TY3JlZW5TcGFjZSkKLSAgICAg
ICAgICAgIGFwcGxpZWREZWx0YSA9IHNjcm9sbExheWVyV2l0aFNjcmVlblNwYWNlRGVsdGEoKmxh
eWVySW1wbCwgdmlld3BvcnRQb2ludCwgcGVuZGluZ0RlbHRhKTsKKyAgICAgICAgICAgIGFwcGxp
ZWREZWx0YSA9IHNjcm9sbExheWVyV2l0aFNjcmVlblNwYWNlRGVsdGEodmlld3BvcnQsICpsYXll
ckltcGwsIHZpZXdwb3J0UG9pbnQsIHBlbmRpbmdEZWx0YSk7CiAgICAgICAgIGVsc2UKICAgICAg
ICAgICAgIGFwcGxpZWREZWx0YSA9IHNjcm9sbExheWVyV2l0aExvY2FsRGVsdGEoKmxheWVySW1w
bCwgcGVuZGluZ0RlbHRhKTsKIApAQCAtMTAzNyw2ICsxMTI5LDggQEAKIHsKICAgICBUUkFDRV9F
VkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnBpbmNoR2VzdHVyZVVwZGF0ZSIpOwog
CisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJbXBsOjpwaW5jaEdlc3R1cmVVcGRhdGUgZGVs
dGE9JWYgYW5jaG9yPSglZCwgJWQpXG4iLCBtYWduaWZ5RGVsdGEsIGFuY2hvci54KCksIGFuY2hv
ci55KCkpOworCiAgICAgaWYgKCFtX3Jvb3RTY3JvbGxMYXllckltcGwpCiAgICAgICAgIHJldHVy
bjsKIApAQCAtMTA1Miw4ICsxMTQ2LDI5IEBACiAKICAgICBtX3ByZXZpb3VzUGluY2hBbmNob3Ig
PSBhbmNob3I7CiAKLSAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbEJ5KHJvdW5kZWRJ
bnRTaXplKG1vdmUpKTsKKyAgICAvL21fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsQnkocm91
bmRlZEludFNpemUobW92ZSkpOwogCisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJbXBsOjpw
aW5jaEdlc3R1cmVVcGRhdGUgbV9wYWdlU2NhbGVEZWx0YSA9ICVmXG4iLCBtX3BhZ2VTY2FsZURl
bHRhKTsKKworICAgIG1fYmx1ZUJveC5zZXRTY2FsZShtX3BhZ2VTY2FsZSAqIG1fcGFnZVNjYWxl
RGVsdGEpOworCisjaWYgMQorICAgIHByaW50ZigiUHJlIGNsYW1waW5nIGJsdWUgYm94OiAiKTsK
KyAgICBtX2JsdWVCb3guZW1pdCgpOworI2VuZGlmCisKKyAgICBGbG9hdFNpemUgcmVkU2Nyb2xs
ID0gbV9ibHVlQm94LmFwcGx5U2Nyb2xsKG1vdmUpOworCisjaWYgMQorICAgIHByaW50ZigiQ0NM
YXllclRyZWVIb3N0SW1wbDo6cGluY2hHZXN0dXJlVXBkYXRlIHJlZFNjcm9sbDogKCVmICVmKVxu
IiwgcmVkU2Nyb2xsLndpZHRoKCksIHJlZFNjcm9sbC5oZWlnaHQoKSk7CisgICAgbV9yb290U2Ny
b2xsTGF5ZXJJbXBsLT5zY3JvbGxCeShyb3VuZGVkSW50U2l6ZShyZWRTY3JvbGwpKTsKKyNlbmRp
ZgorCisjaWYgMQorICAgIHByaW50ZigiUG9zdCBjbGFtcGluZyBibHVlIGJveDogIik7CisgICAg
bV9ibHVlQm94LmVtaXQoKTsKKyNlbmRpZgorCiAgICAgaWYgKG1fcm9vdFNjcm9sbExheWVySW1w
bC0+c2Nyb2xsYmFyQW5pbWF0aW9uQ29udHJvbGxlcigpKQogICAgICAgICBtX3Jvb3RTY3JvbGxM
YXllckltcGwtPnNjcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xsZXIoKS0+ZGlkUGluY2hHZXN0dXJl
VXBkYXRlKCk7CiAKQEAgLTExNDgsMTAgKzEyNjMsMTIgQEAKIAogICAgIGlmIChtX3BpbmNoR2Vz
dHVyZUFjdGl2ZSB8fCBtX3BhZ2VTY2FsZUFuaW1hdGlvbikgewogICAgICAgICBtX3NlbnRQYWdl
U2NhbGVEZWx0YSA9IHNjcm9sbEluZm8tPnBhZ2VTY2FsZURlbHRhID0gMTsKKyNpZiAwCiAgICAg
ICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSkKICAgICAgICAgICAgIGNvbXB1dGVQaW5jaFpv
b21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CiAgICAgICAgIGVsc2UgaWYgKG1fcGFnZVNjYWxl
QW5pbWF0aW9uLmdldCgpKQogICAgICAgICAgICAgY29tcHV0ZURvdWJsZVRhcFpvb21EZWx0YXMo
c2Nyb2xsSW5mby5nZXQoKSk7CisjZW5kaWYKICAgICAgICAgcmV0dXJuIHNjcm9sbEluZm8ucmVs
ZWFzZSgpOwogICAgIH0KIApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVySW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xODEsMjAgKzE4MSwyOSBAQAogICAgIHJldHVybiAwOwogfQogCi12b2lk
IENDTGF5ZXJJbXBsOjpzY3JvbGxCeShjb25zdCBGbG9hdFNpemUmIHNjcm9sbCkKK0Zsb2F0U2l6
ZSBDQ0xheWVySW1wbDo6c2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJiBzY3JvbGwpCiB7CisgICAg
cHJpbnRmKCJDQ0xheWVySW1wbDo6c2Nyb2xsQnkgc2Nyb2xsOiAlZiAlZlxuIiwgc2Nyb2xsLndp
ZHRoKCksIHNjcm9sbC5oZWlnaHQoKSk7CiAgICAgSW50U2l6ZSBtaW5EZWx0YSA9IC10b1NpemUo
bV9zY3JvbGxQb3NpdGlvbik7CisgICAgcHJpbnRmKCJDQ0xheWVySW1wbDo6c2Nyb2xsQnkgbWlu
RGVsdGE6ICVkICVkXG4iLCBtaW5EZWx0YS53aWR0aCgpLCBtaW5EZWx0YS5oZWlnaHQoKSk7CiAg
ICAgSW50U2l6ZSBtYXhEZWx0YSA9IG1fbWF4U2Nyb2xsUG9zaXRpb24gLSB0b1NpemUobV9zY3Jv
bGxQb3NpdGlvbik7CisgICAgcHJpbnRmKCJDQ0xheWVySW1wbDo6c2Nyb2xsQnkgbWF4RGVsdGE6
ICVkICVkXG4iLCBtYXhEZWx0YS53aWR0aCgpLCBtYXhEZWx0YS5oZWlnaHQoKSk7CisKICAgICAv
LyBDbGFtcCBuZXdEZWx0YSBzbyB0aGF0IHBvc2l0aW9uICsgZGVsdGEgc3RheXMgd2l0aGluIHNj
cm9sbCBib3VuZHMuCiAgICAgRmxvYXRTaXplIG5ld0RlbHRhID0gKG1fc2Nyb2xsRGVsdGEgKyBz
Y3JvbGwpLmV4cGFuZGVkVG8obWluRGVsdGEpLnNocnVua1RvKG1heERlbHRhKTsKKyAgICBwcmlu
dGYoIkNDTGF5ZXJJbXBsOjpzY3JvbGxCeSBuZXdEZWx0YTogJWYgJWZcbiIsIG5ld0RlbHRhLndp
ZHRoKCksIG5ld0RlbHRhLmhlaWdodCgpKTsKIAorICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0g
bV9zY3JvbGxEZWx0YSArIHNjcm9sbCAtIG5ld0RlbHRhOy8vbmV3RGVsdGEgLSBzY3JvbGw7CisK
ICAgICBpZiAobV9zY3JvbGxEZWx0YSA9PSBuZXdEZWx0YSkKLSAgICAgICAgcmV0dXJuOworICAg
ICAgICByZXR1cm4gdW5zY3JvbGxlZDsKIAogICAgIG1fc2Nyb2xsRGVsdGEgPSBuZXdEZWx0YTsK
ICAgICBpZiAobV9zY3JvbGxiYXJBbmltYXRpb25Db250cm9sbGVyKQogICAgICAgICBtX3Njcm9s
bGJhckFuaW1hdGlvbkNvbnRyb2xsZXItPnVwZGF0ZVNjcm9sbE9mZnNldCh0aGlzKTsKICAgICBu
b3RlTGF5ZXJQcm9wZXJ0eUNoYW5nZWRGb3JTdWJ0cmVlKCk7CisKKyAgICByZXR1cm4gdW5zY3Jv
bGxlZDsKIH0KIAogQ0NJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbFN0YXR1cyBDQ0xheWVySW1w
bDo6dHJ5U2Nyb2xsKGNvbnN0IEludFBvaW50JiB2aWV3cG9ydFBvaW50LCBDQ0lucHV0SGFuZGxl
ckNsaWVudDo6U2Nyb2xsSW5wdXRUeXBlIHR5cGUpIGNvbnN0CkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9z
dEltcGwuaAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTYyLDYg
KzYyLDI5IEBACiAgICAgdmlydHVhbCB2b2lkIHBvc3RBbmltYXRpb25FdmVudHNUb01haW5UaHJl
YWRPbkltcGxUaHJlYWQoUGFzc093blB0cjxDQ0FuaW1hdGlvbkV2ZW50c1ZlY3Rvcj4sIGRvdWJs
ZSB3YWxsQ2xvY2tUaW1lKSA9IDA7CiB9OwogCitjbGFzcyBCbHVlQm94Vmlld3BvcnQgeworcHVi
bGljOgorICAgIEJsdWVCb3hWaWV3cG9ydCgpIDogbV9zY2FsZUZhY3RvcigwKSB7fQorCisgICAg
dm9pZCBzZXRTY2FsZShmbG9hdCBmYWN0b3IpOworCisgICAgRmxvYXRSZWN0IGJsdWVCb3VuZHMo
KTsKKyAgICBGbG9hdFBvaW50IGxvY2F0aW9uKCkgeyByZXR1cm4gbV9sb2NhdGlvbjsgfQorCisg
ICAgRmxvYXRTaXplJiByZWRCb3VuZHMoKSB7IHJldHVybiBtX3JlZEJvdW5kczsgfQorICAgIHZv
aWQgc2V0UmVkQm91bmRzKGNvbnN0IEZsb2F0U2l6ZSYgYm91bmRzKSB7IG1fcmVkQm91bmRzID0g
Ym91bmRzOyB9CisKKyAgICBGbG9hdFNpemUgYXBwbHlTY3JvbGwoRmxvYXRTaXplJiBkZWx0YSk7
CisKKyAgICB2b2lkIGVtaXQoKTsKKworcHJpdmF0ZToKKyAgICBmbG9hdCBtX3NjYWxlRmFjdG9y
OworICAgIEZsb2F0UG9pbnQgbV9sb2NhdGlvbjsKKyAgICBGbG9hdFNpemUgbV9zaXplOworICAg
IEZsb2F0U2l6ZSBtX3JlZEJvdW5kczsKK307CisKIC8vIENDTGF5ZXJUcmVlSG9zdEltcGwgb3du
cyB0aGUgQ0NMYXllckltcGwgdHJlZSBhcyB3ZWxsIGFzIGFzc29jaWF0ZWQgcmVuZGVyaW5nIHN0
YXRlCiBjbGFzcyBDQ0xheWVyVHJlZUhvc3RJbXBsIDogcHVibGljIENDSW5wdXRIYW5kbGVyQ2xp
ZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyBDQ1JlbmRlcmVyQ2xpZW50
LApAQCAtMjIwLDYgKzI0Myw4IEBACiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgUmVuZGVyUGFzc0N1
bGxlcj4KICAgICBzdGF0aWMgdm9pZCByZW1vdmVSZW5kZXJQYXNzZXMoUmVuZGVyUGFzc0N1bGxl
ciwgRnJhbWVEYXRhJik7CiAKKyAgICBCbHVlQm94Vmlld3BvcnQmIGJsdWVCb3goKSB7IHJldHVy
biBtX2JsdWVCb3g7IH0KKwogcHJvdGVjdGVkOgogICAgIENDTGF5ZXJUcmVlSG9zdEltcGwoY29u
c3QgQ0NMYXllclRyZWVTZXR0aW5ncyYsIENDTGF5ZXJUcmVlSG9zdEltcGxDbGllbnQqKTsKIApA
QCAtMzA1LDYgKzMzMCw4IEBACiAgICAgLy8gcmVuZGVyaW5nIGFuZCBpbnB1dCBldmVudCBoaXQg
dGVzdGluZy4KICAgICBDQ0xheWVyTGlzdCBtX3JlbmRlclN1cmZhY2VMYXllckxpc3Q7CiAKKyAg
ICBCbHVlQm94Vmlld3BvcnQgbV9ibHVlQm94OworCiAgICAgT3duUHRyPENDRnJhbWVSYXRlQ291
bnRlcj4gbV9mcHNDb3VudGVyOwogICAgIE93blB0cjxDQ0RlYnVnUmVjdEhpc3Rvcnk+IG1fZGVi
dWdSZWN0SGlzdG9yeTsKIH07CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCShyZXZpc2lvbiAxMjgw
MDQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVl
SG9zdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4MCw5ICs0ODAsMjYgQEAKICAgICB1cGRhdGVM
YXllcnMocm9vdExheWVyKCksIHF1ZXVlKTsKIH0KIAorc3RhdGljIExheWVyQ2hyb21pdW0qIGZp
bmRGaXJzdFNjcm9sbGFibGVMYXllcihMYXllckNocm9taXVtKiBsYXllcikKK3sKKyAgICBpZiAo
IWxheWVyKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGlmIChsYXllci0+c2Nyb2xsYWJsZSgp
KQorICAgICAgICByZXR1cm4gbGF5ZXI7CisKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxh
eWVyLT5jaGlsZHJlbigpLnNpemUoKTsgKytpKSB7CisgICAgICAgIExheWVyQ2hyb21pdW0qIGZv
dW5kID0gZmluZEZpcnN0U2Nyb2xsYWJsZUxheWVyKGxheWVyLT5jaGlsZHJlbigpW2ldLmdldCgp
KTsKKyAgICAgICAgaWYgKGZvdW5kKQorICAgICAgICAgICAgcmV0dXJuIGZvdW5kOworICAgIH0K
KworICAgIHJldHVybiAwOworfQorCiBzdGF0aWMgdm9pZCBzZXRTY2FsZShMYXllckNocm9taXVt
KiBsYXllciwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IsIGZsb2F0IHBhZ2VTY2FsZUZhY3RvcikK
IHsKLSAgICBpZiAobGF5ZXItPmJvdW5kc0NvbnRhaW5QYWdlU2NhbGUoKSkKKyAgICBpZiAoZmFs
c2UgLypsYXllci0+Ym91bmRzQ29udGFpblBhZ2VTY2FsZSgpKi8pCiAgICAgICAgIGxheWVyLT5z
ZXRDb250ZW50c1NjYWxlKGRldmljZVNjYWxlRmFjdG9yKTsKICAgICBlbHNlCiAgICAgICAgIGxh
eWVyLT5zZXRDb250ZW50c1NjYWxlKGRldmljZVNjYWxlRmFjdG9yICogcGFnZVNjYWxlRmFjdG9y
KTsKQEAgLTUwOSwxMyArNTI2LDIzIEBACiB7CiAgICAgVFJBQ0VfRVZFTlQwKCJjYyIsICJDQ0xh
eWVyVHJlZUhvc3Q6OnVwZGF0ZUxheWVycyIpOwogCisgICAgLy9wcmludGYoIkNDTGF5ZXJUcmVl
SG9zdDo6dXBhdGVMYXllcnMgZGV2aWNlU2NhbGU9JWYgcGFnZVNjYWxlPSVmXG4iLCBtX2Rldmlj
ZVNjYWxlRmFjdG9yLCBtX3BhZ2VTY2FsZUZhY3Rvcik7CisKICAgICB1cGRhdGVMYXllclNjYWxl
KHJvb3RMYXllciwgbV9kZXZpY2VTY2FsZUZhY3RvciwgbV9wYWdlU2NhbGVGYWN0b3IpOwogCiAg
ICAgTGF5ZXJMaXN0IHVwZGF0ZUxpc3Q7CiAKICAgICB7CisKKyAgICAgICAgTGF5ZXJDaHJvbWl1
bSogcm9vdFNjcm9sbExheWVyID0gZmluZEZpcnN0U2Nyb2xsYWJsZUxheWVyKHJvb3RMYXllcik7
CisgICAgICAgIFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXggc2NhbGVNYXRyaXg7Cisg
ICAgICAgIHNjYWxlTWF0cml4LnNjYWxlKG1fcGFnZVNjYWxlRmFjdG9yKTsKKyAgICAgICAgc2Nh
bGVNYXRyaXgudHJhbnNsYXRlKC1tX2JsdWVCb3hMb2NhdGlvbi54KCksCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAtbV9ibHVlQm94TG9jYXRpb24ueSgpKTsKKyAgICAgICAgcm9vdFNj
cm9sbExheWVyLT5zZXRUcmFuc2Zvcm0oc2NhbGVNYXRyaXgpOworCiAgICAgICAgIFRSQUNFX0VW
RU5UMCgiY2MiLCAiQ0NMYXllclRyZWVIb3N0Ojp1cGRhdGVMYXllcnM6OmNhbGNEcmF3RXRjIik7
Ci0gICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMo
cm9vdExheWVyLCBkZXZpY2VWaWV3cG9ydFNpemUoKSwgbV9kZXZpY2VTY2FsZUZhY3RvciwgcmVu
ZGVyZXJDYXBhYmlsaXRpZXMoKS5tYXhUZXh0dXJlU2l6ZSwgdXBkYXRlTGlzdCk7CisgICAgICAg
IENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3VsYXRlRHJhd1RyYW5zZm9ybXMocm9vdExheWVy
LCBkZXZpY2VWaWV3cG9ydFNpemUoKSwgbV9kZXZpY2VTY2FsZUZhY3RvciAsIHJlbmRlcmVyQ2Fw
YWJpbGl0aWVzKCkubWF4VGV4dHVyZVNpemUsIHVwZGF0ZUxpc3QpOwogICAgICAgICBDQ0xheWVy
VHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZVZpc2libGVSZWN0cyh1cGRhdGVMaXN0KTsKICAgICB9
CiAKQEAgLTY1MiwyMyArNjc5LDYgQEAKICAgICByZXR1cm4gbmVlZE1vcmVVcGRhdGVzOwogfQog
Ci1zdGF0aWMgTGF5ZXJDaHJvbWl1bSogZmluZEZpcnN0U2Nyb2xsYWJsZUxheWVyKExheWVyQ2hy
b21pdW0qIGxheWVyKQotewotICAgIGlmICghbGF5ZXIpCi0gICAgICAgIHJldHVybiAwOwotCi0g
ICAgaWYgKGxheWVyLT5zY3JvbGxhYmxlKCkpCi0gICAgICAgIHJldHVybiBsYXllcjsKLQotICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGF5ZXItPmNoaWxkcmVuKCkuc2l6ZSgpOyArK2kpIHsK
LSAgICAgICAgTGF5ZXJDaHJvbWl1bSogZm91bmQgPSBmaW5kRmlyc3RTY3JvbGxhYmxlTGF5ZXIo
bGF5ZXItPmNoaWxkcmVuKClbaV0uZ2V0KCkpOwotICAgICAgICBpZiAoZm91bmQpCi0gICAgICAg
ICAgICByZXR1cm4gZm91bmQ7Ci0gICAgfQotCi0gICAgcmV0dXJuIDA7Ci19Ci0KIHZvaWQgQ0NM
YXllclRyZWVIb3N0OjphcHBseVNjcm9sbEFuZFNjYWxlKGNvbnN0IENDU2Nyb2xsQW5kU2NhbGVT
ZXQmIGluZm8pCiB7CiAgICAgaWYgKCFtX3Jvb3RMYXllcikK
</data>
<flag name="review"
          id="174473"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="174474"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163238</attachid>
            <date>2012-09-10 15:53:05 -0700</date>
            <delta_ts>2012-09-11 16:03:45 -0700</delta_ts>
            <desc>Remove references to blue-box position from the main thread.</desc>
            <filename>pinch_zoom_sept_10_18:42.diff</filename>
            <type>text/plain</type>
            <size>14811</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjA5LDcgKzIwOSw3IEBACiBjb25zdCBkb3VibGUgV2ViVmlldzo6dGV4dFNpemVNdWx0aXBsaWVy
UmF0aW8gPSAxLjI7CiBjb25zdCBkb3VibGUgV2ViVmlldzo6bWluVGV4dFNpemVNdWx0aXBsaWVy
ID0gMC41OwogY29uc3QgZG91YmxlIFdlYlZpZXc6Om1heFRleHRTaXplTXVsdGlwbGllciA9IDMu
MDsKLWNvbnN0IGZsb2F0IFdlYlZpZXc6Om1pblBhZ2VTY2FsZUZhY3RvciA9IDAuMjU7Citjb25z
dCBmbG9hdCBXZWJWaWV3OjptaW5QYWdlU2NhbGVGYWN0b3IgPSAxLjA7CiBjb25zdCBmbG9hdCBX
ZWJWaWV3OjptYXhQYWdlU2NhbGVGYWN0b3IgPSA0LjA7CiAKIApJbmRleDogV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lv
biAxMjgwMDQpCisrKyBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05
NTIsMTIgKzk1MiwxNSBAQAogCiBmbG9hdCBGcmFtZTo6ZnJhbWVTY2FsZUZhY3RvcigpIGNvbnN0
CiB7CisgICAgcmV0dXJuIDE7CisjaWYgMAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7
CiAKICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFp
bmVyIGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBt
YWluIGZyYW1lLgogICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQog
ICAgICAgICByZXR1cm4gMTsKICAgICByZXR1cm4gcGFnZS0+cGFnZVNjYWxlRmFjdG9yKCk7Cisj
ZW5kaWYKIH0KIAogdm9pZCBGcmFtZTo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRp
b25zKCkKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
ckltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJJbXBsLmgJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaAkod29ya2luZyBjb3B5KQpAQCAtMjAy
LDcgKzIwMiw4IEBACiAgICAgY29uc3QgSW50U2l6ZSYgc2VudFNjcm9sbERlbHRhKCkgY29uc3Qg
eyByZXR1cm4gbV9zZW50U2Nyb2xsRGVsdGE7IH0KICAgICB2b2lkIHNldFNlbnRTY3JvbGxEZWx0
YShjb25zdCBJbnRTaXplJiBzZW50U2Nyb2xsRGVsdGEpIHsgbV9zZW50U2Nyb2xsRGVsdGEgPSBz
ZW50U2Nyb2xsRGVsdGE7IH0KIAotICAgIHZvaWQgc2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJiBz
Y3JvbGwpOworICAgIC8vIFJldHVybnMgdGhlIGRlbHRhIG9mIHRoZSBzY3JvbGwgdGhhdCB3YXMg
b3V0c2lkZSBvZiB0aGUgYm91bmRzIG9mIHRoZSBpbml0aWFsIHNjcm9sbAorICAgIEZsb2F0U2l6
ZSBzY3JvbGxCeShjb25zdCBGbG9hdFNpemUmIHNjcm9sbCk7CiAKICAgICBib29sIHNjcm9sbGFi
bGUoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbGFibGU7IH0KICAgICB2b2lkIHNldFNjcm9sbGFi
bGUoYm9vbCBzY3JvbGxhYmxlKSB7IG1fc2Nyb2xsYWJsZSA9IHNjcm9sbGFibGU7IH0KSW5kZXg6
IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1w
bC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9j
Yy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNjksNiArNjksNjMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCit2
b2lkIEJsdWVCb3hWaWV3cG9ydDo6c2V0U2NhbGUoZmxvYXQgZmFjdG9yKQoreworICAgIG1fc2Nh
bGVGYWN0b3IgPSBmYWN0b3I7Cit9CisKK0Zsb2F0UmVjdCBCbHVlQm94Vmlld3BvcnQ6OmJsdWVC
b3VuZHMoKQoreworICAgIEZsb2F0UmVjdCBib3VuZHM7CisKKyAgICBGbG9hdFNpemUgYmx1ZVNp
emUgPSBtX3JlZEJvdW5kczsKKyAgICBpZiAobV9zY2FsZUZhY3RvciA+IDEpCisgICAgICAgIGJs
dWVTaXplLnNjYWxlKDEgLyBtX3NjYWxlRmFjdG9yKTsKKworICAgIGJvdW5kcy5zZXRTaXplKGJs
dWVTaXplKTsKKyAgICBib3VuZHMuc2V0TG9jYXRpb24obV9sb2NhdGlvbik7CisKKyAgICByZXR1
cm4gYm91bmRzOworfQorCit2b2lkIEJsdWVCb3hWaWV3cG9ydDo6ZW1pdCgpCit7CisgICAgRmxv
YXRSZWN0IHNjYWxlZEJvdW5kcyA9IGJsdWVCb3VuZHMoKTsKKyAgICBwcmludGYoIigoJWYsICVm
KSAtICglZiB4ICVmKSlcbiIsIHNjYWxlZEJvdW5kcy54KCksIHNjYWxlZEJvdW5kcy55KCksIHNj
YWxlZEJvdW5kcy53aWR0aCgpLAorICAgICAgICBzY2FsZWRCb3VuZHMuaGVpZ2h0KCkpOworfQor
CitGbG9hdFNpemUgQmx1ZUJveFZpZXdwb3J0OjphcHBseVNjcm9sbChGbG9hdFNpemUmIGRlbHRh
KQoreworICAgIEZsb2F0U2l6ZSBvdmVyZmxvdzsKKworICAgIEZsb2F0UmVjdCBsb2NhbEJvdW5k
cyA9IGJsdWVCb3VuZHMoKTsKKworICAgIGxvY2FsQm91bmRzLm1vdmUoZGVsdGEpOworICAgIGlm
IChsb2NhbEJvdW5kcy54KCkgPCAwKSB7CisgICAgICAgIG92ZXJmbG93LnNldFdpZHRoKGxvY2Fs
Qm91bmRzLngoKSk7CisgICAgICAgIGxvY2FsQm91bmRzLnNldFgoMCk7CisgICAgfQorCisgICAg
aWYgKGxvY2FsQm91bmRzLnkoKSA8IDApIHsKKyAgICAgICAgb3ZlcmZsb3cuc2V0SGVpZ2h0KGxv
Y2FsQm91bmRzLnkoKSk7CisgICAgICAgIGxvY2FsQm91bmRzLnNldFkoMCk7CisgICAgfQorCisg
ICAgaWYgKGxvY2FsQm91bmRzLm1heFgoKSA+IG1fcmVkQm91bmRzLndpZHRoKCkpIHsKKyAgICAg
ICAgbG9jYWxCb3VuZHMubW92ZShtX3JlZEJvdW5kcy53aWR0aCgpIC0gbG9jYWxCb3VuZHMubWF4
WCgpLCAwKTsKKyAgICAgICAgb3ZlcmZsb3cuc2V0V2lkdGgobG9jYWxCb3VuZHMubWF4WCgpIC0g
bV9yZWRCb3VuZHMud2lkdGgoKSk7CisgICAgfQorCisgICAgaWYgKGxvY2FsQm91bmRzLm1heFko
KSA+IG1fcmVkQm91bmRzLmhlaWdodCgpKSB7CisgICAgICAgIGxvY2FsQm91bmRzLm1vdmUoMCwg
bV9yZWRCb3VuZHMuaGVpZ2h0KCkgLSBsb2NhbEJvdW5kcy5tYXhZKCkpOworICAgICAgICBvdmVy
Zmxvdy5zZXRIZWlnaHQobG9jYWxCb3VuZHMubWF4WSgpIC0gbV9yZWRCb3VuZHMuaGVpZ2h0KCkp
OworICAgIH0KKyAgICBtX2xvY2F0aW9uID0gbG9jYWxCb3VuZHMubG9jYXRpb24oKTsKKworICAg
IHJldHVybiBvdmVyZmxvdzsKK30KKwogY2xhc3MgQ0NMYXllclRyZWVIb3N0SW1wbFRpbWVTb3Vy
Y2VBZGFwdGVyIDogcHVibGljIENDVGltZVNvdXJjZUNsaWVudCB7CiAgICAgV1RGX01BS0VfTk9O
Q09QWUFCTEUoQ0NMYXllclRyZWVIb3N0SW1wbFRpbWVTb3VyY2VBZGFwdGVyKTsKIHB1YmxpYzoK
QEAgLTI1Myw2ICszMTAsMTMgQEAKICAgICBBU1NFUlQobV9yZW5kZXJlcik7IC8vIEZvciBtYXhU
ZXh0dXJlU2l6ZS4KIAogICAgIHsKKworICAgICAgICBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9u
TWF0cml4IHNjYWxlTWF0cml4OworICAgICAgICBzY2FsZU1hdHJpeC5zY2FsZShtX3BhZ2VTY2Fs
ZSk7CisgICAgICAgIHNjYWxlTWF0cml4LnRyYW5zbGF0ZSgtbV9ibHVlQm94LmxvY2F0aW9uKCku
eCgpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLW1fYmx1ZUJveC5sb2NhdGlvbigp
LnkoKSk7CisgICAgICAgIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2V0VHJhbnNmb3JtKHNjYWxl
TWF0cml4KTsKKwogICAgICAgICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdElt
cGw6OmNhbGNEcmF3RXRjIik7CiAgICAgICAgIENDTGF5ZXJUcmVlSG9zdENvbW1vbjo6Y2FsY3Vs
YXRlRHJhd1RyYW5zZm9ybXMobV9yb290TGF5ZXJJbXBsLmdldCgpLCBkZXZpY2VWaWV3cG9ydFNp
emUoKSwgbV9kZXZpY2VTY2FsZUZhY3RvciwgJm1fbGF5ZXJTb3J0ZXIsIHJlbmRlcmVyQ2FwYWJp
bGl0aWVzKCkubWF4VGV4dHVyZVNpemUsIHJlbmRlclN1cmZhY2VMYXllckxpc3QpOwogICAgICAg
ICBDQ0xheWVyVHJlZUhvc3RDb21tb246OmNhbGN1bGF0ZVZpc2libGVSZWN0cyhyZW5kZXJTdXJm
YWNlTGF5ZXJMaXN0KTsKQEAgLTc0Nyw2ICs4MTEsOSBAQAogICAgIG1fbGF5b3V0Vmlld3BvcnRT
aXplID0gbGF5b3V0Vmlld3BvcnRTaXplOwogICAgIG1fZGV2aWNlVmlld3BvcnRTaXplID0gZGV2
aWNlVmlld3BvcnRTaXplOwogCisgICAgbV9ibHVlQm94LnNldFJlZEJvdW5kcyhGbG9hdFNpemUo
bGF5b3V0Vmlld3BvcnRTaXplKSk7CisgICAgbV9ibHVlQm94LmVtaXQoKTsKKwogICAgIHVwZGF0
ZU1heFNjcm9sbFBvc2l0aW9uKCk7CiAKICAgICBpZiAobV9yZW5kZXJlcikKQEAgLTc1NSw2ICs4
MjIsNyBAQAogICAgIG1fY2xpZW50LT5vbkNhbkRyYXdTdGF0ZUNoYW5nZWQoY2FuRHJhdygpKTsK
IH0KIAorI2lmIDAKIHN0YXRpYyB2b2lkIGFkanVzdFNjcm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2Uo
Q0NMYXllckltcGwqIGxheWVySW1wbCwgZmxvYXQgcGFnZVNjYWxlQ2hhbmdlKQogewogICAgIGlm
ICghbGF5ZXJJbXBsKQpAQCAtNzcwLDYgKzgzOCw3IEBACiAgICAgZm9yIChzaXplX3QgaSA9IDA7
IGkgPCBsYXllckltcGwtPmNoaWxkcmVuKCkuc2l6ZSgpOyArK2kpCiAgICAgICAgIGFkanVzdFNj
cm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UobGF5ZXJJbXBsLT5jaGlsZHJlbigpW2ldLmdldCgpLCBw
YWdlU2NhbGVDaGFuZ2UpOwogfQorI2VuZGlmCiAKIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6
c2V0RGV2aWNlU2NhbGVGYWN0b3IoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IpCiB7CkBAIC03OTIs
MTEgKzg2MSwxMyBAQAogICAgIG1fbWluUGFnZVNjYWxlID0gbWluUGFnZVNjYWxlOwogICAgIG1f
bWF4UGFnZVNjYWxlID0gbWF4UGFnZVNjYWxlOwogCi0gICAgZmxvYXQgcGFnZVNjYWxlQ2hhbmdl
ID0gcGFnZVNjYWxlIC8gbV9wYWdlU2NhbGU7CisgICAgLy9mbG9hdCBwYWdlU2NhbGVDaGFuZ2Ug
PSBwYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKICAgICBtX3BhZ2VTY2FsZSA9IHBhZ2VTY2FsZTsK
IAorI2lmIDAKICAgICBpZiAocGFnZVNjYWxlQ2hhbmdlICE9IDEpCiAgICAgICAgIGFkanVzdFNj
cm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UobV9yb290U2Nyb2xsTGF5ZXJJbXBsLCBwYWdlU2NhbGVD
aGFuZ2UpOworI2VuZGlmCiAKICAgICAvLyBDbGFtcCBkZWx0YSB0byBsaW1pdHMgYW5kIHJlZnJl
c2ggZGlzcGxheSBtYXRyaXguCiAgICAgc2V0UGFnZVNjYWxlRGVsdGEobV9wYWdlU2NhbGVEZWx0
YSAvIG1fc2VudFBhZ2VTY2FsZURlbHRhKTsKQEAgLTgzNCwxOCArOTA1LDIwIEBACiAgICAgICAg
IC8vIENvbXBlbnNhdGUgZm9yIG5vbi1vdmVybGF5IHNjcm9sbGJhcnMuCiAgICAgICAgIGlmIChj
bGlwTGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSkgewogICAgICAgICAgICAgdmlld0JvdW5kcyA9IGNs
aXBMYXllci0+Ym91bmRzKCk7Ci0gICAgICAgICAgICB2aWV3Qm91bmRzLnNjYWxlKG1fZGV2aWNl
U2NhbGVGYWN0b3IpOworICAgICAgICAgICAgdmlld0JvdW5kcy5zY2FsZShtX2RldmljZVNjYWxl
RmFjdG9yICogbV9wYWdlU2NhbGUpOwogICAgICAgICB9CiAgICAgfQogICAgIHZpZXdCb3VuZHMu
c2NhbGUoMSAvIG1fcGFnZVNjYWxlRGVsdGEpOwogCiAgICAgLy8gbWF4U2Nyb2xsIGlzIGNvbXB1
dGVkIGluIHBoeXNpY2FsIHBpeGVscywgYnV0IHNjcm9sbCBwb3NpdGlvbnMgYXJlIGluIGxheW91
dCBwaXhlbHMuCiAgICAgSW50U2l6ZSBtYXhTY3JvbGwgPSBjb250ZW50U2l6ZSgpIC0gZXhwYW5k
ZWRJbnRTaXplKHZpZXdCb3VuZHMpOwotICAgIG1heFNjcm9sbC5zY2FsZSgxIC8gbV9kZXZpY2VT
Y2FsZUZhY3Rvcik7CisgICAgbWF4U2Nyb2xsLnNjYWxlKDEgLyAobV9kZXZpY2VTY2FsZUZhY3Rv
ciAqIG1fcGFnZVNjYWxlKSk7CiAgICAgLy8gVGhlIHZpZXdwb3J0IG1heSBiZSBsYXJnZXIgdGhh
biB0aGUgY29udGVudHMgaW4gc29tZSBjYXNlcywgc3VjaCBhcwogICAgIC8vIGhhdmluZyBhIHZl
cnRpY2FsIHNjcm9sbGJhciBidXQgbm8gaG9yaXpvbnRhbCBvdmVyZmxvdy4KICAgICBtYXhTY3Jv
bGwuY2xhbXBOZWdhdGl2ZVRvWmVybygpOwogCisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJ
bXBsOjp1cGRhdGVNYXhTY3JvbGxQb3NpdGlvbiAoJWQsICVkKVxuIiwgbWF4U2Nyb2xsLndpZHRo
KCksIG1heFNjcm9sbC5oZWlnaHQoKSk7CisKICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNl
dE1heFNjcm9sbFBvc2l0aW9uKG1heFNjcm9sbCk7CiB9CiAKQEAgLTkyNCw3ICs5OTcsNyBAQAog
ICAgIHJldHVybiBTY3JvbGxJZ25vcmVkOwogfQogCi1zdGF0aWMgRmxvYXRTaXplIHNjcm9sbExh
eWVyV2l0aFNjcmVlblNwYWNlRGVsdGEoQ0NMYXllckltcGwmIGxheWVySW1wbCwgY29uc3QgRmxv
YXRQb2ludCYgc2NyZWVuU3BhY2VQb2ludCwgY29uc3QgRmxvYXRTaXplJiBzY3JlZW5TcGFjZURl
bHRhKQorc3RhdGljIEZsb2F0U2l6ZSBzY3JvbGxMYXllcldpdGhTY3JlZW5TcGFjZURlbHRhKEJs
dWVCb3hWaWV3cG9ydCogdmlld3BvcnQsIENDTGF5ZXJJbXBsJiBsYXllckltcGwsIGNvbnN0IEZs
b2F0UG9pbnQmIHNjcmVlblNwYWNlUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NyZWVuU3BhY2VE
ZWx0YSkKIHsKICAgICAvLyBMYXllcnMgd2l0aCBub24taW52ZXJ0aWJsZSBzY3JlZW4gc3BhY2Ug
dHJhbnNmb3JtcyBzaG91bGQgbm90IGhhdmUgcGFzc2VkIHRoZSBzY3JvbGwgaGl0CiAgICAgLy8g
dGVzdCBpbiB0aGUgZmlyc3QgcGxhY2UuCkBAIC05NDYsOCArMTAxOSwxOSBAQAogCiAgICAgLy8g
QXBwbHkgdGhlIHNjcm9sbCBkZWx0YS4KICAgICBGbG9hdFNpemUgcHJldmlvdXNEZWx0YShsYXll
ckltcGwuc2Nyb2xsRGVsdGEoKSk7Ci0gICAgbGF5ZXJJbXBsLnNjcm9sbEJ5KGxvY2FsRW5kUG9p
bnQgLSBsb2NhbFN0YXJ0UG9pbnQpOworICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0gbGF5ZXJJ
bXBsLnNjcm9sbEJ5KGxvY2FsRW5kUG9pbnQgLSBsb2NhbFN0YXJ0UG9pbnQpOworICAgIHByaW50
ZigidW5zY3JvbGxlZDogJWYsICVmXG4iLCB1bnNjcm9sbGVkLndpZHRoKCksIHVuc2Nyb2xsZWQu
aGVpZ2h0KCkpOwogCisjaWYgMQorICAgIGlmICh2aWV3cG9ydCkgeworICAgICAgICB2aWV3cG9y
dC0+YXBwbHlTY3JvbGwodW5zY3JvbGxlZCk7CisgICAgICAgIHByaW50ZigiU2Nyb2xsZWRCbHVl
Qm94OiIpOworICAgICAgICB2aWV3cG9ydC0+ZW1pdCgpOworICAgICAgICBwcmludGYoIlxuIik7
CisgICAgfQorI2VuZGlmCisKKwogICAgIC8vIENhbGN1bGF0ZSB0aGUgYXBwbGllZCBzY3JvbGwg
ZGVsdGEgaW4gc2NyZWVuIHNwYWNlIGNvb3JkaW5hdGVzLgogICAgIEZsb2F0UG9pbnQgYWN0dWFs
TG9jYWxFbmRQb2ludCA9IGxvY2FsU3RhcnRQb2ludCArIGxheWVySW1wbC5zY3JvbGxEZWx0YSgp
IC0gcHJldmlvdXNEZWx0YTsKICAgICBGbG9hdFBvaW50IGFjdHVhbFNjcmVlblNwYWNlRW5kUG9p
bnQgPSBDQ01hdGhVdGlsOjptYXBQb2ludChsYXllckltcGwuc2NyZWVuU3BhY2VUcmFuc2Zvcm0o
KSwgYWN0dWFsTG9jYWxFbmRQb2ludCwgZW5kQ2xpcHBlZCk7CkBAIC05NjYsMjEgKzEwNTAsMjQg
QEAKIAogdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzY3JvbGxCeShjb25zdCBJbnRQb2ludCYg
dmlld3BvcnRQb2ludCwgY29uc3QgSW50U2l6ZSYgc2Nyb2xsRGVsdGEpCiB7CisgICAgLy9wcmlu
dGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnNjcm9sbEJ5ICglZCwgJWQpLCAoJWQsICVkKVxuIiwg
dmlld3BvcnRQb2ludC54KCksIHZpZXdwb3J0UG9pbnQueSgpLCBzY3JvbGxEZWx0YS53aWR0aCgp
LCBzY3JvbGxEZWx0YS5oZWlnaHQoKSk7CisKICAgICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5
ZXJUcmVlSG9zdEltcGw6OnNjcm9sbEJ5Iik7CiAgICAgaWYgKCFtX2N1cnJlbnRseVNjcm9sbGlu
Z0xheWVySW1wbCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgRmxvYXRTaXplIHBlbmRpbmdEZWx0
YShzY3JvbGxEZWx0YSk7CiAKLSAgICBwZW5kaW5nRGVsdGEuc2NhbGUobV9kZXZpY2VTY2FsZUZh
Y3Rvcik7CisgICAgcGVuZGluZ0RlbHRhLnNjYWxlKG1fZGV2aWNlU2NhbGVGYWN0b3IgKiBtX3Bh
Z2VTY2FsZSk7CiAKICAgICBmb3IgKENDTGF5ZXJJbXBsKiBsYXllckltcGwgPSBtX2N1cnJlbnRs
eVNjcm9sbGluZ0xheWVySW1wbDsgbGF5ZXJJbXBsOyBsYXllckltcGwgPSBsYXllckltcGwtPnBh
cmVudCgpKSB7CiAgICAgICAgIGlmICghbGF5ZXJJbXBsLT5zY3JvbGxhYmxlKCkpCiAgICAgICAg
ICAgICBjb250aW51ZTsKIAorICAgICAgICBCbHVlQm94Vmlld3BvcnQqIHZpZXdwb3J0ID0gbGF5
ZXJJbXBsID09IG1fcm9vdFNjcm9sbExheWVySW1wbCA/ICZtX2JsdWVCb3ggOiBOVUxMOwogICAg
ICAgICBGbG9hdFNpemUgYXBwbGllZERlbHRhOwogICAgICAgICBpZiAobV9zY3JvbGxEZWx0YUlz
SW5TY3JlZW5TcGFjZSkKLSAgICAgICAgICAgIGFwcGxpZWREZWx0YSA9IHNjcm9sbExheWVyV2l0
aFNjcmVlblNwYWNlRGVsdGEoKmxheWVySW1wbCwgdmlld3BvcnRQb2ludCwgcGVuZGluZ0RlbHRh
KTsKKyAgICAgICAgICAgIGFwcGxpZWREZWx0YSA9IHNjcm9sbExheWVyV2l0aFNjcmVlblNwYWNl
RGVsdGEodmlld3BvcnQsICpsYXllckltcGwsIHZpZXdwb3J0UG9pbnQsIHBlbmRpbmdEZWx0YSk7
CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGFwcGxpZWREZWx0YSA9IHNjcm9sbExheWVyV2l0
aExvY2FsRGVsdGEoKmxheWVySW1wbCwgcGVuZGluZ0RlbHRhKTsKIApAQCAtMTAzNyw2ICsxMTI0
LDggQEAKIHsKICAgICBUUkFDRV9FVkVOVDAoImNjIiwgIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnBp
bmNoR2VzdHVyZVVwZGF0ZSIpOwogCisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJbXBsOjpw
aW5jaEdlc3R1cmVVcGRhdGUgZGVsdGE9JWYgYW5jaG9yPSglZCwgJWQpXG4iLCBtYWduaWZ5RGVs
dGEsIGFuY2hvci54KCksIGFuY2hvci55KCkpOworCiAgICAgaWYgKCFtX3Jvb3RTY3JvbGxMYXll
ckltcGwpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTA1Miw4ICsxMTQxLDI5IEBACiAKICAgICBt
X3ByZXZpb3VzUGluY2hBbmNob3IgPSBhbmNob3I7CiAKLSAgICBtX3Jvb3RTY3JvbGxMYXllcklt
cGwtPnNjcm9sbEJ5KHJvdW5kZWRJbnRTaXplKG1vdmUpKTsKKyAgICAvL21fcm9vdFNjcm9sbExh
eWVySW1wbC0+c2Nyb2xsQnkocm91bmRlZEludFNpemUobW92ZSkpOwogCisgICAgcHJpbnRmKCJD
Q0xheWVyVHJlZUhvc3RJbXBsOjpwaW5jaEdlc3R1cmVVcGRhdGUgbV9wYWdlU2NhbGVEZWx0YSA9
ICVmXG4iLCBtX3BhZ2VTY2FsZURlbHRhKTsKKworICAgIG1fYmx1ZUJveC5zZXRTY2FsZShtX3Bh
Z2VTY2FsZSAqIG1fcGFnZVNjYWxlRGVsdGEpOworCisjaWYgMQorICAgIHByaW50ZigiUHJlIGNs
YW1waW5nIGJsdWUgYm94OiAiKTsKKyAgICBtX2JsdWVCb3guZW1pdCgpOworI2VuZGlmCisKKyAg
ICBGbG9hdFNpemUgcmVkU2Nyb2xsID0gbV9ibHVlQm94LmFwcGx5U2Nyb2xsKG1vdmUpOworCisj
aWYgMQorICAgIHByaW50ZigiQ0NMYXllclRyZWVIb3N0SW1wbDo6cGluY2hHZXN0dXJlVXBkYXRl
IHJlZFNjcm9sbDogKCVmICVmKVxuIiwgcmVkU2Nyb2xsLndpZHRoKCksIHJlZFNjcm9sbC5oZWln
aHQoKSk7CisgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxCeShyb3VuZGVkSW50U2l6
ZShyZWRTY3JvbGwpKTsKKyNlbmRpZgorCisjaWYgMQorICAgIHByaW50ZigiUG9zdCBjbGFtcGlu
ZyBibHVlIGJveDogIik7CisgICAgbV9ibHVlQm94LmVtaXQoKTsKKyNlbmRpZgorCiAgICAgaWYg
KG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsYmFyQW5pbWF0aW9uQ29udHJvbGxlcigpKQog
ICAgICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xs
ZXIoKS0+ZGlkUGluY2hHZXN0dXJlVXBkYXRlKCk7CiAKQEAgLTExNDgsMTAgKzEyNTgsMTIgQEAK
IAogICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSB8fCBtX3BhZ2VTY2FsZUFuaW1hdGlvbikg
ewogICAgICAgICBtX3NlbnRQYWdlU2NhbGVEZWx0YSA9IHNjcm9sbEluZm8tPnBhZ2VTY2FsZURl
bHRhID0gMTsKKyNpZiAwCiAgICAgICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSkKICAgICAg
ICAgICAgIGNvbXB1dGVQaW5jaFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CiAgICAgICAg
IGVsc2UgaWYgKG1fcGFnZVNjYWxlQW5pbWF0aW9uLmdldCgpKQogICAgICAgICAgICAgY29tcHV0
ZURvdWJsZVRhcFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CisjZW5kaWYKICAgICAgICAg
cmV0dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwogICAgIH0KIApJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAJKHJl
dmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NMYXllckltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODEsMjAgKzE4MSwyOSBAQAogICAg
IHJldHVybiAwOwogfQogCi12b2lkIENDTGF5ZXJJbXBsOjpzY3JvbGxCeShjb25zdCBGbG9hdFNp
emUmIHNjcm9sbCkKK0Zsb2F0U2l6ZSBDQ0xheWVySW1wbDo6c2Nyb2xsQnkoY29uc3QgRmxvYXRT
aXplJiBzY3JvbGwpCiB7CisgICAgcHJpbnRmKCJDQ0xheWVySW1wbDo6c2Nyb2xsQnkgc2Nyb2xs
OiAlZiAlZlxuIiwgc2Nyb2xsLndpZHRoKCksIHNjcm9sbC5oZWlnaHQoKSk7CiAgICAgSW50U2l6
ZSBtaW5EZWx0YSA9IC10b1NpemUobV9zY3JvbGxQb3NpdGlvbik7CisgICAgcHJpbnRmKCJDQ0xh
eWVySW1wbDo6c2Nyb2xsQnkgbWluRGVsdGE6ICVkICVkXG4iLCBtaW5EZWx0YS53aWR0aCgpLCBt
aW5EZWx0YS5oZWlnaHQoKSk7CiAgICAgSW50U2l6ZSBtYXhEZWx0YSA9IG1fbWF4U2Nyb2xsUG9z
aXRpb24gLSB0b1NpemUobV9zY3JvbGxQb3NpdGlvbik7CisgICAgcHJpbnRmKCJDQ0xheWVySW1w
bDo6c2Nyb2xsQnkgbWF4RGVsdGE6ICVkICVkXG4iLCBtYXhEZWx0YS53aWR0aCgpLCBtYXhEZWx0
YS5oZWlnaHQoKSk7CisKICAgICAvLyBDbGFtcCBuZXdEZWx0YSBzbyB0aGF0IHBvc2l0aW9uICsg
ZGVsdGEgc3RheXMgd2l0aGluIHNjcm9sbCBib3VuZHMuCiAgICAgRmxvYXRTaXplIG5ld0RlbHRh
ID0gKG1fc2Nyb2xsRGVsdGEgKyBzY3JvbGwpLmV4cGFuZGVkVG8obWluRGVsdGEpLnNocnVua1Rv
KG1heERlbHRhKTsKKyAgICBwcmludGYoIkNDTGF5ZXJJbXBsOjpzY3JvbGxCeSBuZXdEZWx0YTog
JWYgJWZcbiIsIG5ld0RlbHRhLndpZHRoKCksIG5ld0RlbHRhLmhlaWdodCgpKTsKIAorICAgIEZs
b2F0U2l6ZSB1bnNjcm9sbGVkID0gbV9zY3JvbGxEZWx0YSArIHNjcm9sbCAtIG5ld0RlbHRhOy8v
bmV3RGVsdGEgLSBzY3JvbGw7CisKICAgICBpZiAobV9zY3JvbGxEZWx0YSA9PSBuZXdEZWx0YSkK
LSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1cm4gdW5zY3JvbGxlZDsKIAogICAgIG1fc2Ny
b2xsRGVsdGEgPSBuZXdEZWx0YTsKICAgICBpZiAobV9zY3JvbGxiYXJBbmltYXRpb25Db250cm9s
bGVyKQogICAgICAgICBtX3Njcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xsZXItPnVwZGF0ZVNjcm9s
bE9mZnNldCh0aGlzKTsKICAgICBub3RlTGF5ZXJQcm9wZXJ0eUNoYW5nZWRGb3JTdWJ0cmVlKCk7
CisKKyAgICByZXR1cm4gdW5zY3JvbGxlZDsKIH0KIAogQ0NJbnB1dEhhbmRsZXJDbGllbnQ6OlNj
cm9sbFN0YXR1cyBDQ0xheWVySW1wbDo6dHJ5U2Nyb2xsKGNvbnN0IEludFBvaW50JiB2aWV3cG9y
dFBvaW50LCBDQ0lucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xsSW5wdXRUeXBlIHR5cGUpIGNvbnN0
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVl
SG9zdEltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmgJKHdv
cmtpbmcgY29weSkKQEAgLTYyLDYgKzYyLDI5IEBACiAgICAgdmlydHVhbCB2b2lkIHBvc3RBbmlt
YXRpb25FdmVudHNUb01haW5UaHJlYWRPbkltcGxUaHJlYWQoUGFzc093blB0cjxDQ0FuaW1hdGlv
bkV2ZW50c1ZlY3Rvcj4sIGRvdWJsZSB3YWxsQ2xvY2tUaW1lKSA9IDA7CiB9OwogCitjbGFzcyBC
bHVlQm94Vmlld3BvcnQgeworcHVibGljOgorICAgIEJsdWVCb3hWaWV3cG9ydCgpIDogbV9zY2Fs
ZUZhY3RvcigwKSB7fQorCisgICAgdm9pZCBzZXRTY2FsZShmbG9hdCBmYWN0b3IpOworCisgICAg
RmxvYXRSZWN0IGJsdWVCb3VuZHMoKTsKKyAgICBGbG9hdFBvaW50IGxvY2F0aW9uKCkgeyByZXR1
cm4gbV9sb2NhdGlvbjsgfQorCisgICAgRmxvYXRTaXplJiByZWRCb3VuZHMoKSB7IHJldHVybiBt
X3JlZEJvdW5kczsgfQorICAgIHZvaWQgc2V0UmVkQm91bmRzKGNvbnN0IEZsb2F0U2l6ZSYgYm91
bmRzKSB7IG1fcmVkQm91bmRzID0gYm91bmRzOyB9CisKKyAgICBGbG9hdFNpemUgYXBwbHlTY3Jv
bGwoRmxvYXRTaXplJiBkZWx0YSk7CisKKyAgICB2b2lkIGVtaXQoKTsKKworcHJpdmF0ZToKKyAg
ICBmbG9hdCBtX3NjYWxlRmFjdG9yOworICAgIEZsb2F0UG9pbnQgbV9sb2NhdGlvbjsKKyAgICBG
bG9hdFNpemUgbV9zaXplOworICAgIEZsb2F0U2l6ZSBtX3JlZEJvdW5kczsKK307CisKIC8vIEND
TGF5ZXJUcmVlSG9zdEltcGwgb3ducyB0aGUgQ0NMYXllckltcGwgdHJlZSBhcyB3ZWxsIGFzIGFz
c29jaWF0ZWQgcmVuZGVyaW5nIHN0YXRlCiBjbGFzcyBDQ0xheWVyVHJlZUhvc3RJbXBsIDogcHVi
bGljIENDSW5wdXRIYW5kbGVyQ2xpZW50LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1
YmxpYyBDQ1JlbmRlcmVyQ2xpZW50LApAQCAtMjIwLDYgKzI0Myw4IEBACiAgICAgdGVtcGxhdGU8
dHlwZW5hbWUgUmVuZGVyUGFzc0N1bGxlcj4KICAgICBzdGF0aWMgdm9pZCByZW1vdmVSZW5kZXJQ
YXNzZXMoUmVuZGVyUGFzc0N1bGxlciwgRnJhbWVEYXRhJik7CiAKKyAgICBCbHVlQm94Vmlld3Bv
cnQmIGJsdWVCb3goKSB7IHJldHVybiBtX2JsdWVCb3g7IH0KKwogcHJvdGVjdGVkOgogICAgIEND
TGF5ZXJUcmVlSG9zdEltcGwoY29uc3QgQ0NMYXllclRyZWVTZXR0aW5ncyYsIENDTGF5ZXJUcmVl
SG9zdEltcGxDbGllbnQqKTsKIApAQCAtMzA1LDYgKzMzMCw4IEBACiAgICAgLy8gcmVuZGVyaW5n
IGFuZCBpbnB1dCBldmVudCBoaXQgdGVzdGluZy4KICAgICBDQ0xheWVyTGlzdCBtX3JlbmRlclN1
cmZhY2VMYXllckxpc3Q7CiAKKyAgICBCbHVlQm94Vmlld3BvcnQgbV9ibHVlQm94OworCiAgICAg
T3duUHRyPENDRnJhbWVSYXRlQ291bnRlcj4gbV9mcHNDb3VudGVyOwogICAgIE93blB0cjxDQ0Rl
YnVnUmVjdEhpc3Rvcnk+IG1fZGVidWdSZWN0SGlzdG9yeTsKIH07CkluZGV4OiBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhv
c3QuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4Miw3ICs0
ODIsNyBAQAogCiBzdGF0aWMgdm9pZCBzZXRTY2FsZShMYXllckNocm9taXVtKiBsYXllciwgZmxv
YXQgZGV2aWNlU2NhbGVGYWN0b3IsIGZsb2F0IHBhZ2VTY2FsZUZhY3RvcikKIHsKLSAgICBpZiAo
bGF5ZXItPmJvdW5kc0NvbnRhaW5QYWdlU2NhbGUoKSkKKyAgICBpZiAoZmFsc2UgLypsYXllci0+
Ym91bmRzQ29udGFpblBhZ2VTY2FsZSgpKi8pCiAgICAgICAgIGxheWVyLT5zZXRDb250ZW50c1Nj
YWxlKGRldmljZVNjYWxlRmFjdG9yKTsKICAgICBlbHNlCiAgICAgICAgIGxheWVyLT5zZXRDb250
ZW50c1NjYWxlKGRldmljZVNjYWxlRmFjdG9yICogcGFnZVNjYWxlRmFjdG9yKTsK
</data>
<flag name="review"
          id="174603"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="174604"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163364</attachid>
            <date>2012-09-11 08:09:23 -0700</date>
            <delta_ts>2012-09-11 16:03:45 -0700</delta_ts>
            <desc>Pinch zoom with correct fixed position offsets.</desc>
            <filename>pinch_zoom_sept_11.diff</filename>
            <type>text/plain</type>
            <size>18810</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjA5LDcgKzIwOSw3IEBACiBjb25zdCBkb3VibGUgV2ViVmlldzo6dGV4dFNpemVNdWx0aXBsaWVy
UmF0aW8gPSAxLjI7CiBjb25zdCBkb3VibGUgV2ViVmlldzo6bWluVGV4dFNpemVNdWx0aXBsaWVy
ID0gMC41OwogY29uc3QgZG91YmxlIFdlYlZpZXc6Om1heFRleHRTaXplTXVsdGlwbGllciA9IDMu
MDsKLWNvbnN0IGZsb2F0IFdlYlZpZXc6Om1pblBhZ2VTY2FsZUZhY3RvciA9IDAuMjU7Citjb25z
dCBmbG9hdCBXZWJWaWV3OjptaW5QYWdlU2NhbGVGYWN0b3IgPSAxLjA7CiBjb25zdCBmbG9hdCBX
ZWJWaWV3OjptYXhQYWdlU2NhbGVGYWN0b3IgPSA0LjA7CiAKIApAQCAtMzkxMCwxNiArMzkxMCwx
MSBAQAogICAgICAgICBUUkFDRV9FVkVOVF9JTlNUQU5UMigid2Via2l0IiwgIldlYlZpZXdJbXBs
OjphcHBseVNjcm9sbEFuZFNjYWxlOjpzY3JvbGxCeSIsICJ4Iiwgc2Nyb2xsRGVsdGEud2lkdGgs
ICJ5Iiwgc2Nyb2xsRGVsdGEuaGVpZ2h0KTsKICAgICAgICAgbWFpbkZyYW1lSW1wbCgpLT5mcmFt
ZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIC8v
IFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEgc2NhbGUgYW5kIHNjcm9sbCBpbiBh
IHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5k
IHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGluIHRoZSBvbGQgY29vcmRpbmF0ZSBz
cGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtCi0gICAgICAgIC8vIGJ5IHRo
ZSBwYWdlIHNjYWxlIGRlbHRhLgogICAgICAgICBXZWJTaXplIHNjcm9sbE9mZnNldCA9IG1haW5G
cmFtZSgpLT5zY3JvbGxPZmZzZXQoKTsKICAgICAgICAgc2Nyb2xsT2Zmc2V0LndpZHRoICs9IHNj
cm9sbERlbHRhLndpZHRoOwogICAgICAgICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICs9IHNjcm9sbERl
bHRhLmhlaWdodDsKLSAgICAgICAgV2ViUG9pbnQgc2NhbGVkU2Nyb2xsT2Zmc2V0KHNjcm9sbE9m
ZnNldC53aWR0aCAqIHBhZ2VTY2FsZURlbHRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2Nyb2xsT2Zmc2V0LmhlaWdodCAqIHBhZ2VTY2FsZURlbHRhKTsKLSAgICAgICAg
c2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNj
YWxlZFNjcm9sbE9mZnNldCk7CisgICAgICAgIFdlYlBvaW50IHNjcm9sbFBvaW50KHNjcm9sbE9m
ZnNldC53aWR0aCwgc2Nyb2xsT2Zmc2V0LmhlaWdodCk7CisgICAgICAgIHNldFBhZ2VTY2FsZUZh
Y3RvcihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY3JvbGxQb2ludCk7CiAg
ICAgfQogfQogCkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGFnZS9G
cmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk1MiwxMiArOTUyLDE1IEBACiAKIGZsb2F0IEZy
YW1lOjpmcmFtZVNjYWxlRmFjdG9yKCkgY29uc3QKIHsKKyAgICByZXR1cm4gMTsKKyNpZiAwCiAg
ICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKIAogICAgIC8vIE1haW4gZnJhbWUgaXMgc2Nh
bGVkIHdpdGggcmVzcGVjdCB0byBoZSBjb250YWluZXIgYnV0IGlubmVyIGZyYW1lcyBhcmUgbm90
IHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gdGhlIG1haW4gZnJhbWUuCiAgICAgaWYgKCFwYWdlIHx8
IHBhZ2UtPm1haW5GcmFtZSgpICE9IHRoaXMpCiAgICAgICAgIHJldHVybiAxOwogICAgIHJldHVy
biBwYWdlLT5wYWdlU2NhbGVGYWN0b3IoKTsKKyNlbmRpZgogfQogCiB2b2lkIEZyYW1lOjpzdXNw
ZW5kQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQpJbmRleDogV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaAkocmV2aXNpb24g
MTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
SW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTYsMTMgKzE5NiwyMCBAQAogICAgIGNvbnN0IEZs
b2F0U2l6ZSYgc2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbERlbHRhOyB9CiAg
ICAgdm9pZCBzZXRTY3JvbGxEZWx0YShjb25zdCBGbG9hdFNpemUmKTsKIAorICAgIGNvbnN0IEZs
b2F0U2l6ZSYgbG9jYWxPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2xvY2FsT2Zmc2V0OyB9Cisg
ICAgdm9pZCBzZXRMb2NhbE9mZnNldChjb25zdCBGbG9hdFNpemUmKTsKKwogICAgIGZsb2F0IHBh
Z2VTY2FsZURlbHRhKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlU2NhbGVEZWx0YTsgfQogICAgIHZv
aWQgc2V0UGFnZVNjYWxlRGVsdGEoZmxvYXQpOwogCisgICAgZmxvYXQgcGFnZVNjYWxlKCkgY29u
c3QgeyByZXR1cm4gbV9wYWdlU2NhbGU7IH0KKyAgICB2b2lkIHNldFBhZ2VTY2FsZShmbG9hdCBz
Y2FsZSkgeyBtX3BhZ2VTY2FsZSA9IHNjYWxlOyB9CisKICAgICBjb25zdCBJbnRTaXplJiBzZW50
U2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3NlbnRTY3JvbGxEZWx0YTsgfQogICAgIHZv
aWQgc2V0U2VudFNjcm9sbERlbHRhKGNvbnN0IEludFNpemUmIHNlbnRTY3JvbGxEZWx0YSkgeyBt
X3NlbnRTY3JvbGxEZWx0YSA9IHNlbnRTY3JvbGxEZWx0YTsgfQogCi0gICAgdm9pZCBzY3JvbGxC
eShjb25zdCBGbG9hdFNpemUmIHNjcm9sbCk7CisgICAgLy8gUmV0dXJucyB0aGUgZGVsdGEgb2Yg
dGhlIHNjcm9sbCB0aGF0IHdhcyBvdXRzaWRlIG9mIHRoZSBib3VuZHMgb2YgdGhlIGluaXRpYWwg
c2Nyb2xsCisgICAgRmxvYXRTaXplIHNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYgc2Nyb2xsKTsK
IAogICAgIGJvb2wgc2Nyb2xsYWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsYWJsZTsgfQog
ICAgIHZvaWQgc2V0U2Nyb2xsYWJsZShib29sIHNjcm9sbGFibGUpIHsgbV9zY3JvbGxhYmxlID0g
c2Nyb2xsYWJsZTsgfQpAQCAtMzU1LDYgKzM2Miw4IEBACiAgICAgSW50U2l6ZSBtX3NlbnRTY3Jv
bGxEZWx0YTsKICAgICBJbnRTaXplIG1fbWF4U2Nyb2xsUG9zaXRpb247CiAgICAgZmxvYXQgbV9w
YWdlU2NhbGVEZWx0YTsKKyAgICBmbG9hdCBtX3BhZ2VTY2FsZTsKKyAgICBGbG9hdFNpemUgbV9s
b2NhbE9mZnNldDsKIAogICAgIC8vIFRoZSBsYXllciB3aG9zZSBjb29yZGluYXRlIHNwYWNlIHRo
aXMgbGF5ZXIgZHJhd3MgaW50by4gVGhpcyBjYW4gYmUKICAgICAvLyBlaXRoZXIgdGhlIHNhbWUg
bGF5ZXIgKG1fcmVuZGVyVGFyZ2V0ID09IHRoaXMpIG9yIGFuIGFuY2VzdG9yIG9mIHRoaXMKSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0
SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjksNiArNjksNjMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Cit2b2lkIEJsdWVCb3hWaWV3cG9ydDo6c2V0U2NhbGUoZmxvYXQgZmFjdG9yKQoreworICAgIG1f
c2NhbGVGYWN0b3IgPSBmYWN0b3I7Cit9CisKK0Zsb2F0UmVjdCBCbHVlQm94Vmlld3BvcnQ6OmJs
dWVCb3VuZHMoKQoreworICAgIEZsb2F0UmVjdCBib3VuZHM7CisKKyAgICBGbG9hdFNpemUgYmx1
ZVNpemUgPSBtX3JlZEJvdW5kczsKKyAgICBpZiAobV9zY2FsZUZhY3RvciA+IDEpCisgICAgICAg
IGJsdWVTaXplLnNjYWxlKDEgLyBtX3NjYWxlRmFjdG9yKTsKKworICAgIGJvdW5kcy5zZXRTaXpl
KGJsdWVTaXplKTsKKyAgICBib3VuZHMuc2V0TG9jYXRpb24obV9sb2NhdGlvbik7CisKKyAgICBy
ZXR1cm4gYm91bmRzOworfQorCit2b2lkIEJsdWVCb3hWaWV3cG9ydDo6ZW1pdCgpCit7CisgICAg
RmxvYXRSZWN0IHNjYWxlZEJvdW5kcyA9IGJsdWVCb3VuZHMoKTsKKyAgICBwcmludGYoIigoJWYs
ICVmKSAtICglZiB4ICVmKSlcbiIsIHNjYWxlZEJvdW5kcy54KCksIHNjYWxlZEJvdW5kcy55KCks
IHNjYWxlZEJvdW5kcy53aWR0aCgpLAorICAgICAgICBzY2FsZWRCb3VuZHMuaGVpZ2h0KCkpOwor
fQorCitGbG9hdFNpemUgQmx1ZUJveFZpZXdwb3J0OjphcHBseVNjcm9sbChGbG9hdFNpemUmIGRl
bHRhKQoreworICAgIEZsb2F0U2l6ZSBvdmVyZmxvdzsKKworICAgIEZsb2F0UmVjdCBsb2NhbEJv
dW5kcyA9IGJsdWVCb3VuZHMoKTsKKworICAgIGxvY2FsQm91bmRzLm1vdmUoZGVsdGEpOworICAg
IGlmIChsb2NhbEJvdW5kcy54KCkgPCAwKSB7CisgICAgICAgIG92ZXJmbG93LnNldFdpZHRoKGxv
Y2FsQm91bmRzLngoKSk7CisgICAgICAgIGxvY2FsQm91bmRzLnNldFgoMCk7CisgICAgfQorCisg
ICAgaWYgKGxvY2FsQm91bmRzLnkoKSA8IDApIHsKKyAgICAgICAgb3ZlcmZsb3cuc2V0SGVpZ2h0
KGxvY2FsQm91bmRzLnkoKSk7CisgICAgICAgIGxvY2FsQm91bmRzLnNldFkoMCk7CisgICAgfQor
CisgICAgaWYgKGxvY2FsQm91bmRzLm1heFgoKSA+IG1fcmVkQm91bmRzLndpZHRoKCkpIHsKKyAg
ICAgICAgbG9jYWxCb3VuZHMubW92ZShtX3JlZEJvdW5kcy53aWR0aCgpIC0gbG9jYWxCb3VuZHMu
bWF4WCgpLCAwKTsKKyAgICAgICAgb3ZlcmZsb3cuc2V0V2lkdGgobG9jYWxCb3VuZHMubWF4WCgp
IC0gbV9yZWRCb3VuZHMud2lkdGgoKSk7CisgICAgfQorCisgICAgaWYgKGxvY2FsQm91bmRzLm1h
eFkoKSA+IG1fcmVkQm91bmRzLmhlaWdodCgpKSB7CisgICAgICAgIGxvY2FsQm91bmRzLm1vdmUo
MCwgbV9yZWRCb3VuZHMuaGVpZ2h0KCkgLSBsb2NhbEJvdW5kcy5tYXhZKCkpOworICAgICAgICBv
dmVyZmxvdy5zZXRIZWlnaHQobG9jYWxCb3VuZHMubWF4WSgpIC0gbV9yZWRCb3VuZHMuaGVpZ2h0
KCkpOworICAgIH0KKyAgICBtX2xvY2F0aW9uID0gbG9jYWxCb3VuZHMubG9jYXRpb24oKTsKKwor
ICAgIHJldHVybiBvdmVyZmxvdzsKK30KKwogY2xhc3MgQ0NMYXllclRyZWVIb3N0SW1wbFRpbWVT
b3VyY2VBZGFwdGVyIDogcHVibGljIENDVGltZVNvdXJjZUNsaWVudCB7CiAgICAgV1RGX01BS0Vf
Tk9OQ09QWUFCTEUoQ0NMYXllclRyZWVIb3N0SW1wbFRpbWVTb3VyY2VBZGFwdGVyKTsKIHB1Ymxp
YzoKQEAgLTc0Nyw2ICs4MDQsOSBAQAogICAgIG1fbGF5b3V0Vmlld3BvcnRTaXplID0gbGF5b3V0
Vmlld3BvcnRTaXplOwogICAgIG1fZGV2aWNlVmlld3BvcnRTaXplID0gZGV2aWNlVmlld3BvcnRT
aXplOwogCisgICAgbV9ibHVlQm94LnNldFJlZEJvdW5kcyhGbG9hdFNpemUobGF5b3V0Vmlld3Bv
cnRTaXplKSk7CisgICAgbV9ibHVlQm94LmVtaXQoKTsKKwogICAgIHVwZGF0ZU1heFNjcm9sbFBv
c2l0aW9uKCk7CiAKICAgICBpZiAobV9yZW5kZXJlcikKQEAgLTc1NSw2ICs4MTUsNyBAQAogICAg
IG1fY2xpZW50LT5vbkNhbkRyYXdTdGF0ZUNoYW5nZWQoY2FuRHJhdygpKTsKIH0KIAorI2lmIDAK
IHN0YXRpYyB2b2lkIGFkanVzdFNjcm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UoQ0NMYXllckltcGwq
IGxheWVySW1wbCwgZmxvYXQgcGFnZVNjYWxlQ2hhbmdlKQogewogICAgIGlmICghbGF5ZXJJbXBs
KQpAQCAtNzcwLDYgKzgzMSw3IEBACiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBsYXllcklt
cGwtPmNoaWxkcmVuKCkuc2l6ZSgpOyArK2kpCiAgICAgICAgIGFkanVzdFNjcm9sbHNGb3JQYWdl
U2NhbGVDaGFuZ2UobGF5ZXJJbXBsLT5jaGlsZHJlbigpW2ldLmdldCgpLCBwYWdlU2NhbGVDaGFu
Z2UpOwogfQorI2VuZGlmCiAKIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6c2V0RGV2aWNlU2Nh
bGVGYWN0b3IoZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IpCiB7CkBAIC03OTIsMTEgKzg1NCwxMyBA
QAogICAgIG1fbWluUGFnZVNjYWxlID0gbWluUGFnZVNjYWxlOwogICAgIG1fbWF4UGFnZVNjYWxl
ID0gbWF4UGFnZVNjYWxlOwogCi0gICAgZmxvYXQgcGFnZVNjYWxlQ2hhbmdlID0gcGFnZVNjYWxl
IC8gbV9wYWdlU2NhbGU7CisgICAgLy9mbG9hdCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdlU2NhbGUg
LyBtX3BhZ2VTY2FsZTsKICAgICBtX3BhZ2VTY2FsZSA9IHBhZ2VTY2FsZTsKIAorI2lmIDAKICAg
ICBpZiAocGFnZVNjYWxlQ2hhbmdlICE9IDEpCiAgICAgICAgIGFkanVzdFNjcm9sbHNGb3JQYWdl
U2NhbGVDaGFuZ2UobV9yb290U2Nyb2xsTGF5ZXJJbXBsLCBwYWdlU2NhbGVDaGFuZ2UpOworI2Vu
ZGlmCiAKICAgICAvLyBDbGFtcCBkZWx0YSB0byBsaW1pdHMgYW5kIHJlZnJlc2ggZGlzcGxheSBt
YXRyaXguCiAgICAgc2V0UGFnZVNjYWxlRGVsdGEobV9wYWdlU2NhbGVEZWx0YSAvIG1fc2VudFBh
Z2VTY2FsZURlbHRhKTsKQEAgLTgyMCw4ICs4ODQsMTAgQEAKICAgICBtX3BhZ2VTY2FsZURlbHRh
ID0gZGVsdGE7CiAKICAgICB1cGRhdGVNYXhTY3JvbGxQb3NpdGlvbigpOwotICAgIGlmIChtX3Jv
b3RTY3JvbGxMYXllckltcGwpCisgICAgaWYgKG1fcm9vdFNjcm9sbExheWVySW1wbCkgewogICAg
ICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNldFBhZ2VTY2FsZURlbHRhKG1fcGFnZVNjYWxl
RGVsdGEpOworICAgICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNldFBhZ2VTY2FsZShtX3Bh
Z2VTY2FsZSk7CisgICAgfQogfQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnVwZGF0ZU1h
eFNjcm9sbFBvc2l0aW9uKCkKQEAgLTg0MCwxMiArOTA2LDE3IEBACiAgICAgdmlld0JvdW5kcy5z
Y2FsZSgxIC8gbV9wYWdlU2NhbGVEZWx0YSk7CiAKICAgICAvLyBtYXhTY3JvbGwgaXMgY29tcHV0
ZWQgaW4gcGh5c2ljYWwgcGl4ZWxzLCBidXQgc2Nyb2xsIHBvc2l0aW9ucyBhcmUgaW4gbGF5b3V0
IHBpeGVscy4KLSAgICBJbnRTaXplIG1heFNjcm9sbCA9IGNvbnRlbnRTaXplKCkgLSBleHBhbmRl
ZEludFNpemUodmlld0JvdW5kcyk7Ci0gICAgbWF4U2Nyb2xsLnNjYWxlKDEgLyBtX2RldmljZVNj
YWxlRmFjdG9yKTsKKyAgICBJbnRTaXplIHNjYWxlZENvbnRlbnRTaXplID0gY29udGVudFNpemUo
KTsKKyAgICBzY2FsZWRDb250ZW50U2l6ZS5zY2FsZSgxL21fcGFnZVNjYWxlKTsKKyAgICBJbnRT
aXplIG1heFNjcm9sbCA9IHNjYWxlZENvbnRlbnRTaXplIC0gZXhwYW5kZWRJbnRTaXplKHZpZXdC
b3VuZHMpOworICAgIG1heFNjcm9sbC5zY2FsZSgxIC8gKG1fZGV2aWNlU2NhbGVGYWN0b3IpKTsK
ICAgICAvLyBUaGUgdmlld3BvcnQgbWF5IGJlIGxhcmdlciB0aGFuIHRoZSBjb250ZW50cyBpbiBz
b21lIGNhc2VzLCBzdWNoIGFzCiAgICAgLy8gaGF2aW5nIGEgdmVydGljYWwgc2Nyb2xsYmFyIGJ1
dCBubyBob3Jpem9udGFsIG92ZXJmbG93LgogICAgIG1heFNjcm9sbC5jbGFtcE5lZ2F0aXZlVG9a
ZXJvKCk7CiAKKyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnVwZGF0ZU1heFNjcm9s
bFBvc2l0aW9uIGNvbnRlbnRTaXplID0gKCVkLCAlZClcbiIsIGNvbnRlbnRTaXplKCkud2lkdGgo
KSwgY29udGVudFNpemUoKS5oZWlnaHQoKSk7CisgICAgcHJpbnRmKCJDQ0xheWVyVHJlZUhvc3RJ
bXBsOjp1cGRhdGVNYXhTY3JvbGxQb3NpdGlvbiAoJWQsICVkKVxuIiwgbWF4U2Nyb2xsLndpZHRo
KCksIG1heFNjcm9sbC5oZWlnaHQoKSk7CisKICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNl
dE1heFNjcm9sbFBvc2l0aW9uKG1heFNjcm9sbCk7CiB9CiAKQEAgLTkyNCw3ICs5OTUsNyBAQAog
ICAgIHJldHVybiBTY3JvbGxJZ25vcmVkOwogfQogCi1zdGF0aWMgRmxvYXRTaXplIHNjcm9sbExh
eWVyV2l0aFNjcmVlblNwYWNlRGVsdGEoQ0NMYXllckltcGwmIGxheWVySW1wbCwgY29uc3QgRmxv
YXRQb2ludCYgc2NyZWVuU3BhY2VQb2ludCwgY29uc3QgRmxvYXRTaXplJiBzY3JlZW5TcGFjZURl
bHRhKQorc3RhdGljIEZsb2F0U2l6ZSBzY3JvbGxMYXllcldpdGhTY3JlZW5TcGFjZURlbHRhKEJs
dWVCb3hWaWV3cG9ydCogdmlld3BvcnQsIENDTGF5ZXJJbXBsJiBsYXllckltcGwsIGNvbnN0IEZs
b2F0UG9pbnQmIHNjcmVlblNwYWNlUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NyZWVuU3BhY2VE
ZWx0YSkKIHsKICAgICAvLyBMYXllcnMgd2l0aCBub24taW52ZXJ0aWJsZSBzY3JlZW4gc3BhY2Ug
dHJhbnNmb3JtcyBzaG91bGQgbm90IGhhdmUgcGFzc2VkIHRoZSBzY3JvbGwgaGl0CiAgICAgLy8g
dGVzdCBpbiB0aGUgZmlyc3QgcGxhY2UuCkBAIC05NDYsOCArMTAxNywyMCBAQAogCiAgICAgLy8g
QXBwbHkgdGhlIHNjcm9sbCBkZWx0YS4KICAgICBGbG9hdFNpemUgcHJldmlvdXNEZWx0YShsYXll
ckltcGwuc2Nyb2xsRGVsdGEoKSk7Ci0gICAgbGF5ZXJJbXBsLnNjcm9sbEJ5KGxvY2FsRW5kUG9p
bnQgLSBsb2NhbFN0YXJ0UG9pbnQpOworICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0gbGF5ZXJJ
bXBsLnNjcm9sbEJ5KGxvY2FsRW5kUG9pbnQgLSBsb2NhbFN0YXJ0UG9pbnQpOworICAgIHByaW50
ZigidW5zY3JvbGxlZDogJWYsICVmXG4iLCB1bnNjcm9sbGVkLndpZHRoKCksIHVuc2Nyb2xsZWQu
aGVpZ2h0KCkpOwogCisjaWYgMQorICAgIGlmICh2aWV3cG9ydCkgeworICAgICAgICB2aWV3cG9y
dC0+YXBwbHlTY3JvbGwodW5zY3JvbGxlZCk7CisgICAgICAgIGxheWVySW1wbC5zZXRMb2NhbE9m
ZnNldChGbG9hdFNpemUodmlld3BvcnQtPmxvY2F0aW9uKCkueCgpLCB2aWV3cG9ydC0+bG9jYXRp
b24oKS55KCkpKTsKKyAgICAgICAgcHJpbnRmKCJTY3JvbGxlZEJsdWVCb3g6Iik7CisgICAgICAg
IHZpZXdwb3J0LT5lbWl0KCk7CisgICAgICAgIHByaW50ZigiXG4iKTsKKyAgICB9CisjZW5kaWYK
KworCiAgICAgLy8gQ2FsY3VsYXRlIHRoZSBhcHBsaWVkIHNjcm9sbCBkZWx0YSBpbiBzY3JlZW4g
c3BhY2UgY29vcmRpbmF0ZXMuCiAgICAgRmxvYXRQb2ludCBhY3R1YWxMb2NhbEVuZFBvaW50ID0g
bG9jYWxTdGFydFBvaW50ICsgbGF5ZXJJbXBsLnNjcm9sbERlbHRhKCkgLSBwcmV2aW91c0RlbHRh
OwogICAgIEZsb2F0UG9pbnQgYWN0dWFsU2NyZWVuU3BhY2VFbmRQb2ludCA9IENDTWF0aFV0aWw6
Om1hcFBvaW50KGxheWVySW1wbC5zY3JlZW5TcGFjZVRyYW5zZm9ybSgpLCBhY3R1YWxMb2NhbEVu
ZFBvaW50LCBlbmRDbGlwcGVkKTsKQEAgLTk2NiwyMSArMTA0OSwyNCBAQAogCiB2b2lkIENDTGF5
ZXJUcmVlSG9zdEltcGw6OnNjcm9sbEJ5KGNvbnN0IEludFBvaW50JiB2aWV3cG9ydFBvaW50LCBj
b25zdCBJbnRTaXplJiBzY3JvbGxEZWx0YSkKIHsKKyAgICAvL3ByaW50ZigiQ0NMYXllclRyZWVI
b3N0SW1wbDo6c2Nyb2xsQnkgKCVkLCAlZCksICglZCwgJWQpXG4iLCB2aWV3cG9ydFBvaW50Lngo
KSwgdmlld3BvcnRQb2ludC55KCksIHNjcm9sbERlbHRhLndpZHRoKCksIHNjcm9sbERlbHRhLmhl
aWdodCgpKTsKKwogICAgIFRSQUNFX0VWRU5UMCgiY2MiLCAiQ0NMYXllclRyZWVIb3N0SW1wbDo6
c2Nyb2xsQnkiKTsKICAgICBpZiAoIW1fY3VycmVudGx5U2Nyb2xsaW5nTGF5ZXJJbXBsKQogICAg
ICAgICByZXR1cm47CiAKICAgICBGbG9hdFNpemUgcGVuZGluZ0RlbHRhKHNjcm9sbERlbHRhKTsK
IAotICAgIHBlbmRpbmdEZWx0YS5zY2FsZShtX2RldmljZVNjYWxlRmFjdG9yKTsKKyAgICBwZW5k
aW5nRGVsdGEuc2NhbGUobV9kZXZpY2VTY2FsZUZhY3RvciAqIG1fcGFnZVNjYWxlKTsKIAogICAg
IGZvciAoQ0NMYXllckltcGwqIGxheWVySW1wbCA9IG1fY3VycmVudGx5U2Nyb2xsaW5nTGF5ZXJJ
bXBsOyBsYXllckltcGw7IGxheWVySW1wbCA9IGxheWVySW1wbC0+cGFyZW50KCkpIHsKICAgICAg
ICAgaWYgKCFsYXllckltcGwtPnNjcm9sbGFibGUoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwog
CisgICAgICAgIEJsdWVCb3hWaWV3cG9ydCogdmlld3BvcnQgPSBsYXllckltcGwgPT0gbV9yb290
U2Nyb2xsTGF5ZXJJbXBsID8gJm1fYmx1ZUJveCA6IE5VTEw7CiAgICAgICAgIEZsb2F0U2l6ZSBh
cHBsaWVkRGVsdGE7CiAgICAgICAgIGlmIChtX3Njcm9sbERlbHRhSXNJblNjcmVlblNwYWNlKQot
ICAgICAgICAgICAgYXBwbGllZERlbHRhID0gc2Nyb2xsTGF5ZXJXaXRoU2NyZWVuU3BhY2VEZWx0
YSgqbGF5ZXJJbXBsLCB2aWV3cG9ydFBvaW50LCBwZW5kaW5nRGVsdGEpOworICAgICAgICAgICAg
YXBwbGllZERlbHRhID0gc2Nyb2xsTGF5ZXJXaXRoU2NyZWVuU3BhY2VEZWx0YSh2aWV3cG9ydCwg
KmxheWVySW1wbCwgdmlld3BvcnRQb2ludCwgcGVuZGluZ0RlbHRhKTsKICAgICAgICAgZWxzZQog
ICAgICAgICAgICAgYXBwbGllZERlbHRhID0gc2Nyb2xsTGF5ZXJXaXRoTG9jYWxEZWx0YSgqbGF5
ZXJJbXBsLCBwZW5kaW5nRGVsdGEpOwogCkBAIC0xMDM3LDYgKzExMjMsOCBAQAogewogICAgIFRS
QUNFX0VWRU5UMCgiY2MiLCAiQ0NMYXllclRyZWVIb3N0SW1wbDo6cGluY2hHZXN0dXJlVXBkYXRl
Iik7CiAKKyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6OnBpbmNoR2VzdHVyZVVwZGF0
ZSBkZWx0YT0lZiBhbmNob3I9KCVkLCAlZClcbiIsIG1hZ25pZnlEZWx0YSwgYW5jaG9yLngoKSwg
YW5jaG9yLnkoKSk7CisKICAgICBpZiAoIW1fcm9vdFNjcm9sbExheWVySW1wbCkKICAgICAgICAg
cmV0dXJuOwogCkBAIC0xMDUyLDggKzExNDAsMjYgQEAKIAogICAgIG1fcHJldmlvdXNQaW5jaEFu
Y2hvciA9IGFuY2hvcjsKIAotICAgIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsQnkocm91
bmRlZEludFNpemUobW92ZSkpOworICAgIC8vbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxC
eShyb3VuZGVkSW50U2l6ZShtb3ZlKSk7CiAKKyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdElt
cGw6OnBpbmNoR2VzdHVyZVVwZGF0ZSBtX3BhZ2VTY2FsZURlbHRhID0gJWZcbiIsIG1fcGFnZVNj
YWxlRGVsdGEpOworCisgICAgbV9ibHVlQm94LnNldFNjYWxlKG1fcGFnZVNjYWxlICogbV9wYWdl
U2NhbGVEZWx0YSk7CisKKyAgICBwcmludGYoIlByZSBjbGFtcGluZyBibHVlIGJveDogIik7Cisg
ICAgbV9ibHVlQm94LmVtaXQoKTsKKworICAgIEZsb2F0U2l6ZSByZWRTY3JvbGwgPSBtX2JsdWVC
b3guYXBwbHlTY3JvbGwobW92ZSk7CisgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zZXRMb2Nh
bE9mZnNldChGbG9hdFNpemUobV9ibHVlQm94LmxvY2F0aW9uKCkueCgpLCBtX2JsdWVCb3gubG9j
YXRpb24oKS55KCkpKTsKKworI2lmIDEKKyAgICBwcmludGYoIkNDTGF5ZXJUcmVlSG9zdEltcGw6
OnBpbmNoR2VzdHVyZVVwZGF0ZSByZWRTY3JvbGw6ICglZiAlZilcbiIsIHJlZFNjcm9sbC53aWR0
aCgpLCByZWRTY3JvbGwuaGVpZ2h0KCkpOworICAgIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Ny
b2xsQnkocm91bmRlZEludFNpemUocmVkU2Nyb2xsKSk7CisjZW5kaWYKKworICAgIHByaW50Zigi
UG9zdCBjbGFtcGluZyBibHVlIGJveDogIik7CisgICAgbV9ibHVlQm94LmVtaXQoKTsKKwogICAg
IGlmIChtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xsZXIo
KSkKICAgICAgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxiYXJBbmltYXRpb25Db250
cm9sbGVyKCktPmRpZFBpbmNoR2VzdHVyZVVwZGF0ZSgpOwogCkBAIC0xMTQ4LDEwICsxMjU0LDEy
IEBACiAKICAgICBpZiAobV9waW5jaEdlc3R1cmVBY3RpdmUgfHwgbV9wYWdlU2NhbGVBbmltYXRp
b24pIHsKICAgICAgICAgbV9zZW50UGFnZVNjYWxlRGVsdGEgPSBzY3JvbGxJbmZvLT5wYWdlU2Nh
bGVEZWx0YSA9IDE7CisjaWYgMAogICAgICAgICBpZiAobV9waW5jaEdlc3R1cmVBY3RpdmUpCiAg
ICAgICAgICAgICBjb21wdXRlUGluY2hab29tRGVsdGFzKHNjcm9sbEluZm8uZ2V0KCkpOwogICAg
ICAgICBlbHNlIGlmIChtX3BhZ2VTY2FsZUFuaW1hdGlvbi5nZXQoKSkKICAgICAgICAgICAgIGNv
bXB1dGVEb3VibGVUYXBab29tRGVsdGFzKHNjcm9sbEluZm8uZ2V0KCkpOworI2VuZGlmCiAgICAg
ICAgIHJldHVybiBzY3JvbGxJbmZvLnJlbGVhc2UoKTsKICAgICB9CiAKSW5kZXg6IFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuY3Bw
CShyZXZpc2lvbiAxMjgwMDQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzAsNiArNzAsNyBAQAogICAg
ICwgbV9pc0NvbnRhaW5lckZvckZpeGVkUG9zaXRpb25MYXllcnMoZmFsc2UpCiAgICAgLCBtX2Zp
eGVkVG9Db250YWluZXJMYXllcihmYWxzZSkKICAgICAsIG1fcGFnZVNjYWxlRGVsdGEoMSkKKyAg
ICAsIG1fcGFnZVNjYWxlKDEpCiAgICAgLCBtX3JlbmRlclRhcmdldCgwKQogICAgICwgbV9kcmF3
RGVwdGgoMCkKICAgICAsIG1fZHJhd09wYWNpdHkoMCkKQEAgLTE4MSwyMCArMTgyLDMyIEBACiAg
ICAgcmV0dXJuIDA7CiB9CiAKLXZvaWQgQ0NMYXllckltcGw6OnNjcm9sbEJ5KGNvbnN0IEZsb2F0
U2l6ZSYgc2Nyb2xsKQorRmxvYXRTaXplIENDTGF5ZXJJbXBsOjpzY3JvbGxCeShjb25zdCBGbG9h
dFNpemUmIHNjcm9sbCkKIHsKKyAgICBwcmludGYoIkNDTGF5ZXJJbXBsOjpzY3JvbGxCeSBzY3Jv
bGw6ICVmICVmXG4iLCBzY3JvbGwud2lkdGgoKSwgc2Nyb2xsLmhlaWdodCgpKTsKICAgICBJbnRT
aXplIG1pbkRlbHRhID0gLXRvU2l6ZShtX3Njcm9sbFBvc2l0aW9uKTsKKyAgICBwcmludGYoIkND
TGF5ZXJJbXBsOjpzY3JvbGxCeSBtaW5EZWx0YTogJWQgJWRcbiIsIG1pbkRlbHRhLndpZHRoKCks
IG1pbkRlbHRhLmhlaWdodCgpKTsKICAgICBJbnRTaXplIG1heERlbHRhID0gbV9tYXhTY3JvbGxQ
b3NpdGlvbiAtIHRvU2l6ZShtX3Njcm9sbFBvc2l0aW9uKTsKKyAgICBwcmludGYoIkNDTGF5ZXJJ
bXBsOjpzY3JvbGxCeSBtYXhEZWx0YTogJWQgJWRcbiIsIG1heERlbHRhLndpZHRoKCksIG1heERl
bHRhLmhlaWdodCgpKTsKKwogICAgIC8vIENsYW1wIG5ld0RlbHRhIHNvIHRoYXQgcG9zaXRpb24g
KyBkZWx0YSBzdGF5cyB3aXRoaW4gc2Nyb2xsIGJvdW5kcy4KICAgICBGbG9hdFNpemUgbmV3RGVs
dGEgPSAobV9zY3JvbGxEZWx0YSArIHNjcm9sbCkuZXhwYW5kZWRUbyhtaW5EZWx0YSkuc2hydW5r
VG8obWF4RGVsdGEpOworICAgIHByaW50ZigiQ0NMYXllckltcGw6OnNjcm9sbEJ5IG5ld0RlbHRh
OiAlZiAlZlxuIiwgbmV3RGVsdGEud2lkdGgoKSwgbmV3RGVsdGEuaGVpZ2h0KCkpOwogCisgICAg
RmxvYXRTaXplIHVuc2Nyb2xsZWQgPSBtX3Njcm9sbERlbHRhICsgc2Nyb2xsIC0gbmV3RGVsdGE7
CisKKyAgICBwcmludGYoIkNDTGF5ZXJJbXBsOjpzY3JvbGxCeSBtX3Njcm9sbFBvc2l0aW9uOiAo
JWQsICVkKVxuIiwgbV9zY3JvbGxQb3NpdGlvbi54KCksIG1fc2Nyb2xsUG9zaXRpb24ueSgpKTsK
KyAgICBwcmludGYoIkNDTGF5ZXJJbXBsOjpzY3JvbGxCeSBtX3Njcm9sbERlbHRhOiAoJWYsICVm
KVxuIiwgbV9zY3JvbGxEZWx0YS53aWR0aCgpLCBtX3Njcm9sbERlbHRhLmhlaWdodCgpKTsKKwog
ICAgIGlmIChtX3Njcm9sbERlbHRhID09IG5ld0RlbHRhKQotICAgICAgICByZXR1cm47CisgICAg
ICAgIHJldHVybiB1bnNjcm9sbGVkOwogCiAgICAgbV9zY3JvbGxEZWx0YSA9IG5ld0RlbHRhOwog
ICAgIGlmIChtX3Njcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xsZXIpCiAgICAgICAgIG1fc2Nyb2xs
YmFyQW5pbWF0aW9uQ29udHJvbGxlci0+dXBkYXRlU2Nyb2xsT2Zmc2V0KHRoaXMpOwogICAgIG5v
dGVMYXllclByb3BlcnR5Q2hhbmdlZEZvclN1YnRyZWUoKTsKKworICAgIHJldHVybiB1bnNjcm9s
bGVkOwogfQogCiBDQ0lucHV0SGFuZGxlckNsaWVudDo6U2Nyb2xsU3RhdHVzIENDTGF5ZXJJbXBs
Ojp0cnlTY3JvbGwoY29uc3QgSW50UG9pbnQmIHZpZXdwb3J0UG9pbnQsIENDSW5wdXRIYW5kbGVy
Q2xpZW50OjpTY3JvbGxJbnB1dFR5cGUgdHlwZSkgY29uc3QKQEAgLTU3Nyw2ICs1OTAsMTUgQEAK
ICAgICBub3RlTGF5ZXJQcm9wZXJ0eUNoYW5nZWRGb3JTdWJ0cmVlKCk7CiB9CiAKK3ZvaWQgQ0NM
YXllckltcGw6OnNldExvY2FsT2Zmc2V0KGNvbnN0IEZsb2F0U2l6ZSYgb2Zmc2V0KQoreworICAg
IGlmIChtX2xvY2FsT2Zmc2V0ID09IG9mZnNldCkKKyAgICAgICAgcmV0dXJuOworCisgICAgbV9s
b2NhbE9mZnNldCA9IG9mZnNldDsKKyAgICBub3RlTGF5ZXJQcm9wZXJ0eUNoYW5nZWRGb3JTdWJ0
cmVlKCk7Cit9CisKIHZvaWQgQ0NMYXllckltcGw6OnNldFBhZ2VTY2FsZURlbHRhKGZsb2F0IHBh
Z2VTY2FsZURlbHRhKQogewogICAgIGlmIChtX3BhZ2VTY2FsZURlbHRhID09IHBhZ2VTY2FsZURl
bHRhKQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
VHJlZUhvc3RJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmgJKHJldmlzaW9uIDEyODAwNCkKKysrIFdl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5o
CSh3b3JraW5nIGNvcHkpCkBAIC02Miw2ICs2MiwyOSBAQAogICAgIHZpcnR1YWwgdm9pZCBwb3N0
QW5pbWF0aW9uRXZlbnRzVG9NYWluVGhyZWFkT25JbXBsVGhyZWFkKFBhc3NPd25QdHI8Q0NBbmlt
YXRpb25FdmVudHNWZWN0b3I+LCBkb3VibGUgd2FsbENsb2NrVGltZSkgPSAwOwogfTsKIAorY2xh
c3MgQmx1ZUJveFZpZXdwb3J0IHsKK3B1YmxpYzoKKyAgICBCbHVlQm94Vmlld3BvcnQoKSA6IG1f
c2NhbGVGYWN0b3IoMCkge30KKworICAgIHZvaWQgc2V0U2NhbGUoZmxvYXQgZmFjdG9yKTsKKwor
ICAgIEZsb2F0UmVjdCBibHVlQm91bmRzKCk7CisgICAgRmxvYXRQb2ludCBsb2NhdGlvbigpIHsg
cmV0dXJuIG1fbG9jYXRpb247IH0KKworICAgIEZsb2F0U2l6ZSYgcmVkQm91bmRzKCkgeyByZXR1
cm4gbV9yZWRCb3VuZHM7IH0KKyAgICB2b2lkIHNldFJlZEJvdW5kcyhjb25zdCBGbG9hdFNpemUm
IGJvdW5kcykgeyBtX3JlZEJvdW5kcyA9IGJvdW5kczsgfQorCisgICAgRmxvYXRTaXplIGFwcGx5
U2Nyb2xsKEZsb2F0U2l6ZSYgZGVsdGEpOworCisgICAgdm9pZCBlbWl0KCk7CisKK3ByaXZhdGU6
CisgICAgZmxvYXQgbV9zY2FsZUZhY3RvcjsKKyAgICBGbG9hdFBvaW50IG1fbG9jYXRpb247Cisg
ICAgRmxvYXRTaXplIG1fc2l6ZTsKKyAgICBGbG9hdFNpemUgbV9yZWRCb3VuZHM7Cit9OworCiAv
LyBDQ0xheWVyVHJlZUhvc3RJbXBsIG93bnMgdGhlIENDTGF5ZXJJbXBsIHRyZWUgYXMgd2VsbCBh
cyBhc3NvY2lhdGVkIHJlbmRlcmluZyBzdGF0ZQogY2xhc3MgQ0NMYXllclRyZWVIb3N0SW1wbCA6
IHB1YmxpYyBDQ0lucHV0SGFuZGxlckNsaWVudCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBwdWJsaWMgQ0NSZW5kZXJlckNsaWVudCwKQEAgLTIyMCw2ICsyNDMsOCBAQAogICAgIHRlbXBs
YXRlPHR5cGVuYW1lIFJlbmRlclBhc3NDdWxsZXI+CiAgICAgc3RhdGljIHZvaWQgcmVtb3ZlUmVu
ZGVyUGFzc2VzKFJlbmRlclBhc3NDdWxsZXIsIEZyYW1lRGF0YSYpOwogCisgICAgQmx1ZUJveFZp
ZXdwb3J0JiBibHVlQm94KCkgeyByZXR1cm4gbV9ibHVlQm94OyB9CisKIHByb3RlY3RlZDoKICAg
ICBDQ0xheWVyVHJlZUhvc3RJbXBsKGNvbnN0IENDTGF5ZXJUcmVlU2V0dGluZ3MmLCBDQ0xheWVy
VHJlZUhvc3RJbXBsQ2xpZW50Kik7CiAKQEAgLTMwNSw2ICszMzAsOCBAQAogICAgIC8vIHJlbmRl
cmluZyBhbmQgaW5wdXQgZXZlbnQgaGl0IHRlc3RpbmcuCiAgICAgQ0NMYXllckxpc3QgbV9yZW5k
ZXJTdXJmYWNlTGF5ZXJMaXN0OwogCisgICAgQmx1ZUJveFZpZXdwb3J0IG1fYmx1ZUJveDsKKwog
ICAgIE93blB0cjxDQ0ZyYW1lUmF0ZUNvdW50ZXI+IG1fZnBzQ291bnRlcjsKICAgICBPd25QdHI8
Q0NEZWJ1Z1JlY3RIaXN0b3J5PiBtX2RlYnVnUmVjdEhpc3Rvcnk7CiB9OwpJbmRleDogV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRy
ZWVIb3N0LmNwcAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00ODIs
NyArNDgyLDcgQEAKIAogc3RhdGljIHZvaWQgc2V0U2NhbGUoTGF5ZXJDaHJvbWl1bSogbGF5ZXIs
IGZsb2F0IGRldmljZVNjYWxlRmFjdG9yLCBmbG9hdCBwYWdlU2NhbGVGYWN0b3IpCiB7Ci0gICAg
aWYgKGxheWVyLT5ib3VuZHNDb250YWluUGFnZVNjYWxlKCkpCisgICAgaWYgKGZhbHNlIC8qbGF5
ZXItPmJvdW5kc0NvbnRhaW5QYWdlU2NhbGUoKSovKQogICAgICAgICBsYXllci0+c2V0Q29udGVu
dHNTY2FsZShkZXZpY2VTY2FsZUZhY3Rvcik7CiAgICAgZWxzZQogICAgICAgICBsYXllci0+c2V0
Q29udGVudHNTY2FsZShkZXZpY2VTY2FsZUZhY3RvciAqIHBhZ2VTY2FsZUZhY3Rvcik7CkluZGV4
OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENv
bW1vbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCShyZXZpc2lvbiAxMjgwMDQpCisrKyBXZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENvbW1vbi5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4Miw2ICs0ODIsOCBAQAogICAgIFdlYlRyYW5zZm9ybWF0
aW9uTWF0cml4IGxheWVyTG9jYWxUcmFuc2Zvcm07CiAgICAgLy8gTFQgPSBTW3BhZ2VTY2FsZURl
bHRhXQogICAgIGxheWVyTG9jYWxUcmFuc2Zvcm0uc2NhbGUobGF5ZXItPnBhZ2VTY2FsZURlbHRh
KCkpOworICAgIGxheWVyTG9jYWxUcmFuc2Zvcm0uc2NhbGUobGF5ZXItPnBhZ2VTY2FsZSgpKTsK
KyAgICBsYXllckxvY2FsVHJhbnNmb3JtLnRyYW5zbGF0ZSgtbGF5ZXItPmxvY2FsT2Zmc2V0KCku
d2lkdGgoKSwgLWxheWVyLT5sb2NhbE9mZnNldCgpLmhlaWdodCgpKTsKICAgICAvLyBMVCA9IFNb
cGFnZVNjYWxlRGVsdGFdICogVHJbb3JpZ2luXSAqIFRyW29yaWdpbjJhbmNob3JdCiAgICAgbGF5
ZXJMb2NhbFRyYW5zZm9ybS50cmFuc2xhdGUzZChwb3NpdGlvbi54KCkgKyBhbmNob3JQb2ludC54
KCkgKiBib3VuZHMud2lkdGgoKSwgcG9zaXRpb24ueSgpICsgYW5jaG9yUG9pbnQueSgpICogYm91
bmRzLmhlaWdodCgpLCBsYXllci0+YW5jaG9yUG9pbnRaKCkpOwogICAgIC8vIExUID0gU1twYWdl
U2NhbGVEZWx0YV0gKiBUcltvcmlnaW5dICogVHJbb3JpZ2luMmFuY2hvcl0gKiBNW2xheWVyXQpJ
bmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNo
cm9taXVtLmgJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNzYsOCArMTc2LDEw
IEBACiAgICAgdm9pZCBzZXRGb3JjZVJlbmRlclN1cmZhY2UoYm9vbCk7CiAKICAgICBJbnRTaXpl
IHNjcm9sbERlbHRhKCkgY29uc3QgeyByZXR1cm4gSW50U2l6ZSgpOyB9CisgICAgRmxvYXRTaXpl
IGxvY2FsT2Zmc2V0KCkgY29uc3QgeyByZXR1cm4gRmxvYXRTaXplKCk7IH0KIAogICAgIGZsb2F0
IHBhZ2VTY2FsZURlbHRhKCkgY29uc3QgeyByZXR1cm4gMTsgfQorICAgIGZsb2F0IHBhZ2VTY2Fs
ZSgpIGNvbnN0IHsgcmV0dXJuIDE7IH0KIAogICAgIHZvaWQgc2V0RG91YmxlU2lkZWQoYm9vbCk7
CiAgICAgYm9vbCBkb3VibGVTaWRlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZG91YmxlU2lkZWQ7IH0K
</data>
<flag name="review"
          id="174787"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="174788"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163466</attachid>
            <date>2012-09-11 16:03:45 -0700</date>
            <delta_ts>2012-09-12 16:50:14 -0700</delta_ts>
            <desc>Working V1 prototype.</desc>
            <filename>pinch_zoom_sept_11_17:57.diff</filename>
            <type>text/plain</type>
            <size>17258</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjA5LDcgKzIwOSw3IEBACiBjb25zdCBkb3VibGUgV2ViVmlldzo6dGV4dFNpemVNdWx0aXBsaWVy
UmF0aW8gPSAxLjI7CiBjb25zdCBkb3VibGUgV2ViVmlldzo6bWluVGV4dFNpemVNdWx0aXBsaWVy
ID0gMC41OwogY29uc3QgZG91YmxlIFdlYlZpZXc6Om1heFRleHRTaXplTXVsdGlwbGllciA9IDMu
MDsKLWNvbnN0IGZsb2F0IFdlYlZpZXc6Om1pblBhZ2VTY2FsZUZhY3RvciA9IDAuMjU7Citjb25z
dCBmbG9hdCBXZWJWaWV3OjptaW5QYWdlU2NhbGVGYWN0b3IgPSAxLjA7CiBjb25zdCBmbG9hdCBX
ZWJWaWV3OjptYXhQYWdlU2NhbGVGYWN0b3IgPSA0LjA7CiAKIApAQCAtMzkxMCwxNiArMzkxMCwx
MSBAQAogICAgICAgICBUUkFDRV9FVkVOVF9JTlNUQU5UMigid2Via2l0IiwgIldlYlZpZXdJbXBs
OjphcHBseVNjcm9sbEFuZFNjYWxlOjpzY3JvbGxCeSIsICJ4Iiwgc2Nyb2xsRGVsdGEud2lkdGgs
ICJ5Iiwgc2Nyb2xsRGVsdGEuaGVpZ2h0KTsKICAgICAgICAgbWFpbkZyYW1lSW1wbCgpLT5mcmFt
ZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIC8v
IFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEgc2NhbGUgYW5kIHNjcm9sbCBpbiBh
IHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5k
IHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGluIHRoZSBvbGQgY29vcmRpbmF0ZSBz
cGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtCi0gICAgICAgIC8vIGJ5IHRo
ZSBwYWdlIHNjYWxlIGRlbHRhLgogICAgICAgICBXZWJTaXplIHNjcm9sbE9mZnNldCA9IG1haW5G
cmFtZSgpLT5zY3JvbGxPZmZzZXQoKTsKICAgICAgICAgc2Nyb2xsT2Zmc2V0LndpZHRoICs9IHNj
cm9sbERlbHRhLndpZHRoOwogICAgICAgICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICs9IHNjcm9sbERl
bHRhLmhlaWdodDsKLSAgICAgICAgV2ViUG9pbnQgc2NhbGVkU2Nyb2xsT2Zmc2V0KHNjcm9sbE9m
ZnNldC53aWR0aCAqIHBhZ2VTY2FsZURlbHRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2Nyb2xsT2Zmc2V0LmhlaWdodCAqIHBhZ2VTY2FsZURlbHRhKTsKLSAgICAgICAg
c2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNj
YWxlZFNjcm9sbE9mZnNldCk7CisgICAgICAgIFdlYlBvaW50IHNjcm9sbFBvaW50KHNjcm9sbE9m
ZnNldC53aWR0aCwgc2Nyb2xsT2Zmc2V0LmhlaWdodCk7CisgICAgICAgIHNldFBhZ2VTY2FsZUZh
Y3RvcihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY3JvbGxQb2ludCk7CiAg
ICAgfQogfQogCkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcGFnZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGFnZS9G
cmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk1MiwxMiArOTUyLDE1IEBACiAKIGZsb2F0IEZy
YW1lOjpmcmFtZVNjYWxlRmFjdG9yKCkgY29uc3QKIHsKKyAgICByZXR1cm4gMTsKKyNpZiAwCiAg
ICAgUGFnZSogcGFnZSA9IHRoaXMtPnBhZ2UoKTsKIAogICAgIC8vIE1haW4gZnJhbWUgaXMgc2Nh
bGVkIHdpdGggcmVzcGVjdCB0byBoZSBjb250YWluZXIgYnV0IGlubmVyIGZyYW1lcyBhcmUgbm90
IHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gdGhlIG1haW4gZnJhbWUuCiAgICAgaWYgKCFwYWdlIHx8
IHBhZ2UtPm1haW5GcmFtZSgpICE9IHRoaXMpCiAgICAgICAgIHJldHVybiAxOwogICAgIHJldHVy
biBwYWdlLT5wYWdlU2NhbGVGYWN0b3IoKTsKKyNlbmRpZgogfQogCiB2b2lkIEZyYW1lOjpzdXNw
ZW5kQWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQpJbmRleDogV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaAkocmV2aXNpb24g
MTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVy
SW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTYsMTMgKzE5NiwyMCBAQAogICAgIGNvbnN0IEZs
b2F0U2l6ZSYgc2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbERlbHRhOyB9CiAg
ICAgdm9pZCBzZXRTY3JvbGxEZWx0YShjb25zdCBGbG9hdFNpemUmKTsKIAorICAgIGNvbnN0IEZs
b2F0U2l6ZSYgbG9jYWxPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2xvY2FsT2Zmc2V0OyB9Cisg
ICAgdm9pZCBzZXRMb2NhbE9mZnNldChjb25zdCBGbG9hdFNpemUmKTsKKwogICAgIGZsb2F0IHBh
Z2VTY2FsZURlbHRhKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlU2NhbGVEZWx0YTsgfQogICAgIHZv
aWQgc2V0UGFnZVNjYWxlRGVsdGEoZmxvYXQpOwogCisgICAgZmxvYXQgcGFnZVNjYWxlKCkgY29u
c3QgeyByZXR1cm4gbV9wYWdlU2NhbGU7IH0KKyAgICB2b2lkIHNldFBhZ2VTY2FsZShmbG9hdCBz
Y2FsZSkgeyBtX3BhZ2VTY2FsZSA9IHNjYWxlOyB9CisKICAgICBjb25zdCBJbnRTaXplJiBzZW50
U2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3NlbnRTY3JvbGxEZWx0YTsgfQogICAgIHZv
aWQgc2V0U2VudFNjcm9sbERlbHRhKGNvbnN0IEludFNpemUmIHNlbnRTY3JvbGxEZWx0YSkgeyBt
X3NlbnRTY3JvbGxEZWx0YSA9IHNlbnRTY3JvbGxEZWx0YTsgfQogCi0gICAgdm9pZCBzY3JvbGxC
eShjb25zdCBGbG9hdFNpemUmIHNjcm9sbCk7CisgICAgLy8gUmV0dXJucyB0aGUgZGVsdGEgb2Yg
dGhlIHNjcm9sbCB0aGF0IHdhcyBvdXRzaWRlIG9mIHRoZSBib3VuZHMgb2YgdGhlIGluaXRpYWwg
c2Nyb2xsCisgICAgRmxvYXRTaXplIHNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYgc2Nyb2xsKTsK
IAogICAgIGJvb2wgc2Nyb2xsYWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsYWJsZTsgfQog
ICAgIHZvaWQgc2V0U2Nyb2xsYWJsZShib29sIHNjcm9sbGFibGUpIHsgbV9zY3JvbGxhYmxlID0g
c2Nyb2xsYWJsZTsgfQpAQCAtMzU1LDYgKzM2Miw4IEBACiAgICAgSW50U2l6ZSBtX3NlbnRTY3Jv
bGxEZWx0YTsKICAgICBJbnRTaXplIG1fbWF4U2Nyb2xsUG9zaXRpb247CiAgICAgZmxvYXQgbV9w
YWdlU2NhbGVEZWx0YTsKKyAgICBmbG9hdCBtX3BhZ2VTY2FsZTsKKyAgICBGbG9hdFNpemUgbV9s
b2NhbE9mZnNldDsKIAogICAgIC8vIFRoZSBsYXllciB3aG9zZSBjb29yZGluYXRlIHNwYWNlIHRo
aXMgbGF5ZXIgZHJhd3MgaW50by4gVGhpcyBjYW4gYmUKICAgICAvLyBlaXRoZXIgdGhlIHNhbWUg
bGF5ZXIgKG1fcmVuZGVyVGFyZ2V0ID09IHRoaXMpIG9yIGFuIGFuY2VzdG9yIG9mIHRoaXMKSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0
SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjksNiArNjksNDkgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitGbG9hdFJlY3QgQ0NQaW5jaFpvb21WaWV3cG9ydDo6Ym91bmRzKCkgY29uc3QKK3sKKyAgICBG
bG9hdFNpemUgc2NhbGVkQm91bmRzID0gbV91bnBpbmNoZWRCb3VuZHM7CisgICAgaWYgKG1fc2Nh
bGVGYWN0b3IgPiAxKQorICAgICAgICBzY2FsZWRCb3VuZHMuc2NhbGUoMSAvIG1fc2NhbGVGYWN0
b3IpOworCisgICAgRmxvYXRSZWN0IGJvdW5kczsKKyAgICBib3VuZHMuc2V0U2l6ZShzY2FsZWRC
b3VuZHMpOworICAgIGJvdW5kcy5zZXRMb2NhdGlvbihtX29mZnNldCk7CisKKyAgICByZXR1cm4g
Ym91bmRzOworfQorCitGbG9hdFNpemUgQ0NQaW5jaFpvb21WaWV3cG9ydDo6YXBwbHlTY3JvbGwo
RmxvYXRTaXplJiBkZWx0YSkKK3sKKyAgICBGbG9hdFNpemUgb3ZlcmZsb3c7CisgICAgRmxvYXRS
ZWN0IHBpbmNoZWRCb3VuZHMgPSBib3VuZHMoKTsKKworICAgIHBpbmNoZWRCb3VuZHMubW92ZShk
ZWx0YSk7CisgICAgaWYgKHBpbmNoZWRCb3VuZHMueCgpIDwgMCkgeworICAgICAgICBwaW5jaGVk
Qm91bmRzLnNldFgoMCk7CisgICAgICAgIG92ZXJmbG93LnNldFdpZHRoKHBpbmNoZWRCb3VuZHMu
eCgpKTsKKyAgICB9CisKKyAgICBpZiAocGluY2hlZEJvdW5kcy55KCkgPCAwKSB7CisgICAgICAg
IHBpbmNoZWRCb3VuZHMuc2V0WSgwKTsKKyAgICAgICAgb3ZlcmZsb3cuc2V0SGVpZ2h0KHBpbmNo
ZWRCb3VuZHMueSgpKTsKKyAgICB9CisKKyAgICBpZiAocGluY2hlZEJvdW5kcy5tYXhYKCkgPiBt
X3VucGluY2hlZEJvdW5kcy53aWR0aCgpKSB7CisgICAgICAgIHBpbmNoZWRCb3VuZHMubW92ZSht
X3VucGluY2hlZEJvdW5kcy53aWR0aCgpIC0gcGluY2hlZEJvdW5kcy5tYXhYKCksIDApOworICAg
ICAgICBvdmVyZmxvdy5zZXRXaWR0aChwaW5jaGVkQm91bmRzLm1heFgoKSAtIG1fdW5waW5jaGVk
Qm91bmRzLndpZHRoKCkpOworICAgIH0KKworICAgIGlmIChwaW5jaGVkQm91bmRzLm1heFkoKSA+
IG1fdW5waW5jaGVkQm91bmRzLmhlaWdodCgpKSB7CisgICAgICAgIHBpbmNoZWRCb3VuZHMubW92
ZSgwLCBtX3VucGluY2hlZEJvdW5kcy5oZWlnaHQoKSAtIHBpbmNoZWRCb3VuZHMubWF4WSgpKTsK
KyAgICAgICAgb3ZlcmZsb3cuc2V0SGVpZ2h0KHBpbmNoZWRCb3VuZHMubWF4WSgpIC0gbV91bnBp
bmNoZWRCb3VuZHMuaGVpZ2h0KCkpOworICAgIH0KKyAgICBtX29mZnNldCA9IHBpbmNoZWRCb3Vu
ZHMubG9jYXRpb24oKTsKKworICAgIHJldHVybiBvdmVyZmxvdzsKK30KKwogY2xhc3MgQ0NMYXll
clRyZWVIb3N0SW1wbFRpbWVTb3VyY2VBZGFwdGVyIDogcHVibGljIENDVGltZVNvdXJjZUNsaWVu
dCB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoQ0NMYXllclRyZWVIb3N0SW1wbFRpbWVTb3Vy
Y2VBZGFwdGVyKTsKIHB1YmxpYzoKQEAgLTc0Nyw2ICs3OTAsOCBAQAogICAgIG1fbGF5b3V0Vmll
d3BvcnRTaXplID0gbGF5b3V0Vmlld3BvcnRTaXplOwogICAgIG1fZGV2aWNlVmlld3BvcnRTaXpl
ID0gZGV2aWNlVmlld3BvcnRTaXplOwogCisgICAgbV9waW5jaFpvb21WaWV3cG9ydC5zZXRVbnBp
bmNoZWRCb3VuZHMoRmxvYXRTaXplKGxheW91dFZpZXdwb3J0U2l6ZSkpOworCiAgICAgdXBkYXRl
TWF4U2Nyb2xsUG9zaXRpb24oKTsKIAogICAgIGlmIChtX3JlbmRlcmVyKQpAQCAtNzU1LDIyICs4
MDAsNiBAQAogICAgIG1fY2xpZW50LT5vbkNhbkRyYXdTdGF0ZUNoYW5nZWQoY2FuRHJhdygpKTsK
IH0KIAotc3RhdGljIHZvaWQgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2FsZUNoYW5nZShDQ0xheWVy
SW1wbCogbGF5ZXJJbXBsLCBmbG9hdCBwYWdlU2NhbGVDaGFuZ2UpCi17Ci0gICAgaWYgKCFsYXll
ckltcGwpCi0gICAgICAgIHJldHVybjsKLQotICAgIGlmIChsYXllckltcGwtPnNjcm9sbGFibGUo
KSkgewotICAgICAgICAvLyBXZSBuZWVkIHRvIGNvbnZlcnQgaW1wbC1zaWRlIHNjcm9sbCBkZWx0
YXMgdG8gcGFnZVNjYWxlIHNwYWNlLgotICAgICAgICBGbG9hdFNpemUgc2Nyb2xsRGVsdGEgPSBs
YXllckltcGwtPnNjcm9sbERlbHRhKCk7Ci0gICAgICAgIHNjcm9sbERlbHRhLnNjYWxlKHBhZ2VT
Y2FsZUNoYW5nZSk7Ci0gICAgICAgIGxheWVySW1wbC0+c2V0U2Nyb2xsRGVsdGEoc2Nyb2xsRGVs
dGEpOwotICAgIH0KLQotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgbGF5ZXJJbXBsLT5jaGls
ZHJlbigpLnNpemUoKTsgKytpKQotICAgICAgICBhZGp1c3RTY3JvbGxzRm9yUGFnZVNjYWxlQ2hh
bmdlKGxheWVySW1wbC0+Y2hpbGRyZW4oKVtpXS5nZXQoKSwgcGFnZVNjYWxlQ2hhbmdlKTsKLX0K
LQogdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXREZXZpY2VTY2FsZUZhY3RvcihmbG9hdCBk
ZXZpY2VTY2FsZUZhY3RvcikKIHsKICAgICBpZiAoZGV2aWNlU2NhbGVGYWN0b3IgPT0gbV9kZXZp
Y2VTY2FsZUZhY3RvcikKQEAgLTc5MiwxMiArODIxLDggQEAKICAgICBtX21pblBhZ2VTY2FsZSA9
IG1pblBhZ2VTY2FsZTsKICAgICBtX21heFBhZ2VTY2FsZSA9IG1heFBhZ2VTY2FsZTsKIAotICAg
IGZsb2F0IHBhZ2VTY2FsZUNoYW5nZSA9IHBhZ2VTY2FsZSAvIG1fcGFnZVNjYWxlOwogICAgIG1f
cGFnZVNjYWxlID0gcGFnZVNjYWxlOwogCi0gICAgaWYgKHBhZ2VTY2FsZUNoYW5nZSAhPSAxKQot
ICAgICAgICBhZGp1c3RTY3JvbGxzRm9yUGFnZVNjYWxlQ2hhbmdlKG1fcm9vdFNjcm9sbExheWVy
SW1wbCwgcGFnZVNjYWxlQ2hhbmdlKTsKLQogICAgIC8vIENsYW1wIGRlbHRhIHRvIGxpbWl0cyBh
bmQgcmVmcmVzaCBkaXNwbGF5IG1hdHJpeC4KICAgICBzZXRQYWdlU2NhbGVEZWx0YShtX3BhZ2VT
Y2FsZURlbHRhIC8gbV9zZW50UGFnZVNjYWxlRGVsdGEpOwogICAgIG1fc2VudFBhZ2VTY2FsZURl
bHRhID0gMTsKQEAgLTgyMCw4ICs4NDUsMTAgQEAKICAgICBtX3BhZ2VTY2FsZURlbHRhID0gZGVs
dGE7CiAKICAgICB1cGRhdGVNYXhTY3JvbGxQb3NpdGlvbigpOwotICAgIGlmIChtX3Jvb3RTY3Jv
bGxMYXllckltcGwpCisgICAgaWYgKG1fcm9vdFNjcm9sbExheWVySW1wbCkgewogICAgICAgICBt
X3Jvb3RTY3JvbGxMYXllckltcGwtPnNldFBhZ2VTY2FsZURlbHRhKG1fcGFnZVNjYWxlRGVsdGEp
OworICAgICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNldFBhZ2VTY2FsZShtX3BhZ2VTY2Fs
ZSk7CisgICAgfQogfQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnVwZGF0ZU1heFNjcm9s
bFBvc2l0aW9uKCkKQEAgLTg0MCw4ICs4NjcsMTMgQEAKICAgICB2aWV3Qm91bmRzLnNjYWxlKDEg
LyBtX3BhZ2VTY2FsZURlbHRhKTsKIAogICAgIC8vIG1heFNjcm9sbCBpcyBjb21wdXRlZCBpbiBw
aHlzaWNhbCBwaXhlbHMsIGJ1dCBzY3JvbGwgcG9zaXRpb25zIGFyZSBpbiBsYXlvdXQgcGl4ZWxz
LgotICAgIEludFNpemUgbWF4U2Nyb2xsID0gY29udGVudFNpemUoKSAtIGV4cGFuZGVkSW50U2l6
ZSh2aWV3Qm91bmRzKTsKLSAgICBtYXhTY3JvbGwuc2NhbGUoMSAvIG1fZGV2aWNlU2NhbGVGYWN0
b3IpOworICAgIC8vIENvbXB1dGUgdGhlIGNvbnRlbnRTaXplIGluIHRlcm1zIG9mIGxheW91dCBw
aXhlbHMuCisgICAgSW50U2l6ZSBzY2FsZWRDb250ZW50U2l6ZSA9IGNvbnRlbnRTaXplKCk7Cisg
ICAgc2NhbGVkQ29udGVudFNpemUuc2NhbGUoMSAvIG1fcGFnZVNjYWxlKTsKKworICAgIEludFNp
emUgbWF4U2Nyb2xsID0gc2NhbGVkQ29udGVudFNpemUgLSBleHBhbmRlZEludFNpemUodmlld0Jv
dW5kcyk7CisgICAgbWF4U2Nyb2xsLnNjYWxlKDEgLyAobV9kZXZpY2VTY2FsZUZhY3RvcikpOwor
CiAgICAgLy8gVGhlIHZpZXdwb3J0IG1heSBiZSBsYXJnZXIgdGhhbiB0aGUgY29udGVudHMgaW4g
c29tZSBjYXNlcywgc3VjaCBhcwogICAgIC8vIGhhdmluZyBhIHZlcnRpY2FsIHNjcm9sbGJhciBi
dXQgbm8gaG9yaXpvbnRhbCBvdmVyZmxvdy4KICAgICBtYXhTY3JvbGwuY2xhbXBOZWdhdGl2ZVRv
WmVybygpOwpAQCAtOTI0LDcgKzk1Niw3IEBACiAgICAgcmV0dXJuIFNjcm9sbElnbm9yZWQ7CiB9
CiAKLXN0YXRpYyBGbG9hdFNpemUgc2Nyb2xsTGF5ZXJXaXRoU2NyZWVuU3BhY2VEZWx0YShDQ0xh
eWVySW1wbCYgbGF5ZXJJbXBsLCBjb25zdCBGbG9hdFBvaW50JiBzY3JlZW5TcGFjZVBvaW50LCBj
b25zdCBGbG9hdFNpemUmIHNjcmVlblNwYWNlRGVsdGEpCitzdGF0aWMgRmxvYXRTaXplIHNjcm9s
bExheWVyV2l0aFNjcmVlblNwYWNlRGVsdGEoQ0NQaW5jaFpvb21WaWV3cG9ydCogdmlld3BvcnQs
IENDTGF5ZXJJbXBsJiBsYXllckltcGwsIGNvbnN0IEZsb2F0UG9pbnQmIHNjcmVlblNwYWNlUG9p
bnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NyZWVuU3BhY2VEZWx0YSkKIHsKICAgICAvLyBMYXllcnMg
d2l0aCBub24taW52ZXJ0aWJsZSBzY3JlZW4gc3BhY2UgdHJhbnNmb3JtcyBzaG91bGQgbm90IGhh
dmUgcGFzc2VkIHRoZSBzY3JvbGwgaGl0CiAgICAgLy8gdGVzdCBpbiB0aGUgZmlyc3QgcGxhY2Uu
CkBAIC05NDYsOCArOTc4LDEzIEBACiAKICAgICAvLyBBcHBseSB0aGUgc2Nyb2xsIGRlbHRhLgog
ICAgIEZsb2F0U2l6ZSBwcmV2aW91c0RlbHRhKGxheWVySW1wbC5zY3JvbGxEZWx0YSgpKTsKLSAg
ICBsYXllckltcGwuc2Nyb2xsQnkobG9jYWxFbmRQb2ludCAtIGxvY2FsU3RhcnRQb2ludCk7Cisg
ICAgRmxvYXRTaXplIHVuc2Nyb2xsZWQgPSBsYXllckltcGwuc2Nyb2xsQnkobG9jYWxFbmRQb2lu
dCAtIGxvY2FsU3RhcnRQb2ludCk7CiAKKyAgICBpZiAodmlld3BvcnQpIHsKKyAgICAgICAgdmll
d3BvcnQtPmFwcGx5U2Nyb2xsKHVuc2Nyb2xsZWQpOworICAgICAgICBsYXllckltcGwuc2V0TG9j
YWxPZmZzZXQoRmxvYXRTaXplKHZpZXdwb3J0LT5vZmZzZXQoKS54KCksIHZpZXdwb3J0LT5vZmZz
ZXQoKS55KCkpKTsKKyAgICB9CisKICAgICAvLyBDYWxjdWxhdGUgdGhlIGFwcGxpZWQgc2Nyb2xs
IGRlbHRhIGluIHNjcmVlbiBzcGFjZSBjb29yZGluYXRlcy4KICAgICBGbG9hdFBvaW50IGFjdHVh
bExvY2FsRW5kUG9pbnQgPSBsb2NhbFN0YXJ0UG9pbnQgKyBsYXllckltcGwuc2Nyb2xsRGVsdGEo
KSAtIHByZXZpb3VzRGVsdGE7CiAgICAgRmxvYXRQb2ludCBhY3R1YWxTY3JlZW5TcGFjZUVuZFBv
aW50ID0gQ0NNYXRoVXRpbDo6bWFwUG9pbnQobGF5ZXJJbXBsLnNjcmVlblNwYWNlVHJhbnNmb3Jt
KCksIGFjdHVhbExvY2FsRW5kUG9pbnQsIGVuZENsaXBwZWQpOwpAQCAtOTc4LDkgKzEwMTUsMTAg
QEAKICAgICAgICAgaWYgKCFsYXllckltcGwtPnNjcm9sbGFibGUoKSkKICAgICAgICAgICAgIGNv
bnRpbnVlOwogCisgICAgICAgIENDUGluY2hab29tVmlld3BvcnQqIHZpZXdwb3J0ID0gbGF5ZXJJ
bXBsID09IG1fcm9vdFNjcm9sbExheWVySW1wbCA/ICZtX3BpbmNoWm9vbVZpZXdwb3J0IDogMDsK
ICAgICAgICAgRmxvYXRTaXplIGFwcGxpZWREZWx0YTsKICAgICAgICAgaWYgKG1fc2Nyb2xsRGVs
dGFJc0luU2NyZWVuU3BhY2UpCi0gICAgICAgICAgICBhcHBsaWVkRGVsdGEgPSBzY3JvbGxMYXll
cldpdGhTY3JlZW5TcGFjZURlbHRhKCpsYXllckltcGwsIHZpZXdwb3J0UG9pbnQsIHBlbmRpbmdE
ZWx0YSk7CisgICAgICAgICAgICBhcHBsaWVkRGVsdGEgPSBzY3JvbGxMYXllcldpdGhTY3JlZW5T
cGFjZURlbHRhKHZpZXdwb3J0LCAqbGF5ZXJJbXBsLCB2aWV3cG9ydFBvaW50LCBwZW5kaW5nRGVs
dGEpOwogICAgICAgICBlbHNlCiAgICAgICAgICAgICBhcHBsaWVkRGVsdGEgPSBzY3JvbGxMYXll
cldpdGhMb2NhbERlbHRhKCpsYXllckltcGwsIHBlbmRpbmdEZWx0YSk7CiAKQEAgLTEwNTAsMTAg
KzEwODgsMTcgQEAKICAgICBGbG9hdFBvaW50IG5ld1NjYWxlQW5jaG9yKGFuY2hvci54KCkgLyBt
X3BhZ2VTY2FsZURlbHRhLCBhbmNob3IueSgpIC8gbV9wYWdlU2NhbGVEZWx0YSk7CiAgICAgRmxv
YXRTaXplIG1vdmUgPSBwcmV2aW91c1NjYWxlQW5jaG9yIC0gbmV3U2NhbGVBbmNob3I7CiAKKyAg
ICAvLyBDb21wdXRlIHRoZSBhcHBsaWF0aW9uIG9mIHRoZSBkZWx0YSB3aXRoIHJlc3BlY3QgdG8g
dGhlIGN1cnJlbnQgcGFnZSB6b29tIG9mIHRoZSBwYWdlLgorICAgIG1vdmUuc2NhbGUoMSAvIG1f
cGFnZVNjYWxlKTsKKwogICAgIG1fcHJldmlvdXNQaW5jaEFuY2hvciA9IGFuY2hvcjsKIAotICAg
IG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsQnkocm91bmRlZEludFNpemUobW92ZSkpOwor
ICAgIG1fcGluY2hab29tVmlld3BvcnQuc2V0VG90YWxTY2FsZShtX3BhZ2VTY2FsZSAqIG1fcGFn
ZVNjYWxlRGVsdGEpOwogCisgICAgRmxvYXRTaXplIHJlZFNjcm9sbCA9IG1fcGluY2hab29tVmll
d3BvcnQuYXBwbHlTY3JvbGwobW92ZSk7CisgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zZXRM
b2NhbE9mZnNldChGbG9hdFNpemUoLW1fcGluY2hab29tVmlld3BvcnQub2Zmc2V0KCkueCgpLCAt
bV9waW5jaFpvb21WaWV3cG9ydC5vZmZzZXQoKS55KCkpKTsKKyAgICBtX3Jvb3RTY3JvbGxMYXll
ckltcGwtPnNjcm9sbEJ5KHJvdW5kZWRJbnRTaXplKHJlZFNjcm9sbCkpOworCiAgICAgaWYgKG1f
cm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsYmFyQW5pbWF0aW9uQ29udHJvbGxlcigpKQogICAg
ICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbGJhckFuaW1hdGlvbkNvbnRyb2xsZXIo
KS0+ZGlkUGluY2hHZXN0dXJlVXBkYXRlKCk7CiAKQEAgLTExNDgsMTAgKzExOTMsMTIgQEAKIAog
ICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSB8fCBtX3BhZ2VTY2FsZUFuaW1hdGlvbikgewog
ICAgICAgICBtX3NlbnRQYWdlU2NhbGVEZWx0YSA9IHNjcm9sbEluZm8tPnBhZ2VTY2FsZURlbHRh
ID0gMTsKKyNpZiAwCiAgICAgICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSkKICAgICAgICAg
ICAgIGNvbXB1dGVQaW5jaFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CiAgICAgICAgIGVs
c2UgaWYgKG1fcGFnZVNjYWxlQW5pbWF0aW9uLmdldCgpKQogICAgICAgICAgICAgY29tcHV0ZURv
dWJsZVRhcFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7CisjZW5kaWYKICAgICAgICAgcmV0
dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwogICAgIH0KIApJbmRleDogV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAJKHJldmlz
aW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NM
YXllckltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBACiAgICAgLCBtX2lz
Q29udGFpbmVyRm9yRml4ZWRQb3NpdGlvbkxheWVycyhmYWxzZSkKICAgICAsIG1fZml4ZWRUb0Nv
bnRhaW5lckxheWVyKGZhbHNlKQogICAgICwgbV9wYWdlU2NhbGVEZWx0YSgxKQorICAgICwgbV9w
YWdlU2NhbGUoMSkKICAgICAsIG1fcmVuZGVyVGFyZ2V0KDApCiAgICAgLCBtX2RyYXdEZXB0aCgw
KQogICAgICwgbV9kcmF3T3BhY2l0eSgwKQpAQCAtMTgxLDIwICsxODIsMjMgQEAKICAgICByZXR1
cm4gMDsKIH0KIAotdm9pZCBDQ0xheWVySW1wbDo6c2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJiBz
Y3JvbGwpCitGbG9hdFNpemUgQ0NMYXllckltcGw6OnNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYg
c2Nyb2xsKQogewogICAgIEludFNpemUgbWluRGVsdGEgPSAtdG9TaXplKG1fc2Nyb2xsUG9zaXRp
b24pOwogICAgIEludFNpemUgbWF4RGVsdGEgPSBtX21heFNjcm9sbFBvc2l0aW9uIC0gdG9TaXpl
KG1fc2Nyb2xsUG9zaXRpb24pOwogICAgIC8vIENsYW1wIG5ld0RlbHRhIHNvIHRoYXQgcG9zaXRp
b24gKyBkZWx0YSBzdGF5cyB3aXRoaW4gc2Nyb2xsIGJvdW5kcy4KICAgICBGbG9hdFNpemUgbmV3
RGVsdGEgPSAobV9zY3JvbGxEZWx0YSArIHNjcm9sbCkuZXhwYW5kZWRUbyhtaW5EZWx0YSkuc2hy
dW5rVG8obWF4RGVsdGEpOworICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0gbV9zY3JvbGxEZWx0
YSArIHNjcm9sbCAtIG5ld0RlbHRhOwogCiAgICAgaWYgKG1fc2Nyb2xsRGVsdGEgPT0gbmV3RGVs
dGEpCi0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIHVuc2Nyb2xsZWQ7CiAKICAgICBt
X3Njcm9sbERlbHRhID0gbmV3RGVsdGE7CiAgICAgaWYgKG1fc2Nyb2xsYmFyQW5pbWF0aW9uQ29u
dHJvbGxlcikKICAgICAgICAgbV9zY3JvbGxiYXJBbmltYXRpb25Db250cm9sbGVyLT51cGRhdGVT
Y3JvbGxPZmZzZXQodGhpcyk7CiAgICAgbm90ZUxheWVyUHJvcGVydHlDaGFuZ2VkRm9yU3VidHJl
ZSgpOworCisgICAgcmV0dXJuIHVuc2Nyb2xsZWQ7CiB9CiAKIENDSW5wdXRIYW5kbGVyQ2xpZW50
OjpTY3JvbGxTdGF0dXMgQ0NMYXllckltcGw6OnRyeVNjcm9sbChjb25zdCBJbnRQb2ludCYgdmll
d3BvcnRQb2ludCwgQ0NJbnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbElucHV0VHlwZSB0eXBlKSBj
b25zdApAQCAtNTc3LDYgKzU4MSwxNSBAQAogICAgIG5vdGVMYXllclByb3BlcnR5Q2hhbmdlZEZv
clN1YnRyZWUoKTsKIH0KIAordm9pZCBDQ0xheWVySW1wbDo6c2V0TG9jYWxPZmZzZXQoY29uc3Qg
RmxvYXRTaXplJiBvZmZzZXQpCit7CisgICAgaWYgKG1fbG9jYWxPZmZzZXQgPT0gb2Zmc2V0KQor
ICAgICAgICByZXR1cm47CisKKyAgICBtX2xvY2FsT2Zmc2V0ID0gb2Zmc2V0OworICAgIG5vdGVM
YXllclByb3BlcnR5Q2hhbmdlZEZvclN1YnRyZWUoKTsKK30KKwogdm9pZCBDQ0xheWVySW1wbDo6
c2V0UGFnZVNjYWxlRGVsdGEoZmxvYXQgcGFnZVNjYWxlRGVsdGEpCiB7CiAgICAgaWYgKG1fcGFn
ZVNjYWxlRGVsdGEgPT0gcGFnZVNjYWxlRGVsdGEpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwu
aAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTYyLDYgKzYyLDM0
IEBACiAgICAgdmlydHVhbCB2b2lkIHBvc3RBbmltYXRpb25FdmVudHNUb01haW5UaHJlYWRPbklt
cGxUaHJlYWQoUGFzc093blB0cjxDQ0FuaW1hdGlvbkV2ZW50c1ZlY3Rvcj4sIGRvdWJsZSB3YWxs
Q2xvY2tUaW1lKSA9IDA7CiB9OwogCisvLyBDQ1BpbmNoWm9vbVZpZXdwb3J0IG1vZGVscyB0aGUg
Ym91bmRzIGFuZCBvZmZzZXQgb2YgdGhlIHZpZXdwb3J0IHRoYXQgaXMgdXNlZCBkdXJpbmcgYSBw
aW5jaC16b29tIG9wZXJhdGlvbi4KKy8vIEl0IHRyYWNrcyB0aGUgbGF5b3V0LXNwYWNlIGRpbWVu
c2lvbnMgb2YgdGhlIHZpZXdwb3J0IGJlZm9yZSBhbnkgYXBwbGllZCBzY2FsZSwgYW5kIHRoZW4g
dHJhY2tzIHRoZSBsYXlvdXQtc3BhY2UKKy8vIGNvb3JkaW5hdGVzIG9mIHRoZSB2aWV3cG9ydCBy
ZXNwZWN0aW5nIHRoZSBwaW5jaCBzZXR0aW5ncy4KK2NsYXNzIENDUGluY2hab29tVmlld3BvcnQg
eworcHVibGljOgorICAgIENDUGluY2hab29tVmlld3BvcnQoKSA6IG1fc2NhbGVGYWN0b3IoMCkg
eyB9CisKKyAgICB2b2lkIHNldFRvdGFsU2NhbGUoZmxvYXQgZmFjdG9yKSB7IG1fc2NhbGVGYWN0
b3IgPSBmYWN0b3I7IH0KKworICAgIC8vIFJldHVybnMgdGhlIGJvdW5kcyBhbmQgb2Zmc2V0IG9m
IHRoZSBzY2FsZWQgYW5kIHRyYW5zbGF0ZWQgdmlld3BvcnQgdG8gdXNlIGZvciBwaW5jaC16b29t
LgorICAgIEZsb2F0UmVjdCBib3VuZHMoKSBjb25zdDsKKyAgICBjb25zdCBGbG9hdFBvaW50JiBv
ZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX29mZnNldDsgfQorCisgICAgY29uc3QgRmxvYXRTaXpl
JiB1bnBpbmNoZWRCb3VuZHMoKSBjb25zdCB7IHJldHVybiBtX3VucGluY2hlZEJvdW5kczsgfQor
ICAgIHZvaWQgc2V0VW5waW5jaGVkQm91bmRzKGNvbnN0IEZsb2F0U2l6ZSYgYm91bmRzKSB7IG1f
dW5waW5jaGVkQm91bmRzID0gYm91bmRzOyB9CisKKyAgICAvLyBBcHBseSB0aGUgc2Nyb2xsIG9m
ZnNldCBpbiBsYXlvdXQgc3BhY2UgdG8gdGhlIG9mZnNldCBvZiB0aGUgcGluY2gtem9vbSB2aWV3
cG9ydC4gVGhlIHZpZXdwb3J0IGNhbm5vdCBiZQorICAgIC8vIHNjcm9sbGVkIG91dHNpZGUgb2Yg
dGhlIHVucGluY2hlZCBib3VuZHMuIFJldHVybnMgdGhlIGNvbXBvbmVudCBvZiB0aGUgc2Nyb2xs
IHRoYXQgaXMgdW4tYXBwbGllZCBkdWUgdG8KKyAgICAvLyB0aGlzIGNvbnN0cmFpbnQuCisgICAg
RmxvYXRTaXplIGFwcGx5U2Nyb2xsKEZsb2F0U2l6ZSYpOworCitwcml2YXRlOgorICAgIGZsb2F0
IG1fc2NhbGVGYWN0b3I7CisgICAgRmxvYXRQb2ludCBtX29mZnNldDsKKworICAgIEZsb2F0U2l6
ZSBtX3VucGluY2hlZEJvdW5kczsKK307CisKIC8vIENDTGF5ZXJUcmVlSG9zdEltcGwgb3ducyB0
aGUgQ0NMYXllckltcGwgdHJlZSBhcyB3ZWxsIGFzIGFzc29jaWF0ZWQgcmVuZGVyaW5nIHN0YXRl
CiBjbGFzcyBDQ0xheWVyVHJlZUhvc3RJbXBsIDogcHVibGljIENDSW5wdXRIYW5kbGVyQ2xpZW50
LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyBDQ1JlbmRlcmVyQ2xpZW50LApA
QCAtMzA1LDYgKzMzMyw4IEBACiAgICAgLy8gcmVuZGVyaW5nIGFuZCBpbnB1dCBldmVudCBoaXQg
dGVzdGluZy4KICAgICBDQ0xheWVyTGlzdCBtX3JlbmRlclN1cmZhY2VMYXllckxpc3Q7CiAKKyAg
ICBDQ1BpbmNoWm9vbVZpZXdwb3J0IG1fcGluY2hab29tVmlld3BvcnQ7CisKICAgICBPd25QdHI8
Q0NGcmFtZVJhdGVDb3VudGVyPiBtX2Zwc0NvdW50ZXI7CiAgICAgT3duUHRyPENDRGVidWdSZWN0
SGlzdG9yeT4gbV9kZWJ1Z1JlY3RIaXN0b3J5OwogfTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAJ
KHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NMYXllclRyZWVIb3N0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDgyLDcgKzQ4Miw3IEBA
CiAKIHN0YXRpYyB2b2lkIHNldFNjYWxlKExheWVyQ2hyb21pdW0qIGxheWVyLCBmbG9hdCBkZXZp
Y2VTY2FsZUZhY3RvciwgZmxvYXQgcGFnZVNjYWxlRmFjdG9yKQogewotICAgIGlmIChsYXllci0+
Ym91bmRzQ29udGFpblBhZ2VTY2FsZSgpKQorICAgIGlmIChmYWxzZSAvKmxheWVyLT5ib3VuZHND
b250YWluUGFnZVNjYWxlKCkqLykKICAgICAgICAgbGF5ZXItPnNldENvbnRlbnRzU2NhbGUoZGV2
aWNlU2NhbGVGYWN0b3IpOwogICAgIGVsc2UKICAgICAgICAgbGF5ZXItPnNldENvbnRlbnRzU2Nh
bGUoZGV2aWNlU2NhbGVGYWN0b3IgKiBwYWdlU2NhbGVGYWN0b3IpOwpJbmRleDogV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXll
clRyZWVIb3N0Q29tbW9uLmNwcAkocmV2aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC00ODIsNiArNDgyLDggQEAKICAgICBXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBs
YXllckxvY2FsVHJhbnNmb3JtOwogICAgIC8vIExUID0gU1twYWdlU2NhbGVEZWx0YV0KICAgICBs
YXllckxvY2FsVHJhbnNmb3JtLnNjYWxlKGxheWVyLT5wYWdlU2NhbGVEZWx0YSgpKTsKKyAgICBs
YXllckxvY2FsVHJhbnNmb3JtLnNjYWxlKGxheWVyLT5wYWdlU2NhbGUoKSk7CisgICAgbGF5ZXJM
b2NhbFRyYW5zZm9ybS50cmFuc2xhdGUobGF5ZXItPmxvY2FsT2Zmc2V0KCkud2lkdGgoKSwgbGF5
ZXItPmxvY2FsT2Zmc2V0KCkuaGVpZ2h0KCkpOwogICAgIC8vIExUID0gU1twYWdlU2NhbGVEZWx0
YV0gKiBUcltvcmlnaW5dICogVHJbb3JpZ2luMmFuY2hvcl0KICAgICBsYXllckxvY2FsVHJhbnNm
b3JtLnRyYW5zbGF0ZTNkKHBvc2l0aW9uLngoKSArIGFuY2hvclBvaW50LngoKSAqIGJvdW5kcy53
aWR0aCgpLCBwb3NpdGlvbi55KCkgKyBhbmNob3JQb2ludC55KCkgKiBib3VuZHMuaGVpZ2h0KCks
IGxheWVyLT5hbmNob3JQb2ludFooKSk7CiAgICAgLy8gTFQgPSBTW3BhZ2VTY2FsZURlbHRhXSAq
IFRyW29yaWdpbl0gKiBUcltvcmlnaW4yYW5jaG9yXSAqIE1bbGF5ZXJdCkluZGV4OiBXZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uaAkocmV2
aXNpb24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXll
ckNocm9taXVtLmgJKHdvcmtpbmcgY29weSkKQEAgLTE3Niw4ICsxNzYsMTAgQEAKICAgICB2b2lk
IHNldEZvcmNlUmVuZGVyU3VyZmFjZShib29sKTsKIAogICAgIEludFNpemUgc2Nyb2xsRGVsdGEo
KSBjb25zdCB7IHJldHVybiBJbnRTaXplKCk7IH0KKyAgICBGbG9hdFNpemUgbG9jYWxPZmZzZXQo
KSBjb25zdCB7IHJldHVybiBGbG9hdFNpemUoKTsgfQogCiAgICAgZmxvYXQgcGFnZVNjYWxlRGVs
dGEoKSBjb25zdCB7IHJldHVybiAxOyB9CisgICAgZmxvYXQgcGFnZVNjYWxlKCkgY29uc3QgeyBy
ZXR1cm4gMTsgfQogCiAgICAgdm9pZCBzZXREb3VibGVTaWRlZChib29sKTsKICAgICBib29sIGRv
dWJsZVNpZGVkKCkgY29uc3QgeyByZXR1cm4gbV9kb3VibGVTaWRlZDsgfQo=
</data>
<flag name="commit-queue"
          id="174918"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163676</attachid>
            <date>2012-09-12 13:04:05 -0700</date>
            <delta_ts>2012-09-12 16:50:14 -0700</delta_ts>
            <desc>Rename pageScale, and easy comments addressed.</desc>
            <filename>pinch_zoom_sept12.diff</filename>
            <type>text/plain</type>
            <size>24897</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjA5LDcgKzIwOSw3IEBACiBjb25zdCBkb3VibGUgV2ViVmlldzo6dGV4dFNpemVNdWx0aXBsaWVy
UmF0aW8gPSAxLjI7CiBjb25zdCBkb3VibGUgV2ViVmlldzo6bWluVGV4dFNpemVNdWx0aXBsaWVy
ID0gMC41OwogY29uc3QgZG91YmxlIFdlYlZpZXc6Om1heFRleHRTaXplTXVsdGlwbGllciA9IDMu
MDsKLWNvbnN0IGZsb2F0IFdlYlZpZXc6Om1pblBhZ2VTY2FsZUZhY3RvciA9IDAuMjU7Citjb25z
dCBmbG9hdCBXZWJWaWV3OjptaW5QYWdlU2NhbGVGYWN0b3IgPSAxLjA7CiBjb25zdCBmbG9hdCBX
ZWJWaWV3OjptYXhQYWdlU2NhbGVGYWN0b3IgPSA0LjA7CiAKIApAQCAtMzkxMCwxNiArMzkxMCwx
MSBAQAogICAgICAgICBUUkFDRV9FVkVOVF9JTlNUQU5UMigid2Via2l0IiwgIldlYlZpZXdJbXBs
OjphcHBseVNjcm9sbEFuZFNjYWxlOjpzY3JvbGxCeSIsICJ4Iiwgc2Nyb2xsRGVsdGEud2lkdGgs
ICJ5Iiwgc2Nyb2xsRGVsdGEuaGVpZ2h0KTsKICAgICAgICAgbWFpbkZyYW1lSW1wbCgpLT5mcmFt
ZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAgIH0gZWxzZSB7Ci0gICAgICAgIC8v
IFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEgc2NhbGUgYW5kIHNjcm9sbCBpbiBh
IHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5k
IHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGluIHRoZSBvbGQgY29vcmRpbmF0ZSBz
cGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtCi0gICAgICAgIC8vIGJ5IHRo
ZSBwYWdlIHNjYWxlIGRlbHRhLgogICAgICAgICBXZWJTaXplIHNjcm9sbE9mZnNldCA9IG1haW5G
cmFtZSgpLT5zY3JvbGxPZmZzZXQoKTsKICAgICAgICAgc2Nyb2xsT2Zmc2V0LndpZHRoICs9IHNj
cm9sbERlbHRhLndpZHRoOwogICAgICAgICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICs9IHNjcm9sbERl
bHRhLmhlaWdodDsKLSAgICAgICAgV2ViUG9pbnQgc2NhbGVkU2Nyb2xsT2Zmc2V0KHNjcm9sbE9m
ZnNldC53aWR0aCAqIHBhZ2VTY2FsZURlbHRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgc2Nyb2xsT2Zmc2V0LmhlaWdodCAqIHBhZ2VTY2FsZURlbHRhKTsKLSAgICAgICAg
c2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNj
YWxlZFNjcm9sbE9mZnNldCk7CisgICAgICAgIFdlYlBvaW50IHNjcm9sbFBvaW50KHNjcm9sbE9m
ZnNldC53aWR0aCwgc2Nyb2xsT2Zmc2V0LmhlaWdodCk7CisgICAgICAgIHNldFBhZ2VTY2FsZUZh
Y3RvcihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY3JvbGxQb2ludCk7CiAg
ICAgfQogfQogCkluZGV4OiBXZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NMYXllclRyZWVIb3N0VGVz
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDTGF5ZXJUcmVlSG9z
dFRlc3QuY3BwCShyZXZpc2lvbiAxMjgwMDQpCisrKyBXZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NM
YXllclRyZWVIb3N0VGVzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNzAsNyArMTA3MCw3IEBA
CiAgICAgewogICAgICAgICBFWFBFQ1RfRVEoSW50U2l6ZSgyMCwgMjApLCBpbXBsLT5sYXlvdXRW
aWV3cG9ydFNpemUoKSk7CiAgICAgICAgIEVYUEVDVF9FUShTS19Db2xvckdSQVksIGltcGwtPmJh
Y2tncm91bmRDb2xvcigpKTsKLSAgICAgICAgRVhQRUNUX0VRKDUsIGltcGwtPnBhZ2VTY2FsZSgp
KTsKKyAgICAgICAgRVhQRUNUX0VRKDUsIGltcGwtPnBhZ2VTY2FsZUZhY3RvcigpKTsKIAogICAg
ICAgICBlbmRUZXN0KCk7CiAgICAgfQpAQCAtMTExMSw3ICsxMTExLDcgQEAKICAgICB7CiAgICAg
ICAgIGltcGwtPnJvb3RMYXllcigpLT5zZXRTY3JvbGxhYmxlKHRydWUpOwogICAgICAgICBpbXBs
LT5yb290TGF5ZXIoKS0+c2V0U2Nyb2xsUG9zaXRpb24oSW50UG9pbnQoKSk7Ci0gICAgICAgIGlt
cGwtPnNldFBhZ2VTY2FsZUZhY3RvckFuZExpbWl0cyhpbXBsLT5wYWdlU2NhbGUoKSwgMC41LCAy
KTsKKyAgICAgICAgaW1wbC0+c2V0UGFnZVNjYWxlRmFjdG9yQW5kTGltaXRzKGltcGwtPnBhZ2VT
Y2FsZUZhY3RvcigpLCAwLjUsIDIpOwogCiAgICAgICAgIC8vIFdlIHJlcXVlc3QgYW5pbWF0aW9u
IG9ubHkgb25jZS4KICAgICAgICAgaWYgKCFtX2FuaW1hdGlvblJlcXVlc3RlZCkgewpAQCAtMTEz
Miw3ICsxMTMyLDcgQEAKICAgICAgICAgaW1wbC0+cHJvY2Vzc1Njcm9sbERlbHRhcygpOwogICAg
ICAgICAvLyBXZSBnZXQgb25lIGNvbW1pdCBiZWZvcmUgdGhlIGZpcnN0IGRyYXcsIGFuZCB0aGUg
YW5pbWF0aW9uIGRvZXNuJ3QgaGFwcGVuIHVudGlsIHRoZSBzZWNvbmQgZHJhdy4KICAgICAgICAg
aWYgKGltcGwtPnNvdXJjZUZyYW1lTnVtYmVyKCkgPT0gMSkgewotICAgICAgICAgICAgRVhQRUNU
X0VRKDEuMjUsIGltcGwtPnBhZ2VTY2FsZSgpKTsKKyAgICAgICAgICAgIEVYUEVDVF9FUSgxLjI1
LCBpbXBsLT5wYWdlU2NhbGVGYWN0b3IoKSk7CiAgICAgICAgICAgICBlbmRUZXN0KCk7CiAgICAg
ICAgIH0gZWxzZQogICAgICAgICAgICAgcG9zdFNldE5lZWRzUmVkcmF3VG9NYWluVGhyZWFkKCk7
CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFn
ZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGFnZS9GcmFtZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTk1MiwxMiArOTUyLDE1IEBACiAKIGZsb2F0IEZyYW1lOjpmcmFt
ZVNjYWxlRmFjdG9yKCkgY29uc3QKIHsKKyAgICByZXR1cm4gMTsKKyNpZiAwCiAgICAgUGFnZSog
cGFnZSA9IHRoaXMtPnBhZ2UoKTsKIAogICAgIC8vIE1haW4gZnJhbWUgaXMgc2NhbGVkIHdpdGgg
cmVzcGVjdCB0byBoZSBjb250YWluZXIgYnV0IGlubmVyIGZyYW1lcyBhcmUgbm90IHNjYWxlZCB3
aXRoIHJlc3BlY3QgdG8gdGhlIG1haW4gZnJhbWUuCiAgICAgaWYgKCFwYWdlIHx8IHBhZ2UtPm1h
aW5GcmFtZSgpICE9IHRoaXMpCiAgICAgICAgIHJldHVybiAxOwogICAgIHJldHVybiBwYWdlLT5w
YWdlU2NhbGVGYWN0b3IoKTsKKyNlbmRpZgogfQogCiB2b2lkIEZyYW1lOjpzdXNwZW5kQWN0aXZl
RE9NT2JqZWN0c0FuZEFuaW1hdGlvbnMoKQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaAkocmV2aXNpb24gMTI4MDA0KQor
KysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xOTYsMTMgKzE5NiwyMCBAQAogICAgIGNvbnN0IEZsb2F0U2l6ZSYg
c2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3Njcm9sbERlbHRhOyB9CiAgICAgdm9pZCBz
ZXRTY3JvbGxEZWx0YShjb25zdCBGbG9hdFNpemUmKTsKIAorICAgIGNvbnN0IEZsb2F0U2l6ZSYg
bG9jYWxPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2xvY2FsT2Zmc2V0OyB9CisgICAgdm9pZCBz
ZXRMb2NhbE9mZnNldChjb25zdCBGbG9hdFNpemUmKTsKKwogICAgIGZsb2F0IHBhZ2VTY2FsZURl
bHRhKCkgY29uc3QgeyByZXR1cm4gbV9wYWdlU2NhbGVEZWx0YTsgfQogICAgIHZvaWQgc2V0UGFn
ZVNjYWxlRGVsdGEoZmxvYXQpOwogCisgICAgZmxvYXQgcGFnZVNjYWxlRmFjdG9yKCkgY29uc3Qg
eyByZXR1cm4gbV9wYWdlU2NhbGVGYWN0b3I7IH0KKyAgICB2b2lkIHNldFBhZ2VTY2FsZUZhY3Rv
cihmbG9hdCBzY2FsZSkgeyBtX3BhZ2VTY2FsZUZhY3RvciA9IHNjYWxlOyB9CisKICAgICBjb25z
dCBJbnRTaXplJiBzZW50U2Nyb2xsRGVsdGEoKSBjb25zdCB7IHJldHVybiBtX3NlbnRTY3JvbGxE
ZWx0YTsgfQogICAgIHZvaWQgc2V0U2VudFNjcm9sbERlbHRhKGNvbnN0IEludFNpemUmIHNlbnRT
Y3JvbGxEZWx0YSkgeyBtX3NlbnRTY3JvbGxEZWx0YSA9IHNlbnRTY3JvbGxEZWx0YTsgfQogCi0g
ICAgdm9pZCBzY3JvbGxCeShjb25zdCBGbG9hdFNpemUmIHNjcm9sbCk7CisgICAgLy8gUmV0dXJu
cyB0aGUgZGVsdGEgb2YgdGhlIHNjcm9sbCB0aGF0IHdhcyBvdXRzaWRlIG9mIHRoZSBib3VuZHMg
b2YgdGhlIGluaXRpYWwgc2Nyb2xsCisgICAgRmxvYXRTaXplIHNjcm9sbEJ5KGNvbnN0IEZsb2F0
U2l6ZSYgc2Nyb2xsKTsKIAogICAgIGJvb2wgc2Nyb2xsYWJsZSgpIGNvbnN0IHsgcmV0dXJuIG1f
c2Nyb2xsYWJsZTsgfQogICAgIHZvaWQgc2V0U2Nyb2xsYWJsZShib29sIHNjcm9sbGFibGUpIHsg
bV9zY3JvbGxhYmxlID0gc2Nyb2xsYWJsZTsgfQpAQCAtMzU1LDYgKzM2Miw4IEBACiAgICAgSW50
U2l6ZSBtX3NlbnRTY3JvbGxEZWx0YTsKICAgICBJbnRTaXplIG1fbWF4U2Nyb2xsUG9zaXRpb247
CiAgICAgZmxvYXQgbV9wYWdlU2NhbGVEZWx0YTsKKyAgICBmbG9hdCBtX3BhZ2VTY2FsZUZhY3Rv
cjsKKyAgICBGbG9hdFNpemUgbV9sb2NhbE9mZnNldDsKIAogICAgIC8vIFRoZSBsYXllciB3aG9z
ZSBjb29yZGluYXRlIHNwYWNlIHRoaXMgbGF5ZXIgZHJhd3MgaW50by4gVGhpcyBjYW4gYmUKICAg
ICAvLyBlaXRoZXIgdGhlIHNhbWUgbGF5ZXIgKG1fcmVuZGVyVGFyZ2V0ID09IHRoaXMpIG9yIGFu
IGFuY2VzdG9yIG9mIHRoaXMKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcAkocmV2aXNp
b24gMTI4MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xh
eWVyVHJlZUhvc3RJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjksNiArNjksNDkgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCitGbG9hdFJlY3QgQ0NQaW5jaFpvb21WaWV3cG9ydDo6Ym91
bmRzKCkgY29uc3QKK3sKKyAgICBGbG9hdFNpemUgc2NhbGVkQm91bmRzID0gbV91bnBpbmNoZWRC
b3VuZHM7CisgICAgaWYgKG1fcGFnZVNjYWxlRmFjdG9yID4gMSkKKyAgICAgICAgc2NhbGVkQm91
bmRzLnNjYWxlKDEgLyBtX3BhZ2VTY2FsZUZhY3Rvcik7CisKKyAgICBGbG9hdFJlY3QgYm91bmRz
OworICAgIGJvdW5kcy5zZXRTaXplKHNjYWxlZEJvdW5kcyk7CisgICAgYm91bmRzLnNldExvY2F0
aW9uKG1fcGluY2hWaWV3cG9ydFNjcm9sbERlbHRhKTsKKworICAgIHJldHVybiBib3VuZHM7Cit9
CisKK0Zsb2F0U2l6ZSBDQ1BpbmNoWm9vbVZpZXdwb3J0OjphcHBseVNjcm9sbChGbG9hdFNpemUm
IGRlbHRhKQoreworICAgIEZsb2F0U2l6ZSBvdmVyZmxvdzsKKyAgICBGbG9hdFJlY3QgcGluY2hl
ZEJvdW5kcyA9IGJvdW5kcygpOworCisgICAgcGluY2hlZEJvdW5kcy5tb3ZlKGRlbHRhKTsKKyAg
ICBpZiAocGluY2hlZEJvdW5kcy54KCkgPCAwKSB7CisgICAgICAgIHBpbmNoZWRCb3VuZHMuc2V0
WCgwKTsKKyAgICAgICAgb3ZlcmZsb3cuc2V0V2lkdGgocGluY2hlZEJvdW5kcy54KCkpOworICAg
IH0KKworICAgIGlmIChwaW5jaGVkQm91bmRzLnkoKSA8IDApIHsKKyAgICAgICAgcGluY2hlZEJv
dW5kcy5zZXRZKDApOworICAgICAgICBvdmVyZmxvdy5zZXRIZWlnaHQocGluY2hlZEJvdW5kcy55
KCkpOworICAgIH0KKworICAgIGlmIChwaW5jaGVkQm91bmRzLm1heFgoKSA+IG1fdW5waW5jaGVk
Qm91bmRzLndpZHRoKCkpIHsKKyAgICAgICAgcGluY2hlZEJvdW5kcy5tb3ZlKG1fdW5waW5jaGVk
Qm91bmRzLndpZHRoKCkgLSBwaW5jaGVkQm91bmRzLm1heFgoKSwgMCk7CisgICAgICAgIG92ZXJm
bG93LnNldFdpZHRoKHBpbmNoZWRCb3VuZHMubWF4WCgpIC0gbV91bnBpbmNoZWRCb3VuZHMud2lk
dGgoKSk7CisgICAgfQorCisgICAgaWYgKHBpbmNoZWRCb3VuZHMubWF4WSgpID4gbV91bnBpbmNo
ZWRCb3VuZHMuaGVpZ2h0KCkpIHsKKyAgICAgICAgcGluY2hlZEJvdW5kcy5tb3ZlKDAsIG1fdW5w
aW5jaGVkQm91bmRzLmhlaWdodCgpIC0gcGluY2hlZEJvdW5kcy5tYXhZKCkpOworICAgICAgICBv
dmVyZmxvdy5zZXRIZWlnaHQocGluY2hlZEJvdW5kcy5tYXhZKCkgLSBtX3VucGluY2hlZEJvdW5k
cy5oZWlnaHQoKSk7CisgICAgfQorICAgIG1fcGluY2hWaWV3cG9ydFNjcm9sbERlbHRhID0gcGlu
Y2hlZEJvdW5kcy5sb2NhdGlvbigpOworCisgICAgcmV0dXJuIG92ZXJmbG93OworfQorCiBjbGFz
cyBDQ0xheWVyVHJlZUhvc3RJbXBsVGltZVNvdXJjZUFkYXB0ZXIgOiBwdWJsaWMgQ0NUaW1lU291
cmNlQ2xpZW50IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDQ0xheWVyVHJlZUhvc3RJbXBs
VGltZVNvdXJjZUFkYXB0ZXIpOwogcHVibGljOgpAQCAtMTI4LDExICsxNzEsMTEgQEAKICAgICAs
IG1fdmlzaWJsZSh0cnVlKQogICAgICwgbV9jb250ZW50c1RleHR1cmVzUHVyZ2VkKGZhbHNlKQog
ICAgICwgbV9tZW1vcnlBbGxvY2F0aW9uTGltaXRCeXRlcyhDQ1ByaW9yaXRpemVkVGV4dHVyZU1h
bmFnZXI6OmRlZmF1bHRNZW1vcnlBbGxvY2F0aW9uTGltaXQoKSkKLSAgICAsIG1fcGFnZVNjYWxl
KDEpCisgICAgLCBtX3BhZ2VTY2FsZUZhY3RvcigxKQogICAgICwgbV9wYWdlU2NhbGVEZWx0YSgx
KQogICAgICwgbV9zZW50UGFnZVNjYWxlRGVsdGEoMSkKLSAgICAsIG1fbWluUGFnZVNjYWxlKDAp
Ci0gICAgLCBtX21heFBhZ2VTY2FsZSgwKQorICAgICwgbV9taW5QYWdlU2NhbGVGYWN0b3IoMCkK
KyAgICAsIG1fbWF4UGFnZVNjYWxlRmFjdG9yKDApCiAgICAgLCBtX2JhY2tncm91bmRDb2xvcigw
KQogICAgICwgbV9oYXNUcmFuc3BhcmVudEJhY2tncm91bmQoZmFsc2UpCiAgICAgLCBtX25lZWRz
QW5pbWF0ZUxheWVycyhmYWxzZSkKQEAgLTIwOSw3ICsyNTIsNyBAQAogCiAgICAgSW50U2l6ZSBz
Y3JvbGxUb3RhbCA9IGZsb29yZWRJbnRTaXplKG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xs
UG9zaXRpb24oKSArIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsRGVsdGEoKSk7CiAgICAg
c2Nyb2xsVG90YWwuc2NhbGUobV9wYWdlU2NhbGVEZWx0YSk7Ci0gICAgZmxvYXQgc2NhbGVUb3Rh
bCA9IG1fcGFnZVNjYWxlICogbV9wYWdlU2NhbGVEZWx0YTsKKyAgICBmbG9hdCBzY2FsZVRvdGFs
ID0gbV9wYWdlU2NhbGVGYWN0b3IgKiBtX3BhZ2VTY2FsZURlbHRhOwogICAgIEludFNpemUgc2Nh
bGVkQ29udGVudFNpemUgPSBjb250ZW50U2l6ZSgpOwogICAgIHNjYWxlZENvbnRlbnRTaXplLnNj
YWxlKG1fcGFnZVNjYWxlRGVsdGEpOwogCkBAIC03NDcsNiArNzkwLDggQEAKICAgICBtX2xheW91
dFZpZXdwb3J0U2l6ZSA9IGxheW91dFZpZXdwb3J0U2l6ZTsKICAgICBtX2RldmljZVZpZXdwb3J0
U2l6ZSA9IGRldmljZVZpZXdwb3J0U2l6ZTsKIAorICAgIG1fcGluY2hab29tVmlld3BvcnQuc2V0
VW5waW5jaGVkQm91bmRzKEZsb2F0U2l6ZShsYXlvdXRWaWV3cG9ydFNpemUpKTsKKwogICAgIHVw
ZGF0ZU1heFNjcm9sbFBvc2l0aW9uKCk7CiAKICAgICBpZiAobV9yZW5kZXJlcikKQEAgLTc1NSwy
MiArODAwLDYgQEAKICAgICBtX2NsaWVudC0+b25DYW5EcmF3U3RhdGVDaGFuZ2VkKGNhbkRyYXco
KSk7CiB9CiAKLXN0YXRpYyB2b2lkIGFkanVzdFNjcm9sbHNGb3JQYWdlU2NhbGVDaGFuZ2UoQ0NM
YXllckltcGwqIGxheWVySW1wbCwgZmxvYXQgcGFnZVNjYWxlQ2hhbmdlKQotewotICAgIGlmICgh
bGF5ZXJJbXBsKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAobGF5ZXJJbXBsLT5zY3JvbGxh
YmxlKCkpIHsKLSAgICAgICAgLy8gV2UgbmVlZCB0byBjb252ZXJ0IGltcGwtc2lkZSBzY3JvbGwg
ZGVsdGFzIHRvIHBhZ2VTY2FsZSBzcGFjZS4KLSAgICAgICAgRmxvYXRTaXplIHNjcm9sbERlbHRh
ID0gbGF5ZXJJbXBsLT5zY3JvbGxEZWx0YSgpOwotICAgICAgICBzY3JvbGxEZWx0YS5zY2FsZShw
YWdlU2NhbGVDaGFuZ2UpOwotICAgICAgICBsYXllckltcGwtPnNldFNjcm9sbERlbHRhKHNjcm9s
bERlbHRhKTsKLSAgICB9Ci0KLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGxheWVySW1wbC0+
Y2hpbGRyZW4oKS5zaXplKCk7ICsraSkKLSAgICAgICAgYWRqdXN0U2Nyb2xsc0ZvclBhZ2VTY2Fs
ZUNoYW5nZShsYXllckltcGwtPmNoaWxkcmVuKClbaV0uZ2V0KCksIHBhZ2VTY2FsZUNoYW5nZSk7
Ci19Ci0KIHZvaWQgQ0NMYXllclRyZWVIb3N0SW1wbDo6c2V0RGV2aWNlU2NhbGVGYWN0b3IoZmxv
YXQgZGV2aWNlU2NhbGVGYWN0b3IpCiB7CiAgICAgaWYgKGRldmljZVNjYWxlRmFjdG9yID09IG1f
ZGV2aWNlU2NhbGVGYWN0b3IpCkBAIC03ODEsMjMgKzgxMCwxOSBAQAogfQogCiAKLXZvaWQgQ0NM
YXllclRyZWVIb3N0SW1wbDo6c2V0UGFnZVNjYWxlRmFjdG9yQW5kTGltaXRzKGZsb2F0IHBhZ2VT
Y2FsZSwgZmxvYXQgbWluUGFnZVNjYWxlLCBmbG9hdCBtYXhQYWdlU2NhbGUpCit2b2lkIENDTGF5
ZXJUcmVlSG9zdEltcGw6OnNldFBhZ2VTY2FsZUZhY3RvckFuZExpbWl0cyhmbG9hdCBwYWdlU2Nh
bGVGYWN0b3IsIGZsb2F0IG1pblBhZ2VTY2FsZUZhY3RvciwgZmxvYXQgbWF4UGFnZVNjYWxlRmFj
dG9yKQogewotICAgIGlmICghcGFnZVNjYWxlKQorICAgIGlmICghcGFnZVNjYWxlRmFjdG9yKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBpZiAobV9zZW50UGFnZVNjYWxlRGVsdGEgPT0gMSAmJiBw
YWdlU2NhbGUgPT0gbV9wYWdlU2NhbGUgJiYgbWluUGFnZVNjYWxlID09IG1fbWluUGFnZVNjYWxl
ICYmIG1heFBhZ2VTY2FsZSA9PSBtX21heFBhZ2VTY2FsZSkKKyAgICBpZiAobV9zZW50UGFnZVNj
YWxlRGVsdGEgPT0gMSAmJiBwYWdlU2NhbGVGYWN0b3IgPT0gbV9wYWdlU2NhbGVGYWN0b3IgJiYg
bWluUGFnZVNjYWxlRmFjdG9yID09IG1fbWluUGFnZVNjYWxlRmFjdG9yICYmIG1heFBhZ2VTY2Fs
ZUZhY3RvciA9PSBtX21heFBhZ2VTY2FsZUZhY3RvcikKICAgICAgICAgcmV0dXJuOwogCi0gICAg
bV9taW5QYWdlU2NhbGUgPSBtaW5QYWdlU2NhbGU7Ci0gICAgbV9tYXhQYWdlU2NhbGUgPSBtYXhQ
YWdlU2NhbGU7CisgICAgbV9taW5QYWdlU2NhbGVGYWN0b3IgPSBtaW5QYWdlU2NhbGVGYWN0b3I7
CisgICAgbV9tYXhQYWdlU2NhbGVGYWN0b3IgPSBtYXhQYWdlU2NhbGVGYWN0b3I7CiAKLSAgICBm
bG9hdCBwYWdlU2NhbGVDaGFuZ2UgPSBwYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKLSAgICBtX3Bh
Z2VTY2FsZSA9IHBhZ2VTY2FsZTsKKyAgICBtX3BhZ2VTY2FsZUZhY3RvciA9IHBhZ2VTY2FsZUZh
Y3RvcjsKIAotICAgIGlmIChwYWdlU2NhbGVDaGFuZ2UgIT0gMSkKLSAgICAgICAgYWRqdXN0U2Ny
b2xsc0ZvclBhZ2VTY2FsZUNoYW5nZShtX3Jvb3RTY3JvbGxMYXllckltcGwsIHBhZ2VTY2FsZUNo
YW5nZSk7Ci0KICAgICAvLyBDbGFtcCBkZWx0YSB0byBsaW1pdHMgYW5kIHJlZnJlc2ggZGlzcGxh
eSBtYXRyaXguCiAgICAgc2V0UGFnZVNjYWxlRGVsdGEobV9wYWdlU2NhbGVEZWx0YSAvIG1fc2Vu
dFBhZ2VTY2FsZURlbHRhKTsKICAgICBtX3NlbnRQYWdlU2NhbGVEZWx0YSA9IDE7CkBAIC04MDgs
MTEgKzgzMywxMSBAQAogdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjpzZXRQYWdlU2NhbGVEZWx0
YShmbG9hdCBkZWx0YSkKIHsKICAgICAvLyBDbGFtcCB0byB0aGUgY3VycmVudCBtaW4vbWF4IGxp
bWl0cy4KLSAgICBmbG9hdCBmaW5hbE1hZ25pZnlTY2FsZSA9IG1fcGFnZVNjYWxlICogZGVsdGE7
Ci0gICAgaWYgKG1fbWluUGFnZVNjYWxlICYmIGZpbmFsTWFnbmlmeVNjYWxlIDwgbV9taW5QYWdl
U2NhbGUpCi0gICAgICAgIGRlbHRhID0gbV9taW5QYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKLSAg
ICBlbHNlIGlmIChtX21heFBhZ2VTY2FsZSAmJiBmaW5hbE1hZ25pZnlTY2FsZSA+IG1fbWF4UGFn
ZVNjYWxlKQotICAgICAgICBkZWx0YSA9IG1fbWF4UGFnZVNjYWxlIC8gbV9wYWdlU2NhbGU7Cisg
ICAgZmxvYXQgZmluYWxNYWduaWZ5U2NhbGUgPSBtX3BhZ2VTY2FsZUZhY3RvciAqIGRlbHRhOwor
ICAgIGlmIChtX21pblBhZ2VTY2FsZUZhY3RvciAmJiBmaW5hbE1hZ25pZnlTY2FsZSA8IG1fbWlu
UGFnZVNjYWxlRmFjdG9yKQorICAgICAgICBkZWx0YSA9IG1fbWluUGFnZVNjYWxlRmFjdG9yIC8g
bV9wYWdlU2NhbGVGYWN0b3I7CisgICAgZWxzZSBpZiAobV9tYXhQYWdlU2NhbGVGYWN0b3IgJiYg
ZmluYWxNYWduaWZ5U2NhbGUgPiBtX21heFBhZ2VTY2FsZUZhY3RvcikKKyAgICAgICAgZGVsdGEg
PSBtX21heFBhZ2VTY2FsZUZhY3RvciAvIG1fcGFnZVNjYWxlRmFjdG9yOwogCiAgICAgaWYgKGRl
bHRhID09IG1fcGFnZVNjYWxlRGVsdGEpCiAgICAgICAgIHJldHVybjsKQEAgLTgyMCw4ICs4NDUs
MTAgQEAKICAgICBtX3BhZ2VTY2FsZURlbHRhID0gZGVsdGE7CiAKICAgICB1cGRhdGVNYXhTY3Jv
bGxQb3NpdGlvbigpOwotICAgIGlmIChtX3Jvb3RTY3JvbGxMYXllckltcGwpCisgICAgaWYgKG1f
cm9vdFNjcm9sbExheWVySW1wbCkgewogICAgICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNl
dFBhZ2VTY2FsZURlbHRhKG1fcGFnZVNjYWxlRGVsdGEpOworICAgICAgICBtX3Jvb3RTY3JvbGxM
YXllckltcGwtPnNldFBhZ2VTY2FsZUZhY3RvcihtX3BhZ2VTY2FsZUZhY3Rvcik7CisgICAgfQog
fQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnVwZGF0ZU1heFNjcm9sbFBvc2l0aW9uKCkK
QEAgLTg0MCw4ICs4NjcsMTMgQEAKICAgICB2aWV3Qm91bmRzLnNjYWxlKDEgLyBtX3BhZ2VTY2Fs
ZURlbHRhKTsKIAogICAgIC8vIG1heFNjcm9sbCBpcyBjb21wdXRlZCBpbiBwaHlzaWNhbCBwaXhl
bHMsIGJ1dCBzY3JvbGwgcG9zaXRpb25zIGFyZSBpbiBsYXlvdXQgcGl4ZWxzLgotICAgIEludFNp
emUgbWF4U2Nyb2xsID0gY29udGVudFNpemUoKSAtIGV4cGFuZGVkSW50U2l6ZSh2aWV3Qm91bmRz
KTsKLSAgICBtYXhTY3JvbGwuc2NhbGUoMSAvIG1fZGV2aWNlU2NhbGVGYWN0b3IpOworICAgIC8v
IENvbXB1dGUgdGhlIGNvbnRlbnRTaXplIGluIHRlcm1zIG9mIGxheW91dCBwaXhlbHMuCisgICAg
SW50U2l6ZSBzY2FsZWRDb250ZW50U2l6ZSA9IGNvbnRlbnRTaXplKCk7CisgICAgc2NhbGVkQ29u
dGVudFNpemUuc2NhbGUoMSAvIChtX3BhZ2VTY2FsZUZhY3RvciAqIG1fZGV2aWNlU2NhbGVGYWN0
b3IpKTsKKworICAgIEludFNpemUgbWF4U2Nyb2xsID0gc2NhbGVkQ29udGVudFNpemUgLSBleHBh
bmRlZEludFNpemUodmlld0JvdW5kcyk7CisgICAgbWF4U2Nyb2xsLnNjYWxlKDEgLyAobV9kZXZp
Y2VTY2FsZUZhY3RvcikpOworCiAgICAgLy8gVGhlIHZpZXdwb3J0IG1heSBiZSBsYXJnZXIgdGhh
biB0aGUgY29udGVudHMgaW4gc29tZSBjYXNlcywgc3VjaCBhcwogICAgIC8vIGhhdmluZyBhIHZl
cnRpY2FsIHNjcm9sbGJhciBidXQgbm8gaG9yaXpvbnRhbCBvdmVyZmxvdy4KICAgICBtYXhTY3Jv
bGwuY2xhbXBOZWdhdGl2ZVRvWmVybygpOwpAQCAtOTI0LDcgKzk1Niw3IEBACiAgICAgcmV0dXJu
IFNjcm9sbElnbm9yZWQ7CiB9CiAKLXN0YXRpYyBGbG9hdFNpemUgc2Nyb2xsTGF5ZXJXaXRoU2Ny
ZWVuU3BhY2VEZWx0YShDQ0xheWVySW1wbCYgbGF5ZXJJbXBsLCBjb25zdCBGbG9hdFBvaW50JiBz
Y3JlZW5TcGFjZVBvaW50LCBjb25zdCBGbG9hdFNpemUmIHNjcmVlblNwYWNlRGVsdGEpCitzdGF0
aWMgRmxvYXRTaXplIHNjcm9sbExheWVyV2l0aFNjcmVlblNwYWNlRGVsdGEoQ0NQaW5jaFpvb21W
aWV3cG9ydCogdmlld3BvcnQsIENDTGF5ZXJJbXBsJiBsYXllckltcGwsIGNvbnN0IEZsb2F0UG9p
bnQmIHNjcmVlblNwYWNlUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgc2NyZWVuU3BhY2VEZWx0YSkK
IHsKICAgICAvLyBMYXllcnMgd2l0aCBub24taW52ZXJ0aWJsZSBzY3JlZW4gc3BhY2UgdHJhbnNm
b3JtcyBzaG91bGQgbm90IGhhdmUgcGFzc2VkIHRoZSBzY3JvbGwgaGl0CiAgICAgLy8gdGVzdCBp
biB0aGUgZmlyc3QgcGxhY2UuCkBAIC05NDYsOCArOTc4LDEzIEBACiAKICAgICAvLyBBcHBseSB0
aGUgc2Nyb2xsIGRlbHRhLgogICAgIEZsb2F0U2l6ZSBwcmV2aW91c0RlbHRhKGxheWVySW1wbC5z
Y3JvbGxEZWx0YSgpKTsKLSAgICBsYXllckltcGwuc2Nyb2xsQnkobG9jYWxFbmRQb2ludCAtIGxv
Y2FsU3RhcnRQb2ludCk7CisgICAgRmxvYXRTaXplIHVuc2Nyb2xsZWQgPSBsYXllckltcGwuc2Ny
b2xsQnkobG9jYWxFbmRQb2ludCAtIGxvY2FsU3RhcnRQb2ludCk7CiAKKyAgICBpZiAodmlld3Bv
cnQpIHsKKyAgICAgICAgdmlld3BvcnQtPmFwcGx5U2Nyb2xsKHVuc2Nyb2xsZWQpOworICAgICAg
ICBsYXllckltcGwuc2V0TG9jYWxPZmZzZXQoRmxvYXRTaXplKC12aWV3cG9ydC0+c2Nyb2xsRGVs
dGEoKS54KCksIC12aWV3cG9ydC0+c2Nyb2xsRGVsdGEoKS55KCkpKTsKKyAgICB9CisKICAgICAv
LyBDYWxjdWxhdGUgdGhlIGFwcGxpZWQgc2Nyb2xsIGRlbHRhIGluIHNjcmVlbiBzcGFjZSBjb29y
ZGluYXRlcy4KICAgICBGbG9hdFBvaW50IGFjdHVhbExvY2FsRW5kUG9pbnQgPSBsb2NhbFN0YXJ0
UG9pbnQgKyBsYXllckltcGwuc2Nyb2xsRGVsdGEoKSAtIHByZXZpb3VzRGVsdGE7CiAgICAgRmxv
YXRQb2ludCBhY3R1YWxTY3JlZW5TcGFjZUVuZFBvaW50ID0gQ0NNYXRoVXRpbDo6bWFwUG9pbnQo
bGF5ZXJJbXBsLnNjcmVlblNwYWNlVHJhbnNmb3JtKCksIGFjdHVhbExvY2FsRW5kUG9pbnQsIGVu
ZENsaXBwZWQpOwpAQCAtOTc4LDkgKzEwMTUsMTAgQEAKICAgICAgICAgaWYgKCFsYXllckltcGwt
PnNjcm9sbGFibGUoKSkKICAgICAgICAgICAgIGNvbnRpbnVlOwogCisgICAgICAgIENDUGluY2ha
b29tVmlld3BvcnQqIHZpZXdwb3J0ID0gbGF5ZXJJbXBsID09IG1fcm9vdFNjcm9sbExheWVySW1w
bCA/ICZtX3BpbmNoWm9vbVZpZXdwb3J0IDogMDsKICAgICAgICAgRmxvYXRTaXplIGFwcGxpZWRE
ZWx0YTsKICAgICAgICAgaWYgKG1fc2Nyb2xsRGVsdGFJc0luU2NyZWVuU3BhY2UpCi0gICAgICAg
ICAgICBhcHBsaWVkRGVsdGEgPSBzY3JvbGxMYXllcldpdGhTY3JlZW5TcGFjZURlbHRhKCpsYXll
ckltcGwsIHZpZXdwb3J0UG9pbnQsIHBlbmRpbmdEZWx0YSk7CisgICAgICAgICAgICBhcHBsaWVk
RGVsdGEgPSBzY3JvbGxMYXllcldpdGhTY3JlZW5TcGFjZURlbHRhKHZpZXdwb3J0LCAqbGF5ZXJJ
bXBsLCB2aWV3cG9ydFBvaW50LCBwZW5kaW5nRGVsdGEpOwogICAgICAgICBlbHNlCiAgICAgICAg
ICAgICBhcHBsaWVkRGVsdGEgPSBzY3JvbGxMYXllcldpdGhMb2NhbERlbHRhKCpsYXllckltcGws
IHBlbmRpbmdEZWx0YSk7CiAKQEAgLTEwNTAsMTAgKzEwODgsMTcgQEAKICAgICBGbG9hdFBvaW50
IG5ld1NjYWxlQW5jaG9yKGFuY2hvci54KCkgLyBtX3BhZ2VTY2FsZURlbHRhLCBhbmNob3IueSgp
IC8gbV9wYWdlU2NhbGVEZWx0YSk7CiAgICAgRmxvYXRTaXplIG1vdmUgPSBwcmV2aW91c1NjYWxl
QW5jaG9yIC0gbmV3U2NhbGVBbmNob3I7CiAKKyAgICAvLyBDb21wdXRlIHRoZSBhcHBsaWF0aW9u
IG9mIHRoZSBkZWx0YSB3aXRoIHJlc3BlY3QgdG8gdGhlIGN1cnJlbnQgcGFnZSB6b29tIG9mIHRo
ZSBwYWdlLgorICAgIG1vdmUuc2NhbGUoMSAvIG1fcGFnZVNjYWxlRmFjdG9yKTsKKwogICAgIG1f
cHJldmlvdXNQaW5jaEFuY2hvciA9IGFuY2hvcjsKIAotICAgIG1fcm9vdFNjcm9sbExheWVySW1w
bC0+c2Nyb2xsQnkocm91bmRlZEludFNpemUobW92ZSkpOworICAgIG1fcGluY2hab29tVmlld3Bv
cnQuc2V0VG90YWxQYWdlU2NhbGVGYWN0b3IobV9wYWdlU2NhbGVGYWN0b3IgKiBtX3BhZ2VTY2Fs
ZURlbHRhKTsKIAorICAgIEZsb2F0U2l6ZSBzY3JvbGxPdmVyZmxvdyA9IG1fcGluY2hab29tVmll
d3BvcnQuYXBwbHlTY3JvbGwobW92ZSk7CisgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zZXRM
b2NhbE9mZnNldChGbG9hdFNpemUoLW1fcGluY2hab29tVmlld3BvcnQuc2Nyb2xsRGVsdGEoKS54
KCksIC1tX3BpbmNoWm9vbVZpZXdwb3J0LnNjcm9sbERlbHRhKCkueSgpKSk7CisgICAgbV9yb290
U2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxCeShyb3VuZGVkSW50U2l6ZShzY3JvbGxPdmVyZmxvdykp
OworCiAgICAgaWYgKG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsYmFyQW5pbWF0aW9uQ29u
dHJvbGxlcigpKQogICAgICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbGJhckFuaW1h
dGlvbkNvbnRyb2xsZXIoKS0+ZGlkUGluY2hHZXN0dXJlVXBkYXRlKCk7CiAKQEAgLTEwNzUsNyAr
MTEyMCw3IEBACiB7CiAgICAgZmxvYXQgcGFnZVNjYWxlID0gbV9wYWdlU2NhbGVBbmltYXRpb24t
PmZpbmFsUGFnZVNjYWxlKCk7CiAgICAgSW50U2l6ZSBzY3JvbGxPZmZzZXQgPSBtX3BhZ2VTY2Fs
ZUFuaW1hdGlvbi0+ZmluYWxTY3JvbGxPZmZzZXQoKTsKLSAgICBzY3JvbGxPZmZzZXQuc2NhbGUo
bV9wYWdlU2NhbGUgLyBwYWdlU2NhbGUpOworICAgIHNjcm9sbE9mZnNldC5zY2FsZShtX3BhZ2VT
Y2FsZUZhY3RvciAvIHBhZ2VTY2FsZSk7CiAgICAgbWFrZVNjcm9sbEFuZFNjYWxlU2V0KHNjcm9s
bEluZm8sIHNjcm9sbE9mZnNldCwgcGFnZVNjYWxlKTsKIH0KIApAQCAtMTA5NSwyMCArMTE0MCwy
MCBAQAogICAgIC8vIG91dCBmcm9tIHRoZSBhbmNob3IgcG9pbnQuCiAgICAgSW50U2l6ZSBzY3Jv
bGxCZWdpbiA9IGZsb29yZWRJbnRTaXplKG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsUG9z
aXRpb24oKSArIG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Nyb2xsRGVsdGEoKSk7CiAgICAgc2Ny
b2xsQmVnaW4uc2NhbGUobV9wYWdlU2NhbGVEZWx0YSk7Ci0gICAgZmxvYXQgc2NhbGVCZWdpbiA9
IG1fcGFnZVNjYWxlICogbV9wYWdlU2NhbGVEZWx0YTsKLSAgICBmbG9hdCBwYWdlU2NhbGVEZWx0
YVRvU2VuZCA9IG1fbWluUGFnZVNjYWxlIC8gbV9wYWdlU2NhbGU7CisgICAgZmxvYXQgc2NhbGVC
ZWdpbiA9IG1fcGFnZVNjYWxlRmFjdG9yICogbV9wYWdlU2NhbGVEZWx0YTsKKyAgICBmbG9hdCBw
YWdlU2NhbGVEZWx0YVRvU2VuZCA9IG1fbWluUGFnZVNjYWxlRmFjdG9yIC8gbV9wYWdlU2NhbGVG
YWN0b3I7CiAgICAgRmxvYXRTaXplIHNjYWxlZENvbnRlbnRzU2l6ZSA9IGNvbnRlbnRTaXplKCk7
CiAgICAgc2NhbGVkQ29udGVudHNTaXplLnNjYWxlKHBhZ2VTY2FsZURlbHRhVG9TZW5kKTsKIAog
ICAgIEZsb2F0U2l6ZSBhbmNob3IgPSB0b1NpemUobV9wcmV2aW91c1BpbmNoQW5jaG9yKTsKICAg
ICBGbG9hdFNpemUgc2Nyb2xsRW5kID0gc2Nyb2xsQmVnaW4gKyBhbmNob3I7Ci0gICAgc2Nyb2xs
RW5kLnNjYWxlKG1fbWluUGFnZVNjYWxlIC8gc2NhbGVCZWdpbik7CisgICAgc2Nyb2xsRW5kLnNj
YWxlKG1fbWluUGFnZVNjYWxlRmFjdG9yIC8gc2NhbGVCZWdpbik7CiAgICAgc2Nyb2xsRW5kIC09
IGFuY2hvcjsKICAgICBzY3JvbGxFbmQgPSBzY3JvbGxFbmQuc2hydW5rVG8ocm91bmRlZEludFNp
emUoc2NhbGVkQ29udGVudHNTaXplIC0gbV9kZXZpY2VWaWV3cG9ydFNpemUpKS5leHBhbmRlZFRv
KEZsb2F0U2l6ZSgwLCAwKSk7CiAgICAgc2Nyb2xsRW5kLnNjYWxlKDEgLyBwYWdlU2NhbGVEZWx0
YVRvU2VuZCk7CiAgICAgc2Nyb2xsRW5kLnNjYWxlKG1fZGV2aWNlU2NhbGVGYWN0b3IpOwogCi0g
ICAgbWFrZVNjcm9sbEFuZFNjYWxlU2V0KHNjcm9sbEluZm8sIHJvdW5kZWRJbnRTaXplKHNjcm9s
bEVuZCksIG1fbWluUGFnZVNjYWxlKTsKKyAgICBtYWtlU2Nyb2xsQW5kU2NhbGVTZXQoc2Nyb2xs
SW5mbywgcm91bmRlZEludFNpemUoc2Nyb2xsRW5kKSwgbV9taW5QYWdlU2NhbGVGYWN0b3IpOwog
fQogCiB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6Om1ha2VTY3JvbGxBbmRTY2FsZVNldChDQ1Nj
cm9sbEFuZFNjYWxlU2V0KiBzY3JvbGxJbmZvLCBjb25zdCBJbnRTaXplJiBzY3JvbGxPZmZzZXQs
IGZsb2F0IHBhZ2VTY2FsZSkKQEAgLTExMjEsNyArMTE2Niw3IEBACiAgICAgc2Nyb2xsLnNjcm9s
bERlbHRhID0gc2Nyb2xsT2Zmc2V0IC0gdG9TaXplKG1fcm9vdFNjcm9sbExheWVySW1wbC0+c2Ny
b2xsUG9zaXRpb24oKSk7CiAgICAgc2Nyb2xsSW5mby0+c2Nyb2xscy5hcHBlbmQoc2Nyb2xsKTsK
ICAgICBtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNldFNlbnRTY3JvbGxEZWx0YShzY3JvbGwuc2Ny
b2xsRGVsdGEpOwotICAgIG1fc2VudFBhZ2VTY2FsZURlbHRhID0gc2Nyb2xsSW5mby0+cGFnZVNj
YWxlRGVsdGEgPSBwYWdlU2NhbGUgLyBtX3BhZ2VTY2FsZTsKKyAgICBtX3NlbnRQYWdlU2NhbGVE
ZWx0YSA9IHNjcm9sbEluZm8tPnBhZ2VTY2FsZURlbHRhID0gcGFnZVNjYWxlIC8gbV9wYWdlU2Nh
bGVGYWN0b3I7CiB9CiAKIHN0YXRpYyB2b2lkIGNvbGxlY3RTY3JvbGxEZWx0YXMoQ0NTY3JvbGxB
bmRTY2FsZVNldCogc2Nyb2xsSW5mbywgQ0NMYXllckltcGwqIGxheWVySW1wbCkKQEAgLTExNDgs
MTAgKzExOTMsMTIgQEAKIAogICAgIGlmIChtX3BpbmNoR2VzdHVyZUFjdGl2ZSB8fCBtX3BhZ2VT
Y2FsZUFuaW1hdGlvbikgewogICAgICAgICBtX3NlbnRQYWdlU2NhbGVEZWx0YSA9IHNjcm9sbElu
Zm8tPnBhZ2VTY2FsZURlbHRhID0gMTsKKyNpZiAwCiAgICAgICAgIGlmIChtX3BpbmNoR2VzdHVy
ZUFjdGl2ZSkKICAgICAgICAgICAgIGNvbXB1dGVQaW5jaFpvb21EZWx0YXMoc2Nyb2xsSW5mby5n
ZXQoKSk7CiAgICAgICAgIGVsc2UgaWYgKG1fcGFnZVNjYWxlQW5pbWF0aW9uLmdldCgpKQogICAg
ICAgICAgICAgY29tcHV0ZURvdWJsZVRhcFpvb21EZWx0YXMoc2Nyb2xsSW5mby5nZXQoKSk7Cisj
ZW5kaWYKICAgICAgICAgcmV0dXJuIHNjcm9sbEluZm8ucmVsZWFzZSgpOwogICAgIH0KIApAQCAt
MTE3Nyw3ICsxMjI0LDcgQEAKIAogICAgIEludFNpemUgc2Nyb2xsVG90YWwgPSBmbG9vcmVkSW50
U2l6ZShtX3Jvb3RTY3JvbGxMYXllckltcGwtPnNjcm9sbFBvc2l0aW9uKCkgKyBtX3Jvb3RTY3Jv
bGxMYXllckltcGwtPnNjcm9sbERlbHRhKCkpOwogCi0gICAgc2V0UGFnZVNjYWxlRGVsdGEobV9w
YWdlU2NhbGVBbmltYXRpb24tPnBhZ2VTY2FsZUF0VGltZShtb25vdG9uaWNUaW1lKSAvIG1fcGFn
ZVNjYWxlKTsKKyAgICBzZXRQYWdlU2NhbGVEZWx0YShtX3BhZ2VTY2FsZUFuaW1hdGlvbi0+cGFn
ZVNjYWxlQXRUaW1lKG1vbm90b25pY1RpbWUpIC8gbV9wYWdlU2NhbGVGYWN0b3IpOwogICAgIElu
dFNpemUgbmV4dFNjcm9sbCA9IG1fcGFnZVNjYWxlQW5pbWF0aW9uLT5zY3JvbGxPZmZzZXRBdFRp
bWUobW9ub3RvbmljVGltZSk7CiAgICAgbmV4dFNjcm9sbC5zY2FsZSgxIC8gbV9wYWdlU2NhbGVE
ZWx0YSk7CiAgICAgbV9yb290U2Nyb2xsTGF5ZXJJbXBsLT5zY3JvbGxCeShuZXh0U2Nyb2xsIC0g
c2Nyb2xsVG90YWwpOwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9j
Yy9DQ0xheWVySW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC03MCw2ICs3MCw3IEBACiAgICAgLCBtX2lzQ29udGFpbmVyRm9yRml4ZWRQb3Np
dGlvbkxheWVycyhmYWxzZSkKICAgICAsIG1fZml4ZWRUb0NvbnRhaW5lckxheWVyKGZhbHNlKQog
ICAgICwgbV9wYWdlU2NhbGVEZWx0YSgxKQorICAgICwgbV9wYWdlU2NhbGVGYWN0b3IoMSkKICAg
ICAsIG1fcmVuZGVyVGFyZ2V0KDApCiAgICAgLCBtX2RyYXdEZXB0aCgwKQogICAgICwgbV9kcmF3
T3BhY2l0eSgwKQpAQCAtMTgxLDIwICsxODIsMjMgQEAKICAgICByZXR1cm4gMDsKIH0KIAotdm9p
ZCBDQ0xheWVySW1wbDo6c2Nyb2xsQnkoY29uc3QgRmxvYXRTaXplJiBzY3JvbGwpCitGbG9hdFNp
emUgQ0NMYXllckltcGw6OnNjcm9sbEJ5KGNvbnN0IEZsb2F0U2l6ZSYgc2Nyb2xsKQogewogICAg
IEludFNpemUgbWluRGVsdGEgPSAtdG9TaXplKG1fc2Nyb2xsUG9zaXRpb24pOwogICAgIEludFNp
emUgbWF4RGVsdGEgPSBtX21heFNjcm9sbFBvc2l0aW9uIC0gdG9TaXplKG1fc2Nyb2xsUG9zaXRp
b24pOwogICAgIC8vIENsYW1wIG5ld0RlbHRhIHNvIHRoYXQgcG9zaXRpb24gKyBkZWx0YSBzdGF5
cyB3aXRoaW4gc2Nyb2xsIGJvdW5kcy4KICAgICBGbG9hdFNpemUgbmV3RGVsdGEgPSAobV9zY3Jv
bGxEZWx0YSArIHNjcm9sbCkuZXhwYW5kZWRUbyhtaW5EZWx0YSkuc2hydW5rVG8obWF4RGVsdGEp
OworICAgIEZsb2F0U2l6ZSB1bnNjcm9sbGVkID0gbV9zY3JvbGxEZWx0YSArIHNjcm9sbCAtIG5l
d0RlbHRhOwogCiAgICAgaWYgKG1fc2Nyb2xsRGVsdGEgPT0gbmV3RGVsdGEpCi0gICAgICAgIHJl
dHVybjsKKyAgICAgICAgcmV0dXJuIHVuc2Nyb2xsZWQ7CiAKICAgICBtX3Njcm9sbERlbHRhID0g
bmV3RGVsdGE7CiAgICAgaWYgKG1fc2Nyb2xsYmFyQW5pbWF0aW9uQ29udHJvbGxlcikKICAgICAg
ICAgbV9zY3JvbGxiYXJBbmltYXRpb25Db250cm9sbGVyLT51cGRhdGVTY3JvbGxPZmZzZXQodGhp
cyk7CiAgICAgbm90ZUxheWVyUHJvcGVydHlDaGFuZ2VkRm9yU3VidHJlZSgpOworCisgICAgcmV0
dXJuIHVuc2Nyb2xsZWQ7CiB9CiAKIENDSW5wdXRIYW5kbGVyQ2xpZW50OjpTY3JvbGxTdGF0dXMg
Q0NMYXllckltcGw6OnRyeVNjcm9sbChjb25zdCBJbnRQb2ludCYgdmlld3BvcnRQb2ludCwgQ0NJ
bnB1dEhhbmRsZXJDbGllbnQ6OlNjcm9sbElucHV0VHlwZSB0eXBlKSBjb25zdApAQCAtNTc3LDYg
KzU4MSwxNSBAQAogICAgIG5vdGVMYXllclByb3BlcnR5Q2hhbmdlZEZvclN1YnRyZWUoKTsKIH0K
IAordm9pZCBDQ0xheWVySW1wbDo6c2V0TG9jYWxPZmZzZXQoY29uc3QgRmxvYXRTaXplJiBvZmZz
ZXQpCit7CisgICAgaWYgKG1fbG9jYWxPZmZzZXQgPT0gb2Zmc2V0KQorICAgICAgICByZXR1cm47
CisKKyAgICBtX2xvY2FsT2Zmc2V0ID0gb2Zmc2V0OworICAgIG5vdGVMYXllclByb3BlcnR5Q2hh
bmdlZEZvclN1YnRyZWUoKTsKK30KKwogdm9pZCBDQ0xheWVySW1wbDo6c2V0UGFnZVNjYWxlRGVs
dGEoZmxvYXQgcGFnZVNjYWxlRGVsdGEpCiB7CiAgICAgaWYgKG1fcGFnZVNjYWxlRGVsdGEgPT0g
cGFnZVNjYWxlRGVsdGEpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuaAkocmV2aXNpb24gMTI4
MDA0KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTYyLDYgKzYyLDM0IEBACiAgICAgdmlydHVh
bCB2b2lkIHBvc3RBbmltYXRpb25FdmVudHNUb01haW5UaHJlYWRPbkltcGxUaHJlYWQoUGFzc093
blB0cjxDQ0FuaW1hdGlvbkV2ZW50c1ZlY3Rvcj4sIGRvdWJsZSB3YWxsQ2xvY2tUaW1lKSA9IDA7
CiB9OwogCisvLyBDQ1BpbmNoWm9vbVZpZXdwb3J0IG1vZGVscyB0aGUgYm91bmRzIGFuZCBvZmZz
ZXQgb2YgdGhlIHZpZXdwb3J0IHRoYXQgaXMgdXNlZCBkdXJpbmcgYSBwaW5jaC16b29tIG9wZXJh
dGlvbi4KKy8vIEl0IHRyYWNrcyB0aGUgbGF5b3V0LXNwYWNlIGRpbWVuc2lvbnMgb2YgdGhlIHZp
ZXdwb3J0IGJlZm9yZSBhbnkgYXBwbGllZCBzY2FsZSwgYW5kIHRoZW4gdHJhY2tzIHRoZSBsYXlv
dXQtc3BhY2UKKy8vIGNvb3JkaW5hdGVzIG9mIHRoZSB2aWV3cG9ydCByZXNwZWN0aW5nIHRoZSBw
aW5jaCBzZXR0aW5ncy4KK2NsYXNzIENDUGluY2hab29tVmlld3BvcnQgeworcHVibGljOgorICAg
IENDUGluY2hab29tVmlld3BvcnQoKSA6IG1fcGFnZVNjYWxlRmFjdG9yKDEpIHsgfQorCisgICAg
dm9pZCBzZXRUb3RhbFBhZ2VTY2FsZUZhY3RvcihmbG9hdCBmYWN0b3IpIHsgbV9wYWdlU2NhbGVG
YWN0b3IgPSBmYWN0b3I7IH0KKworICAgIC8vIFJldHVybnMgdGhlIGJvdW5kcyBhbmQgb2Zmc2V0
IG9mIHRoZSBzY2FsZWQgYW5kIHRyYW5zbGF0ZWQgdmlld3BvcnQgdG8gdXNlIGZvciBwaW5jaC16
b29tLgorICAgIEZsb2F0UmVjdCBib3VuZHMoKSBjb25zdDsKKyAgICBjb25zdCBGbG9hdFBvaW50
JiBzY3JvbGxEZWx0YSgpIGNvbnN0IHsgcmV0dXJuIG1fcGluY2hWaWV3cG9ydFNjcm9sbERlbHRh
OyB9CisKKyAgICBjb25zdCBGbG9hdFNpemUmIHVucGluY2hlZEJvdW5kcygpIGNvbnN0IHsgcmV0
dXJuIG1fdW5waW5jaGVkQm91bmRzOyB9CisgICAgdm9pZCBzZXRVbnBpbmNoZWRCb3VuZHMoY29u
c3QgRmxvYXRTaXplJiBib3VuZHMpIHsgbV91bnBpbmNoZWRCb3VuZHMgPSBib3VuZHM7IH0KKwor
ICAgIC8vIEFwcGx5IHRoZSBzY3JvbGwgb2Zmc2V0IGluIGxheW91dCBzcGFjZSB0byB0aGUgb2Zm
c2V0IG9mIHRoZSBwaW5jaC16b29tIHZpZXdwb3J0LiBUaGUgdmlld3BvcnQgY2Fubm90IGJlCisg
ICAgLy8gc2Nyb2xsZWQgb3V0c2lkZSBvZiB0aGUgdW5waW5jaGVkIGJvdW5kcy4gUmV0dXJucyB0
aGUgY29tcG9uZW50IG9mIHRoZSBzY3JvbGwgdGhhdCBpcyB1bi1hcHBsaWVkIGR1ZSB0bworICAg
IC8vIHRoaXMgY29uc3RyYWludC4KKyAgICBGbG9hdFNpemUgYXBwbHlTY3JvbGwoRmxvYXRTaXpl
Jik7CisKK3ByaXZhdGU6CisgICAgZmxvYXQgbV9wYWdlU2NhbGVGYWN0b3I7CisgICAgRmxvYXRQ
b2ludCBtX3BpbmNoVmlld3BvcnRTY3JvbGxEZWx0YTsKKworICAgIEZsb2F0U2l6ZSBtX3VucGlu
Y2hlZEJvdW5kczsKK307CisKIC8vIENDTGF5ZXJUcmVlSG9zdEltcGwgb3ducyB0aGUgQ0NMYXll
ckltcGwgdHJlZSBhcyB3ZWxsIGFzIGFzc29jaWF0ZWQgcmVuZGVyaW5nIHN0YXRlCiBjbGFzcyBD
Q0xheWVyVHJlZUhvc3RJbXBsIDogcHVibGljIENDSW5wdXRIYW5kbGVyQ2xpZW50LAogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyBDQ1JlbmRlcmVyQ2xpZW50LApAQCAtMTY2LDgg
KzE5NCw4IEBACiAgICAgZmxvYXQgZGV2aWNlU2NhbGVGYWN0b3IoKSBjb25zdCB7IHJldHVybiBt
X2RldmljZVNjYWxlRmFjdG9yOyB9CiAgICAgdm9pZCBzZXREZXZpY2VTY2FsZUZhY3RvcihmbG9h
dCk7CiAKLSAgICBmbG9hdCBwYWdlU2NhbGUoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VTY2FsZTsg
fQotICAgIHZvaWQgc2V0UGFnZVNjYWxlRmFjdG9yQW5kTGltaXRzKGZsb2F0IHBhZ2VTY2FsZSwg
ZmxvYXQgbWluUGFnZVNjYWxlLCBmbG9hdCBtYXhQYWdlU2NhbGUpOworICAgIGZsb2F0IHBhZ2VT
Y2FsZUZhY3RvcigpIGNvbnN0IHsgcmV0dXJuIG1fcGFnZVNjYWxlRmFjdG9yOyB9CisgICAgdm9p
ZCBzZXRQYWdlU2NhbGVGYWN0b3JBbmRMaW1pdHMoZmxvYXQgcGFnZVNjYWxlRmFjdG9yLCBmbG9h
dCBtaW5QYWdlU2NhbGVGYWN0b3IsIGZsb2F0IG1heFBhZ2VTY2FsZUZhY3Rvcik7CiAKICAgICBQ
YXNzT3duUHRyPENDU2Nyb2xsQW5kU2NhbGVTZXQ+IHByb2Nlc3NTY3JvbGxEZWx0YXMoKTsKIApA
QCAtMjgxLDEwICszMDksMTAgQEAKICAgICBib29sIG1fY29udGVudHNUZXh0dXJlc1B1cmdlZDsK
ICAgICBzaXplX3QgbV9tZW1vcnlBbGxvY2F0aW9uTGltaXRCeXRlczsKIAotICAgIGZsb2F0IG1f
cGFnZVNjYWxlOworICAgIGZsb2F0IG1fcGFnZVNjYWxlRmFjdG9yOwogICAgIGZsb2F0IG1fcGFn
ZVNjYWxlRGVsdGE7CiAgICAgZmxvYXQgbV9zZW50UGFnZVNjYWxlRGVsdGE7Ci0gICAgZmxvYXQg
bV9taW5QYWdlU2NhbGUsIG1fbWF4UGFnZVNjYWxlOworICAgIGZsb2F0IG1fbWluUGFnZVNjYWxl
RmFjdG9yLCBtX21heFBhZ2VTY2FsZUZhY3RvcjsKIAogICAgIFNrQ29sb3IgbV9iYWNrZ3JvdW5k
Q29sb3I7CiAgICAgYm9vbCBtX2hhc1RyYW5zcGFyZW50QmFja2dyb3VuZDsKQEAgLTMwNSw2ICsz
MzMsOCBAQAogICAgIC8vIHJlbmRlcmluZyBhbmQgaW5wdXQgZXZlbnQgaGl0IHRlc3RpbmcuCiAg
ICAgQ0NMYXllckxpc3QgbV9yZW5kZXJTdXJmYWNlTGF5ZXJMaXN0OwogCisgICAgQ0NQaW5jaFpv
b21WaWV3cG9ydCBtX3BpbmNoWm9vbVZpZXdwb3J0OworCiAgICAgT3duUHRyPENDRnJhbWVSYXRl
Q291bnRlcj4gbV9mcHNDb3VudGVyOwogICAgIE93blB0cjxDQ0RlYnVnUmVjdEhpc3Rvcnk+IG1f
ZGVidWdSZWN0SGlzdG9yeTsKIH07CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJlZUhvc3QuY3BwCShyZXZpc2lvbiAx
MjgwMDQpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJU
cmVlSG9zdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4Miw3ICs0ODIsNyBAQAogCiBzdGF0aWMg
dm9pZCBzZXRTY2FsZShMYXllckNocm9taXVtKiBsYXllciwgZmxvYXQgZGV2aWNlU2NhbGVGYWN0
b3IsIGZsb2F0IHBhZ2VTY2FsZUZhY3RvcikKIHsKLSAgICBpZiAobGF5ZXItPmJvdW5kc0NvbnRh
aW5QYWdlU2NhbGUoKSkKKyAgICBpZiAoZmFsc2UgLypsYXllci0+Ym91bmRzQ29udGFpblBhZ2VT
Y2FsZSgpKi8pCiAgICAgICAgIGxheWVyLT5zZXRDb250ZW50c1NjYWxlKGRldmljZVNjYWxlRmFj
dG9yKTsKICAgICBlbHNlCiAgICAgICAgIGxheWVyLT5zZXRDb250ZW50c1NjYWxlKGRldmljZVNj
YWxlRmFjdG9yICogcGFnZVNjYWxlRmFjdG9yKTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdENv
bW1vbi5jcHAJKHJldmlzaW9uIDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0Q29tbW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NDgyLDYgKzQ4Miw4IEBACiAgICAgV2ViVHJhbnNmb3JtYXRpb25NYXRyaXggbGF5ZXJMb2NhbFRy
YW5zZm9ybTsKICAgICAvLyBMVCA9IFNbcGFnZVNjYWxlRGVsdGFdCiAgICAgbGF5ZXJMb2NhbFRy
YW5zZm9ybS5zY2FsZShsYXllci0+cGFnZVNjYWxlRGVsdGEoKSk7CisgICAgbGF5ZXJMb2NhbFRy
YW5zZm9ybS5zY2FsZShsYXllci0+cGFnZVNjYWxlRmFjdG9yKCkpOworICAgIGxheWVyTG9jYWxU
cmFuc2Zvcm0udHJhbnNsYXRlKGxheWVyLT5sb2NhbE9mZnNldCgpLndpZHRoKCksIGxheWVyLT5s
b2NhbE9mZnNldCgpLmhlaWdodCgpKTsKICAgICAvLyBMVCA9IFNbcGFnZVNjYWxlRGVsdGFdICog
VHJbb3JpZ2luXSAqIFRyW29yaWdpbjJhbmNob3JdCiAgICAgbGF5ZXJMb2NhbFRyYW5zZm9ybS50
cmFuc2xhdGUzZChwb3NpdGlvbi54KCkgKyBhbmNob3JQb2ludC54KCkgKiBib3VuZHMud2lkdGgo
KSwgcG9zaXRpb24ueSgpICsgYW5jaG9yUG9pbnQueSgpICogYm91bmRzLmhlaWdodCgpLCBsYXll
ci0+YW5jaG9yUG9pbnRaKCkpOwogICAgIC8vIExUID0gU1twYWdlU2NhbGVEZWx0YV0gKiBUcltv
cmlnaW5dICogVHJbb3JpZ2luMmFuY2hvcl0gKiBNW2xheWVyXQpJbmRleDogV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmgJKHJldmlzaW9u
IDEyODAwNCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJv
bWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNzYsOCArMTc2LDEwIEBACiAgICAgdm9pZCBzZXRG
b3JjZVJlbmRlclN1cmZhY2UoYm9vbCk7CiAKICAgICBJbnRTaXplIHNjcm9sbERlbHRhKCkgY29u
c3QgeyByZXR1cm4gSW50U2l6ZSgpOyB9CisgICAgRmxvYXRTaXplIGxvY2FsT2Zmc2V0KCkgY29u
c3QgeyByZXR1cm4gRmxvYXRTaXplKCk7IH0KIAogICAgIGZsb2F0IHBhZ2VTY2FsZURlbHRhKCkg
Y29uc3QgeyByZXR1cm4gMTsgfQorICAgIGZsb2F0IHBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IHsg
cmV0dXJuIDE7IH0KIAogICAgIHZvaWQgc2V0RG91YmxlU2lkZWQoYm9vbCk7CiAgICAgYm9vbCBk
b3VibGVTaWRlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZG91YmxlU2lkZWQ7IH0K
</data>
<flag name="review"
          id="175212"
          type_id="1"
          status="-"
          setter="twiz"
    />
    <flag name="commit-queue"
          id="175213"
          type_id="3"
          status="-"
          setter="twiz"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163735</attachid>
            <date>2012-09-12 16:50:14 -0700</date>
            <delta_ts>2012-09-13 08:03:51 -0700</delta_ts>
            <desc>Addition of Settings flag to disable page-scale pinch zoom.</desc>
            <filename>pinch_zoom_wk_side.patch</filename>
            <type>text/plain</type>
            <size>6101</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgzNjUpCisr
KyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
Mzc5OCw2ICszNzk4LDkgQEAKICAgICAgICAgICAgICAgICBzZXREZXZpY2VTY2FsZUZhY3Rvciht
X2RldmljZVNjYWxlSW5Db21wb3NpdG9yKTsKICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAg
aWYgKG1fd2ViU2V0dGluZ3MtPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpCisg
ICAgICAgICAgICAgICAgbV9taW5pbXVtUGFnZVNjYWxlRmFjdG9yID0gMTsKKwogICAgICAgICAg
ICAgYm9vbCB2aXNpYmxlID0gcGFnZSgpLT52aXNpYmlsaXR5U3RhdGUoKSA9PSBQYWdlVmlzaWJp
bGl0eVN0YXRlVmlzaWJsZTsKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+c2V0VmlzaWJs
ZSh2aXNpYmxlKTsKICAgICAgICAgICAgIG1fbGF5ZXJUcmVlVmlldy0+c2V0UGFnZVNjYWxlRmFj
dG9yQW5kTGltaXRzKHBhZ2VTY2FsZUZhY3RvcigpLCBtX21pbmltdW1QYWdlU2NhbGVGYWN0b3Is
IG1fbWF4aW11bVBhZ2VTY2FsZUZhY3Rvcik7CkBAIC0zOTA4LDE1ICszOTExLDIxIEBACiAgICAg
ICAgIG1haW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3KCktPnNjcm9sbEJ5KHNjcm9sbERlbHRhKTsK
ICAgICB9IGVsc2UgewogICAgICAgICAvLyBUaGUgcGFnZSBzY2FsZSBjaGFuZ2VkLCBzbyBhcHBs
eSBhIHNjYWxlIGFuZCBzY3JvbGwgaW4gYSBzaW5nbGUKLSAgICAgICAgLy8gb3BlcmF0aW9uLiBU
aGUgb2xkIHNjcm9sbCBvZmZzZXQgKGFuZCBwYXNzZWQtaW4gZGVsdGEpIGFyZQotICAgICAgICAv
LyBpbiB0aGUgb2xkIGNvb3JkaW5hdGUgc3BhY2UsIHNvIHdlIGZpcnN0IG5lZWQgdG8gbXVsdGlw
bHkgdGhlbQotICAgICAgICAvLyBieSB0aGUgcGFnZSBzY2FsZSBkZWx0YS4KKyAgICAgICAgLy8g
b3BlcmF0aW9uLgogICAgICAgICBXZWJTaXplIHNjcm9sbE9mZnNldCA9IG1haW5GcmFtZSgpLT5z
Y3JvbGxPZmZzZXQoKTsKICAgICAgICAgc2Nyb2xsT2Zmc2V0LndpZHRoICs9IHNjcm9sbERlbHRh
LndpZHRoOwogICAgICAgICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICs9IHNjcm9sbERlbHRhLmhlaWdo
dDsKLSAgICAgICAgV2ViUG9pbnQgc2NhbGVkU2Nyb2xsT2Zmc2V0KHNjcm9sbE9mZnNldC53aWR0
aCAqIHBhZ2VTY2FsZURlbHRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2Nyb2xsT2Zmc2V0LmhlaWdodCAqIHBhZ2VTY2FsZURlbHRhKTsKLSAgICAgICAgc2V0UGFnZVNj
YWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNjYWxlZFNjcm9s
bE9mZnNldCk7CisKKyAgICAgICAgV2ViUG9pbnQgc2Nyb2xsUG9pbnQoc2Nyb2xsT2Zmc2V0Lndp
ZHRoLCBzY3JvbGxPZmZzZXQuaGVpZ2h0KTsKKyAgICAgICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdz
KCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpIHsKKyAgICAgICAgICAgIC8v
IFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlIGluIHRoZSBv
bGQKKyAgICAgICAgICAgIC8vIGNvb3JkaW5hdGUgc3BhY2UsIHNvIHdlIGZpcnN0IG5lZWQgdG8g
bXVsdGlwbHkgdGhlbSBieSB0aGUgcGFnZQorICAgICAgICAgICAgLy8gc2NhbGUgZGVsdGEuCisg
ICAgICAgICAgICBzY3JvbGxQb2ludC54ID0gc2Nyb2xsUG9pbnQueCAqIHBhZ2VTY2FsZURlbHRh
OworICAgICAgICAgICAgc2Nyb2xsUG9pbnQueSA9IHNjcm9sbFBvaW50LnkgKiBwYWdlU2NhbGVE
ZWx0YTsKKyAgICAgICAgfQorCisgICAgICAgIHNldFBhZ2VTY2FsZUZhY3RvcihwYWdlU2NhbGVG
YWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY3JvbGxQb2ludCk7CiAgICAgfQogfQogCkluZGV4
OiBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCShyZXZpc2lvbiAxMjgzNjUp
CisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE0MCw2ICsxNDAsMTEgQEAKICAgICBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yID0gYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3I7CiB9CiAKK3ZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRBcHBseVBhZ2VTY2FsZUZhY3Rvcklu
Q29tcG9zaXRvcihib29sIGFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKQoreworICAg
IG1fc2V0dGluZ3MtPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKTsKK30KKwogdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNl
dFRleHRBdXRvc2l6aW5nRW5hYmxlZChib29sIGVuYWJsZWQpCiB7CiAjaWYgRU5BQkxFKFRFWFRf
QVVUT1NJWklORykKSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAkocmV2
aXNpb24gMTI4MzY1KQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAko
d29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBAQAogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxv
d1NjcmlwdHNUb0Nsb3NlV2luZG93cyhib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dV
bml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFw
cGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpOworICAgIHZpcnR1
YWwgdm9pZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKICAgICB2
aXJ0dWFsIHZvaWQgc2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9vbCk7CiAg
ICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJvb2wpOwogICAg
IHZpcnR1YWwgdm9pZCBzZXRDYXJldEJyb3dzaW5nRW5hYmxlZChib29sKTsKSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hy
b21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgJKHJldmlzaW9uIDEyODM2NSkKKysrIFdlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNzEsNiArNzEs
NyBAQAogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1NjcmlwdHNUb0Nsb3NlV2luZG93cyhib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVV
UkxzKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlEZWZhdWx0RGV2aWNlU2Nh
bGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBs
eVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lk
IHNldEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0
dWFsIHZvaWQgc2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRDYXJldEJyb3dzaW5nRW5hYmxlZChib29sKSA9IDA7CkluZGV4OiBXZWJD
b3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9GcmFtZS5jcHAJ
KHJldmlzaW9uIDEyODM2NSkKKysrIFdlYkNvcmUvcGFnZS9GcmFtZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTk1Myw2ICs5NTMsOCBAQAogZmxvYXQgRnJhbWU6OmZyYW1lU2NhbGVGYWN0b3IoKSBj
b25zdAogewogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CisgICAgaWYgKHBhZ2UtPnNl
dHRpbmdzKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpCisgICAgICAgIHJl
dHVybiAxOwogCiAgICAgLy8gTWFpbiBmcmFtZSBpcyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhl
IGNvbnRhaW5lciBidXQgaW5uZXIgZnJhbWVzIGFyZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0
byB0aGUgbWFpbiBmcmFtZS4KICAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0g
dGhpcykKSW5kZXg6IFdlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGFnZS9TZXR0aW5ncy5oCShyZXZpc2lvbiAxMjgzNjUpCisrKyBXZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNjE5LDYgKzYxOSw5IEBACiAgICAgICAgIHZvaWQg
c2V0RGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX2RpYWdub3N0aWNM
b2dnaW5nRW5hYmxlZCA9IGVuYWJsZWQ7IH0KICAgICAgICAgYm9vbCBkaWFnbm9zdGljTG9nZ2lu
Z0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxlZDsgfQog
CisgICAgICAgIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCBl
bmFibGVkKSB7IG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IgPSBlbmFibGVkOyB9
CisgICAgICAgIGJvb2wgYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7
IHJldHVybiBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOyB9CisKICAgICBwcml2
YXRlOgogICAgICAgICBleHBsaWNpdCBTZXR0aW5ncyhQYWdlKik7CiAKQEAgLTc5OSw2ICs4MDIs
OCBAQAogCiAgICAgICAgIGJvb2wgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZUxvZ2dpbmdFbmFibGVk
IDogMTsKIAorICAgICAgICBib29sIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3Ig
OiAxOworCiAgICAgICAgIFRpbWVyPFNldHRpbmdzPiBtX2xvYWRzSW1hZ2VzQXV0b21hdGljYWxs
eVRpbWVyOwogICAgICAgICB2b2lkIGxvYWRzSW1hZ2VzQXV0b21hdGljYWxseVRpbWVyRmlyZWQo
VGltZXI8U2V0dGluZ3M+Kik7CiAgICAgICAgIApJbmRleDogV2ViQ29yZS9wYWdlL1NldHRpbmdz
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCShyZXZpc2lvbiAx
MjgzNjUpCisrKyBXZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
ODYsNiArMjg2LDcgQEAKICAgICAsIG1fd2luZG93Rm9jdXNSZXN0cmljdGVkKHRydWUpCiAgICAg
LCBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxlZChmYWxzZSkKICAgICAsIG1fc2Nyb2xsaW5nUGVy
Zm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxzZSkKKyAgICAsIG1fYXBwbHlQYWdlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3IoZmFsc2UpCiAgICAgLCBtX2xvYWRzSW1hZ2VzQXV0b21hdGljYWxseVRp
bWVyKHRoaXMsICZTZXR0aW5nczo6bG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5VGltZXJGaXJlZCkK
ICAgICAsIG1faW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVvdXRJblNlY29uZHMo
ZGVmYXVsdEluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzKQog
ewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163877</attachid>
            <date>2012-09-13 08:03:58 -0700</date>
            <delta_ts>2012-09-13 11:08:41 -0700</delta_ts>
            <desc>Address review comments from danakj.</desc>
            <filename>bug-93292-20120913110330.patch</filename>
            <type>text/plain</type>
            <size>9050</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyODQ1NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTEzICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0xMyAgSWx5YSBU
aWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogTk1JOiByZW1vdmUgdGhlIGRlcGVuZGVuY3kgb2YgcGxhdGZvcm0gc291cmNlcyBmcm9tIFdl
YkNvcmUgaGVhZGVyIGludHJvZHVjZWQgYnkgTk1JIGluc3RydW1lbnRhdGlvbi4KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lvbiAxMjgzNjUpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTU1LDggKzk1NSw5IEBAIGZsb2F0IEZyYW1l
OjpmcmFtZVNjYWxlRmFjdG9yKCkgY29uc3QKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgp
OwogCiAgICAgLy8gTWFpbiBmcmFtZSBpcyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRh
aW5lciBidXQgaW5uZXIgZnJhbWVzIGFyZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUg
bWFpbiBmcmFtZS4KLSAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykK
KyAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcyB8fCBwYWdlLT5zZXR0
aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKQogICAgICAgICByZXR1
cm4gMTsKKwogICAgIHJldHVybiBwYWdlLT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIApJbmRleDog
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJKHJldmlzaW9uIDEyODM2NSkKKysrIFNvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yODYsNiArMjg2LDcgQEAg
U2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX3dpbmRvd0ZvY3VzUmVzdHJp
Y3RlZCh0cnVlKQogICAgICwgbV9kaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAg
LCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCisgICAgLCBtX2Fw
cGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKQogICAgICwgbV9sb2Fkc0ltYWdl
c0F1dG9tYXRpY2FsbHlUaW1lcih0aGlzLCAmU2V0dGluZ3M6OmxvYWRzSW1hZ2VzQXV0b21hdGlj
YWxseVRpbWVyRmlyZWQpCiAgICAgLCBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25U
aW1lb3V0SW5TZWNvbmRzKGRlZmF1bHRJbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGlt
ZW91dEluU2Vjb25kcykKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEy
ODM2NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpA
QCAtNjE5LDYgKzYxOSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXRE
aWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dp
bmdFbmFibGVkID0gZW5hYmxlZDsgfQogICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5h
YmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAg
ICAgICAgdm9pZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJs
ZWQpIHsgbV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAg
ICAgICAgYm9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0
dXJuIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6
CiAgICAgICAgIGV4cGxpY2l0IFNldHRpbmdzKFBhZ2UqKTsKIApAQCAtNzk5LDYgKzgwMiw4IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBib29sIG1fc2Nyb2xsaW5nUGVyZm9ybWFu
Y2VMb2dnaW5nRW5hYmxlZCA6IDE7CiAKKyAgICAgICAgYm9vbCBtX2FwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yIDogMTsKKwogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0lt
YWdlc0F1dG9tYXRpY2FsbHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHlUaW1lckZpcmVkKFRpbWVyPFNldHRpbmdzPiopOwogICAgICAgICAKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjg0NTYpCisrKyBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA5
LTEzICBKZWZmIFRpbWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21p
dW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16
b29tIHNjYWxpbmcgaW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxh
ZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3Ag
Zm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAg
ICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdz
SW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcik6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5oOgorICAg
ICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZSk6CisKIDIw
MTItMDktMTMgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IE5NSTogaW5zdHJ1bWVudCBLVVJMIGRpcmVjdGx5LgpJbmRleDog
U291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCShyZXZpc2lvbiAx
MjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCSh3
b3JraW5nIGNvcHkpCkBAIC03MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
c2V0QWxsb3dTY3JpcHRzVG9DbG9zZVdpbmRvd3MoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIHNldEFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJv
b2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENo
ZWNraW5nRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFuZFVz
ZXJTdHlsZXNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93
c2luZ0VuYWJsZWQoYm9vbCkgPSAwOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViU2V0dGluZ3NJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCShyZXZpc2lvbiAxMjgzNjUpCisrKyBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
NDAsNiArMTQwLDExIEBAIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRBcHBseURlZmF1bHREZXYK
ICAgICBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yID0gYXBwbHlE
ZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7CiB9CiAKK3ZvaWQgV2ViU2V0dGlu
Z3NJbXBsOjpzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKQoreworICAgIG1fc2V0dGluZ3MtPnNldEFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9y
KTsKK30KKwogdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldFRleHRBdXRvc2l6aW5nRW5hYmxlZChi
b29sIGVuYWJsZWQpCiB7CiAjaWYgRU5BQkxFKFRFWFRfQVVUT1NJWklORykKQEAgLTY0Miw0ICs2
NDcsOSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0R2VzdHVyZVRhcEhpZ2hsCiAgICAgbV9n
ZXN0dXJlVGFwSGlnaGxpZ2h0RW5hYmxlZCA9IGVuYWJsZUhpZ2hsaWdodDsKIH0KIAorYm9vbCBX
ZWJTZXR0aW5nc0ltcGw6OmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gbV9zZXR0aW5ncy0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAkocmV2aXNpb24gMTI4MzY1KQorKysgU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHdvcmtpbmcgY29weSkK
QEAgLTYzLDYgKzYzLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1Njcmlw
dHNUb0Nsb3NlV2luZG93cyhib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dVbml2ZXJz
YWxBY2Nlc3NGcm9tRmlsZVVSTHMoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5RGVm
YXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpOworICAgIHZpcnR1YWwgdm9p
ZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKICAgICB2aXJ0dWFs
IHZvaWQgc2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9vbCk7CiAgICAgdmly
dHVhbCB2b2lkIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRDYXJldEJyb3dzaW5nRW5hYmxlZChib29sKTsKQEAgLTE1OCw2ICsxNTksNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCBzaG93UGFpbnRSZWN0cygpIGNvbnN0IHsgcmV0dXJuIG1fc2hv
d1BhaW50UmVjdHM7IH0KICAgICBib29sIHJlbmRlclZTeW5jRW5hYmxlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcmVuZGVyVlN5bmNFbmFibGVkOyB9CiAgICAgYm9vbCBhcHBseURlZmF1bHREZXZpY2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbHlEZWZhdWx0RGV2
aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKyAgICBib29sIGFwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yKCkgY29uc3Q7CiAgICAgYm9vbCBnZXN0dXJlVGFwSGlnaGxpZ2h0RW5h
YmxlZCgpIHsgcmV0dXJuIG1fZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQ7IH0KICAgICBXZWJT
aXplIGRlZmF1bHRUaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGVmYXVsdFRpbGVTaXplOyB9
CiAgICAgV2ViU2l6ZSBtYXhVbnRpbGVkTGF5ZXJTaXplKCkgY29uc3QgeyByZXR1cm4gbV9tYXhV
bnRpbGVkTGF5ZXJTaXplOyB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJW
aWV3SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5MDgsMTUgKzM5MDgsMjEg
QEAgdm9pZCBXZWJWaWV3SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZShjbwogICAgICAgICBtYWlu
RnJhbWVJbXBsKCktPmZyYW1lVmlldygpLT5zY3JvbGxCeShzY3JvbGxEZWx0YSk7CiAgICAgfSBl
bHNlIHsKICAgICAgICAgLy8gVGhlIHBhZ2Ugc2NhbGUgY2hhbmdlZCwgc28gYXBwbHkgYSBzY2Fs
ZSBhbmQgc2Nyb2xsIGluIGEgc2luZ2xlCi0gICAgICAgIC8vIG9wZXJhdGlvbi4gVGhlIG9sZCBz
Y3JvbGwgb2Zmc2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUKLSAgICAgICAgLy8gaW4gdGhl
IG9sZCBjb29yZGluYXRlIHNwYWNlLCBzbyB3ZSBmaXJzdCBuZWVkIHRvIG11bHRpcGx5IHRoZW0K
LSAgICAgICAgLy8gYnkgdGhlIHBhZ2Ugc2NhbGUgZGVsdGEuCisgICAgICAgIC8vIG9wZXJhdGlv
bi4KICAgICAgICAgV2ViU2l6ZSBzY3JvbGxPZmZzZXQgPSBtYWluRnJhbWUoKS0+c2Nyb2xsT2Zm
c2V0KCk7CiAgICAgICAgIHNjcm9sbE9mZnNldC53aWR0aCArPSBzY3JvbGxEZWx0YS53aWR0aDsK
ICAgICAgICAgc2Nyb2xsT2Zmc2V0LmhlaWdodCArPSBzY3JvbGxEZWx0YS5oZWlnaHQ7Ci0gICAg
ICAgIFdlYlBvaW50IHNjYWxlZFNjcm9sbE9mZnNldChzY3JvbGxPZmZzZXQud2lkdGggKiBwYWdl
U2NhbGVEZWx0YSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbE9m
ZnNldC5oZWlnaHQgKiBwYWdlU2NhbGVEZWx0YSk7Ci0gICAgICAgIHNldFBhZ2VTY2FsZUZhY3Rv
cihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY2FsZWRTY3JvbGxPZmZzZXQp
OworCisgICAgICAgIFdlYlBvaW50IHNjcm9sbFBvaW50KHNjcm9sbE9mZnNldC53aWR0aCwgc2Ny
b2xsT2Zmc2V0LmhlaWdodCk7CisgICAgICAgIGlmICghbV9wYWdlLT5zZXR0aW5ncygpLT5hcHBs
eVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKSB7CisgICAgICAgICAgICAvLyBUaGUgb2xk
IHNjcm9sbCBvZmZzZXQgKGFuZCBwYXNzZWQtaW4gZGVsdGEpIGFyZSBpbiB0aGUgb2xkCisgICAg
ICAgICAgICAvLyBjb29yZGluYXRlIHNwYWNlLCBzbyB3ZSBmaXJzdCBuZWVkIHRvIG11bHRpcGx5
IHRoZW0gYnkgdGhlIHBhZ2UKKyAgICAgICAgICAgIC8vIHNjYWxlIGRlbHRhLgorICAgICAgICAg
ICAgc2Nyb2xsUG9pbnQueCA9IHNjcm9sbFBvaW50LnggKiBwYWdlU2NhbGVEZWx0YTsKKyAgICAg
ICAgICAgIHNjcm9sbFBvaW50LnkgPSBzY3JvbGxQb2ludC55ICogcGFnZVNjYWxlRGVsdGE7Cisg
ICAgICAgIH0KKworICAgICAgICBzZXRQYWdlU2NhbGVGYWN0b3IocGFnZVNjYWxlRmFjdG9yKCkg
KiBwYWdlU2NhbGVEZWx0YSwgc2Nyb2xsUG9pbnQpOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163914</attachid>
            <date>2012-09-13 11:08:48 -0700</date>
            <delta_ts>2012-09-21 08:59:59 -0700</delta_ts>
            <desc>Correct NCCH to respect applyPageScaleFactorInCompositor setting.</desc>
            <filename>bug-93292-20120913140820.patch</filename>
            <type>text/plain</type>
            <size>10086</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyODQ1NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTEzICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0xMyAgSWx5YSBU
aWtob25vdnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogTk1JOiByZW1vdmUgdGhlIGRlcGVuZGVuY3kgb2YgcGxhdGZvcm0gc291cmNlcyBmcm9tIFdl
YkNvcmUgaGVhZGVyIGludHJvZHVjZWQgYnkgTk1JIGluc3RydW1lbnRhdGlvbi4KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lvbiAxMjgzNjUpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdl
L0ZyYW1lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTU1LDggKzk1NSw5IEBAIGZsb2F0IEZyYW1l
OjpmcmFtZVNjYWxlRmFjdG9yKCkgY29uc3QKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgp
OwogCiAgICAgLy8gTWFpbiBmcmFtZSBpcyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRh
aW5lciBidXQgaW5uZXIgZnJhbWVzIGFyZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUg
bWFpbiBmcmFtZS4KLSAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykK
KyAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcyB8fCBwYWdlLT5zZXR0
aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKQogICAgICAgICByZXR1
cm4gMTsKKwogICAgIHJldHVybiBwYWdlLT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIApJbmRleDog
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJKHJldmlzaW9uIDEyODM2NSkKKysrIFNvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yODYsNiArMjg2LDcgQEAg
U2V0dGluZ3M6OlNldHRpbmdzKFBhZ2UqIHBhZ2UpCiAgICAgLCBtX3dpbmRvd0ZvY3VzUmVzdHJp
Y3RlZCh0cnVlKQogICAgICwgbV9kaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAg
LCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCisgICAgLCBtX2Fw
cGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGZhbHNlKQogICAgICwgbV9sb2Fkc0ltYWdl
c0F1dG9tYXRpY2FsbHlUaW1lcih0aGlzLCAmU2V0dGluZ3M6OmxvYWRzSW1hZ2VzQXV0b21hdGlj
YWxseVRpbWVyRmlyZWQpCiAgICAgLCBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25U
aW1lb3V0SW5TZWNvbmRzKGRlZmF1bHRJbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGlt
ZW91dEluU2Vjb25kcykKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEy
ODM2NSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpA
QCAtNjE5LDYgKzYxOSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXRE
aWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dp
bmdFbmFibGVkID0gZW5hYmxlZDsgfQogICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5h
YmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAg
ICAgICAgdm9pZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJs
ZWQpIHsgbV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAg
ICAgICAgYm9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0
dXJuIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6
CiAgICAgICAgIGV4cGxpY2l0IFNldHRpbmdzKFBhZ2UqKTsKIApAQCAtNzk5LDYgKzgwMiw4IEBA
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgICAgICBib29sIG1fc2Nyb2xsaW5nUGVyZm9ybWFu
Y2VMb2dnaW5nRW5hYmxlZCA6IDE7CiAKKyAgICAgICAgYm9vbCBtX2FwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yIDogMTsKKwogICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0lt
YWdlc0F1dG9tYXRpY2FsbHlUaW1lcjsKICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRp
Y2FsbHlUaW1lckZpcmVkKFRpbWVyPFNldHRpbmdzPiopOwogICAgICAgICAKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjg0NTYpCisrKyBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA5
LTEzICBKZWZmIFRpbWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21p
dW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16
b29tIHNjYWxpbmcgaW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxh
ZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3Ag
Zm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAg
ICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdz
SW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IpOgorICAgICAgICAoV2Vi
S2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcik6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5oOgorICAg
ICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZSk6CisKIDIw
MTItMDktMTMgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFdlYiBJbnNwZWN0b3I6IE5NSTogaW5zdHJ1bWVudCBLVVJMIGRpcmVjdGx5LgpJbmRleDog
U291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCShyZXZpc2lvbiAx
MjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCSh3
b3JraW5nIGNvcHkpCkBAIC03MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
c2V0QWxsb3dTY3JpcHRzVG9DbG9zZVdpbmRvd3MoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIHNldEFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJv
b2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENo
ZWNraW5nRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFuZFVz
ZXJTdHlsZXNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93
c2luZ0VuYWJsZWQoYm9vbCkgPSAwOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
Tm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuY3BwCShyZXZpc2lvbiAxMjgz
NjUpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVudEhv
c3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiR3JhcGhp
Y3NMYXllci5oIgogI2luY2x1ZGUgIkdyYXBoaWNzTGF5ZXJDaHJvbWl1bS5oIgogI2luY2x1ZGUg
IlBsYXRmb3JtQ29udGV4dFNraWEuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUg
IldlYlZpZXdJbXBsLmgiCiAjaW5jbHVkZSA8cHVibGljL1dlYkNvbnRlbnRMYXllci5oPgogI2lu
Y2x1ZGUgPHB1YmxpYy9XZWJGbG9hdFBvaW50Lmg+CkBAIC00OCw3ICs0OSw3IEBAIE5vbkNvbXBv
c2l0ZWRDb250ZW50SG9zdDo6Tm9uQ29tcG9zaXRlZEMKICAgICBtX2dyYXBoaWNzTGF5ZXItPnNl
dE5hbWUoIm5vbi1jb21wb3NpdGVkIGNvbnRlbnQiKTsKICNlbmRpZgogICAgIG1fZ3JhcGhpY3NM
YXllci0+c2V0RHJhd3NDb250ZW50KHRydWUpOwotICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0QXBw
bGllc1BhZ2VTY2FsZSh0cnVlKTsKKyAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdl
U2NhbGUoIW1fd2ViVmlldy0+cGFnZSgpLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvcigpKTsKICAgICBXZWJDb250ZW50TGF5ZXIqIGxheWVyID0gc3RhdGljX2Nh
c3Q8V2ViQ29yZTo6R3JhcGhpY3NMYXllckNocm9taXVtKj4obV9ncmFwaGljc0xheWVyLmdldCgp
KS0+Y29udGVudExheWVyKCk7CiAgICAgbGF5ZXItPnNldFVzZUxDRFRleHQodHJ1ZSk7CiAgICAg
bGF5ZXItPmxheWVyKCktPnNldE9wYXF1ZSh0cnVlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkocmV2aXNpb24gMTI4MzY1KQorKysg
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMTQwLDYgKzE0MCwxMSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlE
ZWZhdWx0RGV2CiAgICAgbV9hcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRv
ciA9IGFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOwogfQogCit2b2lk
IFdlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9v
bCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcikKK3sKKyAgICBtX3NldHRpbmdzLT5z
ZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihhcHBseVBhZ2VTY2FsZUZhY3Rvcklu
Q29tcG9zaXRvcik7Cit9CisKIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRUZXh0QXV0b3Npemlu
Z0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCkBA
IC02NDIsNCArNjQ3LDkgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEdlc3R1cmVUYXBIaWdo
bAogICAgIG1fZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQgPSBlbmFibGVIaWdobGlnaHQ7CiB9
CiAKK2Jvb2wgV2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRv
cigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc2V0dGluZ3MtPmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHJldmlzaW9uIDEyODM2
NSkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC02Myw2ICs2Myw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0
QWxsb3dTY3JpcHRzVG9DbG9zZVdpbmRvd3MoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFs
bG93VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBz
ZXRBcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKKyAgICB2
aXJ0dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCk7CiAg
ICAgdmlydHVhbCB2b2lkIHNldEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGJvb2wp
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZChib29sKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCk7CkBAIC0xNTgs
NiArMTU5LDcgQEAgcHVibGljOgogICAgIGJvb2wgc2hvd1BhaW50UmVjdHMoKSBjb25zdCB7IHJl
dHVybiBtX3Nob3dQYWludFJlY3RzOyB9CiAgICAgYm9vbCByZW5kZXJWU3luY0VuYWJsZWQoKSBj
b25zdCB7IHJldHVybiBtX3JlbmRlclZTeW5jRW5hYmxlZDsgfQogICAgIGJvb2wgYXBwbHlEZWZh
dWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVybiBtX2FwcGx5
RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9vbCBhcHBseVBh
Z2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0OwogICAgIGJvb2wgZ2VzdHVyZVRhcEhp
Z2hsaWdodEVuYWJsZWQoKSB7IHJldHVybiBtX2dlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVkOyB9
CiAgICAgV2ViU2l6ZSBkZWZhdWx0VGlsZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2RlZmF1bHRU
aWxlU2l6ZTsgfQogICAgIFdlYlNpemUgbWF4VW50aWxlZExheWVyU2l6ZSgpIGNvbnN0IHsgcmV0
dXJuIG1fbWF4VW50aWxlZExheWVyU2l6ZTsgfQpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkocmV2aXNpb24gMTI4MzY1KQorKysgU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOTA4LDE1
ICszOTA4LDIxIEBAIHZvaWQgV2ViVmlld0ltcGw6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY28KICAg
ICAgICAgbWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEp
OwogICAgIH0gZWxzZSB7CiAgICAgICAgIC8vIFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFw
cGx5IGEgc2NhbGUgYW5kIHNjcm9sbCBpbiBhIHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24u
IFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAg
IC8vIGluIHRoZSBvbGQgY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0
aXBseSB0aGVtCi0gICAgICAgIC8vIGJ5IHRoZSBwYWdlIHNjYWxlIGRlbHRhLgorICAgICAgICAv
LyBvcGVyYXRpb24uCiAgICAgICAgIFdlYlNpemUgc2Nyb2xsT2Zmc2V0ID0gbWFpbkZyYW1lKCkt
PnNjcm9sbE9mZnNldCgpOwogICAgICAgICBzY3JvbGxPZmZzZXQud2lkdGggKz0gc2Nyb2xsRGVs
dGEud2lkdGg7CiAgICAgICAgIHNjcm9sbE9mZnNldC5oZWlnaHQgKz0gc2Nyb2xsRGVsdGEuaGVp
Z2h0OwotICAgICAgICBXZWJQb2ludCBzY2FsZWRTY3JvbGxPZmZzZXQoc2Nyb2xsT2Zmc2V0Lndp
ZHRoICogcGFnZVNjYWxlRGVsdGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICogcGFnZVNjYWxlRGVsdGEpOwotICAgICAgICBzZXRQYWdl
U2NhbGVGYWN0b3IocGFnZVNjYWxlRmFjdG9yKCkgKiBwYWdlU2NhbGVEZWx0YSwgc2NhbGVkU2Ny
b2xsT2Zmc2V0KTsKKworICAgICAgICBXZWJQb2ludCBzY3JvbGxQb2ludChzY3JvbGxPZmZzZXQu
d2lkdGgsIHNjcm9sbE9mZnNldC5oZWlnaHQpOworICAgICAgICBpZiAoIW1fcGFnZS0+c2V0dGlu
Z3MoKS0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSkgeworICAgICAgICAgICAg
Ly8gVGhlIG9sZCBzY3JvbGwgb2Zmc2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUgaW4gdGhl
IG9sZAorICAgICAgICAgICAgLy8gY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0
byBtdWx0aXBseSB0aGVtIGJ5IHRoZSBwYWdlCisgICAgICAgICAgICAvLyBzY2FsZSBkZWx0YS4K
KyAgICAgICAgICAgIHNjcm9sbFBvaW50LnggPSBzY3JvbGxQb2ludC54ICogcGFnZVNjYWxlRGVs
dGE7CisgICAgICAgICAgICBzY3JvbGxQb2ludC55ID0gc2Nyb2xsUG9pbnQueSAqIHBhZ2VTY2Fs
ZURlbHRhOworICAgICAgICB9CisKKyAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2Fs
ZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNjcm9sbFBvaW50KTsKICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>163916</attachid>
            <date>2012-09-13 11:10:03 -0700</date>
            <delta_ts>2012-09-13 11:10:03 -0700</delta_ts>
            <desc>Set of failing layout tests.</desc>
            <filename>layout-test-results_page_scale.tar.gz</filename>
            <type>application/octet-stream</type>
            <size>136635</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">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
RoMZs0+deXHvqNzHq6s9u8xFL14537RuGPj7F18/AMA/6NyrQUVtwzDwQWzmqe1/vXds96L/WHM/
6D2wQb3OhZGBM+1bBpfu1PJRQwMgnMEZnMEZnMEZnMGZiyjzQ25ex/+3dz6rCcNwHN85e4nALpNa
iKjVy6AMETwNdhDG2GVMxk6DXSaTsUfZI+wV1xa0tX9ca9Mkjs/n4MWa9te0zde0+jn/+Xp8/Y5D
8n+d/DlzZf6n+Pu/iWL+xwRG5n8KRmhwBfvzP4NgNBjy/I8l8H/j/8b/jf8b/zf+b/zf+L/xf+P/
xv+N/xv/N/5v/N/4v/F/C/zf+L/xf5+g/1vz46tuG8GDGjrR8mUSm2hic5DR0XU57U97Mj7q5Vit
x0qv9bS1t/x2FWXNt2T3pX6H1VNPbmaL5Wf3BbT0mdfezZ0af817tA9K1Jv3qbx/fE4uk1cXKrpG
KvXQqJfNOcLd6G9d15jyXmxiBK/s6o9FNCZnOlz1VUWHz+eqrMNPyh5efsQ0s4fruWLX3uQ6Nvi/
heddnOo4r1vgxvM//P7LFkYCdMEIDq5g//kfNRhNeP7HFt3439Nskua4aOxeB0qJbQhYvqzeKxap
+vhU7CeITewsyufF7YK7RZPbUtc3s7t8vphMR+vsynLJQxwTV45rLm93T9Lw1iG/W1fBAR8XXWWa
T1a/fTMTp/KNVAXrQoOVOax1xXHrNSvOFlWoOLs7alW8X8iBigvfOeKD3PapqwUn8h/+F2uY87+k
PmBwBxfy33A8Kua/IfnPBL7vS6dvvuz+Oza+/SI8z3N7czP3ikQYSj/oB9KLX8JQyENJ6ZiseaBB
T89cm/CO2+bG07nCr16Rr6kW2+eaiziR//j/b2sYv4bbLhj2cCD/qYkqmf9T5D8TMFPXrLnmwUbv
VuuONW6M/9z/s4XhL0W2y4UcjP+M/4z/3QzMhgKG7UMIAAAAAAAAAAAAAAAAAAAAAAAAAAzzC8vY
HmsAcAgA
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165142</attachid>
            <date>2012-09-21 09:00:06 -0700</date>
            <delta_ts>2012-09-21 10:18:45 -0700</delta_ts>
            <desc>Rebaseline to 129227.</desc>
            <filename>bug-93292-20120921115930.patch</filename>
            <type>text/plain</type>
            <size>10182</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTIxICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0yMSAgU2hlcmlm
ZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjEyOTIxOS4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lv
biAxMjkyMjcpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtOTU2LDggKzk1Niw5IEBAIGZsb2F0IEZyYW1lOjpmcmFtZVNjYWxlRmFjdG9yKCkgY29u
c3QKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwogCiAgICAgLy8gTWFpbiBmcmFtZSBp
cyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRhaW5lciBidXQgaW5uZXIgZnJhbWVzIGFy
ZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUgbWFpbiBmcmFtZS4KLSAgICBpZiAoIXBh
Z2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykKKyAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+
bWFpbkZyYW1lKCkgIT0gdGhpcyB8fCBwYWdlLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcigpKQogICAgICAgICByZXR1cm4gMTsKKwogICAgIHJldHVybiBwYWdl
LT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJ
KHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yOTEsNiArMjkxLDcgQEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2Uq
IHBhZ2UpCiAgICAgLCBtX3dpbmRvd0ZvY3VzUmVzdHJpY3RlZCh0cnVlKQogICAgICwgbV9kaWFn
bm9zdGljTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAgLCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNl
TG9nZ2luZ0VuYWJsZWQoZmFsc2UpCisgICAgLCBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21w
b3NpdG9yKGZhbHNlKQogICAgICwgbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lcih0aGlz
LCAmU2V0dGluZ3M6OmxvYWRzSW1hZ2VzQXV0b21hdGljYWxseVRpbWVyRmlyZWQpCiAgICAgLCBt
X2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzKGRlZmF1bHRJ
bmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGltZW91dEluU2Vjb25kcykKIHsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNjMzLDYgKzYzMyw5IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXREaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQo
Ym9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkID0gZW5hYmxlZDsgfQog
ICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1f
ZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAgICAgICAgdm9pZCBzZXRBcHBseVBhZ2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJsZWQpIHsgbV9hcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9vbCBhcHBseVBhZ2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbHlQYWdlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIGV4cGxpY2l0IFNldHRp
bmdzKFBhZ2UqKTsKIApAQCAtODE4LDYgKzgyMSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
ICAgICAgICBib29sIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCA6IDE7CiAK
KyAgICAgICAgYm9vbCBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yIDogMTsKKwog
ICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lcjsK
ICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lckZpcmVkKFRpbWVyPFNl
dHRpbmdzPiopOwogICAgICAgICAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZp
c2lvbiAxMjkyMjcpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA5LTIxICBKZWZmIFRpbWFudXMgIDx0d2l6
QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1
ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcgaW4gdGhlIENocm9t
aXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwg
c28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJl
aGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
ICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVG
YWN0b3JJbkNvbXBvc2l0b3IpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6CisgICAg
ICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToK
KyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3
SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZSk6CisKIDIwMTItMDktMjEgIFNhbWkgS3lvc3RpbGEg
IDxza3lvc3RpbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBBZGQgdGVzdCBm
b3IgU2Nyb2xsaW5nQ29vcmRpbmF0b3JDaHJvbWl1bQpAQCAtMTA5Nyw2ICsxMTE1LDcgQEAKIAog
ICAgICAgICAqIERFUFM6CiAKKz4+Pj4+Pj4gLnIxMjg2MzYKIDIwMTItMDktMTMgIElseWEgVGlr
aG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6
IE5NSTogaW5zdHJ1bWVudCBLVVJMIGRpcmVjdGx5LgpJbmRleDogU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCShyZXZpc2lvbiAxMjkyMjcpCisrKyBTb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCSh3b3JraW5nIGNvcHkpCkBAIC03
Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dTY3JpcHRzVG9D
bG9zZVdpbmRvd3MoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1VuaXZlcnNh
bEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5
RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCkg
PSAwOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Ob25D
b21wb3NpdGVkQ29udGVudEhvc3QuY3BwCShyZXZpc2lvbiAxMjkyMjcpCisrKyBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NMYXllci5oIgogI2luY2x1
ZGUgIkdyYXBoaWNzTGF5ZXJDaHJvbWl1bS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNr
aWEuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIldlYlZpZXdJbXBsLmgiCiAj
aW5jbHVkZSA8cHVibGljL1dlYkNvbnRlbnRMYXllci5oPgogI2luY2x1ZGUgPHB1YmxpYy9XZWJG
bG9hdFBvaW50Lmg+CkBAIC00OCw3ICs0OSw3IEBAIE5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdDo6
Tm9uQ29tcG9zaXRlZEMKICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldE5hbWUoIm5vbi1jb21wb3Np
dGVkIGNvbnRlbnQiKTsKICNlbmRpZgogICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0RHJhd3NDb250
ZW50KHRydWUpOwotICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0QXBwbGllc1BhZ2VTY2FsZSh0cnVl
KTsKKyAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdlU2NhbGUoIW1fd2ViVmlldy0+
cGFnZSgpLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKTsK
ICAgICBXZWJDb250ZW50TGF5ZXIqIGxheWVyID0gc3RhdGljX2Nhc3Q8V2ViQ29yZTo6R3JhcGhp
Y3NMYXllckNocm9taXVtKj4obV9ncmFwaGljc0xheWVyLmdldCgpKS0+Y29udGVudExheWVyKCk7
CiAgICAgbGF5ZXItPnNldFVzZUxDRFRleHQodHJ1ZSk7CiAgICAgbGF5ZXItPmxheWVyKCktPnNl
dE9wYXF1ZSh0cnVlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRp
bmdzSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
U2V0dGluZ3NJbXBsLmNwcAkocmV2aXNpb24gMTI5MjI3KQorKysgU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQwLDYgKzE0
MCwxMSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlEZWZhdWx0RGV2CiAgICAgbV9h
cHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGFwcGx5RGVmYXVsdERl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOwogfQogCit2b2lkIFdlYlNldHRpbmdzSW1wbDo6
c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCBhcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcikKK3sKKyAgICBtX3NldHRpbmdzLT5zZXRBcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcihhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik7Cit9CisK
IHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoYm9vbCBlbmFi
bGVkKQogewogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCkBAIC02NTMsNCArNjU4LDkgQEAg
dm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEdlc3R1cmVUYXBIaWdobAogICAgIG1fZ2VzdHVyZVRh
cEhpZ2hsaWdodEVuYWJsZWQgPSBlbmFibGVIaWdobGlnaHQ7CiB9CiAKK2Jvb2wgV2ViU2V0dGlu
Z3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fc2V0dGluZ3MtPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCk7Cit9
CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViU2V0dGluZ3NJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NCw2
ICs2NCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dTY3JpcHRzVG9DbG9z
ZVdpbmRvd3MoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93VW5pdmVyc2FsQWNjZXNz
RnJvbUZpbGVVUkxzKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBseURlZmF1bHREZXZp
Y2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0QXBw
bHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCk7CkBAIC0xNjAsNiArMTYxLDcgQEAgcHVibGlj
OgogICAgIGJvb2wgc2hvd1BhaW50UmVjdHMoKSBjb25zdCB7IHJldHVybiBtX3Nob3dQYWludFJl
Y3RzOyB9CiAgICAgYm9vbCByZW5kZXJWU3luY0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3Jl
bmRlclZTeW5jRW5hYmxlZDsgfQogICAgIGJvb2wgYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVybiBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcigpIGNvbnN0OwogICAgIGJvb2wgZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQoKSB7
IHJldHVybiBtX2dlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVkOyB9CiAgICAgV2ViU2l6ZSBkZWZh
dWx0VGlsZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2RlZmF1bHRUaWxlU2l6ZTsgfQogICAgIFdl
YlNpemUgbWF4VW50aWxlZExheWVyU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWF4VW50aWxlZExh
eWVyU2l6ZTsgfQpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmNwcAkocmV2aXNpb24gMTI5MjI3KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOTE4LDE1ICszOTE4LDIxIEBAIHZvaWQg
V2ViVmlld0ltcGw6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY28KICAgICAgICAgbWFpbkZyYW1lSW1w
bCgpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIC8vIFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEgc2NhbGUgYW5kIHNj
cm9sbCBpbiBhIHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBvbGQgc2Nyb2xsIG9m
ZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGluIHRoZSBvbGQgY29v
cmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtCi0gICAgICAg
IC8vIGJ5IHRoZSBwYWdlIHNjYWxlIGRlbHRhLgorICAgICAgICAvLyBvcGVyYXRpb24uCiAgICAg
ICAgIFdlYlNpemUgc2Nyb2xsT2Zmc2V0ID0gbWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpOwog
ICAgICAgICBzY3JvbGxPZmZzZXQud2lkdGggKz0gc2Nyb2xsRGVsdGEud2lkdGg7CiAgICAgICAg
IHNjcm9sbE9mZnNldC5oZWlnaHQgKz0gc2Nyb2xsRGVsdGEuaGVpZ2h0OwotICAgICAgICBXZWJQ
b2ludCBzY2FsZWRTY3JvbGxPZmZzZXQoc2Nyb2xsT2Zmc2V0LndpZHRoICogcGFnZVNjYWxlRGVs
dGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxPZmZzZXQuaGVp
Z2h0ICogcGFnZVNjYWxlRGVsdGEpOwotICAgICAgICBzZXRQYWdlU2NhbGVGYWN0b3IocGFnZVNj
YWxlRmFjdG9yKCkgKiBwYWdlU2NhbGVEZWx0YSwgc2NhbGVkU2Nyb2xsT2Zmc2V0KTsKKworICAg
ICAgICBXZWJQb2ludCBzY3JvbGxQb2ludChzY3JvbGxPZmZzZXQud2lkdGgsIHNjcm9sbE9mZnNl
dC5oZWlnaHQpOworICAgICAgICBpZiAoIW1fcGFnZS0+c2V0dGluZ3MoKS0+YXBwbHlQYWdlU2Nh
bGVGYWN0b3JJbkNvbXBvc2l0b3IoKSkgeworICAgICAgICAgICAgLy8gVGhlIG9sZCBzY3JvbGwg
b2Zmc2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUgaW4gdGhlIG9sZAorICAgICAgICAgICAg
Ly8gY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtIGJ5
IHRoZSBwYWdlCisgICAgICAgICAgICAvLyBzY2FsZSBkZWx0YS4KKyAgICAgICAgICAgIHNjcm9s
bFBvaW50LnggPSBzY3JvbGxQb2ludC54ICogcGFnZVNjYWxlRGVsdGE7CisgICAgICAgICAgICBz
Y3JvbGxQb2ludC55ID0gc2Nyb2xsUG9pbnQueSAqIHBhZ2VTY2FsZURlbHRhOworICAgICAgICB9
CisKKyAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNj
YWxlRGVsdGEsIHNjcm9sbFBvaW50KTsKICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165152</attachid>
            <date>2012-09-21 10:18:51 -0700</date>
            <delta_ts>2012-09-24 13:53:30 -0700</delta_ts>
            <desc>Correct merge error.</desc>
            <filename>bug-93292-20120921131815.patch</filename>
            <type>text/plain</type>
            <size>10011</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTIxICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0yMSAgU2hlcmlm
ZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdl
ZCwgcm9sbGluZyBvdXQgcjEyOTIxOS4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCShyZXZpc2lv
biAxMjkyMjcpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtOTU2LDggKzk1Niw5IEBAIGZsb2F0IEZyYW1lOjpmcmFtZVNjYWxlRmFjdG9yKCkgY29u
c3QKICAgICBQYWdlKiBwYWdlID0gdGhpcy0+cGFnZSgpOwogCiAgICAgLy8gTWFpbiBmcmFtZSBp
cyBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIGhlIGNvbnRhaW5lciBidXQgaW5uZXIgZnJhbWVzIGFy
ZSBub3Qgc2NhbGVkIHdpdGggcmVzcGVjdCB0byB0aGUgbWFpbiBmcmFtZS4KLSAgICBpZiAoIXBh
Z2UgfHwgcGFnZS0+bWFpbkZyYW1lKCkgIT0gdGhpcykKKyAgICBpZiAoIXBhZ2UgfHwgcGFnZS0+
bWFpbkZyYW1lKCkgIT0gdGhpcyB8fCBwYWdlLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcigpKQogICAgICAgICByZXR1cm4gMTsKKwogICAgIHJldHVybiBwYWdl
LT5wYWdlU2NhbGVGYWN0b3IoKTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0
aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJ
KHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yOTEsNiArMjkxLDcgQEAgU2V0dGluZ3M6OlNldHRpbmdzKFBhZ2Uq
IHBhZ2UpCiAgICAgLCBtX3dpbmRvd0ZvY3VzUmVzdHJpY3RlZCh0cnVlKQogICAgICwgbV9kaWFn
bm9zdGljTG9nZ2luZ0VuYWJsZWQoZmFsc2UpCiAgICAgLCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNl
TG9nZ2luZ0VuYWJsZWQoZmFsc2UpCisgICAgLCBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21w
b3NpdG9yKGZhbHNlKQogICAgICwgbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lcih0aGlz
LCAmU2V0dGluZ3M6OmxvYWRzSW1hZ2VzQXV0b21hdGljYWxseVRpbWVyRmlyZWQpCiAgICAgLCBt
X2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzKGRlZmF1bHRJ
bmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGltZW91dEluU2Vjb25kcykKIHsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNjMzLDYgKzYzMyw5IEBAIG5hbWVz
cGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXREaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQo
Ym9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkID0gZW5hYmxlZDsgfQog
ICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1f
ZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAgICAgICAgdm9pZCBzZXRBcHBseVBhZ2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJsZWQpIHsgbV9hcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9vbCBhcHBseVBhZ2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbHlQYWdlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIGV4cGxpY2l0IFNldHRp
bmdzKFBhZ2UqKTsKIApAQCAtODE4LDYgKzgyMSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
ICAgICAgICBib29sIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZCA6IDE7CiAK
KyAgICAgICAgYm9vbCBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yIDogMTsKKwog
ICAgICAgICBUaW1lcjxTZXR0aW5ncz4gbV9sb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lcjsK
ICAgICAgICAgdm9pZCBsb2Fkc0ltYWdlc0F1dG9tYXRpY2FsbHlUaW1lckZpcmVkKFRpbWVyPFNl
dHRpbmdzPiopOwogICAgICAgICAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZp
c2lvbiAxMjkyMjcpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA5LTIxICBKZWZmIFRpbWFudXMgIDx0d2l6
QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1
ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcgaW4gdGhlIENocm9t
aXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwg
c28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJl
aGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
ICogcHVibGljL1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVG
YWN0b3JJbkNvbXBvc2l0b3IpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6
V2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6CisgICAg
ICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToK
KyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3
SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZSk6CisKIDIwMTItMDktMjEgIFNhbWkgS3lvc3RpbGEg
IDxza3lvc3RpbEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW2Nocm9taXVtXSBBZGQgdGVzdCBm
b3IgU2Nyb2xsaW5nQ29vcmRpbmF0b3JDaHJvbWl1bQpJbmRleDogU291cmNlL1dlYktpdC9jaHJv
bWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCShyZXZpc2lvbiAxMjkyMjcpCisrKyBTb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCSh3b3JraW5nIGNvcHkpCkBAIC03
Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dTY3JpcHRzVG9D
bG9zZVdpbmRvd3MoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1VuaXZlcnNh
bEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5
RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpID0gMDsKKyAgICB2aXJ0
dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCkg
PSAwOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Ob25D
b21wb3NpdGVkQ29udGVudEhvc3QuY3BwCShyZXZpc2lvbiAxMjkyMjcpCisrKyBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiR3JhcGhpY3NMYXllci5oIgogI2luY2x1
ZGUgIkdyYXBoaWNzTGF5ZXJDaHJvbWl1bS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNr
aWEuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1ZGUgIldlYlZpZXdJbXBsLmgiCiAj
aW5jbHVkZSA8cHVibGljL1dlYkNvbnRlbnRMYXllci5oPgogI2luY2x1ZGUgPHB1YmxpYy9XZWJG
bG9hdFBvaW50Lmg+CkBAIC00OCw3ICs0OSw3IEBAIE5vbkNvbXBvc2l0ZWRDb250ZW50SG9zdDo6
Tm9uQ29tcG9zaXRlZEMKICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldE5hbWUoIm5vbi1jb21wb3Np
dGVkIGNvbnRlbnQiKTsKICNlbmRpZgogICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0RHJhd3NDb250
ZW50KHRydWUpOwotICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0QXBwbGllc1BhZ2VTY2FsZSh0cnVl
KTsKKyAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdlU2NhbGUoIW1fd2ViVmlldy0+
cGFnZSgpLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpKTsK
ICAgICBXZWJDb250ZW50TGF5ZXIqIGxheWVyID0gc3RhdGljX2Nhc3Q8V2ViQ29yZTo6R3JhcGhp
Y3NMYXllckNocm9taXVtKj4obV9ncmFwaGljc0xheWVyLmdldCgpKS0+Y29udGVudExheWVyKCk7
CiAgICAgbGF5ZXItPnNldFVzZUxDRFRleHQodHJ1ZSk7CiAgICAgbGF5ZXItPmxheWVyKCktPnNl
dE9wYXF1ZSh0cnVlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRp
bmdzSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
U2V0dGluZ3NJbXBsLmNwcAkocmV2aXNpb24gMTI5MjI3KQorKysgU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQwLDYgKzE0
MCwxMSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlEZWZhdWx0RGV2CiAgICAgbV9h
cHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGFwcGx5RGVmYXVsdERl
dmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOwogfQogCit2b2lkIFdlYlNldHRpbmdzSW1wbDo6
c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCBhcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcikKK3sKKyAgICBtX3NldHRpbmdzLT5zZXRBcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcihhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik7Cit9CisK
IHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoYm9vbCBlbmFi
bGVkKQogewogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCkBAIC02NTMsNCArNjU4LDkgQEAg
dm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEdlc3R1cmVUYXBIaWdobAogICAgIG1fZ2VzdHVyZVRh
cEhpZ2hsaWdodEVuYWJsZWQgPSBlbmFibGVIaWdobGlnaHQ7CiB9CiAKK2Jvb2wgV2ViU2V0dGlu
Z3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fc2V0dGluZ3MtPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCk7Cit9
CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViU2V0dGluZ3NJbXBsLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHJldmlzaW9uIDEyOTIyNykKKysrIFNvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02NCw2
ICs2NCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dTY3JpcHRzVG9DbG9z
ZVdpbmRvd3MoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93VW5pdmVyc2FsQWNjZXNz
RnJvbUZpbGVVUkxzKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBseURlZmF1bHREZXZp
Y2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0QXBw
bHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCk7CkBAIC0xNjAsNiArMTYxLDcgQEAgcHVibGlj
OgogICAgIGJvb2wgc2hvd1BhaW50UmVjdHMoKSBjb25zdCB7IHJldHVybiBtX3Nob3dQYWludFJl
Y3RzOyB9CiAgICAgYm9vbCByZW5kZXJWU3luY0VuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX3Jl
bmRlclZTeW5jRW5hYmxlZDsgfQogICAgIGJvb2wgYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVybiBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxl
RmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcigpIGNvbnN0OwogICAgIGJvb2wgZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQoKSB7
IHJldHVybiBtX2dlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVkOyB9CiAgICAgV2ViU2l6ZSBkZWZh
dWx0VGlsZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2RlZmF1bHRUaWxlU2l6ZTsgfQogICAgIFdl
YlNpemUgbWF4VW50aWxlZExheWVyU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWF4VW50aWxlZExh
eWVyU2l6ZTsgfQpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmNwcAkocmV2aXNpb24gMTI5MjI3KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zOTE4LDE1ICszOTE4LDIxIEBAIHZvaWQg
V2ViVmlld0ltcGw6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY28KICAgICAgICAgbWFpbkZyYW1lSW1w
bCgpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAgIH0gZWxzZSB7CiAg
ICAgICAgIC8vIFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEgc2NhbGUgYW5kIHNj
cm9sbCBpbiBhIHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBvbGQgc2Nyb2xsIG9m
ZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGluIHRoZSBvbGQgY29v
cmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtCi0gICAgICAg
IC8vIGJ5IHRoZSBwYWdlIHNjYWxlIGRlbHRhLgorICAgICAgICAvLyBvcGVyYXRpb24uCiAgICAg
ICAgIFdlYlNpemUgc2Nyb2xsT2Zmc2V0ID0gbWFpbkZyYW1lKCktPnNjcm9sbE9mZnNldCgpOwog
ICAgICAgICBzY3JvbGxPZmZzZXQud2lkdGggKz0gc2Nyb2xsRGVsdGEud2lkdGg7CiAgICAgICAg
IHNjcm9sbE9mZnNldC5oZWlnaHQgKz0gc2Nyb2xsRGVsdGEuaGVpZ2h0OwotICAgICAgICBXZWJQ
b2ludCBzY2FsZWRTY3JvbGxPZmZzZXQoc2Nyb2xsT2Zmc2V0LndpZHRoICogcGFnZVNjYWxlRGVs
dGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3JvbGxPZmZzZXQuaGVp
Z2h0ICogcGFnZVNjYWxlRGVsdGEpOwotICAgICAgICBzZXRQYWdlU2NhbGVGYWN0b3IocGFnZVNj
YWxlRmFjdG9yKCkgKiBwYWdlU2NhbGVEZWx0YSwgc2NhbGVkU2Nyb2xsT2Zmc2V0KTsKKworICAg
ICAgICBXZWJQb2ludCBzY3JvbGxQb2ludChzY3JvbGxPZmZzZXQud2lkdGgsIHNjcm9sbE9mZnNl
dC5oZWlnaHQpOworICAgICAgICBpZiAoIW1fcGFnZS0+c2V0dGluZ3MoKS0+YXBwbHlQYWdlU2Nh
bGVGYWN0b3JJbkNvbXBvc2l0b3IoKSkgeworICAgICAgICAgICAgLy8gVGhlIG9sZCBzY3JvbGwg
b2Zmc2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUgaW4gdGhlIG9sZAorICAgICAgICAgICAg
Ly8gY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0aGVtIGJ5
IHRoZSBwYWdlCisgICAgICAgICAgICAvLyBzY2FsZSBkZWx0YS4KKyAgICAgICAgICAgIHNjcm9s
bFBvaW50LnggPSBzY3JvbGxQb2ludC54ICogcGFnZVNjYWxlRGVsdGE7CisgICAgICAgICAgICBz
Y3JvbGxQb2ludC55ID0gc2Nyb2xsUG9pbnQueSAqIHBhZ2VTY2FsZURlbHRhOworICAgICAgICB9
CisKKyAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICogcGFnZVNj
YWxlRGVsdGEsIHNjcm9sbFBvaW50KTsKICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165441</attachid>
            <date>2012-09-24 13:53:37 -0700</date>
            <delta_ts>2012-09-25 16:18:59 -0700</delta_ts>
            <desc>Rebaseline to 129404</desc>
            <filename>bug-93292-20120924165257.patch</filename>
            <type>text/plain</type>
            <size>9997</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyOTQwNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTI0ICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0yNCAgT3R0byBE
ZXJlayBDaGV1bmcgIDxvdGNoZXVuZ0ByaW0uY29tPgogCiAgICAgICAgIFtCbGFja0JlcnJ5XSBS
ZXZlcnRpbmcgaW1wbGVtZW50YXRpb24gZm9yIDQwNyBlcnJvciBwYWdlcwpJbmRleDogU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEyOTQwNCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJh
bWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NTYsOCArOTU2LDkgQEAgZmxvYXQgRnJhbWU6OmZy
YW1lU2NhbGVGYWN0b3IoKSBjb25zdAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAK
ICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFpbmVy
IGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBtYWlu
IGZyYW1lLgotICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQorICAg
IGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzIHx8IHBhZ2UtPnNldHRpbmdz
KCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpCiAgICAgICAgIHJldHVybiAx
OworCiAgICAgcmV0dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpOwogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1NldHRpbmdzLmNwcAkocmV2aXNpb24gMTI5NDA0KQorKysgU291cmNlL1dlYkNvcmUv
cGFnZS9TZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5MSw2ICsyOTEsNyBAQCBTZXR0
aW5nczo6U2V0dGluZ3MoUGFnZSogcGFnZSkKICAgICAsIG1fd2luZG93Rm9jdXNSZXN0cmljdGVk
KHRydWUpCiAgICAgLCBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxlZChmYWxzZSkKICAgICAsIG1f
c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxzZSkKKyAgICAsIG1fYXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpCiAgICAgLCBtX2xvYWRzSW1hZ2VzQXV0
b21hdGljYWxseVRpbWVyKHRoaXMsICZTZXR0aW5nczo6bG9hZHNJbWFnZXNBdXRvbWF0aWNhbGx5
VGltZXJGaXJlZCkKICAgICAsIG1faW5jcmVtZW50YWxSZW5kZXJpbmdTdXBwcmVzc2lvblRpbWVv
dXRJblNlY29uZHMoZGVmYXVsdEluY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0
SW5TZWNvbmRzKQogewpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkocmV2aXNpb24gMTI5NDA0
KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCSh3b3JraW5nIGNvcHkpCkBAIC02
MzMsNiArNjMzLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2b2lkIHNldERpYWdu
b3N0aWNMb2dnaW5nRW5hYmxlZChib29sIGVuYWJsZWQpIHsgbV9kaWFnbm9zdGljTG9nZ2luZ0Vu
YWJsZWQgPSBlbmFibGVkOyB9CiAgICAgICAgIGJvb2wgZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVk
KCkgY29uc3QgeyByZXR1cm4gbV9kaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQ7IH0KIAorICAgICAg
ICB2b2lkIHNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wgZW5hYmxlZCkg
eyBtX2FwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yID0gZW5hYmxlZDsgfQorICAgICAg
ICBib29sIGFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgY29uc3QgeyByZXR1cm4g
bV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcjsgfQorCiAgICAgcHJpdmF0ZToKICAg
ICAgICAgZXhwbGljaXQgU2V0dGluZ3MoUGFnZSopOwogCkBAIC04MTgsNiArODIxLDggQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiAgICAgICAgIGJvb2wgbV9zY3JvbGxpbmdQZXJmb3JtYW5jZUxv
Z2dpbmdFbmFibGVkIDogMTsKIAorICAgICAgICBib29sIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJ
bkNvbXBvc2l0b3IgOiAxOworCiAgICAgICAgIFRpbWVyPFNldHRpbmdzPiBtX2xvYWRzSW1hZ2Vz
QXV0b21hdGljYWxseVRpbWVyOwogICAgICAgICB2b2lkIGxvYWRzSW1hZ2VzQXV0b21hdGljYWxs
eVRpbWVyRmlyZWQoVGltZXI8U2V0dGluZ3M+Kik7CiAgICAgICAgIApJbmRleDogU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyOTQwNCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTItMDktMjQg
IEplZmYgVGltYW51cyAgPHR3aXpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0g
RXhwb3NlIHNldHRpbmdzIHZhbHVlIHRvIGNvbmRpdGlvbmFsbHkgZW5hYmxlIHBpbmNoLXpvb20g
c2NhbGluZyBpbiB0aGUgQ2hyb21pdW0gY29tcG9zaXRvci4gIFRoZQorICAgICAgICBmbGFnIGRl
ZmF1bHRzIHRvIGRpc2FibGVkLCBzbyB0aGlzIGNoYW5nZSBzaG91bGQgYmUgYSBuby1vcCBmb3Ig
c2NhbGluZy9zY3JvbGxpbmcgYmVoYXZpb3VyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMyOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBz
cmMvV2ViU2V0dGluZ3NJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBs
OjpzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6CisgICAgICAgIChXZWJLaXQp
OgorICAgICAgICAoV2ViS2l0OjpXZWJTZXR0aW5nc0ltcGw6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAg
IChXZWJTZXR0aW5nc0ltcGwpOgorICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjphcHBseVNjcm9sbEFuZFNjYWxlKToKKwogMjAxMi0w
OS0yNCAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3
ZWQuICBSb2xsZWQgREVQUy4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YlNldHRpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViU2V0dGluZ3MuaAkocmV2aXNpb24gMTI5NDA0KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsNyBAQCBw
dWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93U2NyaXB0c1RvQ2xvc2VXaW5kb3dzKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmls
ZVVSTHMoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBseURlZmF1bHREZXZpY2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKSA9IDA7CisgICAgdmlydHVhbCB2b2lkIHNldEFw
cGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZv
aWQgc2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9vbCkgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZChib29sKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHNldENhcmV0QnJvd3NpbmdFbmFibGVkKGJvb2wpID0gMDsKSW5kZXg6IFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL05vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0LmNwcAkocmV2aXNpb24gMTI5NDA0KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsNiAr
MzIsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzTGF5ZXIuaCIKICNpbmNsdWRlICJHcmFwaGljc0xh
eWVyQ2hyb21pdW0uaCIKICNpbmNsdWRlICJQbGF0Zm9ybUNvbnRleHRTa2lhLmgiCisjaW5jbHVk
ZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJXZWJWaWV3SW1wbC5oIgogI2luY2x1ZGUgPHB1Ymxp
Yy9XZWJDb250ZW50TGF5ZXIuaD4KICNpbmNsdWRlIDxwdWJsaWMvV2ViRmxvYXRQb2ludC5oPgpA
QCAtNDgsNyArNDksNyBAQCBOb25Db21wb3NpdGVkQ29udGVudEhvc3Q6Ok5vbkNvbXBvc2l0ZWRD
CiAgICAgbV9ncmFwaGljc0xheWVyLT5zZXROYW1lKCJub24tY29tcG9zaXRlZCBjb250ZW50Iik7
CiAjZW5kaWYKICAgICBtX2dyYXBoaWNzTGF5ZXItPnNldERyYXdzQ29udGVudCh0cnVlKTsKLSAg
ICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdlU2NhbGUodHJ1ZSk7CisgICAgbV9ncmFw
aGljc0xheWVyLT5zZXRBcHBsaWVzUGFnZVNjYWxlKCFtX3dlYlZpZXctPnBhZ2UoKS0+c2V0dGlu
Z3MoKS0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSk7CiAgICAgV2ViQ29udGVu
dExheWVyKiBsYXllciA9IHN0YXRpY19jYXN0PFdlYkNvcmU6OkdyYXBoaWNzTGF5ZXJDaHJvbWl1
bSo+KG1fZ3JhcGhpY3NMYXllci5nZXQoKSktPmNvbnRlbnRMYXllcigpOwogICAgIGxheWVyLT5z
ZXRVc2VMQ0RUZXh0KHRydWUpOwogICAgIGxheWVyLT5sYXllcigpLT5zZXRPcGFxdWUodHJ1ZSk7
CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5j
cHAJKHJldmlzaW9uIDEyOTQwNCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNl
dHRpbmdzSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0MCw2ICsxNDAsMTEgQEAgdm9pZCBX
ZWJTZXR0aW5nc0ltcGw6OnNldEFwcGx5RGVmYXVsdERldgogICAgIG1fYXBwbHlEZWZhdWx0RGV2
aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IgPSBhcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvcjsKIH0KIAordm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEFwcGx5UGFnZVNj
YWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wgYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IpCit7CisgICAgbV9zZXR0aW5ncy0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IoYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IpOworfQorCiB2b2lkIFdlYlNldHRp
bmdzSW1wbDo6c2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKGJvb2wgZW5hYmxlZCkKIHsKICNpZiBF
TkFCTEUoVEVYVF9BVVRPU0laSU5HKQpAQCAtNjUzLDQgKzY1OCw5IEBAIHZvaWQgV2ViU2V0dGlu
Z3NJbXBsOjpzZXRHZXN0dXJlVGFwSGlnaGwKICAgICBtX2dlc3R1cmVUYXBIaWdobGlnaHRFbmFi
bGVkID0gZW5hYmxlSGlnaGxpZ2h0OwogfQogCitib29sIFdlYlNldHRpbmdzSW1wbDo6YXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdAoreworICAgIHJldHVybiBtX3NldHRp
bmdzLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdz
SW1wbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRp
bmdzSW1wbC5oCShyZXZpc2lvbiAxMjk0MDQpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuaAkod29ya2luZyBjb3B5KQpAQCAtNjQsNiArNjQsNyBAQCBwdWJs
aWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93U2NyaXB0c1RvQ2xvc2VXaW5kb3dzKGJvb2wp
OwogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyhi
b29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJ
bkNvbXBvc2l0b3IoYm9vbCk7CisgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNT
cGVsbENoZWNraW5nRW5hYmxlZChib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXV0aG9yQW5k
VXNlclN0eWxlc0VuYWJsZWQoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldENhcmV0QnJvd3Np
bmdFbmFibGVkKGJvb2wpOwpAQCAtMTYwLDYgKzE2MSw3IEBAIHB1YmxpYzoKICAgICBib29sIHNo
b3dQYWludFJlY3RzKCkgY29uc3QgeyByZXR1cm4gbV9zaG93UGFpbnRSZWN0czsgfQogICAgIGJv
b2wgcmVuZGVyVlN5bmNFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJWU3luY0VuYWJs
ZWQ7IH0KICAgICBib29sIGFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9y
KCkgY29uc3QgeyByZXR1cm4gbV9hcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9z
aXRvcjsgfQorICAgIGJvb2wgYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25z
dDsKICAgICBib29sIGdlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVkKCkgeyByZXR1cm4gbV9nZXN0
dXJlVGFwSGlnaGxpZ2h0RW5hYmxlZDsgfQogICAgIFdlYlNpemUgZGVmYXVsdFRpbGVTaXplKCkg
Y29uc3QgeyByZXR1cm4gbV9kZWZhdWx0VGlsZVNpemU7IH0KICAgICBXZWJTaXplIG1heFVudGls
ZWRMYXllclNpemUoKSBjb25zdCB7IHJldHVybiBtX21heFVudGlsZWRMYXllclNpemU7IH0KSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAJKHJldmlzaW9u
IDEyOTQwNCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzkxOCwxNSArMzkxOCwyMSBAQCB2b2lkIFdlYlZpZXdJbXBsOjph
cHBseVNjcm9sbEFuZFNjYWxlKGNvCiAgICAgICAgIG1haW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3
KCktPnNjcm9sbEJ5KHNjcm9sbERlbHRhKTsKICAgICB9IGVsc2UgewogICAgICAgICAvLyBUaGUg
cGFnZSBzY2FsZSBjaGFuZ2VkLCBzbyBhcHBseSBhIHNjYWxlIGFuZCBzY3JvbGwgaW4gYSBzaW5n
bGUKLSAgICAgICAgLy8gb3BlcmF0aW9uLiBUaGUgb2xkIHNjcm9sbCBvZmZzZXQgKGFuZCBwYXNz
ZWQtaW4gZGVsdGEpIGFyZQotICAgICAgICAvLyBpbiB0aGUgb2xkIGNvb3JkaW5hdGUgc3BhY2Us
IHNvIHdlIGZpcnN0IG5lZWQgdG8gbXVsdGlwbHkgdGhlbQotICAgICAgICAvLyBieSB0aGUgcGFn
ZSBzY2FsZSBkZWx0YS4KKyAgICAgICAgLy8gb3BlcmF0aW9uLgogICAgICAgICBXZWJTaXplIHNj
cm9sbE9mZnNldCA9IG1haW5GcmFtZSgpLT5zY3JvbGxPZmZzZXQoKTsKICAgICAgICAgc2Nyb2xs
T2Zmc2V0LndpZHRoICs9IHNjcm9sbERlbHRhLndpZHRoOwogICAgICAgICBzY3JvbGxPZmZzZXQu
aGVpZ2h0ICs9IHNjcm9sbERlbHRhLmhlaWdodDsKLSAgICAgICAgV2ViUG9pbnQgc2NhbGVkU2Ny
b2xsT2Zmc2V0KHNjcm9sbE9mZnNldC53aWR0aCAqIHBhZ2VTY2FsZURlbHRhLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsT2Zmc2V0LmhlaWdodCAqIHBhZ2VTY2Fs
ZURlbHRhKTsKLSAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3RvcigpICog
cGFnZVNjYWxlRGVsdGEsIHNjYWxlZFNjcm9sbE9mZnNldCk7CisKKyAgICAgICAgV2ViUG9pbnQg
c2Nyb2xsUG9pbnQoc2Nyb2xsT2Zmc2V0LndpZHRoLCBzY3JvbGxPZmZzZXQuaGVpZ2h0KTsKKyAg
ICAgICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdzKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21w
b3NpdG9yKCkpIHsKKyAgICAgICAgICAgIC8vIFRoZSBvbGQgc2Nyb2xsIG9mZnNldCAoYW5kIHBh
c3NlZC1pbiBkZWx0YSkgYXJlIGluIHRoZSBvbGQKKyAgICAgICAgICAgIC8vIGNvb3JkaW5hdGUg
c3BhY2UsIHNvIHdlIGZpcnN0IG5lZWQgdG8gbXVsdGlwbHkgdGhlbSBieSB0aGUgcGFnZQorICAg
ICAgICAgICAgLy8gc2NhbGUgZGVsdGEuCisgICAgICAgICAgICBzY3JvbGxQb2ludC54ID0gc2Ny
b2xsUG9pbnQueCAqIHBhZ2VTY2FsZURlbHRhOworICAgICAgICAgICAgc2Nyb2xsUG9pbnQueSA9
IHNjcm9sbFBvaW50LnkgKiBwYWdlU2NhbGVEZWx0YTsKKyAgICAgICAgfQorCisgICAgICAgIHNl
dFBhZ2VTY2FsZUZhY3RvcihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY3Jv
bGxQb2ludCk7CiAgICAgfQogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165699</attachid>
            <date>2012-09-25 16:19:06 -0700</date>
            <delta_ts>2012-09-26 14:35:00 -0700</delta_ts>
            <desc>Stop applying page-scale factor to scroll offsets in WebViewImpl.</desc>
            <filename>bug-93292-20120925191825.patch</filename>
            <type>text/plain</type>
            <size>11106</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEyOTU2OCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBACisyMDEyLTA5LTI1ICBKZWZmIFRp
bWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBz
ZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcg
aW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0
byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcv
c2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdHM6ICBFeGlzdGluZyBwYWdlLXNjYWxlIGxheW91dCB0ZXN0cy4KKwor
ICAgICAgICAqIHBhZ2UvRnJhbWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWU6OmZyYW1l
U2NhbGVGYWN0b3IpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2V0dGluZ3M6OlNldHRpbmdzKToKKyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmg6Cisg
ICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IpOgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yKToKKyAgICAgICAgKFNldHRpbmdzKToKKwogMjAxMi0wOS0yNCAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMTIzNTE5MDY+IEhhdmUgRHVtcFJlbmRlclRyZWUgYW5kIFdlYktpdFRlc3RSdW5uZXIgY3Jh
c2ggbG9ncyBzaG93IHdoaWNoIHRlc3QgY3Jhc2hlZApJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9GcmFtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAJ
KHJldmlzaW9uIDEyOTU2OCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC05NTYsOCArOTU2LDkgQEAgZmxvYXQgRnJhbWU6OmZyYW1lU2NhbGVGYWN0
b3IoKSBjb25zdAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAKICAgICAvLyBNYWlu
IGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFpbmVyIGJ1dCBpbm5lciBm
cmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBtYWluIGZyYW1lLgotICAg
IGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQorICAgIGlmICghcGFnZSB8
fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzIHx8IHBhZ2UtPnNldHRpbmdzKCktPmFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpCiAgICAgICAgIHJldHVybiAxOworCiAgICAgcmV0
dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRp
bmdzLmNwcAkocmV2aXNpb24gMTI5NTY4KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5n
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5Myw2ICsyOTMsNyBAQCBTZXR0aW5nczo6U2V0dGlu
Z3MoUGFnZSogcGFnZSkKICAgICAsIG1fd2luZG93Rm9jdXNSZXN0cmljdGVkKHRydWUpCiAgICAg
LCBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxlZChmYWxzZSkKICAgICAsIG1fc2Nyb2xsaW5nUGVy
Zm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxzZSkKKyAgICAsIG1fYXBwbHlQYWdlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3IoZmFsc2UpCiAgICAgLCBtX3NldEltYWdlTG9hZGluZ1NldHRpbmdzVGlt
ZXIodGhpcywgJlNldHRpbmdzOjppbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQpCiAgICAg
LCBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzKGRlZmF1
bHRJbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGltZW91dEluU2Vjb25kcykKIHsKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEyOTU2OCkKKysrIFNvdXJjZS9XZWJD
b3JlL3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNjMzLDYgKzYzMyw5IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXREaWFnbm9zdGljTG9nZ2luZ0VuYWJs
ZWQoYm9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkID0gZW5hYmxlZDsg
fQogICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJu
IG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAgICAgICAgdm9pZCBzZXRBcHBseVBh
Z2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJsZWQpIHsgbV9hcHBseVBhZ2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9vbCBhcHBseVBhZ2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbHlQYWdlU2NhbGVG
YWN0b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAgIGV4cGxpY2l0IFNl
dHRpbmdzKFBhZ2UqKTsKIApAQCAtODE4LDkgKzgyMSwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICAgICAgICAgYm9vbCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQgOiAx
OwogCisgICAgICAgIGJvb2wgbV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA6IDE7
CisKICAgICAgICAgVGltZXI8U2V0dGluZ3M+IG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1l
cjsKICAgICAgICAgdm9pZCBpbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQoVGltZXI8U2V0
dGluZ3M+Kik7Ci0gICAgICAgIAorCiAgICAgICAgIGRvdWJsZSBtX2luY3JlbWVudGFsUmVuZGVy
aW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzOwogCiAjaWYgVVNFKEFWRk9VTkRBVElPTikK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjk1NjgpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIx
IEBACisyMDEyLTA5LTI1ICBKZWZmIFRpbWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAg
ICAgICBbY2hyb21pdW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVu
YWJsZSBwaW5jaC16b29tIHNjYWxpbmcgaW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUK
KyAgICAgICAgZmxhZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxk
IGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgICogcHVibGljL1dlYlNldHRpbmdz
Lmg6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IpOgor
ICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGluZ3NJbXBsOjphcHBs
eVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdz
SW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKyAgICAgICAgKiBzcmMvV2ViVmll
d0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6YXBwbHlTY3JvbGxBbmRT
Y2FsZSk6CisKIDIwMTItMDktMjUgIEJldGggRGFraW4gIDxiZGFraW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTM5NwpJbmRl
eDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCShyZXZpc2lv
biAxMjk1NjgpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5o
CSh3b3JraW5nIGNvcHkpCkBAIC03Miw2ICs3Miw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZv
aWQgc2V0QWxsb3dTY3JpcHRzVG9DbG9zZVdpbmRvd3MoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwg
dm9pZCBzZXRBbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHNldEFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9y
KGJvb2wpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNv
bXBvc2l0b3IoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVs
bENoZWNraW5nRW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEF1dGhvckFu
ZFVzZXJTdHlsZXNFbmFibGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRC
cm93c2luZ0VuYWJsZWQoYm9vbCkgPSAwOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVudEhvc3QuY3BwCShyZXZpc2lvbiAx
Mjk1NjgpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3NpdGVkQ29udGVu
dEhvc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSAiR3Jh
cGhpY3NMYXllci5oIgogI2luY2x1ZGUgIkdyYXBoaWNzTGF5ZXJDaHJvbWl1bS5oIgogI2luY2x1
ZGUgIlBsYXRmb3JtQ29udGV4dFNraWEuaCIKKyNpbmNsdWRlICJTZXR0aW5ncy5oIgogI2luY2x1
ZGUgIldlYlZpZXdJbXBsLmgiCiAjaW5jbHVkZSA8cHVibGljL1dlYkNvbnRlbnRMYXllci5oPgog
I2luY2x1ZGUgPHB1YmxpYy9XZWJGbG9hdFBvaW50Lmg+CkBAIC00OCw3ICs0OSw3IEBAIE5vbkNv
bXBvc2l0ZWRDb250ZW50SG9zdDo6Tm9uQ29tcG9zaXRlZEMKICAgICBtX2dyYXBoaWNzTGF5ZXIt
PnNldE5hbWUoIm5vbi1jb21wb3NpdGVkIGNvbnRlbnQiKTsKICNlbmRpZgogICAgIG1fZ3JhcGhp
Y3NMYXllci0+c2V0RHJhd3NDb250ZW50KHRydWUpOwotICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0
QXBwbGllc1BhZ2VTY2FsZSh0cnVlKTsKKyAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQ
YWdlU2NhbGUoIW1fd2ViVmlldy0+cGFnZSgpLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZh
Y3RvckluQ29tcG9zaXRvcigpKTsKICAgICBXZWJDb250ZW50TGF5ZXIqIGxheWVyID0gc3RhdGlj
X2Nhc3Q8V2ViQ29yZTo6R3JhcGhpY3NMYXllckNocm9taXVtKj4obV9ncmFwaGljc0xheWVyLmdl
dCgpKS0+Y29udGVudExheWVyKCk7CiAgICAgbGF5ZXItPnNldFVzZUxDRFRleHQodHJ1ZSk7CiAg
ICAgbGF5ZXItPmxheWVyKCktPnNldE9wYXF1ZSh0cnVlKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkocmV2aXNpb24gMTI5NTY4KQor
KysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTQwLDYgKzE0MCwxMSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0QXBw
bHlEZWZhdWx0RGV2CiAgICAgbV9hcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9z
aXRvciA9IGFwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOwogfQogCit2
b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3Io
Ym9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcikKK3sKKyAgICBtX3NldHRpbmdz
LT5zZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihhcHBseVBhZ2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvcik7Cit9CisKIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRUZXh0QXV0b3Np
emluZ0VuYWJsZWQoYm9vbCBlbmFibGVkKQogewogI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcp
CkBAIC02NTMsNCArNjU4LDkgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEdlc3R1cmVUYXBI
aWdobAogICAgIG1fZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQgPSBlbmFibGVIaWdobGlnaHQ7
CiB9CiAKK2Jvb2wgV2ViU2V0dGluZ3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9z
aXRvcigpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc2V0dGluZ3MtPmFwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yKCk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHJldmlzaW9uIDEy
OTU2OCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCSh3
b3JraW5nIGNvcHkpCkBAIC02NCw2ICs2NCw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQg
c2V0QWxsb3dTY3JpcHRzVG9DbG9zZVdpbmRvd3MoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNl
dEFsbG93VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCk7
CiAgICAgdmlydHVhbCB2b2lkIHNldEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFibGVkKGJv
b2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVzRW5hYmxlZChib29s
KTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Q2FyZXRCcm93c2luZ0VuYWJsZWQoYm9vbCk7CkBAIC0x
NjAsNiArMTYxLDcgQEAgcHVibGljOgogICAgIGJvb2wgc2hvd1BhaW50UmVjdHMoKSBjb25zdCB7
IHJldHVybiBtX3Nob3dQYWludFJlY3RzOyB9CiAgICAgYm9vbCByZW5kZXJWU3luY0VuYWJsZWQo
KSBjb25zdCB7IHJldHVybiBtX3JlbmRlclZTeW5jRW5hYmxlZDsgfQogICAgIGJvb2wgYXBwbHlE
ZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVybiBtX2Fw
cGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9vbCBhcHBs
eVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0OwogICAgIGJvb2wgZ2VzdHVyZVRh
cEhpZ2hsaWdodEVuYWJsZWQoKSB7IHJldHVybiBtX2dlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVk
OyB9CiAgICAgV2ViU2l6ZSBkZWZhdWx0VGlsZVNpemUoKSBjb25zdCB7IHJldHVybiBtX2RlZmF1
bHRUaWxlU2l6ZTsgfQogICAgIFdlYlNpemUgbWF4VW50aWxlZExheWVyU2l6ZSgpIGNvbnN0IHsg
cmV0dXJuIG1fbWF4VW50aWxlZExheWVyU2l6ZTsgfQpJbmRleDogU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkocmV2aXNpb24gMTI5NTY4KQorKysgU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzU2
LDggKzI3NTYsMjAgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0UGFnZVNjYWxlRmFjdG9yKGZsbwog
ICAgIH0KIAogICAgIHNjYWxlRmFjdG9yID0gY2xhbXBQYWdlU2NhbGVGYWN0b3JUb0xpbWl0cyhz
Y2FsZUZhY3Rvcik7Ci0gICAgV2ViUG9pbnQgY2xhbXBlZE9yaWdpbiA9IGNsYW1wT2Zmc2V0QXRT
Y2FsZShvcmlnaW4sIHNjYWxlRmFjdG9yKTsKLSAgICBwYWdlKCktPnNldFBhZ2VTY2FsZUZhY3Rv
cihzY2FsZUZhY3RvciwgY2xhbXBlZE9yaWdpbik7CisgICAgV2ViUG9pbnQgc2Nyb2xsT2Zmc2V0
OworICAgIGlmICghbV9wYWdlLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvcigpKSB7CisgICAgICAgIC8vIElmIHBhZ2Ugc2NhbGUgaXMgbm90IGFwcGxpZWQgaW4g
dGhlIGNvbXBvc2l0b3IsIHRoZW4gdGhlIHNjcm9sbCBvZmZzZXRzIHNob3VsZAorICAgICAgICAv
LyBiZSBtb2RpZmllZCBieSB0aGUgc2NhbGUgZmFjdG9yLgorICAgICAgICBzY3JvbGxPZmZzZXQg
PSBjbGFtcE9mZnNldEF0U2NhbGUob3JpZ2luLCBzY2FsZUZhY3Rvcik7CisgICAgfSBlbHNlIHsK
KyAgICAgICAgSW50UG9pbnQgb2Zmc2V0ID0gb3JpZ2luOworICAgICAgICBXZWJTaXplIGNvbnRl
bnRTaXplID0gbWFpbkZyYW1lKCktPmNvbnRlbnRzU2l6ZSgpOworICAgICAgICBvZmZzZXQuc2hy
dW5rVG8oSW50UG9pbnQoY29udGVudFNpemUud2lkdGggLSBtX3NpemUud2lkdGgsIGNvbnRlbnRT
aXplLmhlaWdodCAtIG1fc2l6ZS5oZWlnaHQpKTsKKyAgICAgICAgb2Zmc2V0LmNsYW1wTmVnYXRp
dmVUb1plcm8oKTsKKyAgICAgICAgc2Nyb2xsT2Zmc2V0ID0gb2Zmc2V0OworICAgIH0KKworICAg
IHBhZ2UoKS0+c2V0UGFnZVNjYWxlRmFjdG9yKHNjYWxlRmFjdG9yLCBzY3JvbGxPZmZzZXQpOwog
ICAgIG1fcGFnZVNjYWxlRmFjdG9ySXNTZXQgPSB0cnVlOwogfQogCkBAIC0zOTIxLDE1ICszOTMz
LDIxIEBAIHZvaWQgV2ViVmlld0ltcGw6OmFwcGx5U2Nyb2xsQW5kU2NhbGUoY28KICAgICAgICAg
bWFpbkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKS0+c2Nyb2xsQnkoc2Nyb2xsRGVsdGEpOwogICAg
IH0gZWxzZSB7CiAgICAgICAgIC8vIFRoZSBwYWdlIHNjYWxlIGNoYW5nZWQsIHNvIGFwcGx5IGEg
c2NhbGUgYW5kIHNjcm9sbCBpbiBhIHNpbmdsZQotICAgICAgICAvLyBvcGVyYXRpb24uIFRoZSBv
bGQgc2Nyb2xsIG9mZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlCi0gICAgICAgIC8vIGlu
IHRoZSBvbGQgY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0aXBseSB0
aGVtCi0gICAgICAgIC8vIGJ5IHRoZSBwYWdlIHNjYWxlIGRlbHRhLgorICAgICAgICAvLyBvcGVy
YXRpb24uCiAgICAgICAgIFdlYlNpemUgc2Nyb2xsT2Zmc2V0ID0gbWFpbkZyYW1lKCktPnNjcm9s
bE9mZnNldCgpOwogICAgICAgICBzY3JvbGxPZmZzZXQud2lkdGggKz0gc2Nyb2xsRGVsdGEud2lk
dGg7CiAgICAgICAgIHNjcm9sbE9mZnNldC5oZWlnaHQgKz0gc2Nyb2xsRGVsdGEuaGVpZ2h0Owot
ICAgICAgICBXZWJQb2ludCBzY2FsZWRTY3JvbGxPZmZzZXQoc2Nyb2xsT2Zmc2V0LndpZHRoICog
cGFnZVNjYWxlRGVsdGEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY3Jv
bGxPZmZzZXQuaGVpZ2h0ICogcGFnZVNjYWxlRGVsdGEpOwotICAgICAgICBzZXRQYWdlU2NhbGVG
YWN0b3IocGFnZVNjYWxlRmFjdG9yKCkgKiBwYWdlU2NhbGVEZWx0YSwgc2NhbGVkU2Nyb2xsT2Zm
c2V0KTsKKworICAgICAgICBXZWJQb2ludCBzY3JvbGxQb2ludChzY3JvbGxPZmZzZXQud2lkdGgs
IHNjcm9sbE9mZnNldC5oZWlnaHQpOworICAgICAgICBpZiAoIW1fcGFnZS0+c2V0dGluZ3MoKS0+
YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSkgeworICAgICAgICAgICAgLy8gVGhl
IG9sZCBzY3JvbGwgb2Zmc2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUgaW4gdGhlIG9sZAor
ICAgICAgICAgICAgLy8gY29vcmRpbmF0ZSBzcGFjZSwgc28gd2UgZmlyc3QgbmVlZCB0byBtdWx0
aXBseSB0aGVtIGJ5IHRoZSBwYWdlCisgICAgICAgICAgICAvLyBzY2FsZSBkZWx0YS4KKyAgICAg
ICAgICAgIHNjcm9sbFBvaW50LnggPSBzY3JvbGxQb2ludC54ICogcGFnZVNjYWxlRGVsdGE7Cisg
ICAgICAgICAgICBzY3JvbGxQb2ludC55ID0gc2Nyb2xsUG9pbnQueSAqIHBhZ2VTY2FsZURlbHRh
OworICAgICAgICB9CisKKyAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VTY2FsZUZhY3Rv
cigpICogcGFnZVNjYWxlRGVsdGEsIHNjcm9sbFBvaW50KTsKICAgICB9CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165878</attachid>
            <date>2012-09-26 14:35:06 -0700</date>
            <delta_ts>2012-10-08 16:16:01 -0700</delta_ts>
            <desc>Add WebCompositor::setPageScalePinchZoomEnabled(...) settings exports.</desc>
            <filename>bug-93292-20120926173424.patch</filename>
            <type>text/plain</type>
            <size>12404</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViQ29tcG9zaXRvci5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViQ29tcG9zaXRv
ci5oCShyZXZpc2lvbiAxMjk2NjYpCisrKyBTb3VyY2UvUGxhdGZvcm0vY2hyb21pdW0vcHVibGlj
L1dlYkNvbXBvc2l0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtNTUsNiArNTUsNyBAQCBwdWJsaWM6
CiAgICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRQZXJUaWxlUGFpbnRpbmdFbmFibGVk
KGJvb2wpOwogICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIHZvaWQgc2V0UGFydGlhbFN3YXBFbmFi
bGVkKGJvb2wpOwogICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIHZvaWQgc2V0QWNjZWxlcmF0ZWRB
bmltYXRpb25FbmFibGVkKGJvb2wpOworICAgIFdFQktJVF9FWFBPUlQgc3RhdGljIHZvaWQgc2V0
UGFnZVNjYWxlUGluY2hab29tRW5hYmxlZChib29sKTsKIAogcHJvdGVjdGVkOgogICAgIHZpcnR1
YWwgfldlYkNvbXBvc2l0b3IoKSB7IH0KSW5kZXg6IFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9w
dWJsaWMvV2ViQ29tcG9zaXRvclN1cHBvcnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvUGxhdGZv
cm0vY2hyb21pdW0vcHVibGljL1dlYkNvbXBvc2l0b3JTdXBwb3J0LmgJKHJldmlzaW9uIDEyOTY2
NikKKysrIFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViQ29tcG9zaXRvclN1cHBv
cnQuaAkod29ya2luZyBjb3B5KQpAQCAtNzEsNiArNzEsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB2b2lkIHNldFBlclRpbGVQYWludGluZ0VuYWJsZWQoYm9vbCkgeyB9CiAgICAgdmlydHVhbCB2
b2lkIHNldFBhcnRpYWxTd2FwRW5hYmxlZChib29sKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0
QWNjZWxlcmF0ZWRBbmltYXRpb25FbmFibGVkKGJvb2wpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBz
ZXRQYWdlU2NhbGVQaW5jaFpvb21FbmFibGVkKGJvb2wpIHsgfQogCiAgICAgLy8gTWF5IHJldHVy
biAwIGlmIGluaXRpYWxpemF0aW9uIGZhaWxzLgogICAgIHZpcnR1YWwgV2ViTGF5ZXJUcmVlVmll
dyogY3JlYXRlTGF5ZXJUcmVlVmlldyhXZWJMYXllclRyZWVWaWV3Q2xpZW50KiwgY29uc3QgV2Vi
TGF5ZXImIHJvb3QsIGNvbnN0IFdlYkxheWVyVHJlZVZpZXc6OlNldHRpbmdzJikgeyByZXR1cm4g
MDsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTI5NjY2KQorKysgU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTItMDktMjYgIEpl
ZmYgVGltYW51cyAgPHR3aXpAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gRXhw
b3NlIHNldHRpbmdzIHZhbHVlIHRvIGNvbmRpdGlvbmFsbHkgZW5hYmxlIHBpbmNoLXpvb20gc2Nh
bGluZyBpbiB0aGUgQ2hyb21pdW0gY29tcG9zaXRvci4gIFRoZQorICAgICAgICBmbGFnIGRlZmF1
bHRzIHRvIGRpc2FibGVkLCBzbyB0aGlzIGNoYW5nZSBzaG91bGQgYmUgYSBuby1vcCBmb3Igc2Nh
bGluZy9zY3JvbGxpbmcgYmVoYXZpb3VyLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9OTMyOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUZXN0czogIEV4aXN0aW5nIHBhZ2Utc2NhbGUgbGF5b3V0IHRlc3Rz
LgorCisgICAgICAgICogcGFnZS9GcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZTo6
ZnJhbWVTY2FsZUZhY3Rvcik6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTZXR0aW5nczo6U2V0dGluZ3MpOgorICAgICAgICAqIHBhZ2UvU2V0dGluZ3Mu
aDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRBcHBseVBhZ2VTY2FsZUZhY3Rvcklu
Q29tcG9zaXRvcik6CisgICAgICAgIChXZWJDb3JlOjpTZXR0aW5nczo6YXBwbHlQYWdlU2NhbGVG
YWN0b3JJbkNvbXBvc2l0b3IpOgorICAgICAgICAoU2V0dGluZ3MpOgorCiAyMDEyLTA5LTI2ICBN
aWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIFVwZGF0ZSBDb21w
bGV4VGV4dENvbnRyb2xsZXIgZm9yIDggYml0IFRleHRSdW4gY2hhbmdlcwpJbmRleDogU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFn
ZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEyOTY2NikKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRnJh
bWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NTYsOCArOTU2LDkgQEAgZmxvYXQgRnJhbWU6OmZy
YW1lU2NhbGVGYWN0b3IoKSBjb25zdAogICAgIFBhZ2UqIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAK
ICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3BlY3QgdG8gaGUgY29udGFpbmVy
IGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBtYWlu
IGZyYW1lLgotICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzKQorICAg
IGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlzIHx8IHBhZ2UtPnNldHRpbmdz
KCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpCiAgICAgICAgIHJldHVybiAx
OworCiAgICAgcmV0dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3RvcigpOwogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1NldHRpbmdzLmNwcAkocmV2aXNpb24gMTI5NjY2KQorKysgU291cmNlL1dlYkNvcmUv
cGFnZS9TZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5Myw2ICsyOTMsNyBAQCBTZXR0
aW5nczo6U2V0dGluZ3MoUGFnZSogcGFnZSkKICAgICAsIG1fd2luZG93Rm9jdXNSZXN0cmljdGVk
KHRydWUpCiAgICAgLCBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxlZChmYWxzZSkKICAgICAsIG1f
c2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxzZSkKKyAgICAsIG1fYXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpCiAgICAgLCBtX3NldEltYWdlTG9hZGlu
Z1NldHRpbmdzVGltZXIodGhpcywgJlNldHRpbmdzOjppbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVy
RmlyZWQpCiAgICAgLCBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5T
ZWNvbmRzKGRlZmF1bHRJbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHByZXNzaW9uVGltZW91dEluU2Vj
b25kcykKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHJldmlzaW9uIDEyOTY2NikKKysr
IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtNjMzLDYg
KzYzMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBzZXREaWFnbm9zdGlj
TG9nZ2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVk
ID0gZW5hYmxlZDsgfQogICAgICAgICBib29sIGRpYWdub3N0aWNMb2dnaW5nRW5hYmxlZCgpIGNv
bnN0IHsgcmV0dXJuIG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkOyB9CiAKKyAgICAgICAgdm9p
ZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGVuYWJsZWQpIHsgbV9h
cHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGVuYWJsZWQ7IH0KKyAgICAgICAgYm9v
bCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBw
bHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKwogICAgIHByaXZhdGU6CiAgICAgICAg
IGV4cGxpY2l0IFNldHRpbmdzKFBhZ2UqKTsKIApAQCAtODE4LDkgKzgyMSwxMSBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKICAgICAgICAgYm9vbCBtX3Njcm9sbGluZ1BlcmZvcm1hbmNlTG9nZ2lu
Z0VuYWJsZWQgOiAxOwogCisgICAgICAgIGJvb2wgbV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29t
cG9zaXRvciA6IDE7CisKICAgICAgICAgVGltZXI8U2V0dGluZ3M+IG1fc2V0SW1hZ2VMb2FkaW5n
U2V0dGluZ3NUaW1lcjsKICAgICAgICAgdm9pZCBpbWFnZUxvYWRpbmdTZXR0aW5nc1RpbWVyRmly
ZWQoVGltZXI8U2V0dGluZ3M+Kik7Ci0gICAgICAgIAorCiAgICAgICAgIGRvdWJsZSBtX2luY3Jl
bWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzOwogCiAjaWYgVVNFKEFW
Rk9VTkRBVElPTikKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjk2
NjYpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDIxIEBACisyMDEyLTA5LTI2ICBKZWZmIFRpbWFudXMgIDx0d2l6QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBzZXR0aW5ncyB2YWx1ZSB0byBjb25k
aXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcgaW4gdGhlIENocm9taXVtIGNvbXBv
c2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0byBkaXNhYmxlZCwgc28gdGhpcyBj
aGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcvc2Nyb2xsaW5nIGJlaGF2aW91ci4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTkzMjkyCisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgICogcHVibGlj
L1dlYlNldHRpbmdzLmg6CisgICAgICAgICogc3JjL1dlYlNldHRpbmdzSW1wbC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNv
bXBvc2l0b3IpOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKFdlYktpdDo6V2ViU2V0dGlu
Z3NJbXBsOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6CisgICAgICAgICogc3Jj
L1dlYlNldHRpbmdzSW1wbC5oOgorICAgICAgICAoV2ViU2V0dGluZ3NJbXBsKToKKyAgICAgICAg
KiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6YXBw
bHlTY3JvbGxBbmRTY2FsZSk6CisKIDIwMTItMDktMjYgIExlYW5kcm8gR3JhY2lhIEdpbCAgPGxl
YW5kcm9ncmFjaWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0gRml4IGZpbmQt
aW4tcGFnZSBjb3JuZXIgY2FzZSBmb3IgZGV0YWNoZWQgZnJhbWVzCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgJKHJldmlzaW9uIDEyOTY2NikKKysr
IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTcyLDYgKzcyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1Nj
cmlwdHNUb0Nsb3NlV2luZG93cyhib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93
VW5pdmVyc2FsQWNjZXNzRnJvbUZpbGVVUkxzKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0QXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCkgPSAwOwor
ICAgIHZpcnR1YWwgdm9pZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29s
KSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldEFzeW5jaHJvbm91c1NwZWxsQ2hlY2tpbmdFbmFi
bGVkKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXV0aG9yQW5kVXNlclN0eWxlc0Vu
YWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRDYXJldEJyb3dzaW5nRW5hYmxl
ZChib29sKSA9IDA7CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Ob25Db21wb3Np
dGVkQ29udGVudEhvc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL05vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC5jcHAJKHJldmlzaW9uIDEyOTY2NikKKysrIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL05vbkNvbXBvc2l0ZWRDb250ZW50SG9zdC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJHcmFwaGljc0xheWVyLmgi
CiAjaW5jbHVkZSAiR3JhcGhpY3NMYXllckNocm9taXVtLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1D
b250ZXh0U2tpYS5oIgorI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiV2ViVmlld0lt
cGwuaCIKICNpbmNsdWRlIDxwdWJsaWMvV2ViQ29udGVudExheWVyLmg+CiAjaW5jbHVkZSA8cHVi
bGljL1dlYkZsb2F0UG9pbnQuaD4KQEAgLTQ4LDcgKzQ5LDcgQEAgTm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0OjpOb25Db21wb3NpdGVkQwogICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0TmFtZSgibm9u
LWNvbXBvc2l0ZWQgY29udGVudCIpOwogI2VuZGlmCiAgICAgbV9ncmFwaGljc0xheWVyLT5zZXRE
cmF3c0NvbnRlbnQodHJ1ZSk7Ci0gICAgbV9ncmFwaGljc0xheWVyLT5zZXRBcHBsaWVzUGFnZVNj
YWxlKHRydWUpOworICAgIG1fZ3JhcGhpY3NMYXllci0+c2V0QXBwbGllc1BhZ2VTY2FsZSghbV93
ZWJWaWV3LT5wYWdlKCktPnNldHRpbmdzKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3Np
dG9yKCkpOwogICAgIFdlYkNvbnRlbnRMYXllciogbGF5ZXIgPSBzdGF0aWNfY2FzdDxXZWJDb3Jl
OjpHcmFwaGljc0xheWVyQ2hyb21pdW0qPihtX2dyYXBoaWNzTGF5ZXIuZ2V0KCkpLT5jb250ZW50
TGF5ZXIoKTsKICAgICBsYXllci0+c2V0VXNlTENEVGV4dCh0cnVlKTsKICAgICBsYXllci0+bGF5
ZXIoKS0+c2V0T3BhcXVlKHRydWUpOwpJbmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViU2V0dGluZ3NJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCShyZXZpc2lvbiAxMjk2NjYpCisrKyBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
NDAsNiArMTQwLDExIEBAIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRBcHBseURlZmF1bHREZXYK
ICAgICBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yID0gYXBwbHlE
ZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7CiB9CiAKK3ZvaWQgV2ViU2V0dGlu
Z3NJbXBsOjpzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sIGFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKQoreworICAgIG1fc2V0dGluZ3MtPnNldEFwcGx5UGFn
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9y
KTsKK30KKwogdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldFRleHRBdXRvc2l6aW5nRW5hYmxlZChi
b29sIGVuYWJsZWQpCiB7CiAjaWYgRU5BQkxFKFRFWFRfQVVUT1NJWklORykKQEAgLTY1Myw0ICs2
NTgsOSBAQCB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0R2VzdHVyZVRhcEhpZ2hsCiAgICAgbV9n
ZXN0dXJlVGFwSGlnaGxpZ2h0RW5hYmxlZCA9IGVuYWJsZUhpZ2hsaWdodDsKIH0KIAorYm9vbCBX
ZWJTZXR0aW5nc0ltcGw6OmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgY29uc3QK
K3sKKyAgICByZXR1cm4gbV9zZXR0aW5ncy0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4OiBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAkocmV2aXNpb24gMTI5NjY2KQorKysgU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY0LDYgKzY0LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1Njcmlw
dHNUb0Nsb3NlV2luZG93cyhib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxsb3dVbml2ZXJz
YWxBY2Nlc3NGcm9tRmlsZVVSTHMoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5RGVm
YXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpOworICAgIHZpcnR1YWwgdm9p
ZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKTsKICAgICB2aXJ0dWFs
IHZvaWQgc2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0VuYWJsZWQoYm9vbCk7CiAgICAgdmly
dHVhbCB2b2lkIHNldEF1dGhvckFuZFVzZXJTdHlsZXNFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRDYXJldEJyb3dzaW5nRW5hYmxlZChib29sKTsKQEAgLTE2MCw2ICsxNjEsNyBA
QCBwdWJsaWM6CiAgICAgYm9vbCBzaG93UGFpbnRSZWN0cygpIGNvbnN0IHsgcmV0dXJuIG1fc2hv
d1BhaW50UmVjdHM7IH0KICAgICBib29sIHJlbmRlclZTeW5jRW5hYmxlZCgpIGNvbnN0IHsgcmV0
dXJuIG1fcmVuZGVyVlN5bmNFbmFibGVkOyB9CiAgICAgYm9vbCBhcHBseURlZmF1bHREZXZpY2VT
Y2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNvbnN0IHsgcmV0dXJuIG1fYXBwbHlEZWZhdWx0RGV2
aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKyAgICBib29sIGFwcGx5UGFnZVNjYWxlRmFj
dG9ySW5Db21wb3NpdG9yKCkgY29uc3Q7CiAgICAgYm9vbCBnZXN0dXJlVGFwSGlnaGxpZ2h0RW5h
YmxlZCgpIHsgcmV0dXJuIG1fZ2VzdHVyZVRhcEhpZ2hsaWdodEVuYWJsZWQ7IH0KICAgICBXZWJT
aXplIGRlZmF1bHRUaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGVmYXVsdFRpbGVTaXplOyB9
CiAgICAgV2ViU2l6ZSBtYXhVbnRpbGVkTGF5ZXJTaXplKCkgY29uc3QgeyByZXR1cm4gbV9tYXhV
bnRpbGVkTGF5ZXJTaXplOyB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJW
aWV3SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwCShyZXZpc2lvbiAxMjk2NjYpCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NTYsOCArMjc1NiwyMCBA
QCB2b2lkIFdlYlZpZXdJbXBsOjpzZXRQYWdlU2NhbGVGYWN0b3IoZmxvCiAgICAgfQogCiAgICAg
c2NhbGVGYWN0b3IgPSBjbGFtcFBhZ2VTY2FsZUZhY3RvclRvTGltaXRzKHNjYWxlRmFjdG9yKTsK
LSAgICBXZWJQb2ludCBjbGFtcGVkT3JpZ2luID0gY2xhbXBPZmZzZXRBdFNjYWxlKG9yaWdpbiwg
c2NhbGVGYWN0b3IpOwotICAgIHBhZ2UoKS0+c2V0UGFnZVNjYWxlRmFjdG9yKHNjYWxlRmFjdG9y
LCBjbGFtcGVkT3JpZ2luKTsKKyAgICBXZWJQb2ludCBzY3JvbGxPZmZzZXQ7CisgICAgaWYgKCFt
X3BhZ2UtPnNldHRpbmdzKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpIHsK
KyAgICAgICAgLy8gSWYgcGFnZSBzY2FsZSBpcyBub3QgYXBwbGllZCBpbiB0aGUgY29tcG9zaXRv
ciwgdGhlbiB0aGUgc2Nyb2xsIG9mZnNldHMgc2hvdWxkCisgICAgICAgIC8vIGJlIG1vZGlmaWVk
IGJ5IHRoZSBzY2FsZSBmYWN0b3IuCisgICAgICAgIHNjcm9sbE9mZnNldCA9IGNsYW1wT2Zmc2V0
QXRTY2FsZShvcmlnaW4sIHNjYWxlRmFjdG9yKTsKKyAgICB9IGVsc2UgeworICAgICAgICBJbnRQ
b2ludCBvZmZzZXQgPSBvcmlnaW47CisgICAgICAgIFdlYlNpemUgY29udGVudFNpemUgPSBtYWlu
RnJhbWUoKS0+Y29udGVudHNTaXplKCk7CisgICAgICAgIG9mZnNldC5zaHJ1bmtUbyhJbnRQb2lu
dChjb250ZW50U2l6ZS53aWR0aCAtIG1fc2l6ZS53aWR0aCwgY29udGVudFNpemUuaGVpZ2h0IC0g
bV9zaXplLmhlaWdodCkpOworICAgICAgICBvZmZzZXQuY2xhbXBOZWdhdGl2ZVRvWmVybygpOwor
ICAgICAgICBzY3JvbGxPZmZzZXQgPSBvZmZzZXQ7CisgICAgfQorCisgICAgcGFnZSgpLT5zZXRQ
YWdlU2NhbGVGYWN0b3Ioc2NhbGVGYWN0b3IsIHNjcm9sbE9mZnNldCk7CiAgICAgbV9wYWdlU2Nh
bGVGYWN0b3JJc1NldCA9IHRydWU7CiB9CiAKQEAgLTM5MjEsMTUgKzM5MzMsMjEgQEAgdm9pZCBX
ZWJWaWV3SW1wbDo6YXBwbHlTY3JvbGxBbmRTY2FsZShjbwogICAgICAgICBtYWluRnJhbWVJbXBs
KCktPmZyYW1lVmlldygpLT5zY3JvbGxCeShzY3JvbGxEZWx0YSk7CiAgICAgfSBlbHNlIHsKICAg
ICAgICAgLy8gVGhlIHBhZ2Ugc2NhbGUgY2hhbmdlZCwgc28gYXBwbHkgYSBzY2FsZSBhbmQgc2Ny
b2xsIGluIGEgc2luZ2xlCi0gICAgICAgIC8vIG9wZXJhdGlvbi4gVGhlIG9sZCBzY3JvbGwgb2Zm
c2V0IChhbmQgcGFzc2VkLWluIGRlbHRhKSBhcmUKLSAgICAgICAgLy8gaW4gdGhlIG9sZCBjb29y
ZGluYXRlIHNwYWNlLCBzbyB3ZSBmaXJzdCBuZWVkIHRvIG11bHRpcGx5IHRoZW0KLSAgICAgICAg
Ly8gYnkgdGhlIHBhZ2Ugc2NhbGUgZGVsdGEuCisgICAgICAgIC8vIG9wZXJhdGlvbi4KICAgICAg
ICAgV2ViU2l6ZSBzY3JvbGxPZmZzZXQgPSBtYWluRnJhbWUoKS0+c2Nyb2xsT2Zmc2V0KCk7CiAg
ICAgICAgIHNjcm9sbE9mZnNldC53aWR0aCArPSBzY3JvbGxEZWx0YS53aWR0aDsKICAgICAgICAg
c2Nyb2xsT2Zmc2V0LmhlaWdodCArPSBzY3JvbGxEZWx0YS5oZWlnaHQ7Ci0gICAgICAgIFdlYlBv
aW50IHNjYWxlZFNjcm9sbE9mZnNldChzY3JvbGxPZmZzZXQud2lkdGggKiBwYWdlU2NhbGVEZWx0
YSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjcm9sbE9mZnNldC5oZWln
aHQgKiBwYWdlU2NhbGVEZWx0YSk7Ci0gICAgICAgIHNldFBhZ2VTY2FsZUZhY3RvcihwYWdlU2Nh
bGVGYWN0b3IoKSAqIHBhZ2VTY2FsZURlbHRhLCBzY2FsZWRTY3JvbGxPZmZzZXQpOworCisgICAg
ICAgIFdlYlBvaW50IHNjcm9sbFBvaW50KHNjcm9sbE9mZnNldC53aWR0aCwgc2Nyb2xsT2Zmc2V0
LmhlaWdodCk7CisgICAgICAgIGlmICghbV9wYWdlLT5zZXR0aW5ncygpLT5hcHBseVBhZ2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcigpKSB7CisgICAgICAgICAgICAvLyBUaGUgb2xkIHNjcm9sbCBv
ZmZzZXQgKGFuZCBwYXNzZWQtaW4gZGVsdGEpIGFyZSBpbiB0aGUgb2xkCisgICAgICAgICAgICAv
LyBjb29yZGluYXRlIHNwYWNlLCBzbyB3ZSBmaXJzdCBuZWVkIHRvIG11bHRpcGx5IHRoZW0gYnkg
dGhlIHBhZ2UKKyAgICAgICAgICAgIC8vIHNjYWxlIGRlbHRhLgorICAgICAgICAgICAgc2Nyb2xs
UG9pbnQueCA9IHNjcm9sbFBvaW50LnggKiBwYWdlU2NhbGVEZWx0YTsKKyAgICAgICAgICAgIHNj
cm9sbFBvaW50LnkgPSBzY3JvbGxQb2ludC55ICogcGFnZVNjYWxlRGVsdGE7CisgICAgICAgIH0K
KworICAgICAgICBzZXRQYWdlU2NhbGVGYWN0b3IocGFnZVNjYWxlRmFjdG9yKCkgKiBwYWdlU2Nh
bGVEZWx0YSwgc2Nyb2xsUG9pbnQpOwogICAgIH0KIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>166532</attachid>
            <date>2012-10-01 13:38:09 -0700</date>
            <delta_ts>2012-10-03 14:22:07 -0700</delta_ts>
            <desc>Rebaseline to 130047.</desc>
            <filename>bug-93292-20121001163722.patch</filename>
            <type>text/plain</type>
            <size>13472</size>
            <attacher name="Jeff Timanus">twiz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9QbGF0Zm9ybS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1Bs
YXRmb3JtL0NoYW5nZUxvZwkocmV2aXNpb24gMTMwMDUwKQorKysgU291cmNlL1BsYXRmb3JtL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEyLTEwLTAxICBKZWZm
IFRpbWFudXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9z
ZSBzZXR0aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxp
bmcgaW4gdGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0
cyB0byBkaXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxp
bmcvc2Nyb2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBjaHJvbWl1bS9wdWJsaWMvV2ViQ29tcG9zaXRvci5oOgorICAgICAg
ICAoV2ViQ29tcG9zaXRvcik6CisgICAgICAgICogY2hyb21pdW0vcHVibGljL1dlYkNvbXBvc2l0
b3JTdXBwb3J0Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbXBvc2l0b3JTdXBwb3J0OjpzZXRQ
YWdlU2NhbGVQaW5jaFpvb21FbmFibGVkKToKKwogMjAxMi0wOS0yOCAgSGFyYWxkIFR2ZWl0IEFs
dmVzdHJhbmQgIDxoYXJhbGRAYWx2ZXN0cmFuZC5ubz4KIAogICAgICAgICBJbXBsZW1lbnQgdGhl
IEdldFN0YXRzIGludGVyZmFjZSBvbiBQZWVyQ29ubmVjdGlvbgpJbmRleDogU291cmNlL1BsYXRm
b3JtL2Nocm9taXVtL3B1YmxpYy9XZWJDb21wb3NpdG9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJDb21wb3NpdG9yLmgJKHJldmlzaW9uIDEzMDA0
NykKKysrIFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMvV2ViQ29tcG9zaXRvci5oCSh3
b3JraW5nIGNvcHkpCkBAIC01NSw2ICs1NSw3IEBAIHB1YmxpYzoKICAgICBXRUJLSVRfRVhQT1JU
IHN0YXRpYyB2b2lkIHNldFBlclRpbGVQYWludGluZ0VuYWJsZWQoYm9vbCk7CiAgICAgV0VCS0lU
X0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRQYXJ0aWFsU3dhcEVuYWJsZWQoYm9vbCk7CiAgICAgV0VC
S0lUX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRBY2NlbGVyYXRlZEFuaW1hdGlvbkVuYWJsZWQoYm9v
bCk7CisgICAgV0VCS0lUX0VYUE9SVCBzdGF0aWMgdm9pZCBzZXRQYWdlU2NhbGVQaW5jaFpvb21F
bmFibGVkKGJvb2wpOwogCiBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB+V2ViQ29tcG9zaXRvcigp
IHsgfQpJbmRleDogU291cmNlL1BsYXRmb3JtL2Nocm9taXVtL3B1YmxpYy9XZWJDb21wb3NpdG9y
U3VwcG9ydC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9QbGF0Zm9ybS9jaHJvbWl1bS9wdWJsaWMv
V2ViQ29tcG9zaXRvclN1cHBvcnQuaAkocmV2aXNpb24gMTMwMDQ3KQorKysgU291cmNlL1BsYXRm
b3JtL2Nocm9taXVtL3B1YmxpYy9XZWJDb21wb3NpdG9yU3VwcG9ydC5oCSh3b3JraW5nIGNvcHkp
CkBAIC03MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0UGVyVGlsZVBh
aW50aW5nRW5hYmxlZChib29sKSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0UGFydGlhbFN3YXBF
bmFibGVkKGJvb2wpIHsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRBY2NlbGVyYXRlZEFuaW1hdGlv
bkVuYWJsZWQoYm9vbCkgeyB9CisgICAgdmlydHVhbCB2b2lkIHNldFBhZ2VTY2FsZVBpbmNoWm9v
bUVuYWJsZWQoYm9vbCkgeyB9CiAKICAgICAvLyBNYXkgcmV0dXJuIDAgaWYgaW5pdGlhbGl6YXRp
b24gZmFpbHMuCiAgICAgdmlydHVhbCBXZWJMYXllclRyZWVWaWV3KiBjcmVhdGVMYXllclRyZWVW
aWV3KFdlYkxheWVyVHJlZVZpZXdDbGllbnQqLCBjb25zdCBXZWJMYXllciYgcm9vdCwgY29uc3Qg
V2ViTGF5ZXJUcmVlVmlldzo6U2V0dGluZ3MmKSB7IHJldHVybiAwOyB9CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxMzAwNTApCisrKyBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwyMiBAQAorMjAxMi0xMC0wMSAgSmVmZiBUaW1hbnVzICA8dHdpekBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBFeHBvc2Ugc2V0dGluZ3MgdmFsdWUg
dG8gY29uZGl0aW9uYWxseSBlbmFibGUgcGluY2gtem9vbSBzY2FsaW5nIGluIHRoZSBDaHJvbWl1
bSBjb21wb3NpdG9yLiAgVGhlCisgICAgICAgIGZsYWcgZGVmYXVsdHMgdG8gZGlzYWJsZWQsIHNv
IHRoaXMgY2hhbmdlIHNob3VsZCBiZSBhIG5vLW9wIGZvciBzY2FsaW5nL3Njcm9sbGluZyBiZWhh
dmlvdXIuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
MzI5MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRl
c3RzOiAgRXhpc3RpbmcgcGFnZS1zY2FsZSBsYXlvdXQgdGVzdHMuCisKKyAgICAgICAgKiBwYWdl
L0ZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lOjpmcmFtZVNjYWxlRmFjdG9yKToK
KyAgICAgICAgKiBwYWdlL1NldHRpbmdzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdz
OjpTZXR0aW5ncyk6CisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorICAgICAgICAoV2ViQ29y
ZTo6U2V0dGluZ3M6OnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNldHRpbmdzOjphcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcik6
CisgICAgICAgIChTZXR0aW5ncyk6CisKIDIwMTItMTAtMDEgIFl1cnkgU2VtaWtoYXRza3kgIDx5
dXJ5c0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gQ2hyb21pdW0gYnVpbGQg
Zml4LgpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZS5jcHAJKHJldmlzaW9uIDEzMDA0NykKKysrIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05NTYsOCArOTU2LDkg
QEAgZmxvYXQgRnJhbWU6OmZyYW1lU2NhbGVGYWN0b3IoKSBjb25zdAogICAgIFBhZ2UqIHBhZ2Ug
PSB0aGlzLT5wYWdlKCk7CiAKICAgICAvLyBNYWluIGZyYW1lIGlzIHNjYWxlZCB3aXRoIHJlc3Bl
Y3QgdG8gaGUgY29udGFpbmVyIGJ1dCBpbm5lciBmcmFtZXMgYXJlIG5vdCBzY2FsZWQgd2l0aCBy
ZXNwZWN0IHRvIHRoZSBtYWluIGZyYW1lLgotICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJh
bWUoKSAhPSB0aGlzKQorICAgIGlmICghcGFnZSB8fCBwYWdlLT5tYWluRnJhbWUoKSAhPSB0aGlz
IHx8IHBhZ2UtPnNldHRpbmdzKCktPmFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkp
CiAgICAgICAgIHJldHVybiAxOworCiAgICAgcmV0dXJuIHBhZ2UtPnBhZ2VTY2FsZUZhY3Rvcigp
OwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAkocmV2aXNpb24gMTMwMDQ3KQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5
Myw2ICsyOTMsNyBAQCBTZXR0aW5nczo6U2V0dGluZ3MoUGFnZSogcGFnZSkKICAgICAsIG1fd2lu
ZG93Rm9jdXNSZXN0cmljdGVkKHRydWUpCiAgICAgLCBtX2RpYWdub3N0aWNMb2dnaW5nRW5hYmxl
ZChmYWxzZSkKICAgICAsIG1fc2Nyb2xsaW5nUGVyZm9ybWFuY2VMb2dnaW5nRW5hYmxlZChmYWxz
ZSkKKyAgICAsIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoZmFsc2UpCiAgICAg
LCBtX3NldEltYWdlTG9hZGluZ1NldHRpbmdzVGltZXIodGhpcywgJlNldHRpbmdzOjppbWFnZUxv
YWRpbmdTZXR0aW5nc1RpbWVyRmlyZWQpCiAgICAgLCBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3Vw
cHJlc3Npb25UaW1lb3V0SW5TZWNvbmRzKGRlZmF1bHRJbmNyZW1lbnRhbFJlbmRlcmluZ1N1cHBy
ZXNzaW9uVGltZW91dEluU2Vjb25kcykKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0
dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1NldHRpbmdzLmgJKHJl
dmlzaW9uIDEzMDA0NykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNjMzLDYgKzYzMyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAg
dm9pZCBzZXREaWFnbm9zdGljTG9nZ2luZ0VuYWJsZWQoYm9vbCBlbmFibGVkKSB7IG1fZGlhZ25v
c3RpY0xvZ2dpbmdFbmFibGVkID0gZW5hYmxlZDsgfQogICAgICAgICBib29sIGRpYWdub3N0aWNM
b2dnaW5nRW5hYmxlZCgpIGNvbnN0IHsgcmV0dXJuIG1fZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVk
OyB9CiAKKyAgICAgICAgdm9pZCBzZXRBcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihi
b29sIGVuYWJsZWQpIHsgbV9hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA9IGVuYWJs
ZWQ7IH0KKyAgICAgICAgYm9vbCBhcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcigpIGNv
bnN0IHsgcmV0dXJuIG1fYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3I7IH0KKwogICAg
IHByaXZhdGU6CiAgICAgICAgIGV4cGxpY2l0IFNldHRpbmdzKFBhZ2UqKTsKIApAQCAtODE4LDkg
KzgyMSwxMSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICAgICAgYm9vbCBtX3Njcm9sbGlu
Z1BlcmZvcm1hbmNlTG9nZ2luZ0VuYWJsZWQgOiAxOwogCisgICAgICAgIGJvb2wgbV9hcHBseVBh
Z2VTY2FsZUZhY3RvckluQ29tcG9zaXRvciA6IDE7CisKICAgICAgICAgVGltZXI8U2V0dGluZ3M+
IG1fc2V0SW1hZ2VMb2FkaW5nU2V0dGluZ3NUaW1lcjsKICAgICAgICAgdm9pZCBpbWFnZUxvYWRp
bmdTZXR0aW5nc1RpbWVyRmlyZWQoVGltZXI8U2V0dGluZ3M+Kik7Ci0gICAgICAgIAorCiAgICAg
ICAgIGRvdWJsZSBtX2luY3JlbWVudGFsUmVuZGVyaW5nU3VwcHJlc3Npb25UaW1lb3V0SW5TZWNv
bmRzOwogCiAjaWYgVVNFKEFWRk9VTkRBVElPTikKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21p
dW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdl
TG9nCShyZXZpc2lvbiAxMzAwNTApCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI0IEBACisyMDEyLTEwLTAxICBKZWZmIFRpbWFu
dXMgIDx0d2l6QGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1dIEV4cG9zZSBzZXR0
aW5ncyB2YWx1ZSB0byBjb25kaXRpb25hbGx5IGVuYWJsZSBwaW5jaC16b29tIHNjYWxpbmcgaW4g
dGhlIENocm9taXVtIGNvbXBvc2l0b3IuICBUaGUKKyAgICAgICAgZmxhZyBkZWZhdWx0cyB0byBk
aXNhYmxlZCwgc28gdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIGEgbm8tb3AgZm9yIHNjYWxpbmcvc2Ny
b2xsaW5nIGJlaGF2aW91ci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTkzMjkyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBwdWJsaWMvV2ViU2V0dGluZ3MuaDoKKyAgICAgICAgKiBzcmMvTm9uQ29tcG9z
aXRlZENvbnRlbnRIb3N0LmNwcDoKKyAgICAgICAgKFdlYktpdDo6Tm9uQ29tcG9zaXRlZENvbnRl
bnRIb3N0OjpOb25Db21wb3NpdGVkQ29udGVudEhvc3QpOgorICAgICAgICAqIHNyYy9XZWJTZXR0
aW5nc0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTZXR0aW5nc0ltcGw6OnNldEFwcGx5
UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKToKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAg
IChXZWJLaXQ6OldlYlNldHRpbmdzSW1wbDo6YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IpOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuaDoKKyAgICAgICAgKFdlYlNldHRp
bmdzSW1wbCk6CisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViVmlld0ltcGw6OnNldFBhZ2VTY2FsZUZhY3Rvcik6CisgICAgICAgIChXZWJLaXQ6Oldl
YlZpZXdJbXBsOjphcHBseVNjcm9sbEFuZFNjYWxlKToKKwogMjAxMi0xMC0wMSAgWXVyeSBTZW1p
a2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBw
cm92aWRlIG1lbW9yeSBpbnN0cnVtZW50YXRpb24gZm9yIEhhc2hNYXAKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAkocmV2aXNpb24gMTMwMDQ3KQor
KysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAkod29ya2luZyBj
b3B5KQpAQCAtNzIsNiArNzIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93
U2NyaXB0c1RvQ2xvc2VXaW5kb3dzKGJvb2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QWxs
b3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRBcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcihib29sKSA9IDA7
CisgICAgdmlydHVhbCB2b2lkIHNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJv
b2wpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXN5bmNocm9ub3VzU3BlbGxDaGVja2luZ0Vu
YWJsZWQoYm9vbCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBdXRob3JBbmRVc2VyU3R5bGVz
RW5hYmxlZChib29sKSA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNldENhcmV0QnJvd3NpbmdFbmFi
bGVkKGJvb2wpID0gMDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL05vbkNvbXBv
c2l0ZWRDb250ZW50SG9zdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNwcAkocmV2aXNpb24gMTMwMDQ3KQorKysg
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvTm9uQ29tcG9zaXRlZENvbnRlbnRIb3N0LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIkdyYXBoaWNzTGF5ZXIu
aCIKICNpbmNsdWRlICJHcmFwaGljc0xheWVyQ2hyb21pdW0uaCIKICNpbmNsdWRlICJQbGF0Zm9y
bUNvbnRleHRTa2lhLmgiCisjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJXZWJWaWV3
SW1wbC5oIgogI2luY2x1ZGUgPHB1YmxpYy9XZWJDb250ZW50TGF5ZXIuaD4KICNpbmNsdWRlIDxw
dWJsaWMvV2ViRmxvYXRQb2ludC5oPgpAQCAtNDgsNyArNDksNyBAQCBOb25Db21wb3NpdGVkQ29u
dGVudEhvc3Q6Ok5vbkNvbXBvc2l0ZWRDCiAgICAgbV9ncmFwaGljc0xheWVyLT5zZXROYW1lKCJu
b24tY29tcG9zaXRlZCBjb250ZW50Iik7CiAjZW5kaWYKICAgICBtX2dyYXBoaWNzTGF5ZXItPnNl
dERyYXdzQ29udGVudCh0cnVlKTsKLSAgICBtX2dyYXBoaWNzTGF5ZXItPnNldEFwcGxpZXNQYWdl
U2NhbGUodHJ1ZSk7CisgICAgbV9ncmFwaGljc0xheWVyLT5zZXRBcHBsaWVzUGFnZVNjYWxlKCFt
X3dlYlZpZXctPnBhZ2UoKS0+c2V0dGluZ3MoKS0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IoKSk7CiAgICAgV2ViQ29udGVudExheWVyKiBsYXllciA9IHN0YXRpY19jYXN0PFdlYkNv
cmU6OkdyYXBoaWNzTGF5ZXJDaHJvbWl1bSo+KG1fZ3JhcGhpY3NMYXllci5nZXQoKSktPmNvbnRl
bnRMYXllcigpOwogICAgIGxheWVyLT5zZXRVc2VMQ0RUZXh0KHRydWUpOwogICAgIGxheWVyLT5s
YXllcigpLT5zZXRPcGFxdWUodHJ1ZSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJTZXR0aW5nc0ltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAJKHJldmlzaW9uIDEzMDA0NykKKysrIFNvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTE0MCw2ICsxNDAsMTEgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldEFwcGx5RGVmYXVsdERl
dgogICAgIG1fYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IgPSBhcHBs
eURlZmF1bHREZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcjsKIH0KIAordm9pZCBXZWJTZXR0
aW5nc0ltcGw6OnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wgYXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IpCit7CisgICAgbV9zZXR0aW5ncy0+c2V0QXBwbHlQ
YWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0
b3IpOworfQorCiB2b2lkIFdlYlNldHRpbmdzSW1wbDo6c2V0VGV4dEF1dG9zaXppbmdFbmFibGVk
KGJvb2wgZW5hYmxlZCkKIHsKICNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQpAQCAtNjUzLDQg
KzY1OCw5IEBAIHZvaWQgV2ViU2V0dGluZ3NJbXBsOjpzZXRHZXN0dXJlVGFwSGlnaGwKICAgICBt
X2dlc3R1cmVUYXBIaWdobGlnaHRFbmFibGVkID0gZW5hYmxlSGlnaGxpZ2h0OwogfQogCitib29s
IFdlYlNldHRpbmdzSW1wbDo6YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25z
dAoreworICAgIHJldHVybiBtX3NldHRpbmdzLT5hcHBseVBhZ2VTY2FsZUZhY3RvckluQ29tcG9z
aXRvcigpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlNldHRpbmdzSW1wbC5oCShyZXZpc2lvbiAxMzAwNDcpCisrKyBT
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuaAkod29ya2luZyBjb3B5
KQpAQCAtNjQsNiArNjQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldEFsbG93U2Ny
aXB0c1RvQ2xvc2VXaW5kb3dzKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRBbGxvd1VuaXZl
cnNhbEFjY2Vzc0Zyb21GaWxlVVJMcyhib29sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0QXBwbHlE
ZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoYm9vbCk7CisgICAgdmlydHVhbCB2
b2lkIHNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKGJvb2wpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRBc3luY2hyb25vdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sKTsKICAgICB2
aXJ0dWFsIHZvaWQgc2V0QXV0aG9yQW5kVXNlclN0eWxlc0VuYWJsZWQoYm9vbCk7CiAgICAgdmly
dHVhbCB2b2lkIHNldENhcmV0QnJvd3NpbmdFbmFibGVkKGJvb2wpOwpAQCAtMTYwLDYgKzE2MSw3
IEBAIHB1YmxpYzoKICAgICBib29sIHNob3dQYWludFJlY3RzKCkgY29uc3QgeyByZXR1cm4gbV9z
aG93UGFpbnRSZWN0czsgfQogICAgIGJvb2wgcmVuZGVyVlN5bmNFbmFibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9yZW5kZXJWU3luY0VuYWJsZWQ7IH0KICAgICBib29sIGFwcGx5RGVmYXVsdERldmlj
ZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKCkgY29uc3QgeyByZXR1cm4gbV9hcHBseURlZmF1bHRE
ZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcjsgfQorICAgIGJvb2wgYXBwbHlQYWdlU2NhbGVG
YWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdDsKICAgICBib29sIGdlc3R1cmVUYXBIaWdobGlnaHRF
bmFibGVkKCkgeyByZXR1cm4gbV9nZXN0dXJlVGFwSGlnaGxpZ2h0RW5hYmxlZDsgfQogICAgIFdl
YlNpemUgZGVmYXVsdFRpbGVTaXplKCkgY29uc3QgeyByZXR1cm4gbV9kZWZhdWx0VGlsZVNpemU7
IH0KICAgICBXZWJTaXplIG1heFVudGlsZWRMYXllclNpemUoKSBjb25zdCB7IHJldHVybiBtX21h
eFVudGlsZWRMYXllclNpemU7IH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlZpZXdJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJWaWV3SW1wbC5jcHAJKHJldmlzaW9uIDEzMDA0NykKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlZpZXdJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc0OSw4ICsyNzQ5LDIw
IEBAIHZvaWQgV2ViVmlld0ltcGw6OnNldFBhZ2VTY2FsZUZhY3RvcihmbG8KICAgICB9CiAKICAg
ICBzY2FsZUZhY3RvciA9IGNsYW1wUGFnZVNjYWxlRmFjdG9yVG9MaW1pdHMoc2NhbGVGYWN0b3Ip
OwotICAgIFdlYlBvaW50IGNsYW1wZWRPcmlnaW4gPSBjbGFtcE9mZnNldEF0U2NhbGUob3JpZ2lu
LCBzY2FsZUZhY3Rvcik7Ci0gICAgcGFnZSgpLT5zZXRQYWdlU2NhbGVGYWN0b3Ioc2NhbGVGYWN0
b3IsIGNsYW1wZWRPcmlnaW4pOworICAgIFdlYlBvaW50IHNjcm9sbE9mZnNldDsKKyAgICBpZiAo
IW1fcGFnZS0+c2V0dGluZ3MoKS0+YXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSkg
eworICAgICAgICAvLyBJZiBwYWdlIHNjYWxlIGlzIG5vdCBhcHBsaWVkIGluIHRoZSBjb21wb3Np
dG9yLCB0aGVuIHRoZSBzY3JvbGwgb2Zmc2V0cyBzaG91bGQKKyAgICAgICAgLy8gYmUgbW9kaWZp
ZWQgYnkgdGhlIHNjYWxlIGZhY3Rvci4KKyAgICAgICAgc2Nyb2xsT2Zmc2V0ID0gY2xhbXBPZmZz
ZXRBdFNjYWxlKG9yaWdpbiwgc2NhbGVGYWN0b3IpOworICAgIH0gZWxzZSB7CisgICAgICAgIElu
dFBvaW50IG9mZnNldCA9IG9yaWdpbjsKKyAgICAgICAgV2ViU2l6ZSBjb250ZW50U2l6ZSA9IG1h
aW5GcmFtZSgpLT5jb250ZW50c1NpemUoKTsKKyAgICAgICAgb2Zmc2V0LnNocnVua1RvKEludFBv
aW50KGNvbnRlbnRTaXplLndpZHRoIC0gbV9zaXplLndpZHRoLCBjb250ZW50U2l6ZS5oZWlnaHQg
LSBtX3NpemUuaGVpZ2h0KSk7CisgICAgICAgIG9mZnNldC5jbGFtcE5lZ2F0aXZlVG9aZXJvKCk7
CisgICAgICAgIHNjcm9sbE9mZnNldCA9IG9mZnNldDsKKyAgICB9CisKKyAgICBwYWdlKCktPnNl
dFBhZ2VTY2FsZUZhY3RvcihzY2FsZUZhY3Rvciwgc2Nyb2xsT2Zmc2V0KTsKICAgICBtX3BhZ2VT
Y2FsZUZhY3RvcklzU2V0ID0gdHJ1ZTsKIH0KIApAQCAtMzkxOCwxNSArMzkzMCwyMSBAQCB2b2lk
IFdlYlZpZXdJbXBsOjphcHBseVNjcm9sbEFuZFNjYWxlKGNvCiAgICAgICAgIG1haW5GcmFtZUlt
cGwoKS0+ZnJhbWVWaWV3KCktPnNjcm9sbEJ5KHNjcm9sbERlbHRhKTsKICAgICB9IGVsc2Ugewog
ICAgICAgICAvLyBUaGUgcGFnZSBzY2FsZSBjaGFuZ2VkLCBzbyBhcHBseSBhIHNjYWxlIGFuZCBz
Y3JvbGwgaW4gYSBzaW5nbGUKLSAgICAgICAgLy8gb3BlcmF0aW9uLiBUaGUgb2xkIHNjcm9sbCBv
ZmZzZXQgKGFuZCBwYXNzZWQtaW4gZGVsdGEpIGFyZQotICAgICAgICAvLyBpbiB0aGUgb2xkIGNv
b3JkaW5hdGUgc3BhY2UsIHNvIHdlIGZpcnN0IG5lZWQgdG8gbXVsdGlwbHkgdGhlbQotICAgICAg
ICAvLyBieSB0aGUgcGFnZSBzY2FsZSBkZWx0YS4KKyAgICAgICAgLy8gb3BlcmF0aW9uLgogICAg
ICAgICBXZWJTaXplIHNjcm9sbE9mZnNldCA9IG1haW5GcmFtZSgpLT5zY3JvbGxPZmZzZXQoKTsK
ICAgICAgICAgc2Nyb2xsT2Zmc2V0LndpZHRoICs9IHNjcm9sbERlbHRhLndpZHRoOwogICAgICAg
ICBzY3JvbGxPZmZzZXQuaGVpZ2h0ICs9IHNjcm9sbERlbHRhLmhlaWdodDsKLSAgICAgICAgV2Vi
UG9pbnQgc2NhbGVkU2Nyb2xsT2Zmc2V0KHNjcm9sbE9mZnNldC53aWR0aCAqIHBhZ2VTY2FsZURl
bHRhLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsT2Zmc2V0Lmhl
aWdodCAqIHBhZ2VTY2FsZURlbHRhKTsKLSAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yKHBhZ2VT
Y2FsZUZhY3RvcigpICogcGFnZVNjYWxlRGVsdGEsIHNjYWxlZFNjcm9sbE9mZnNldCk7CisKKyAg
ICAgICAgV2ViUG9pbnQgc2Nyb2xsUG9pbnQoc2Nyb2xsT2Zmc2V0LndpZHRoLCBzY3JvbGxPZmZz
ZXQuaGVpZ2h0KTsKKyAgICAgICAgaWYgKCFtX3BhZ2UtPnNldHRpbmdzKCktPmFwcGx5UGFnZVNj
YWxlRmFjdG9ySW5Db21wb3NpdG9yKCkpIHsKKyAgICAgICAgICAgIC8vIFRoZSBvbGQgc2Nyb2xs
IG9mZnNldCAoYW5kIHBhc3NlZC1pbiBkZWx0YSkgYXJlIGluIHRoZSBvbGQKKyAgICAgICAgICAg
IC8vIGNvb3JkaW5hdGUgc3BhY2UsIHNvIHdlIGZpcnN0IG5lZWQgdG8gbXVsdGlwbHkgdGhlbSBi
eSB0aGUgcGFnZQorICAgICAgICAgICAgLy8gc2NhbGUgZGVsdGEuCisgICAgICAgICAgICBzY3Jv
bGxQb2ludC54ID0gc2Nyb2xsUG9pbnQueCAqIHBhZ2VTY2FsZURlbHRhOworICAgICAgICAgICAg
c2Nyb2xsUG9pbnQueSA9IHNjcm9sbFBvaW50LnkgKiBwYWdlU2NhbGVEZWx0YTsKKyAgICAgICAg
fQorCisgICAgICAgIHNldFBhZ2VTY2FsZUZhY3RvcihwYWdlU2NhbGVGYWN0b3IoKSAqIHBhZ2VT
Y2FsZURlbHRhLCBzY3JvbGxQb2ludCk7CiAgICAgICAgIG1fZG91YmxlVGFwWm9vbUluRWZmZWN0
ID0gZmFsc2U7CiAgICAgfQogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>