<?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>109879</bug_id>
          
          <creation_ts>2013-02-14 18:22:45 -0800</creation_ts>
          <short_desc>Plugin in iframe may not display</short_desc>
          <delta_ts>2013-03-14 01:08:10 -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>Plug-ins</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>
          
          <blocked>111514</blocked>
    
    <blocked>112324</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="John Bauman">jbauman</reporter>
          <assigned_to name="John Bauman">jbauman</assigned_to>
          <cc>andersca</cc>
    
    <cc>buildbot</cc>
    
    <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jamesr</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rakuco</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>833608</commentid>
    <comment_count>0</comment_count>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-14 18:22:45 -0800</bug_when>
    <thetext>Plugin in iframe may not display</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833609</commentid>
    <comment_count>1</comment_count>
      <attachid>188462</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-14 18:27:12 -0800</bug_when>
    <thetext>Created attachment 188462
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833613</commentid>
    <comment_count>2</comment_count>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-14 18:35:53 -0800</bug_when>
    <thetext>I&apos;m not certain this is the best way to do this, though it seems to work.

Is there a way to do a layout test with a plugin with chromium?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834168</commentid>
    <comment_count>3</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2013-02-15 10:49:16 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; I&apos;m not certain this is the best way to do this, though it seems to work.
&gt; 
&gt; Is there a way to do a layout test with a plugin with chromium?

Yes - you can instantiate an NPAPI plugin with mime type &quot;application/x-webkit-test-netscape&quot; in a layout test.  See LayoutTests/plugins/ for some examples.  That will instantiate an instance of the plugin defined in Tools/DumpRenderTree/TestNetscapePlugIn/.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834271</commentid>
    <comment_count>4</comment_count>
      <attachid>188462</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-15 12:32:30 -0800</bug_when>
    <thetext>Comment on attachment 188462
Patch

This scares me a little. We call widgetPositionsUpdated() after scrolling (main frame if we have fixed, and overflow scrolling). Seems like this could be a significant perf hit if you have frames with lots of plugins.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834295</commentid>
    <comment_count>5</comment_count>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-15 12:51:46 -0800</bug_when>
    <thetext>Yeah, I&apos;m not sure how much this changes the performance. We already do a similar thing with frameRectsChanged on scroll, so at least the overall time complexity isn&apos;t different. And I don&apos;t know if we would expect putting a plugin inside an iframe would improve performance during layout over keeping it outside.

I could try to add a separate method to do this that&apos;s only called after layout finishes, if you want.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834446</commentid>
    <comment_count>6</comment_count>
      <attachid>188660</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-15 16:05:10 -0800</bug_when>
    <thetext>Created attachment 188660
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834460</commentid>
    <comment_count>7</comment_count>
      <attachid>188660</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-02-15 16:16:38 -0800</bug_when>
    <thetext>Comment on attachment 188660
Patch

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

I’m not enough of an expert on our scrolling to know if this will cause performance problems on some platforms or not, so I can’t give this review+ but I do have a few comments.

&gt; Source/WebCore/ChangeLog:11
&gt; +        Changing the cliprect on a layer containing an iframe may change the
&gt; +        cliprect of plugins inside the iframe, so recursively tell all plugins
&gt; +        in iframes that their layout has changed after doing layout on the
&gt; +        outer frame.

Seems obviously wrong that our comment here says “tell plug-ins that their layout has changed”, but the code says “tell plug-ins that the widget positions have changed”, which is not the same thing. This also could be the crux of the bug, that clipping changes should be included too, not just position changes. So I think a rename may be in order.

&gt; Source/WebCore/ChangeLog:17
&gt; +        (WebCore):

Please remove bogus lines like this from the change log. The script is there to help you write a good change log, but if it spits out nonsense like this, please delete it. And consider fixing the script or asking someone else to do that.

&gt; Source/WebCore/ChangeLog:19
&gt; +        (ScrollView):

Ditto.

&gt; Source/WebCore/platform/ScrollView.h:243
&gt; +    virtual void widgetPositionsUpdated();

Should specify OVERRIDE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834462</commentid>
    <comment_count>8</comment_count>
      <attachid>188660</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-02-15 16:17:36 -0800</bug_when>
    <thetext>Comment on attachment 188660
Patch

review- because apparently Simon Fraser had the same concern I did, and he’s more of a scrolling expert. We should not do this unless we’re sure it doesn’t cause scrolling problems.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834463</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2013-02-15 16:17:59 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; We should not do this unless we’re sure it doesn’t cause scrolling problems.

We should not do this *in this way* ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834591</commentid>
    <comment_count>10</comment_count>
      <attachid>188683</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-15 18:54:27 -0800</bug_when>
    <thetext>Created attachment 188683
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834594</commentid>
    <comment_count>11</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-15 19:00:31 -0800</bug_when>
    <thetext>It would be nice if you could describe an actual bug on a real web page that is fixed by this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834596</commentid>
    <comment_count>12</comment_count>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-15 19:03:25 -0800</bug_when>
    <thetext>Sorry, the bug that was reported is that Flash ads in the Youtube sidebar are sometimes not visible - https://code.google.com/p/chromium/issues/detail?id=168900 (though that bug report isn&apos;t visible to the public for various reasons).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834612</commentid>
    <comment_count>13</comment_count>
      <attachid>188688</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-15 20:07:06 -0800</bug_when>
    <thetext>Created attachment 188688
Patch

Checking again, it seems like other ports would also have this issue, so fixing them as well</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834614</commentid>
    <comment_count>14</comment_count>
      <attachid>188688</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-02-15 20:20:58 -0800</bug_when>
    <thetext>Comment on attachment 188688
Patch

Attachment 188688 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16586456</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834622</commentid>
    <comment_count>15</comment_count>
      <attachid>188688</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-02-15 20:34:44 -0800</bug_when>
    <thetext>Comment on attachment 188688
Patch

Attachment 188688 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/16592424</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834637</commentid>
    <comment_count>16</comment_count>
      <attachid>188688</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-15 22:34:43 -0800</bug_when>
    <thetext>Comment on attachment 188688
Patch

Attachment 188688 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16603238</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834973</commentid>
    <comment_count>17</comment_count>
      <attachid>188688</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-17 03:05:25 -0800</bug_when>
    <thetext>Comment on attachment 188688
Patch

Attachment 188688 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16585844</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837479</commentid>
    <comment_count>18</comment_count>
      <attachid>189323</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-20 08:17:32 -0800</bug_when>
    <thetext>Created attachment 189323
Patch

Fix build</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837567</commentid>
    <comment_count>19</comment_count>
      <attachid>189323</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-20 10:45:21 -0800</bug_when>
    <thetext>Comment on attachment 189323
Patch

Attachment 189323 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16647428

New failing tests:
plugins/plugin-clip-subframe.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>839207</commentid>
    <comment_count>20</comment_count>
      <attachid>189323</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-21 21:29:51 -0800</bug_when>
    <thetext>Comment on attachment 189323
Patch

Attachment 189323 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16698530

New failing tests:
plugins/plugin-clip-subframe.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841654</commentid>
    <comment_count>21</comment_count>
      <attachid>190209</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-25 22:46:43 -0800</bug_when>
    <thetext>Created attachment 190209
Patch

Fix mac WK1 and add WK2 expectations.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841660</commentid>
    <comment_count>22</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-02-25 22:55:42 -0800</bug_when>
    <thetext>Crazy.  Patch looks sane though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842062</commentid>
    <comment_count>23</comment_count>
      <attachid>190209</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-26 09:08:37 -0800</bug_when>
    <thetext>Comment on attachment 190209
Patch

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

&gt; Source/WebCore/plugins/PluginView.cpp:164
&gt; +void PluginView::clipRectChanged()
&gt; +{
&gt; +    updatePluginWidget();
&gt; +}

Why doesn&apos;t this call the base class function?

&gt; Source/WebKit/chromium/src/WebPluginContainerImpl.cpp:227
&gt; +    Widget::clipRectChanged();

Is this necessary? It would be nice to have a virtual function on Widget that doesn&apos;t require remembering to call the base class.

&gt; Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm:1590
&gt; +    virtual void clipRectChanged()
&gt; +    {
&gt; +        // Changing the clip rect doesn&apos;t affect the view hierarchy, so the plugin must be told about the change directly.
&gt; +        [(WebBaseNetscapePluginView *)platformWidget() updateAndSetWindow];
&gt; +    }

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843352</commentid>
    <comment_count>24</comment_count>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-27 12:07:03 -0800</bug_when>
    <thetext>Thanks for the review.

(In reply to comment #23)
&gt; (From update of attachment 190209 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=190209&amp;action=review
&gt; 
&gt; 
&gt; &gt; Source/WebKit/chromium/src/WebPluginContainerImpl.cpp:227
&gt; &gt; +    Widget::clipRectChanged();
&gt; 
&gt; Is this necessary? It would be nice to have a virtual function on Widget that doesn&apos;t require remembering to call the base class.
&gt; 
You&apos;re right, this really shouldn&apos;t be necessary. I&apos;ll remove  it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843415</commentid>
    <comment_count>25</comment_count>
      <attachid>190583</attachid>
    <who name="John Bauman">jbauman</who>
    <bug_when>2013-02-27 13:08:51 -0800</bug_when>
    <thetext>Created attachment 190583
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843484</commentid>
    <comment_count>26</comment_count>
      <attachid>190583</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-27 14:07:03 -0800</bug_when>
    <thetext>Comment on attachment 190583
Patch

Clearing flags on attachment: 190583

Committed r144236: &lt;http://trac.webkit.org/changeset/144236&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>843485</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-27 14:07:10 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188462</attachid>
            <date>2013-02-14 18:27:12 -0800</date>
            <delta_ts>2013-02-15 16:05:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130214182339.patch</filename>
            <type>text/plain</type>
            <size>2445</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmI5ZGYzM2QyODZhZjhl
NGYyMmYwMmY3NGI2ZWQzYmU5YTExMzhjNS4uMDYzNzYwMDQ5ZGI0N2FhMmU5NmEwODZjYzliY2Qy
N2ExYWI1ZDA1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEzLTAyLTE0ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBsYXlvdXQgaGFzIGNoYW5nZWQgYWZ0ZXIgZG9pbmcgbGF5b3V0
IG9uIHRoZQorICAgICAgICBvdXRlciBmcmFtZS4KKworCisgICAgICAgICogcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3Ojp3aWRnZXRQb3NpdGlv
bnNVcGRhdGVkKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBsYXRmb3JtL1Njcm9s
bFZpZXcuaDoKKyAgICAgICAgKFNjcm9sbFZpZXcpOgorCiAyMDEzLTAxLTMxICBEbWl0cnkgWnZv
cnlnaW4gIDx6dm9yeWdpbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rvcjog
c2VhcmNoaW5nIGZvciA8dT4gaW4gZWxlbWVudHMgcGFuZWwgZmluZHMgYWxsIHRhZ3MgY29udGFp
bmluZyAidSIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggZGU1YTU2
M2Y1ZTU0M2E1MDdlYzc0YTM4NjAwOGFiYjAxYzc5M2Y1ZC4uMDc1NjI1ZTJjMTUyNWU2OTlmZmQx
ZTc3ZDAyODAzOTY1NzlmYTI4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5j
cHAKQEAgLTg4NCw2ICs4ODQsMTMgQEAgdm9pZCBTY3JvbGxWaWV3OjpmcmFtZVJlY3RzQ2hhbmdl
ZCgpCiAgICAgICAgICgqY3VycmVudCktPmZyYW1lUmVjdHNDaGFuZ2VkKCk7CiB9CiAKK3ZvaWQg
U2Nyb2xsVmlldzo6d2lkZ2V0UG9zaXRpb25zVXBkYXRlZCgpCit7CisgICAgSGFzaFNldDxSZWZQ
dHI8V2lkZ2V0PiA+Ojpjb25zdF9pdGVyYXRvciBlbmQgPSBtX2NoaWxkcmVuLmVuZCgpOworICAg
IGZvciAoSGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+Ojpjb25zdF9pdGVyYXRvciBjdXJyZW50ID0g
bV9jaGlsZHJlbi5iZWdpbigpOyBjdXJyZW50ICE9IGVuZDsgKytjdXJyZW50KQorICAgICAgICAo
KmN1cnJlbnQpLT53aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCk7Cit9CisKICNpZiBVU0UoQUNDRUxF
UkFURURfQ09NUE9TSVRJTkcpCiBzdGF0aWMgdm9pZCBwb3NpdGlvblNjcm9sbGJhckxheWVyKEdy
YXBoaWNzTGF5ZXIqIGdyYXBoaWNzTGF5ZXIsIFNjcm9sbGJhciogc2Nyb2xsYmFyKQogewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCmluZGV4IGZlN2IwMTAxMTUyODcxYzAyMWVlZmQx
NTFiOTg2MTliNmRjZjkwN2UuLjJlOTRlMDI0NTg1MThjMmJmMDg1OWMyOWQ5ZjA0NTZhMWYwN2Zl
NGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKQEAgLTIzOSw2ICsyMzksOCBA
QCBwdWJsaWM6CiAKICAgICAvLyBDYWxsZWQgd2hlbiBvdXIgZnJhbWUgcmVjdCBjaGFuZ2VzIChv
ciB0aGUgcmVjdC9zY3JvbGwgcG9zaXRpb24gb2YgYW4gYW5jZXN0b3IgY2hhbmdlcykuCiAgICAg
dmlydHVhbCB2b2lkIGZyYW1lUmVjdHNDaGFuZ2VkKCk7CisKKyAgICB2aXJ0dWFsIHZvaWQgd2lk
Z2V0UG9zaXRpb25zVXBkYXRlZCgpOwogICAgIAogICAgIC8vIFdpZGdldCBvdmVycmlkZSB0byB1
cGRhdGUgb3VyIHNjcm9sbGJhcnMgYW5kIG5vdGlmeSBvdXIgY29udGVudHMgb2YgdGhlIHJlc2l6
ZS4KICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJhbWVSZWN0KGNvbnN0IEludFJlY3QmKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188660</attachid>
            <date>2013-02-15 16:05:10 -0800</date>
            <delta_ts>2013-02-15 18:54:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130215160136.patch</filename>
            <type>text/plain</type>
            <size>6787</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmI5ZGYzM2QyODZhZjhl
NGYyMmYwMmY3NGI2ZWQzYmU5YTExMzhjNS4uZmQ2MmE1OTIyNTViNjNlYzExYTE3Y2Y3NzNiNjli
MGE3NDYzOWUyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEzLTAyLTE1ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS5B
CisKKyAgICAgICAgQ2hhbmdpbmcgdGhlIGNsaXByZWN0IG9uIGEgbGF5ZXIgY29udGFpbmluZyBh
biBpZnJhbWUgbWF5IGNoYW5nZSB0aGUKKyAgICAgICAgY2xpcHJlY3Qgb2YgcGx1Z2lucyBpbnNp
ZGUgdGhlIGlmcmFtZSwgc28gcmVjdXJzaXZlbHkgdGVsbCBhbGwgcGx1Z2lucworICAgICAgICBp
biBpZnJhbWVzIHRoYXQgdGhlaXIgbGF5b3V0IGhhcyBjaGFuZ2VkIGFmdGVyIGRvaW5nIGxheW91
dCBvbiB0aGUKKyAgICAgICAgb3V0ZXIgZnJhbWUuCisKKyAgICAgICAgVGVzdDogcGx1Z2lucy9w
bHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9TY3JvbGxWaWV3
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNjcm9sbFZpZXc6OndpZGdldFBvc2l0aW9uc1VwZGF0
ZWQpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5o
OgorICAgICAgICAoU2Nyb2xsVmlldyk6CisKIDIwMTMtMDEtMzEgIERtaXRyeSBadm9yeWdpbiAg
PHp2b3J5Z2luQGNocm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBzZWFyY2hp
bmcgZm9yIDx1PiBpbiBlbGVtZW50cyBwYW5lbCBmaW5kcyBhbGwgdGFncyBjb250YWluaW5nICJ1
IgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAppbmRleCBkZTVhNTYzZjVlNTQz
YTUwN2VjNzRhMzg2MDA4YWJiMDFjNzkzZjVkLi4wNzU2MjVlMmMxNTI1ZTY5OWZmZDFlNzdkMDI4
MDM5NjU3OWZhMjg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxW
aWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApAQCAt
ODg0LDYgKzg4NCwxMyBAQCB2b2lkIFNjcm9sbFZpZXc6OmZyYW1lUmVjdHNDaGFuZ2VkKCkKICAg
ICAgICAgKCpjdXJyZW50KS0+ZnJhbWVSZWN0c0NoYW5nZWQoKTsKIH0KIAordm9pZCBTY3JvbGxW
aWV3Ojp3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCkKK3sKKyAgICBIYXNoU2V0PFJlZlB0cjxXaWRn
ZXQ+ID46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG1fY2hpbGRyZW4uZW5kKCk7CisgICAgZm9yIChI
YXNoU2V0PFJlZlB0cjxXaWRnZXQ+ID46OmNvbnN0X2l0ZXJhdG9yIGN1cnJlbnQgPSBtX2NoaWxk
cmVuLmJlZ2luKCk7IGN1cnJlbnQgIT0gZW5kOyArK2N1cnJlbnQpCisgICAgICAgICgqY3VycmVu
dCktPndpZGdldFBvc2l0aW9uc1VwZGF0ZWQoKTsKK30KKwogI2lmIFVTRShBQ0NFTEVSQVRFRF9D
T01QT1NJVElORykKIHN0YXRpYyB2b2lkIHBvc2l0aW9uU2Nyb2xsYmFyTGF5ZXIoR3JhcGhpY3NM
YXllciogZ3JhcGhpY3NMYXllciwgU2Nyb2xsYmFyKiBzY3JvbGxiYXIpCiB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmgKaW5kZXggZmU3YjAxMDExNTI4NzFjMDIxZWVmZDE1MWI5ODYx
OWI2ZGNmOTA3ZS4uMmU5NGUwMjQ1ODUxOGMyYmYwODU5YzI5ZDlmMDQ1NmExZjA3ZmU0YSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaApAQCAtMjM5LDYgKzIzOSw4IEBAIHB1Ymxp
YzoKIAogICAgIC8vIENhbGxlZCB3aGVuIG91ciBmcmFtZSByZWN0IGNoYW5nZXMgKG9yIHRoZSBy
ZWN0L3Njcm9sbCBwb3NpdGlvbiBvZiBhbiBhbmNlc3RvciBjaGFuZ2VzKS4KICAgICB2aXJ0dWFs
IHZvaWQgZnJhbWVSZWN0c0NoYW5nZWQoKTsKKworICAgIHZpcnR1YWwgdm9pZCB3aWRnZXRQb3Np
dGlvbnNVcGRhdGVkKCk7CiAgICAgCiAgICAgLy8gV2lkZ2V0IG92ZXJyaWRlIHRvIHVwZGF0ZSBv
dXIgc2Nyb2xsYmFycyBhbmQgbm90aWZ5IG91ciBjb250ZW50cyBvZiB0aGUgcmVzaXplLgogICAg
IHZpcnR1YWwgdm9pZCBzZXRGcmFtZVJlY3QoY29uc3QgSW50UmVjdCYpOwpkaWZmIC0tZ2l0IGEv
VG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDFmMDg1MTY4NDVkOWVlNDM5
NzViMGFmMjU3ZWVmODViZmZkZGQyYzMuLmNhZmViYTFmZGY0M2UzZTM2MzZhYTlmNTg3YzcxMTAx
YTM5MWMyYjggMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMy0wMi0xNSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNo
cm9taXVtLm9yZz4KKworICAgICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTG9nTlBQU2V0
V2luZG93IHdpbGwgYmUgdXNlZCB3aXRoIENocm9taXVtIGFzIHdlbGwuCisKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpOgorCiAyMDEzLTAxLTMxICBDaHJpc3Rv
cGhlIER1bWV6ICA8ZGNocmlzQGdtYWlsLmNvbT4KIAogICAgICAgICBbRUZMXSBEaXNhYmxlIFdl
YiBJbnRlbnRzCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJl
ZS5neXBpIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQppbmRleCBl
N2U3YTI3MmMwMTRkM2ZmNjkxMWZkZmRjNDYyYTE1NDEwYzAzYmQxLi5lMzMwMzg0YjE2MzYzMGFl
YTYyMjg1YWJiNzc2NTRlNjlhODFjNGJiIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9EdW1wUmVuZGVyVHJlZS5neXBpCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5k
ZXJUcmVlLmd5cGkKQEAgLTExMiw2ICsxMTIsNyBAQAogICAgICAgICAgICAgJ1Rlc3ROZXRzY2Fw
ZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTC5jcHAnLAogICAgICAgICAgICAg
J1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTERlc3Ryb3lp
bmdQbHVnaW4uY3BwJywKICAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvR2V0
VXNlckFnZW50V2l0aE51bGxOUFBGcm9tTlBQTmV3LmNwcCcsCisgICAgICAgICAgICAnVGVzdE5l
dHNjYXBlUGx1Z0luL1Rlc3RzL0xvZ05QUFNldFdpbmRvdy5jcHAnLAogICAgICAgICAgICAgJ1Rl
c3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFBOZXdGYWlscy5jcHAnLAogICAgICAgICAgICAgJ1Rl
c3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFJ1bnRpbWVDYWxsc1dpdGhOdWxsTlBQLmNwcCcsCiAg
ICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05QUnVudGltZU9iamVjdEZyb21E
ZXN0cm95ZWRQbHVnaW4uY3BwJywKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBkZDgzYTE2MjgwZWJmYmNlMDI1NDU0ZjdiNmQx
ZDU3NjlkYmE3MzNhLi42YWNhNjA5NTRiMTBjNjU0YzE2MTNhMjZmYzg4YmFlOTIwMjkzNTI3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTMtMDItMTUgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGx1Z2luIGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBsb2ct
bnBwLXNldC13aW5kb3cgdG8gZW5zdXJlIGNsaXAgY2hhbmdlcy4KKworICAgICAgICAqIHBsdWdp
bnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBw
bHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsdWdp
bnMvcmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sOiBBZGRlZC4KKwog
MjAxMy0wMS0zMSAgRmxvcmluIE1hbGl0YSAgPGZtYWxpdGFAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFtDaHJvbWl1bV0gVW5yZXZpZXdlZCBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
LjNiYTY5NWViOWIyYjQ1MzA0NTBmMjA0NzlhZWZhNWI1OWIyMjc5ODgKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4
dApAQCAtMCwwICsxLDMgQEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93
OiBub24tTlVMTCB3aW5kb3csIFJlY3QgezE4LCAyMTgsIDMwMCwgMTUwfSwgQ2xpcCBSZWN0IHs2
NTUxOCwgNjUzMTgsIDY1NTE4LCA2NTMxOH0sIFR5cGUgMQorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDM6IE5QUF9TZXRXaW5kb3c6IG5vbi1OVUxMIHdpbmRvdywgUmVjdCB7MTgsIDIxOCwgMzAwLCAx
NTB9LCBDbGlwIFJlY3QgezAsIDAsIDkwLCAxNTB9LCBUeXBlIDEKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMv
cGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YWQ0OWJiNjkw
ZGQwODU4NTNmNTc5Njc4YzI3NWU5YjhmMzBiZDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLmh0bWwKQEAgLTAsMCArMSwyOSBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0KCkgeworICAg
IC8vIEluY3JlYXNlIHRoZSBzaXplIG9mIHRoZSBjb250YWluZXIgc28gdGhlIGlmcmFtZSBiZWNv
bWVzIHZpc2libGUuCisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lciIpLnN0
eWxlLmhlaWdodCA9ICI0MDBweCI7CisgICAgc2V0VGltZW91dChkb25lLCAxMCk7Cit9CisKK2Z1
bmN0aW9uIGRvbmUoKSB7CisgICAgaWYgKHRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5l
ci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0K
K30KKworZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAodGVzdFJ1bm5lcikKKyAgICAgICAg
dGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgc2V0VGltZW91dCh0ZXN0LCAxMCk7Cit9
Cis8L3NjcmlwdD4KKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKworPGRpdiBpZCA9ICJjb250
YWluZXIiIHN0eWxlPSJvdmVyZmxvdzogaGlkZGVuOyB3aWR0aDoxMDBweDsgaGVpZ2h0OjEwMHB4
Ij4KKzxpZnJhbWUgaWQ9J3N1YmZyYW1lJyBzcmM9J3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJm
cmFtZS1pZnJhbWUuaHRtbCcgd2lkdGg9NTAwIGhlaWdodD01MDAgc3R5bGU9Im1hcmdpbi10b3A6
MjAwcHgiPjwvaWZyYW1lPgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbHVnaW5zL3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUu
aHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1l
LWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkyYmNiOTE2NGVmYTQ2MTk1YjMxMTQ3ZWU0NjA5ZDEz
Yjg5MTgyMTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3Jlc291cmNl
cy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDcgQEAKKzxzY3Jp
cHQ+CitmdW5jdGlvbiB3aW5kb3dXYXNTZXQobXNnKSB7CisgICAgY29uc29sZS5sb2cobXNnKTsK
K30KKzwvc2NyaXB0PgorCis8ZW1iZWQgaWQ9InRlc3RDUGx1Z2luIiB0eXBlPSJhcHBsaWNhdGlv
bi94LXdlYmtpdC10ZXN0LW5ldHNjYXBlIiB0ZXN0PSJsb2ctbnBwLXNldC13aW5kb3ciPjwvZW1i
ZWQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188683</attachid>
            <date>2013-02-15 18:54:27 -0800</date>
            <delta_ts>2013-02-15 20:07:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130215185053.patch</filename>
            <type>text/plain</type>
            <size>11723</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmI5ZGYzM2QyODZhZjhl
NGYyMmYwMmY3NGI2ZWQzYmU5YTExMzhjNS4uNjMwZTBkOWFiMWU5YjdkODFhYTRlNzBhNDhkYWZh
MTJkOTcwNzY4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAyLTE1ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBjbGlwcmVjdCBoYXMgY2hhbmdlZCBhZnRlciBkb2luZyBsYXlv
dXQgb24gdGhlCisgICAgICAgIG91dGVyIGZyYW1lLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpjbGlwUmVjdENoYW5nZWQpOiBQ
cm9wYWdhdGVzIGNoYW5nZXMgdG8KKyAgICAgICAgICAgIGNvbnRhaW5lZCB3aWRnZXRzLgorICAg
ICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRnZXQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKTogQWRkZWQgdG8g
bm90aWZ5IHBsdWdpbnMgb2YKKyAgICAgICAgICAgIGNsaXByZWN0IGNoYW5nZXMuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJX
aWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KToKKwogMjAxMy0wMS0zMSAgRG1pdHJ5IFp2b3J5Z2lu
ICA8enZvcnlnaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IHNlYXJj
aGluZyBmb3IgPHU+IGluIGVsZW1lbnRzIHBhbmVsIGZpbmRzIGFsbCB0YWdzIGNvbnRhaW5pbmcg
InUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDE2MWYyZGJjMjQwZmU0N2E5NDQwZmU4
ZjM0Y2MxYzFhY2U0YWNiYmYuLmMyNjIwN2Y2NDk5NmVhOWE1ODYzNDA1YTdlM2U0ZjJiNzc1M2Q0
MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMtMDIt
MTUgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGx1Z2lu
IGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFVzZSBjbGlwUmVjdENoYW5nZWQgdG8gdXBkYXRlIHRoZSBnZW9t
ZXRyeS4KKworICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGx1Z2luQ29udGFpbmVySW1wbDo6Y2xpcFJlY3RDaGFuZ2VkKToKKyAg
ICAgICAgKiBzcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oOgorICAgICAgICAoV2ViUGx1Z2lu
Q29udGFpbmVySW1wbCk6CisKIDIwMTMtMDEtMzEgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIEluZGV4ZWREQjogUmVtb3ZlIFdlYktpdCBBUEkgZm9yIG9s
ZCBvblN1Y2Nlc3Mvb25VcGdyYWRlTmVlZGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwCmluZGV4IGRlNWE1NjNmNWU1NDNhNTA3ZWM3NGEzODYwMDhhYmIwMWM3OTNmNWQuLmRh
YWVmNTU5YmI3MjdkOWM1NDlhZjcyOTNiMDEyYjNkNmExYjkyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC04ODQsNiArODg0LDE2IEBAIHZvaWQgU2Nyb2xsVmll
dzo6ZnJhbWVSZWN0c0NoYW5nZWQoKQogICAgICAgICAoKmN1cnJlbnQpLT5mcmFtZVJlY3RzQ2hh
bmdlZCgpOwogfQogCit2b2lkIFNjcm9sbFZpZXc6OmNsaXBSZWN0Q2hhbmdlZCgpCit7CisgICAg
aWYgKHBsYXRmb3JtV2lkZ2V0KCkpCisgICAgICAgIHJldHVybjsKKworICAgIEhhc2hTZXQ8UmVm
UHRyPFdpZGdldD4gPjo6Y29uc3RfaXRlcmF0b3IgZW5kID0gbV9jaGlsZHJlbi5lbmQoKTsKKyAg
ICBmb3IgKEhhc2hTZXQ8UmVmUHRyPFdpZGdldD4gPjo6Y29uc3RfaXRlcmF0b3IgY3VycmVudCA9
IG1fY2hpbGRyZW4uYmVnaW4oKTsgY3VycmVudCAhPSBlbmQ7ICsrY3VycmVudCkKKyAgICAgICAg
KCpjdXJyZW50KS0+Y2xpcFJlY3RDaGFuZ2VkKCk7Cit9CisKICNpZiBVU0UoQUNDRUxFUkFURURf
Q09NUE9TSVRJTkcpCiBzdGF0aWMgdm9pZCBwb3NpdGlvblNjcm9sbGJhckxheWVyKEdyYXBoaWNz
TGF5ZXIqIGdyYXBoaWNzTGF5ZXIsIFNjcm9sbGJhciogc2Nyb2xsYmFyKQogewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5oCmluZGV4IGZlN2IwMTAxMTUyODcxYzAyMWVlZmQxNTFiOTg2
MTliNmRjZjkwN2UuLmYwZDIwOWU4Zjk3NzRkNGJiODBhMmMyNDAyN2NhMWFiZmViZjAyODQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKQEAgLTI0Myw2ICsyNDMsOSBAQCBwdWJs
aWM6CiAgICAgLy8gV2lkZ2V0IG92ZXJyaWRlIHRvIHVwZGF0ZSBvdXIgc2Nyb2xsYmFycyBhbmQg
bm90aWZ5IG91ciBjb250ZW50cyBvZiB0aGUgcmVzaXplLgogICAgIHZpcnR1YWwgdm9pZCBzZXRG
cmFtZVJlY3QoY29uc3QgSW50UmVjdCYpOwogCisgICAgLy8gV2lkZ2V0IG92ZXJyaWRlIHRvIG5v
dGlmeSBvdXIgY29udGVudHMgb2YgYSBjbGlwcmVjdCBjaGFuZ2UuCisgICAgdmlydHVhbCB2b2lk
IGNsaXBSZWN0Q2hhbmdlZCgpIE9WRVJSSURFOworCiAgICAgLy8gRm9yIHBsYXRmb3JtcyB0aGF0
IG5lZWQgdG8gaGl0IHRlc3Qgc2Nyb2xsYmFycyBmcm9tIHdpdGhpbiB0aGUgZW5naW5lJ3MgZXZl
bnQgaGFuZGxlcnMgKGxpa2UgV2luMzIpLgogICAgIFNjcm9sbGJhciogc2Nyb2xsYmFyQXRQb2lu
dChjb25zdCBJbnRQb2ludCYgd2luZG93UG9pbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9XaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5o
CmluZGV4IGMyYzdjNmRjOTdiMmFhYTJlYTIyYTk3MTFiOGI2OWI3NzE1NWM1OWMuLjUxNTQyMWUw
YWMyMjJhYjI1M2FmY2Q5OWE0OTU2MTlhNjM4MGE2MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL1dpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdl
dC5oCkBAIC0yMTAsNiArMjEwLDkgQEAgcHVibGljOgogICAgIC8vIE5vdGlmaWVzIHRoaXMgd2lk
Z2V0IHRoYXQgb3RoZXIgd2lkZ2V0cyBvbiB0aGUgcGFnZSBoYXZlIGJlZW4gcmVwb3NpdGlvbmVk
LgogICAgIHZpcnR1YWwgdm9pZCB3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCkge30KIAorICAgIC8v
IE5vdGlmaWVzIHRoaXMgd2lkZ2V0IHRoYXQgaXRzIGNsaXAgcmVjdCBjaGFuZ2VkLgorICAgIHZp
cnR1YWwgdm9pZCBjbGlwUmVjdENoYW5nZWQoKSB7IH0KKwogICAgIC8vIFdoZXRoZXIgdHJhbnNm
b3JtcyBhZmZlY3QgdGhlIGZyYW1lIHJlY3QuIEZJWE1FOiBXZSBnZXQgcmlkIG9mIHRoaXMgYW5k
IGhhdmUKICAgICAvLyB0aGUgZnJhbWUgcmVjdHMgYmUgdGhlIHNhbWUgbm8gbWF0dGVyIHdoYXQg
dHJhbnNmb3JtcyBhcmUgYXBwbGllZC4KICAgICB2aXJ0dWFsIGJvb2wgdHJhbnNmb3Jtc0FmZmVj
dEZyYW1lUmVjdCgpIHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlcldpZGdldC5jcHAKaW5kZXggMDlkNTQ0MWZjZWEzNjMzZTMwOTViZGFiOWUyNGQxZTg1MDAw
ZGMwYi4uNWY1MjY1YzU3NmEzOWNhOTQ4OTYxYzc0ZGI5YzE4YzM0YWRjN2IyNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKQEAgLTE1NCw2ICsxNTQsOSBAQCBi
b29sIFJlbmRlcldpZGdldDo6c2V0V2lkZ2V0R2VvbWV0cnkoY29uc3QgTGF5b3V0UmVjdCYgZnJh
bWUpCiAgICAgUmVuZGVyV2lkZ2V0UHJvdGVjdG9yIHByb3RlY3Rvcih0aGlzKTsKICAgICBSZWZQ
dHI8Tm9kZT4gcHJvdGVjdGVkTm9kZShub2RlKCkpOwogICAgIG1fd2lkZ2V0LT5zZXRGcmFtZVJl
Y3Qocm91bmRlZEludFJlY3QoZnJhbWUpKTsKKworICAgIGlmIChjbGlwQ2hhbmdlZCAmJiAhYm91
bmRzQ2hhbmdlZCkKKyAgICAgICAgbV93aWRnZXQtPmNsaXBSZWN0Q2hhbmdlZCgpOwogICAgIAog
I2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKICAgICBpZiAoaGFzTGF5ZXIoKSAmJiBs
YXllcigpLT5pc0NvbXBvc2l0ZWQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKaW5kZXggYjg5YmNkMWQ3MzI3M2M2Yjk2
NTc5MGJhNDZiYzMyYzVjY2QzMTIzOS4uZGYxNTZjZTFiNGRiZDY2YTY0MWZmNGQ1NTJlODllMjA5
OGFkYTIzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2lu
Q29udGFpbmVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1
Z2luQ29udGFpbmVySW1wbC5jcHAKQEAgLTIyMiw2ICsyMjIsMTIgQEAgdm9pZCBXZWJQbHVnaW5D
b250YWluZXJJbXBsOjp3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCkKICAgICByZXBvcnRHZW9tZXRy
eSgpOwogfQogCit2b2lkIFdlYlBsdWdpbkNvbnRhaW5lckltcGw6OmNsaXBSZWN0Q2hhbmdlZCgp
Cit7CisgICAgV2lkZ2V0OjpjbGlwUmVjdENoYW5nZWQoKTsKKyAgICByZXBvcnRHZW9tZXRyeSgp
OworfQorCiB2b2lkIFdlYlBsdWdpbkNvbnRhaW5lckltcGw6OnNldFBhcmVudFZpc2libGUoYm9v
bCBwYXJlbnRWaXNpYmxlKQogewogICAgIC8vIFdlIG92ZXJyaWRlIHRoaXMgZnVuY3Rpb24gdG8g
bWFrZSBzdXJlIHRoYXQgZ2VvbWV0cnkgdXBkYXRlcyBhcmUgc2VudApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oCmluZGV4IGJiMmY0
ZWFjNWI3NTg3YjcyMTI0OGNmNTEwYmU5MjhjNmMyYjlmNjMuLjE5ZDM5N2QyNDdhYWQyZGU4MDM5
Mzg5NDkyNWJhNmNkMDYzYjcxNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmgKQEAgLTkyLDYgKzkyLDcgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJlbnRWaXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRQYXJlbnQoV2ViQ29yZTo6U2Nyb2xsVmlldyopOwogICAgIHZpcnR1YWwgdm9pZCB3aWRn
ZXRQb3NpdGlvbnNVcGRhdGVkKCk7CisgICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hhbmdlZCgp
IE9WRVJSSURFOwogICAgIHZpcnR1YWwgYm9vbCBpc1BsdWdpbkNvbnRhaW5lcigpIGNvbnN0IHsg
cmV0dXJuIHRydWU7IH0KIAogICAgIC8vIFdlYlBsdWdpbkNvbnRhaW5lciBtZXRob2RzCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMWYwODUxNjg0
NWQ5ZWU0Mzk3NWIwYWYyNTdlZWY4NWJmZmRkZDJjMy4uZjMwNDY2NTlhY2VkOTczNTE1YzkyMGNl
ODk2NTljYjIxOGM3OTI2NSAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDEzLTAyLTE1ICBKb2huIEJhdW1hbiAgPGpi
YXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJhbWUgbWF5IG5vdCBk
aXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBM
b2dOUFBTZXRXaW5kb3cgd2lsbCBiZSB1c2VkIHdpdGggb3RoZXIgcG9ydHMgYXMgd2VsbC4KKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGk6CisgICAgICAgICog
RHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlzdHMudHh0OgorCiAyMDEz
LTAxLTMxICBDaHJpc3RvcGhlIER1bWV6ICA8ZGNocmlzQGdtYWlsLmNvbT4KIAogICAgICAgICBb
RUZMXSBEaXNhYmxlIFdlYiBJbnRlbnRzCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9EdW1wUmVuZGVyVHJlZS5neXBpIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRy
ZWUuZ3lwaQppbmRleCBlN2U3YTI3MmMwMTRkM2ZmNjkxMWZkZmRjNDYyYTE1NDEwYzAzYmQxLi5l
MzMwMzg0YjE2MzYzMGFlYTYyMjg1YWJiNzc2NTRlNjlhODFjNGJiIDEwMDY0NAotLS0gYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpCisrKyBiL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKQEAgLTExMiw2ICsxMTIsNyBAQAogICAgICAgICAg
ICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTC5jcHAn
LAogICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2YVNj
cmlwdFVSTERlc3Ryb3lpbmdQbHVnaW4uY3BwJywKICAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQ
bHVnSW4vVGVzdHMvR2V0VXNlckFnZW50V2l0aE51bGxOUFBGcm9tTlBQTmV3LmNwcCcsCisgICAg
ICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0xvZ05QUFNldFdpbmRvdy5jcHAnLAog
ICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFBOZXdGYWlscy5jcHAnLAog
ICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFJ1bnRpbWVDYWxsc1dpdGhO
dWxsTlBQLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05QUnVu
dGltZU9iamVjdEZyb21EZXN0cm95ZWRQbHVnaW4uY3BwJywKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dAppbmRleCBlMzM5
YWIxYjE4NzAyYTViNzAwMTA3ZGIyMmUzMWRlMWZkY2QyOTQ2Li5jMTgwZTA5YjI2NWFiZTJhNmMw
Y2M5ZjQwMjNlMjM0NmY0ZDFhODYwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9U
ZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlzdHMudHh0CkBAIC0xMyw2ICsxMyw3IEBAIHNl
dChXZWJLaXRUZXN0TmV0c2NhcGVQbHVnaW5fU09VUkNFUwogICAgICR7V0VCS0lUX1RFU1RORVRT
Q0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVSTFdpdGhKYXZhU2NyaXB0VVJMLmNwcAogICAgICR7
V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVSTFdpdGhKYXZhU2NyaXB0
VVJMRGVzdHJveWluZ1BsdWdpbi5jcHAKICAgICAke1dFQktJVF9URVNUTkVUU0NBUEVQTFVHSU5f
RElSfS9UZXN0cy9HZXRVc2VyQWdlbnRXaXRoTnVsbE5QUEZyb21OUFBOZXcuY3BwCisgICAgJHtX
RUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvTG9nTlBQU2V0V2luZG93LmNwcAog
ICAgICR7V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL05QRGVhbGxvY2F0ZUNh
bGxlZEJlZm9yZU5QU2h1dGRvd24uY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lO
X0RJUn0vVGVzdHMvTlBQTmV3RmFpbHMuY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExV
R0lOX0RJUn0vVGVzdHMvTlBQU2V0V2luZG93Q2FsbGVkRHVyaW5nRGVzdHJ1Y3Rpb24uY3BwCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
aW5kZXggZGQ4M2ExNjI4MGViZmJjZTAyNTQ1NGY3YjZkMWQ1NzY5ZGJhNzMzYS4uNmFjYTYwOTU0
YjEwYzY1NGMxNjEzYTI2ZmM4OGJhZTkyMDI5MzUyNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisy
MDEzLTAyLTE1ICBKb2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFBsdWdpbiBpbiBpZnJhbWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgbG9nLW5wcC1zZXQtd2luZG93IHRvIGVuc3Vy
ZSBjbGlwIGNoYW5nZXMuCisKKyAgICAgICAgKiBwbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1l
LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJm
cmFtZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3Jlc291cmNlcy9wbHVnaW4tY2xp
cC1zdWJmcmFtZS1pZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMTMtMDEtMzEgIEZsb3JpbiBNYWxp
dGEgIDxmbWFsaXRhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIFVucmV2aWV3
ZWQgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xp
cC1zdWJmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlw
LXN1YmZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYmE2OTVlYjliMmI0NTMwNDUwZjIw
NDc5YWVmYTViNTliMjI3OTg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lu
cy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwzIEBACitDT05T
T0xFIE1FU1NBR0U6IGxpbmUgMzogTlBQX1NldFdpbmRvdzogbm9uLU5VTEwgd2luZG93LCBSZWN0
IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7NjU1MTgsIDY1MzE4LCA2NTUxOCwgNjUz
MTh9LCBUeXBlIDEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBub24t
TlVMTCB3aW5kb3csIFJlY3QgezE4LCAyMTgsIDMwMCwgMTUwfSwgQ2xpcCBSZWN0IHswLCAwLCA5
MCwgMTUwfSwgVHlwZSAxCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2lu
LWNsaXAtc3ViZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3Vi
ZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NWFkNDliYjY5MGRkMDg1ODUzZjU3OTY3OGMyNzVlOWI4
ZjMwYmQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xp
cC1zdWJmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+
Cis8c2NyaXB0PgorZnVuY3Rpb24gdGVzdCgpIHsKKyAgICAvLyBJbmNyZWFzZSB0aGUgc2l6ZSBv
ZiB0aGUgY29udGFpbmVyIHNvIHRoZSBpZnJhbWUgYmVjb21lcyB2aXNpYmxlLgorICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXIiKS5zdHlsZS5oZWlnaHQgPSAiNDAwcHgiOwor
ICAgIHNldFRpbWVvdXQoZG9uZSwgMTApOworfQorCitmdW5jdGlvbiBkb25lKCkgeworICAgIGlm
ICh0ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIHJ1blRlc3Qo
KSB7CisgICAgaWYgKHRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9u
ZSgpOworICAgIHNldFRpbWVvdXQodGVzdCwgMTApOworfQorPC9zY3JpcHQ+Cis8Ym9keSBvbmxv
YWQ9InJ1blRlc3QoKSI+CisKKzxkaXYgaWQgPSAiY29udGFpbmVyIiBzdHlsZT0ib3ZlcmZsb3c6
IGhpZGRlbjsgd2lkdGg6MTAwcHg7IGhlaWdodDoxMDBweCI+Cis8aWZyYW1lIGlkPSdzdWJmcmFt
ZScgc3JjPSdyZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwnIHdpZHRo
PTUwMCBoZWlnaHQ9NTAwIHN0eWxlPSJtYXJnaW4tdG9wOjIwMHB4Ij48L2lmcmFtZT4KKzwvZGl2
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNv
dXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9wbHVn
aW5zL3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li45MmJjYjkxNjRlZmE0NjE5NWIzMTE0N2VlNDYwOWQxM2I4OTE4MjE4Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUt
aWZyYW1lLmh0bWwKQEAgLTAsMCArMSw3IEBACis8c2NyaXB0PgorZnVuY3Rpb24gd2luZG93V2Fz
U2V0KG1zZykgeworICAgIGNvbnNvbGUubG9nKG1zZyk7Cit9Cis8L3NjcmlwdD4KKworPGVtYmVk
IGlkPSJ0ZXN0Q1BsdWdpbiIgdHlwZT0iYXBwbGljYXRpb24veC13ZWJraXQtdGVzdC1uZXRzY2Fw
ZSIgdGVzdD0ibG9nLW5wcC1zZXQtd2luZG93Ij48L2VtYmVkPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188688</attachid>
            <date>2013-02-15 20:07:06 -0800</date>
            <delta_ts>2013-02-20 08:17:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130215200332.patch</filename>
            <type>text/plain</type>
            <size>14958</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmI5ZGYzM2QyODZhZjhl
NGYyMmYwMmY3NGI2ZWQzYmU5YTExMzhjNS4uZjRhNGZkNTVkNzRjMGYwYjg3ZGRlYzQ1ZDQ1ZTkw
NGIzZDEyNjM0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEzLTAyLTE1ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBjbGlwcmVjdCBoYXMgY2hhbmdlZCBhZnRlciBkb2luZyBsYXlv
dXQgb24gdGhlCisgICAgICAgIG91dGVyIGZyYW1lLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpjbGlwUmVjdENoYW5nZWQpOiBQ
cm9wYWdhdGVzIGNoYW5nZXMgdG8KKyAgICAgICAgICAgIGNvbnRhaW5lZCB3aWRnZXRzLgorICAg
ICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRnZXQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKTogQWRkZWQgdG8g
bm90aWZ5IHBsdWdpbnMgb2YKKyAgICAgICAgICAgIGNsaXByZWN0IGNoYW5nZXMuCisgICAgICAg
ICogcGx1Z2lucy9QbHVnaW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6
OmNsaXBSZWN0Q2hhbmdlZCk6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5WaWV3Lmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJXaWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KToKKwogMjAxMy0wMS0zMSAgRG1pdHJ5IFp2b3J5
Z2luICA8enZvcnlnaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IHNl
YXJjaGluZyBmb3IgPHU+IGluIGVsZW1lbnRzIHBhbmVsIGZpbmRzIGFsbCB0YWdzIGNvbnRhaW5p
bmcgInUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDE2MWYyZGJjMjQwZmU0N2E5NDQw
ZmU4ZjM0Y2MxYzFhY2U0YWNiYmYuLmMyNjIwN2Y2NDk5NmVhOWE1ODYzNDA1YTdlM2U0ZjJiNzc1
M2Q0MjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTMt
MDItMTUgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGx1
Z2luIGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVzZSBjbGlwUmVjdENoYW5nZWQgdG8gdXBkYXRlIHRoZSBn
ZW9tZXRyeS4KKworICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGx1Z2luQ29udGFpbmVySW1wbDo6Y2xpcFJlY3RDaGFuZ2VkKToK
KyAgICAgICAgKiBzcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oOgorICAgICAgICAoV2ViUGx1
Z2luQ29udGFpbmVySW1wbCk6CisKIDIwMTMtMDEtMzEgIEFsZWMgRmxldHQgIDxhbGVjZmxldHRA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIEluZGV4ZWREQjogUmVtb3ZlIFdlYktpdCBBUEkgZm9y
IG9sZCBvblN1Y2Nlc3Mvb25VcGdyYWRlTmVlZGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYTI4YjdhOGNmNzE3
NjUwOTQzOWI0NTNkMGExYjQxNzk3MGEwYzIwYy4uZTgxNmQ2YzRhOWI1NGYxZWRkZDdhMzA4ZWZk
Mzg3ZGRjN2UzODcxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEzLTAyLTE1ICBK
b2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBp
ZnJhbWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBVcGRhdGUgZ2VvbWV0cnkgd2hlbiBjbGlwcmVjdCBjaGFuZ2VzLgorCisg
ICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpQbHVnaW5WaWV3OjpjbGlwUmVjdENoYW5nZWQpOgorICAgICAgICAqIFdlYlByb2Nlc3Mv
UGx1Z2lucy9QbHVnaW5WaWV3Lmg6CisKIDIwMTMtMDEtMzEgIENocmlzdG9waGUgRHVtZXogIDxk
Y2hyaXNAZ21haWwuY29tPgogCiAgICAgICAgIFtFRkxdIERpc2FibGUgV2ViIEludGVudHMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggZGU1YTU2M2Y1ZTU0M2E1MDdl
Yzc0YTM4NjAwOGFiYjAxYzc5M2Y1ZC4uZGFhZWY1NTliYjcyN2Q5YzU0OWFmNzI5M2IwMTJiM2Q2
YTFiOTI5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKQEAgLTg4NCw2
ICs4ODQsMTYgQEAgdm9pZCBTY3JvbGxWaWV3OjpmcmFtZVJlY3RzQ2hhbmdlZCgpCiAgICAgICAg
ICgqY3VycmVudCktPmZyYW1lUmVjdHNDaGFuZ2VkKCk7CiB9CiAKK3ZvaWQgU2Nyb2xsVmlldzo6
Y2xpcFJlY3RDaGFuZ2VkKCkKK3sKKyAgICBpZiAocGxhdGZvcm1XaWRnZXQoKSkKKyAgICAgICAg
cmV0dXJuOworCisgICAgSGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+Ojpjb25zdF9pdGVyYXRvciBl
bmQgPSBtX2NoaWxkcmVuLmVuZCgpOworICAgIGZvciAoSGFzaFNldDxSZWZQdHI8V2lkZ2V0PiA+
Ojpjb25zdF9pdGVyYXRvciBjdXJyZW50ID0gbV9jaGlsZHJlbi5iZWdpbigpOyBjdXJyZW50ICE9
IGVuZDsgKytjdXJyZW50KQorICAgICAgICAoKmN1cnJlbnQpLT5jbGlwUmVjdENoYW5nZWQoKTsK
K30KKwogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykKIHN0YXRpYyB2b2lkIHBvc2l0
aW9uU2Nyb2xsYmFyTGF5ZXIoR3JhcGhpY3NMYXllciogZ3JhcGhpY3NMYXllciwgU2Nyb2xsYmFy
KiBzY3JvbGxiYXIpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxWaWV3LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKaW5kZXggZmU3
YjAxMDExNTI4NzFjMDIxZWVmZDE1MWI5ODYxOWI2ZGNmOTA3ZS4uZjBkMjA5ZThmOTc3NGQ0YmI4
MGEyYzI0MDI3Y2ExYWJmZWJmMDI4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vU2Nyb2xsVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcu
aApAQCAtMjQzLDYgKzI0Myw5IEBAIHB1YmxpYzoKICAgICAvLyBXaWRnZXQgb3ZlcnJpZGUgdG8g
dXBkYXRlIG91ciBzY3JvbGxiYXJzIGFuZCBub3RpZnkgb3VyIGNvbnRlbnRzIG9mIHRoZSByZXNp
emUuCiAgICAgdmlydHVhbCB2b2lkIHNldEZyYW1lUmVjdChjb25zdCBJbnRSZWN0Jik7CiAKKyAg
ICAvLyBXaWRnZXQgb3ZlcnJpZGUgdG8gbm90aWZ5IG91ciBjb250ZW50cyBvZiBhIGNsaXByZWN0
IGNoYW5nZS4KKyAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZFUlJJREU7CisK
ICAgICAvLyBGb3IgcGxhdGZvcm1zIHRoYXQgbmVlZCB0byBoaXQgdGVzdCBzY3JvbGxiYXJzIGZy
b20gd2l0aGluIHRoZSBlbmdpbmUncyBldmVudCBoYW5kbGVycyAobGlrZSBXaW4zMikuCiAgICAg
U2Nyb2xsYmFyKiBzY3JvbGxiYXJBdFBvaW50KGNvbnN0IEludFBvaW50JiB3aW5kb3dQb2ludCk7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKaW5kZXggYzJjN2M2ZGM5N2IyYWFhMmVhMjJhOTcx
MWI4YjY5Yjc3MTU1YzU5Yy4uNTE1NDIxZTBhYzIyMmFiMjUzYWZjZDk5YTQ5NTYxOWE2MzgwYTYy
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vV2lkZ2V0LmgKQEAgLTIxMCw2ICsyMTAsOSBAQCBwdWJsaWM6
CiAgICAgLy8gTm90aWZpZXMgdGhpcyB3aWRnZXQgdGhhdCBvdGhlciB3aWRnZXRzIG9uIHRoZSBw
YWdlIGhhdmUgYmVlbiByZXBvc2l0aW9uZWQuCiAgICAgdmlydHVhbCB2b2lkIHdpZGdldFBvc2l0
aW9uc1VwZGF0ZWQoKSB7fQogCisgICAgLy8gTm90aWZpZXMgdGhpcyB3aWRnZXQgdGhhdCBpdHMg
Y2xpcCByZWN0IGNoYW5nZWQuCisgICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hhbmdlZCgpIHsg
fQorCiAgICAgLy8gV2hldGhlciB0cmFuc2Zvcm1zIGFmZmVjdCB0aGUgZnJhbWUgcmVjdC4gRklY
TUU6IFdlIGdldCByaWQgb2YgdGhpcyBhbmQgaGF2ZQogICAgIC8vIHRoZSBmcmFtZSByZWN0cyBi
ZSB0aGUgc2FtZSBubyBtYXR0ZXIgd2hhdCB0cmFuc2Zvcm1zIGFyZSBhcHBsaWVkLgogICAgIHZp
cnR1YWwgYm9vbCB0cmFuc2Zvcm1zQWZmZWN0RnJhbWVSZWN0KCkgeyByZXR1cm4gdHJ1ZTsgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKaW5kZXggN2Q5MmJlYzc5NzM4ZGZiM2Nk
YWQ2OWNlNWJhZWMzYjJmNzgyZjQyZC4uYWYwNTc2ZjBlOTBhMGEzMWVmYmY3NTlmNjEyMDFlZjQy
MWU0MTU3OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3BwCkBAIC0xNTgsNiAr
MTU4LDExIEBAIHZvaWQgUGx1Z2luVmlldzo6ZnJhbWVSZWN0c0NoYW5nZWQoKQogICAgIHVwZGF0
ZVBsdWdpbldpZGdldCgpOwogfQogCit2b2lkIFBsdWdpblZpZXc6OmNsaXBSZWN0Q2hhbmdlZCgp
Cit7CisgICAgdXBkYXRlUGx1Z2luV2lkZ2V0KCk7Cit9CisKIHZvaWQgUGx1Z2luVmlldzo6aGFu
ZGxlRXZlbnQoRXZlbnQqIGV2ZW50KQogewogICAgIGlmICghbV9wbHVnaW4gfHwgbV9pc1dpbmRv
d2VkKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmggYi9T
b3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuaAppbmRleCA4NGU2MmQ4YWUzOGZjMjIw
ZGUzOGFhYjJlZTJiM2YxYzMzNGViYmI5Li5iMzMzNDgwN2Q1MDkxN2QyMWMzNTU3Mzc0MjJkZWUx
YjQ4NzdmZGIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuaApAQCAtMjEwLDYgKzIx
MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIHNob3coKTsK
ICAgICAgICAgdmlydHVhbCB2b2lkIGhpZGUoKTsKICAgICAgICAgdmlydHVhbCB2b2lkIHBhaW50
KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEludFJlY3QmKTsKKyAgICAgICAgdmlydHVhbCB2b2lk
IGNsaXBSZWN0Q2hhbmdlZCgpIE9WRVJSSURFOwogCiAgICAgICAgIC8vIFRoaXMgbWV0aG9kIGlz
IHVzZWQgYnkgcGx1Z2lucyBvbiBhbGwgcGxhdGZvcm1zIHRvIG9idGFpbiBhIGNsaXAgcmVjdCB0
aGF0IGluY2x1ZGVzIGNsaXBzIHNldCBieSBXZWJDb3JlLAogICAgICAgICAvLyBlLmcuLCBpbiBv
dmVyZmxvdzphdXRvIHNlY3Rpb25zLiAgVGhlIGNsaXAgcmVjdHMgY29vcmRpbmF0ZXMgYXJlIGlu
IHRoZSBjb250YWluaW5nIHdpbmRvdydzIGNvb3JkaW5hdGUgc3BhY2UuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCmluZGV4IDA5ZDU0NDFmY2VhMzYzM2UzMDk1YmRh
YjllMjRkMWU4NTAwMGRjMGIuLjVmNTI2NWM1NzZhMzljYTk0ODk2MWM3NGRiOWMxOGMzNGFkYzdi
MjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCkBAIC0xNTQs
NiArMTU0LDkgQEAgYm9vbCBSZW5kZXJXaWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KGNvbnN0IExh
eW91dFJlY3QmIGZyYW1lKQogICAgIFJlbmRlcldpZGdldFByb3RlY3RvciBwcm90ZWN0b3IodGhp
cyk7CiAgICAgUmVmUHRyPE5vZGU+IHByb3RlY3RlZE5vZGUobm9kZSgpKTsKICAgICBtX3dpZGdl
dC0+c2V0RnJhbWVSZWN0KHJvdW5kZWRJbnRSZWN0KGZyYW1lKSk7CisKKyAgICBpZiAoY2xpcENo
YW5nZWQgJiYgIWJvdW5kc0NoYW5nZWQpCisgICAgICAgIG1fd2lkZ2V0LT5jbGlwUmVjdENoYW5n
ZWQoKTsKICAgICAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAgaWYgKGhh
c0xheWVyKCkgJiYgbGF5ZXIoKS0+aXNDb21wb3NpdGVkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCmluZGV4IGI4OWJj
ZDFkNzMyNzNjNmI5NjU3OTBiYTQ2YmMzMmM1Y2NkMzEyMzkuLmRmMTU2Y2UxYjRkYmQ2NmE2NDFm
ZjRkNTUyZTg5ZTIwOThhZGEyM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCkBAIC0yMjIsNiArMjIyLDEyIEBAIHZv
aWQgV2ViUGx1Z2luQ29udGFpbmVySW1wbDo6d2lkZ2V0UG9zaXRpb25zVXBkYXRlZCgpCiAgICAg
cmVwb3J0R2VvbWV0cnkoKTsKIH0KIAordm9pZCBXZWJQbHVnaW5Db250YWluZXJJbXBsOjpjbGlw
UmVjdENoYW5nZWQoKQoreworICAgIFdpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKCk7CisgICAgcmVw
b3J0R2VvbWV0cnkoKTsKK30KKwogdm9pZCBXZWJQbHVnaW5Db250YWluZXJJbXBsOjpzZXRQYXJl
bnRWaXNpYmxlKGJvb2wgcGFyZW50VmlzaWJsZSkKIHsKICAgICAvLyBXZSBvdmVycmlkZSB0aGlz
IGZ1bmN0aW9uIHRvIG1ha2Ugc3VyZSB0aGF0IGdlb21ldHJ5IHVwZGF0ZXMgYXJlIHNlbnQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lcklt
cGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwu
aAppbmRleCBiYjJmNGVhYzViNzU4N2I3MjEyNDhjZjUxMGJlOTI4YzZjMmI5ZjYzLi4xOWQzOTdk
MjQ3YWFkMmRlODAzOTM4OTQ5MjViYTZjZDA2M2I3MTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmgKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oCkBAIC05Miw2ICs5Miw3
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0UGFyZW50VmlzaWJsZShib29sKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0UGFyZW50KFdlYkNvcmU6OlNjcm9sbFZpZXcqKTsKICAgICB2aXJ0
dWFsIHZvaWQgd2lkZ2V0UG9zaXRpb25zVXBkYXRlZCgpOworICAgIHZpcnR1YWwgdm9pZCBjbGlw
UmVjdENoYW5nZWQoKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIGJvb2wgaXNQbHVnaW5Db250YWlu
ZXIoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CiAKICAgICAvLyBXZWJQbHVnaW5Db250YWluZXIg
bWV0aG9kcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1Bs
dWdpblZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuY3BwCmluZGV4IDEwZjJmNzI0MGYyZGIzODVmM2JhYjZiNjA2NjYzNjIxMDQ2OWI4YTQuLmUz
ZmU3MWQyMGQ0MWE5NDg0OWIzYTRmZjQyYWFlZjZiZjg5NmRhMWMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTczNSw2ICs3MzUs
MTIgQEAgdm9pZCBQbHVnaW5WaWV3OjpmcmFtZVJlY3RzQ2hhbmdlZCgpCiAgICAgdmlld0dlb21l
dHJ5RGlkQ2hhbmdlKCk7CiB9CiAKK3ZvaWQgUGx1Z2luVmlldzo6Y2xpcFJlY3RDaGFuZ2VkKCkK
K3sKKyAgICBXaWRnZXQ6OmNsaXBSZWN0Q2hhbmdlZCgpOworICAgIHZpZXdHZW9tZXRyeURpZENo
YW5nZSgpOworfQorCiB2b2lkIFBsdWdpblZpZXc6OnNldFBhcmVudChTY3JvbGxWaWV3KiBzY3Jv
bGxWaWV3KQogewogICAgIFdpZGdldDo6c2V0UGFyZW50KHNjcm9sbFZpZXcpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggZWVjMjM2YTdm
YThkOTQyM2Q5ZTZlNTE0MjU4ZWMxNzkxZWJhMjNhMC4uZGVmYTU0ZTE5YjRjYWQxNjA3M2UwZDQ3
YmY0ZDA3ODFiODkwYjAwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Q
bHVnaW5zL1BsdWdpblZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdp
bnMvUGx1Z2luVmlldy5oCkBAIC0xNjAsNiArMTYwLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFs
IHZvaWQgc2hvdygpOwogICAgIHZpcnR1YWwgdm9pZCBoaWRlKCk7CiAgICAgdmlydHVhbCBib29s
IHRyYW5zZm9ybXNBZmZlY3RGcmFtZVJlY3QoKTsKKyAgICB2aXJ0dWFsIGJvb2wgY2xpcFJlY3RD
aGFuZ2VkKCkgT1ZFUlJJREU7CiAKICAgICAvLyBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVu
ZXIKICAgICB2aXJ0dWFsIHZvaWQgbWVkaWFDYW5TdGFydCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMv
Q2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDFmMDg1MTY4NDVkOWVlNDM5NzViMGFm
MjU3ZWVmODViZmZkZGQyYzMuLmYzMDQ2NjU5YWNlZDk3MzUxNWM5MjBjZTg5NjU5Y2IyMThjNzky
NjUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxNSBAQAorMjAxMy0wMi0xNSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTG9nTlBQU2V0V2luZG93
IHdpbGwgYmUgdXNlZCB3aXRoIG90aGVyIHBvcnRzIGFzIHdlbGwuCisKKyAgICAgICAgKiBEdW1w
UmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dDoKKwogMjAxMy0wMS0zMSAgQ2hyaXN0
b3BoZSBEdW1leiAgPGRjaHJpc0BnbWFpbC5jb20+CiAKICAgICAgICAgW0VGTF0gRGlzYWJsZSBX
ZWIgSW50ZW50cwpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRy
ZWUuZ3lwaSBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKaW5kZXgg
ZTdlN2EyNzJjMDE0ZDNmZjY5MTFmZGZkYzQ2MmExNTQxMGMwM2JkMS4uZTMzMDM4NGIxNjM2MzBh
ZWE2MjI4NWFiYjc3NjU0ZTY5YTgxYzRiYiAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVu
ZGVyVHJlZS5neXBpCkBAIC0xMTIsNiArMTEyLDcgQEAKICAgICAgICAgICAgICdUZXN0TmV0c2Nh
cGVQbHVnSW4vVGVzdHMvR2V0VVJMV2l0aEphdmFTY3JpcHRVUkwuY3BwJywKICAgICAgICAgICAg
ICdUZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvR2V0VVJMV2l0aEphdmFTY3JpcHRVUkxEZXN0cm95
aW5nUGx1Z2luLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0dl
dFVzZXJBZ2VudFdpdGhOdWxsTlBQRnJvbU5QUE5ldy5jcHAnLAorICAgICAgICAgICAgJ1Rlc3RO
ZXRzY2FwZVBsdWdJbi9UZXN0cy9Mb2dOUFBTZXRXaW5kb3cuY3BwJywKICAgICAgICAgICAgICdU
ZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvTlBQTmV3RmFpbHMuY3BwJywKICAgICAgICAgICAgICdU
ZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvTlBSdW50aW1lQ2FsbHNXaXRoTnVsbE5QUC5jcHAnLAog
ICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFJ1bnRpbWVPYmplY3RGcm9t
RGVzdHJveWVkUGx1Z2luLmNwcCcsCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9U
ZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9U
ZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQKaW5kZXggZTMzOWFiMWIxODcwMmE1Yjcw
MDEwN2RiMjJlMzFkZTFmZGNkMjk0Ni4uYzE4MGUwOWIyNjVhYmUyYTZjMGNjOWY0MDIzZTIzNDZm
NGQxYTg2MCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1
Z0luL0NNYWtlTGlzdHMudHh0CisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2Fw
ZVBsdWdJbi9DTWFrZUxpc3RzLnR4dApAQCAtMTMsNiArMTMsNyBAQCBzZXQoV2ViS2l0VGVzdE5l
dHNjYXBlUGx1Z2luX1NPVVJDRVMKICAgICAke1dFQktJVF9URVNUTkVUU0NBUEVQTFVHSU5fRElS
fS9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTC5jcHAKICAgICAke1dFQktJVF9URVNUTkVU
U0NBUEVQTFVHSU5fRElSfS9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTERlc3Ryb3lpbmdQ
bHVnaW4uY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvR2V0
VXNlckFnZW50V2l0aE51bGxOUFBGcm9tTlBQTmV3LmNwcAorICAgICR7V0VCS0lUX1RFU1RORVRT
Q0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0xvZ05QUFNldFdpbmRvdy5jcHAKICAgICAke1dFQktJVF9U
RVNUTkVUU0NBUEVQTFVHSU5fRElSfS9UZXN0cy9OUERlYWxsb2NhdGVDYWxsZWRCZWZvcmVOUFNo
dXRkb3duLmNwcAogICAgICR7V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL05Q
UE5ld0ZhaWxzLmNwcAogICAgICR7V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3Rz
L05QUFNldFdpbmRvd0NhbGxlZER1cmluZ0Rlc3RydWN0aW9uLmNwcApkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGRkODNhMTYy
ODBlYmZiY2UwMjU0NTRmN2I2ZDFkNTc2OWRiYTczM2EuLjZhY2E2MDk1NGIxMGM2NTRjMTYxM2Ey
NmZjODhiYWU5MjAyOTM1MjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wMi0xNSAgSm9o
biBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBQbHVnaW4gaW4gaWZy
YW1lIG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVXNlIGxvZy1ucHAtc2V0LXdpbmRvdyB0byBlbnN1cmUgY2xpcCBjaGFuZ2Vz
LgorCisgICAgICAgICogcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbDogQWRk
ZWQuCisgICAgICAgICogcGx1Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZy
YW1lLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAxLTMxICBGbG9yaW4gTWFsaXRhICA8Zm1hbGl0YUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBVbnJldmlld2VkIGdhcmRlbmluZy4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uM2JhNjk1ZWI5YjJiNDUzMDQ1MGYyMDQ3OWFlZmE1YjU5YjIy
Nzk4OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNsaXAt
c3ViZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorQ09OU09MRSBNRVNTQUdFOiBs
aW5lIDM6IE5QUF9TZXRXaW5kb3c6IG5vbi1OVUxMIHdpbmRvdywgUmVjdCB7MTgsIDIxOCwgMzAw
LCAxNTB9LCBDbGlwIFJlY3QgezY1NTE4LCA2NTMxOCwgNjU1MTgsIDY1MzE4fSwgVHlwZSAxCitD
T05TT0xFIE1FU1NBR0U6IGxpbmUgMzogTlBQX1NldFdpbmRvdzogbm9uLU5VTEwgd2luZG93LCBS
ZWN0IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgMCwgOTAsIDE1MH0sIFR5cGUg
MQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNjVhZDQ5YmI2OTBkZDA4NTg1M2Y1Nzk2NzhjMjc1ZTliOGYzMGJkNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRt
bApAQCAtMCwwICsxLDI5IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPHNjcmlwdD4KK2Z1
bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gSW5jcmVhc2UgdGhlIHNpemUgb2YgdGhlIGNvbnRhaW5l
ciBzbyB0aGUgaWZyYW1lIGJlY29tZXMgdmlzaWJsZS4KKyAgICBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiY29udGFpbmVyIikuc3R5bGUuaGVpZ2h0ID0gIjQwMHB4IjsKKyAgICBzZXRUaW1lb3V0
KGRvbmUsIDEwKTsKK30KKworZnVuY3Rpb24gZG9uZSgpIHsKKyAgICBpZiAodGVzdFJ1bm5lcikg
eworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgICAgdGVzdFJ1bm5lci5u
b3RpZnlEb25lKCk7CisgICAgfQorfQorCitmdW5jdGlvbiBydW5UZXN0KCkgeworICAgIGlmICh0
ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICBzZXRU
aW1lb3V0KHRlc3QsIDEwKTsKK30KKzwvc2NyaXB0PgorPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgorCis8ZGl2IGlkID0gImNvbnRhaW5lciIgc3R5bGU9Im92ZXJmbG93OiBoaWRkZW47IHdpZHRo
OjEwMHB4OyBoZWlnaHQ6MTAwcHgiPgorPGlmcmFtZSBpZD0nc3ViZnJhbWUnIHNyYz0ncmVzb3Vy
Y2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sJyB3aWR0aD01MDAgaGVpZ2h0PTUw
MCBzdHlsZT0ibWFyZ2luLXRvcDoyMDBweCI+PC9pZnJhbWU+Cis8L2Rpdj4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL3BsdWdpbi1j
bGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOTJiY2I5MTY0ZWZh
NDYxOTViMzExNDdlZTQ2MDlkMTNiODkxODIxOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL3BsdWdpbnMvcmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sCkBA
IC0wLDAgKzEsNyBAQAorPHNjcmlwdD4KK2Z1bmN0aW9uIHdpbmRvd1dhc1NldChtc2cpIHsKKyAg
ICBjb25zb2xlLmxvZyhtc2cpOworfQorPC9zY3JpcHQ+CisKKzxlbWJlZCBpZD0idGVzdENQbHVn
aW4iIHR5cGU9ImFwcGxpY2F0aW9uL3gtd2Via2l0LXRlc3QtbmV0c2NhcGUiIHRlc3Q9ImxvZy1u
cHAtc2V0LXdpbmRvdyI+PC9lbWJlZD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189323</attachid>
            <date>2013-02-20 08:17:32 -0800</date>
            <delta_ts>2013-02-25 22:46:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130220081354.patch</filename>
            <type>text/plain</type>
            <size>14923</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNDQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNmI5ZGYzM2QyODZhZjhl
NGYyMmYwMmY3NGI2ZWQzYmU5YTExMzhjNS4uYjY2NDY5YzczYWVhZTQ2Nzg0ZDJjOTIyZmM0MGIy
MzBhZDkwZjNjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEzLTAyLTIwICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBjbGlwcmVjdCBoYXMgY2hhbmdlZCBhZnRlciBkb2luZyBsYXlv
dXQgb24gdGhlCisgICAgICAgIG91dGVyIGZyYW1lLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpjbGlwUmVjdENoYW5nZWQpOiBQ
cm9wYWdhdGVzIGNoYW5nZXMgdG8KKyAgICAgICAgICAgIGNvbnRhaW5lZCB3aWRnZXRzLgorICAg
ICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRnZXQu
aDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKTogQWRkZWQgdG8g
bm90aWZ5IHBsdWdpbnMgb2YKKyAgICAgICAgICAgIGNsaXByZWN0IGNoYW5nZXMuCisgICAgICAg
ICogcGx1Z2lucy9QbHVnaW5WaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpblZpZXc6
OmNsaXBSZWN0Q2hhbmdlZCk6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5WaWV3Lmg6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJXaWRnZXQ6OnNldFdpZGdldEdlb21ldHJ5KToKKwogMjAxMy0wMS0zMSAgRG1pdHJ5IFp2b3J5
Z2luICA8enZvcnlnaW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IHNl
YXJjaGluZyBmb3IgPHU+IGluIGVsZW1lbnRzIHBhbmVsIGZpbmRzIGFsbCB0YWdzIGNvbnRhaW5p
bmcgInUiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDE2MWYyZGJjMjQwZmU0N2E5NDQw
ZmU4ZjM0Y2MxYzFhY2U0YWNiYmYuLmZmYWE5NTcxOGE2ZTZmYjZiY2ZjNGY0NDcwYTUzNzE4M2Fh
NzI2MDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTMt
MDItMjAgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGx1
Z2luIGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVzZSBjbGlwUmVjdENoYW5nZWQgdG8gdXBkYXRlIHRoZSBn
ZW9tZXRyeS4KKworICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGx1Z2luQ29udGFpbmVySW1wbDo6Y2xpcFJlY3RDaGFuZ2VkKToK
KyAgICAgICAgKiBzcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5oOgorCiAyMDEzLTAxLTMxICBB
bGVjIEZsZXR0ICA8YWxlY2ZsZXR0QGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6
IFJlbW92ZSBXZWJLaXQgQVBJIGZvciBvbGQgb25TdWNjZXNzL29uVXBncmFkZU5lZWRlZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCmluZGV4IGEyOGI3YThjZjcxNzY1MDk0MzliNDUzZDBhMWI0MTc5NzBhMGMyMGMuLjlkNDZh
ZTIyMmNmZGJlMWJjYTUyODVkMTU1MzJmZTk2MTkwZjhmN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNiBAQAorMjAxMy0wMi0yMCAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4K
KworICAgICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGdlb21ldHJ5IHdoZW4g
Y2xpcHJlY3QgY2hhbmdlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5W
aWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6Y2xpcFJlY3RDaGFuZ2VkKToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oOgorCiAyMDEzLTAxLTMx
ICBDaHJpc3RvcGhlIER1bWV6ICA8ZGNocmlzQGdtYWlsLmNvbT4KIAogICAgICAgICBbRUZMXSBE
aXNhYmxlIFdlYiBJbnRlbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9T
Y3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCmlu
ZGV4IGRlNWE1NjNmNWU1NDNhNTA3ZWM3NGEzODYwMDhhYmIwMWM3OTNmNWQuLmRhYWVmNTU5YmI3
MjdkOWM1NDlhZjcyOTNiMDEyYjNkNmExYjkyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Nj
cm9sbFZpZXcuY3BwCkBAIC04ODQsNiArODg0LDE2IEBAIHZvaWQgU2Nyb2xsVmlldzo6ZnJhbWVS
ZWN0c0NoYW5nZWQoKQogICAgICAgICAoKmN1cnJlbnQpLT5mcmFtZVJlY3RzQ2hhbmdlZCgpOwog
fQogCit2b2lkIFNjcm9sbFZpZXc6OmNsaXBSZWN0Q2hhbmdlZCgpCit7CisgICAgaWYgKHBsYXRm
b3JtV2lkZ2V0KCkpCisgICAgICAgIHJldHVybjsKKworICAgIEhhc2hTZXQ8UmVmUHRyPFdpZGdl
dD4gPjo6Y29uc3RfaXRlcmF0b3IgZW5kID0gbV9jaGlsZHJlbi5lbmQoKTsKKyAgICBmb3IgKEhh
c2hTZXQ8UmVmUHRyPFdpZGdldD4gPjo6Y29uc3RfaXRlcmF0b3IgY3VycmVudCA9IG1fY2hpbGRy
ZW4uYmVnaW4oKTsgY3VycmVudCAhPSBlbmQ7ICsrY3VycmVudCkKKyAgICAgICAgKCpjdXJyZW50
KS0+Y2xpcFJlY3RDaGFuZ2VkKCk7Cit9CisKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJ
TkcpCiBzdGF0aWMgdm9pZCBwb3NpdGlvblNjcm9sbGJhckxheWVyKEdyYXBoaWNzTGF5ZXIqIGdy
YXBoaWNzTGF5ZXIsIFNjcm9sbGJhciogc2Nyb2xsYmFyKQogewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
U2Nyb2xsVmlldy5oCmluZGV4IGZlN2IwMTAxMTUyODcxYzAyMWVlZmQxNTFiOTg2MTliNmRjZjkw
N2UuLmYwZDIwOWU4Zjk3NzRkNGJiODBhMmMyNDAyN2NhMWFiZmViZjAyODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKQEAgLTI0Myw2ICsyNDMsOSBAQCBwdWJsaWM6CiAgICAg
Ly8gV2lkZ2V0IG92ZXJyaWRlIHRvIHVwZGF0ZSBvdXIgc2Nyb2xsYmFycyBhbmQgbm90aWZ5IG91
ciBjb250ZW50cyBvZiB0aGUgcmVzaXplLgogICAgIHZpcnR1YWwgdm9pZCBzZXRGcmFtZVJlY3Qo
Y29uc3QgSW50UmVjdCYpOwogCisgICAgLy8gV2lkZ2V0IG92ZXJyaWRlIHRvIG5vdGlmeSBvdXIg
Y29udGVudHMgb2YgYSBjbGlwcmVjdCBjaGFuZ2UuCisgICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0
Q2hhbmdlZCgpIE9WRVJSSURFOworCiAgICAgLy8gRm9yIHBsYXRmb3JtcyB0aGF0IG5lZWQgdG8g
aGl0IHRlc3Qgc2Nyb2xsYmFycyBmcm9tIHdpdGhpbiB0aGUgZW5naW5lJ3MgZXZlbnQgaGFuZGxl
cnMgKGxpa2UgV2luMzIpLgogICAgIFNjcm9sbGJhciogc2Nyb2xsYmFyQXRQb2ludChjb25zdCBJ
bnRQb2ludCYgd2luZG93UG9pbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9XaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCmluZGV4IGMy
YzdjNmRjOTdiMmFhYTJlYTIyYTk3MTFiOGI2OWI3NzE1NWM1OWMuLjUxNTQyMWUwYWMyMjJhYjI1
M2FmY2Q5OWE0OTU2MTlhNjM4MGE2MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL1dpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCkBAIC0y
MTAsNiArMjEwLDkgQEAgcHVibGljOgogICAgIC8vIE5vdGlmaWVzIHRoaXMgd2lkZ2V0IHRoYXQg
b3RoZXIgd2lkZ2V0cyBvbiB0aGUgcGFnZSBoYXZlIGJlZW4gcmVwb3NpdGlvbmVkLgogICAgIHZp
cnR1YWwgdm9pZCB3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCkge30KIAorICAgIC8vIE5vdGlmaWVz
IHRoaXMgd2lkZ2V0IHRoYXQgaXRzIGNsaXAgcmVjdCBjaGFuZ2VkLgorICAgIHZpcnR1YWwgdm9p
ZCBjbGlwUmVjdENoYW5nZWQoKSB7IH0KKwogICAgIC8vIFdoZXRoZXIgdHJhbnNmb3JtcyBhZmZl
Y3QgdGhlIGZyYW1lIHJlY3QuIEZJWE1FOiBXZSBnZXQgcmlkIG9mIHRoaXMgYW5kIGhhdmUKICAg
ICAvLyB0aGUgZnJhbWUgcmVjdHMgYmUgdGhlIHNhbWUgbm8gbWF0dGVyIHdoYXQgdHJhbnNmb3Jt
cyBhcmUgYXBwbGllZC4KICAgICB2aXJ0dWFsIGJvb2wgdHJhbnNmb3Jtc0FmZmVjdEZyYW1lUmVj
dCgpIHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMv
UGx1Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3BwCmlu
ZGV4IDdkOTJiZWM3OTczOGRmYjNjZGFkNjljZTViYWVjM2IyZjc4MmY0MmQuLmFmMDU3NmYwZTkw
YTBhMzFlZmJmNzU5ZjYxMjAxZWY0MjFlNDE1NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5WaWV3LmNwcApAQCAtMTU4LDYgKzE1OCwxMSBAQCB2b2lkIFBsdWdpblZpZXc6OmZyYW1lUmVj
dHNDaGFuZ2VkKCkKICAgICB1cGRhdGVQbHVnaW5XaWRnZXQoKTsKIH0KIAordm9pZCBQbHVnaW5W
aWV3OjpjbGlwUmVjdENoYW5nZWQoKQoreworICAgIHVwZGF0ZVBsdWdpbldpZGdldCgpOworfQor
CiB2b2lkIFBsdWdpblZpZXc6OmhhbmRsZUV2ZW50KEV2ZW50KiBldmVudCkKIHsKICAgICBpZiAo
IW1fcGx1Z2luIHx8IG1faXNXaW5kb3dlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
dWdpbnMvUGx1Z2luVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgK
aW5kZXggODRlNjJkOGFlMzhmYzIyMGRlMzhhYWIyZWUyYjNmMWMzMzRlYmJiOS4uYjMzMzQ4MDdk
NTA5MTdkMjFjMzU1NzM3NDIyZGVlMWI0ODc3ZmRiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5WaWV3LmgKQEAgLTIxMCw2ICsyMTAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAg
IHZpcnR1YWwgdm9pZCBzaG93KCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBoaWRlKCk7CiAgICAg
ICAgIHZpcnR1YWwgdm9pZCBwYWludChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0Jik7
CisgICAgICAgIHZpcnR1YWwgdm9pZCBjbGlwUmVjdENoYW5nZWQoKSBPVkVSUklERTsKIAogICAg
ICAgICAvLyBUaGlzIG1ldGhvZCBpcyB1c2VkIGJ5IHBsdWdpbnMgb24gYWxsIHBsYXRmb3JtcyB0
byBvYnRhaW4gYSBjbGlwIHJlY3QgdGhhdCBpbmNsdWRlcyBjbGlwcyBzZXQgYnkgV2ViQ29yZSwK
ICAgICAgICAgLy8gZS5nLiwgaW4gb3ZlcmZsb3c6YXV0byBzZWN0aW9ucy4gIFRoZSBjbGlwIHJl
Y3RzIGNvb3JkaW5hdGVzIGFyZSBpbiB0aGUgY29udGFpbmluZyB3aW5kb3cncyBjb29yZGluYXRl
IHNwYWNlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdl
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAppbmRleCAw
OWQ1NDQxZmNlYTM2MzNlMzA5NWJkYWI5ZTI0ZDFlODUwMDBkYzBiLi41ZjUyNjVjNTc2YTM5Y2E5
NDg5NjFjNzRkYjljMThjMzRhZGM3YjI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyV2lkZ2V0LmNwcApAQCAtMTU0LDYgKzE1NCw5IEBAIGJvb2wgUmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXRHZW9tZXRyeShjb25zdCBMYXlvdXRSZWN0JiBmcmFtZSkKICAgICBSZW5kZXJXaWRnZXRQ
cm90ZWN0b3IgcHJvdGVjdG9yKHRoaXMpOwogICAgIFJlZlB0cjxOb2RlPiBwcm90ZWN0ZWROb2Rl
KG5vZGUoKSk7CiAgICAgbV93aWRnZXQtPnNldEZyYW1lUmVjdChyb3VuZGVkSW50UmVjdChmcmFt
ZSkpOworCisgICAgaWYgKGNsaXBDaGFuZ2VkICYmICFib3VuZHNDaGFuZ2VkKQorICAgICAgICBt
X3dpZGdldC0+Y2xpcFJlY3RDaGFuZ2VkKCk7CiAgICAgCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NP
TVBPU0lUSU5HKQogICAgIGlmIChoYXNMYXllcigpICYmIGxheWVyKCktPmlzQ29tcG9zaXRlZCgp
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFp
bmVySW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWlu
ZXJJbXBsLmNwcAppbmRleCBiODliY2QxZDczMjczYzZiOTY1NzkwYmE0NmJjMzJjNWNjZDMxMjM5
Li5kZjE1NmNlMWI0ZGJkNjZhNjQxZmY0ZDU1MmU4OWUyMDk4YWRhMjNmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcApA
QCAtMjIyLDYgKzIyMiwxMiBAQCB2b2lkIFdlYlBsdWdpbkNvbnRhaW5lckltcGw6OndpZGdldFBv
c2l0aW9uc1VwZGF0ZWQoKQogICAgIHJlcG9ydEdlb21ldHJ5KCk7CiB9CiAKK3ZvaWQgV2ViUGx1
Z2luQ29udGFpbmVySW1wbDo6Y2xpcFJlY3RDaGFuZ2VkKCkKK3sKKyAgICBXaWRnZXQ6OmNsaXBS
ZWN0Q2hhbmdlZCgpOworICAgIHJlcG9ydEdlb21ldHJ5KCk7Cit9CisKIHZvaWQgV2ViUGx1Z2lu
Q29udGFpbmVySW1wbDo6c2V0UGFyZW50VmlzaWJsZShib29sIHBhcmVudFZpc2libGUpCiB7CiAg
ICAgLy8gV2Ugb3ZlcnJpZGUgdGhpcyBmdW5jdGlvbiB0byBtYWtlIHN1cmUgdGhhdCBnZW9tZXRy
eSB1cGRhdGVzIGFyZSBzZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJQbHVnaW5Db250YWluZXJJbXBsLmgKaW5kZXggYmIyZjRlYWM1Yjc1ODdiNzIxMjQ4Y2Y1MTBi
ZTkyOGM2YzJiOWY2My4uMTlkMzk3ZDI0N2FhZDJkZTgwMzkzODk0OTI1YmE2Y2QwNjNiNzE1YyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVy
SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5l
ckltcGwuaApAQCAtOTIsNiArOTIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNldFBh
cmVudFZpc2libGUoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChXZWJDb3JlOjpT
Y3JvbGxWaWV3Kik7CiAgICAgdmlydHVhbCB2b2lkIHdpZGdldFBvc2l0aW9uc1VwZGF0ZWQoKTsK
KyAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZFUlJJREU7CiAgICAgdmlydHVh
bCBib29sIGlzUGx1Z2luQ29udGFpbmVyKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCiAgICAg
Ly8gV2ViUGx1Z2luQ29udGFpbmVyIG1ldGhvZHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAppbmRleCAxMGYyZjcyNDBmMmRiMzg1ZjNiYWI2
YjYwNjY2MzYyMTA0NjliOGE0Li5lM2ZlNzFkMjBkNDFhOTQ4NDliM2E0ZmY0MmFhZWY2YmY4OTZk
YTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2lu
Vmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZp
ZXcuY3BwCkBAIC03MzUsNiArNzM1LDEyIEBAIHZvaWQgUGx1Z2luVmlldzo6ZnJhbWVSZWN0c0No
YW5nZWQoKQogICAgIHZpZXdHZW9tZXRyeURpZENoYW5nZSgpOwogfQogCit2b2lkIFBsdWdpblZp
ZXc6OmNsaXBSZWN0Q2hhbmdlZCgpCit7CisgICAgV2lkZ2V0OjpjbGlwUmVjdENoYW5nZWQoKTsK
KyAgICB2aWV3R2VvbWV0cnlEaWRDaGFuZ2UoKTsKK30KKwogdm9pZCBQbHVnaW5WaWV3OjpzZXRQ
YXJlbnQoU2Nyb2xsVmlldyogc2Nyb2xsVmlldykKIHsKICAgICBXaWRnZXQ6OnNldFBhcmVudChz
Y3JvbGxWaWV3KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW5WaWV3LmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2lu
Vmlldy5oCmluZGV4IGVlYzIzNmE3ZmE4ZDk0MjNkOWU2ZTUxNDI1OGVjMTc5MWViYTIzYTAuLjM4
NmRhODY5ZWZlMTE3NDQ1ZWUzY2E2ZGRmMzM4ZTkxODRhMzY4ZWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaApAQCAtMTYwLDYgKzE2MCw3IEBA
IHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHNob3coKTsKICAgICB2aXJ0dWFsIHZvaWQgaGlk
ZSgpOwogICAgIHZpcnR1YWwgYm9vbCB0cmFuc2Zvcm1zQWZmZWN0RnJhbWVSZWN0KCk7CisgICAg
dmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hhbmdlZCgpIE9WRVJSSURFOwogCiAgICAgLy8gV2ViQ29y
ZTo6TWVkaWFDYW5TdGFydExpc3RlbmVyCiAgICAgdmlydHVhbCB2b2lkIG1lZGlhQ2FuU3RhcnQo
KTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAx
ZjA4NTE2ODQ1ZDllZTQzOTc1YjBhZjI1N2VlZjg1YmZmZGRkMmMzLi44YTM2NGQzYjY3YjY4ODc2
ODI5MWYxMmI4MTFmYTQ2NjQzZGNiOTgyIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysr
IGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTMtMDItMjAgIEpvaG4gQmF1
bWFuICA8amJhdW1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGx1Z2luIGluIGlmcmFtZSBt
YXkgbm90IGRpc3BsYXkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwOTg3OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIExvZ05QUFNldFdpbmRvdyB3aWxsIGJlIHVzZWQgd2l0aCBvdGhlciBwb3J0cyBhcyB3
ZWxsLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaToKKyAg
ICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQ6
CisKIDIwMTMtMDEtMzEgIENocmlzdG9waGUgRHVtZXogIDxkY2hyaXNAZ21haWwuY29tPgogCiAg
ICAgICAgIFtFRkxdIERpc2FibGUgV2ViIEludGVudHMKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9EdW1w
UmVuZGVyVHJlZS5neXBpCmluZGV4IGU3ZTdhMjcyYzAxNGQzZmY2OTExZmRmZGM0NjJhMTU0MTBj
MDNiZDEuLmUzMzAzODRiMTYzNjMwYWVhNjIyODVhYmI3NzY1NGU2OWE4MWM0YmIgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKKysrIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQpAQCAtMTEyLDYgKzExMiw3IEBACiAg
ICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0dldFVSTFdpdGhKYXZhU2NyaXB0
VVJMLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0dldFVSTFdp
dGhKYXZhU2NyaXB0VVJMRGVzdHJveWluZ1BsdWdpbi5jcHAnLAogICAgICAgICAgICAgJ1Rlc3RO
ZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVc2VyQWdlbnRXaXRoTnVsbE5QUEZyb21OUFBOZXcuY3Bw
JywKKyAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvTG9nTlBQU2V0V2luZG93
LmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05QUE5ld0ZhaWxz
LmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05QUnVudGltZUNh
bGxzV2l0aE51bGxOUFAuY3BwJywKICAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQbHVnSW4vVGVz
dHMvTlBSdW50aW1lT2JqZWN0RnJvbURlc3Ryb3llZFBsdWdpbi5jcHAnLApkaWZmIC0tZ2l0IGEv
VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlzdHMudHh0IGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlzdHMudHh0Cmlu
ZGV4IGUzMzlhYjFiMTg3MDJhNWI3MDAxMDdkYjIyZTMxZGUxZmRjZDI5NDYuLmMxODBlMDliMjY1
YWJlMmE2YzBjYzlmNDAyM2UyMzQ2ZjRkMWE4NjAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5k
ZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dAorKysgYi9Ub29scy9EdW1w
UmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQKQEAgLTEzLDYgKzEz
LDcgQEAgc2V0KFdlYktpdFRlc3ROZXRzY2FwZVBsdWdpbl9TT1VSQ0VTCiAgICAgJHtXRUJLSVRf
VEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvR2V0VVJMV2l0aEphdmFTY3JpcHRVUkwuY3Bw
CiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvR2V0VVJMV2l0aEph
dmFTY3JpcHRVUkxEZXN0cm95aW5nUGx1Z2luLmNwcAogICAgICR7V0VCS0lUX1RFU1RORVRTQ0FQ
RVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVzZXJBZ2VudFdpdGhOdWxsTlBQRnJvbU5QUE5ldy5jcHAK
KyAgICAke1dFQktJVF9URVNUTkVUU0NBUEVQTFVHSU5fRElSfS9UZXN0cy9Mb2dOUFBTZXRXaW5k
b3cuY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvTlBEZWFs
bG9jYXRlQ2FsbGVkQmVmb3JlTlBTaHV0ZG93bi5jcHAKICAgICAke1dFQktJVF9URVNUTkVUU0NB
UEVQTFVHSU5fRElSfS9UZXN0cy9OUFBOZXdGYWlscy5jcHAKICAgICAke1dFQktJVF9URVNUTkVU
U0NBUEVQTFVHSU5fRElSfS9UZXN0cy9OUFBTZXRXaW5kb3dDYWxsZWREdXJpbmdEZXN0cnVjdGlv
bi5jcHAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCBkZDgzYTE2MjgwZWJmYmNlMDI1NDU0ZjdiNmQxZDU3NjlkYmE3MzNhLi5m
NDExZTQwYWE1YWYwYmVkNzkxMjc5NWE2Mzc2MDg5MzA5MDliOTRkIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTYgQEAKKzIwMTMtMDItMjAgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgUGx1Z2luIGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBsb2ctbnBwLXNldC13aW5kb3cg
dG8gZW5zdXJlIGNsaXAgY2hhbmdlcy4KKworICAgICAgICAqIHBsdWdpbnMvcGx1Z2luLWNsaXAt
c3ViZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3BsdWdpbi1j
bGlwLXN1YmZyYW1lLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvcmVzb3VyY2VzL3Bs
dWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sOiBBZGRlZC4KKwogMjAxMy0wMS0zMSAgRmxv
cmluIE1hbGl0YSAgPGZtYWxpdGFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtDaHJvbWl1bV0g
VW5yZXZpZXdlZCBnYXJkZW5pbmcuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3Bs
dWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1
Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNiYTY5NWViOWIyYjQ1
MzA0NTBmMjA0NzlhZWZhNWI1OWIyMjc5ODgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMg
QEAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBub24tTlVMTCB3aW5k
b3csIFJlY3QgezE4LCAyMTgsIDMwMCwgMTUwfSwgQ2xpcCBSZWN0IHs2NTUxOCwgNjUzMTgsIDY1
NTE4LCA2NTMxOH0sIFR5cGUgMQorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5k
b3c6IG5vbi1OVUxMIHdpbmRvdywgUmVjdCB7MTgsIDIxOCwgMzAwLCAxNTB9LCBDbGlwIFJlY3Qg
ezAsIDAsIDkwLCAxNTB9LCBUeXBlIDEKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGx1Z2lu
cy9wbHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4t
Y2xpcC1zdWJmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY1YWQ0OWJiNjkwZGQwODU4NTNmNTc5Njc4
YzI3NWU5YjhmMzBiZDUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3Bs
dWdpbi1jbGlwLXN1YmZyYW1lLmh0bWwKQEAgLTAsMCArMSwyOSBAQAorPCFkb2N0eXBlIGh0bWw+
Cis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiB0ZXN0KCkgeworICAgIC8vIEluY3JlYXNlIHRo
ZSBzaXplIG9mIHRoZSBjb250YWluZXIgc28gdGhlIGlmcmFtZSBiZWNvbWVzIHZpc2libGUuCisg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbnRhaW5lciIpLnN0eWxlLmhlaWdodCA9ICI0
MDBweCI7CisgICAgc2V0VGltZW91dChkb25lLCAxMCk7Cit9CisKK2Z1bmN0aW9uIGRvbmUoKSB7
CisgICAgaWYgKHRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7
CisgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0KK30KKworZnVuY3Rpb24g
cnVuVGVzdCgpIHsKKyAgICBpZiAodGVzdFJ1bm5lcikKKyAgICAgICAgdGVzdFJ1bm5lci53YWl0
VW50aWxEb25lKCk7CisgICAgc2V0VGltZW91dCh0ZXN0LCAxMCk7Cit9Cis8L3NjcmlwdD4KKzxi
b2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKworPGRpdiBpZCA9ICJjb250YWluZXIiIHN0eWxlPSJv
dmVyZmxvdzogaGlkZGVuOyB3aWR0aDoxMDBweDsgaGVpZ2h0OjEwMHB4Ij4KKzxpZnJhbWUgaWQ9
J3N1YmZyYW1lJyBzcmM9J3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRt
bCcgd2lkdGg9NTAwIGhlaWdodD01MDAgc3R5bGU9Im1hcmdpbi10b3A6MjAwcHgiPjwvaWZyYW1l
PgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVn
aW5zL3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRtbCBiL0xheW91dFRl
c3RzL3BsdWdpbnMvcmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjkyYmNiOTE2NGVmYTQ2MTk1YjMxMTQ3ZWU0NjA5ZDEzYjg5MTgyMTgKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3Jlc291cmNlcy9wbHVnaW4tY2xpcC1z
dWJmcmFtZS1pZnJhbWUuaHRtbApAQCAtMCwwICsxLDcgQEAKKzxzY3JpcHQ+CitmdW5jdGlvbiB3
aW5kb3dXYXNTZXQobXNnKSB7CisgICAgY29uc29sZS5sb2cobXNnKTsKK30KKzwvc2NyaXB0Pgor
Cis8ZW1iZWQgaWQ9InRlc3RDUGx1Z2luIiB0eXBlPSJhcHBsaWNhdGlvbi94LXdlYmtpdC10ZXN0
LW5ldHNjYXBlIiB0ZXN0PSJsb2ctbnBwLXNldC13aW5kb3ciPjwvZW1iZWQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190209</attachid>
            <date>2013-02-25 22:46:43 -0800</date>
            <delta_ts>2013-02-27 13:08:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130225224258.patch</filename>
            <type>text/plain</type>
            <size>18678</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyNDI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2QwOGRkNmM3OWUyOTYw
ZDBjMWQyYzdkMjM2OGZlNzRiMmViMGM4Mi4uOGYwNDVjNTcxNzI0M2E3ODQ4MjVmZjI1MjdiYTlh
MzUzMWE0ODBkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTAyLTI1ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBjbGlwcmVjdCBoYXMgY2hhbmdlZCBhZnRlciBkb2luZyBsYXlv
dXQgb24gdGhlCisgICAgICAgIG91dGVyIGZyYW1lLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpjbGlwUmVjdENoYW5nZWQpOgor
ICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRn
ZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luVmll
dzo6Y2xpcFJlY3RDaGFuZ2VkKToKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblZpZXcuaDoKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlcldpZGdldDo6c2V0V2lkZ2V0R2VvbWV0cnkpOgorCiAyMDEzLTAyLTA2ICBLZW50YXJvIEhh
cmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbVjhdIFJlbmFtZSBpc29sYXRl
ZCgpIHRvIGdldFdvcmxkKCksIHJlbmFtZSB3b3JsZEZvckVudGVyZWRDb250ZXh0SWZJc29sYXRl
ZCgpIHRvIHdvcmxkRm9yRW50ZXJlZENvbnRleHQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpp
bmRleCAzNWEwYTdkZjQwYjM0MjNhNDQ3ZmU4MDdkMzgyZmUxNTU4NGFmOTQ5Li5hZTY4MzI0NmYx
ZGNiN2I3NTcwYzkzMDFkZDBmYjRhZmE4NjMwYjNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE2IEBACisyMDEzLTAyLTI1ICBKb2huIEJhdW1hbiAgPGpiYXVtYW5AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJhbWUgbWF5IG5vdCBkaXNwbGF5Cisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NzkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgY2xpcFJl
Y3RDaGFuZ2VkIHRvIHVwZGF0ZSB0aGUgZ2VvbWV0cnkuCisKKyAgICAgICAgKiBzcmMvV2ViUGx1
Z2luQ29udGFpbmVySW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBsdWdpbkNvbnRhaW5l
ckltcGw6OmNsaXBSZWN0Q2hhbmdlZCk6CisgICAgICAgICogc3JjL1dlYlBsdWdpbkNvbnRhaW5l
ckltcGwuaDoKKwogMjAxMy0wMi0xMCAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gRW5hYmxlIG1vcmUgb2Ygd2Via2l0X3VuaXRfdGVz
dHMgaW4gY29tcG9uZW50IGJ1aWxkcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDM4OTlmZjNkMWY1OWMz
OGY0OTRhMmMzMzk5NmM5ODJmMzdiZWM5YjIuLjM2MTMyODRmYjcwNzM4ZDAxYTJmMWZlZjMwNmNl
MGIwYjRmMTMwYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wMi0y
NSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBQbHVnaW4g
aW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRW5zdXJlIE5ldHNjYXBlUGx1Z2luV2lkZ2V0IGluZm9ybXMgdGhl
IHBsdWdpbiB2aWV3IG9mIHRoZSBjbGlwcmVjdCBjaGFuZ2UgZGlyZWN0bHkuCisKKyAgICAgICAg
KiBQbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcuaDoKKyAgICAgICAgKiBXZWJDb3Jl
U3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKE5ldHNjYXBlUGx1Z2lu
V2lkZ2V0OjpjbGlwUmVjdENoYW5nZWQpOgorCiAyMDEzLTAyLTEwICBEYW4gQmVybnN0ZWluICA8
bWl0ekBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkZWQgKi5wZGYgdG8gRVhDTFVERURfU09VUkNF
X0ZJTEVfTkFNRVNfaXBob25lb3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNTNkY2YwYzRhYzJlMGIxOWY3YzA1
ODU2N2VjM2I0OTNjMzNkN2NhNi4uNDlmNDI3M2QzMDc1OGVmODBkZDc4YjgzMDk3NGQzYWY0YTg3
YmJmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEzLTAyLTI1ICBKb2huIEJhdW1h
biAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJhbWUgbWF5
IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBVcGRhdGUgZ2VvbWV0cnkgd2hlbiBjbGlwcmVjdCBjaGFuZ2VzLgorCisgICAgICAgICog
V2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVn
aW5WaWV3OjpjbGlwUmVjdENoYW5nZWQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9Q
bHVnaW5WaWV3Lmg6CisKIDIwMTMtMDItMTAgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgYmFjayBjb2RlIHRoYXQgd2FzIGFjY2lkZW50YWxseSBy
ZW1vdmVkIHdoZW4gbW92aW5nIHBsdWctaW4gZW51bWVyYXRpb24gYmFjayB0byB0aGUgbWFpbiB0
aHJlYWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAKaW5kZXggMWY4YmRiM2M0
ODQ3NWU0M2QzNDE4NWVmZTdmNmE2OThlNzdiNTQ4MS4uNTAzOGI1NmY0MDRkYTZlMTRlNTEzN2Iz
YWY1YThiNWY3MzkxZTI4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAK
QEAgLTg4Nyw2ICs4ODcsMTMgQEAgdm9pZCBTY3JvbGxWaWV3OjpmcmFtZVJlY3RzQ2hhbmdlZCgp
CiAgICAgICAgICgqY3VycmVudCktPmZyYW1lUmVjdHNDaGFuZ2VkKCk7CiB9CiAKK3ZvaWQgU2Ny
b2xsVmlldzo6Y2xpcFJlY3RDaGFuZ2VkKCkKK3sKKyAgICBIYXNoU2V0PFJlZlB0cjxXaWRnZXQ+
ID46OmNvbnN0X2l0ZXJhdG9yIGVuZCA9IG1fY2hpbGRyZW4uZW5kKCk7CisgICAgZm9yIChIYXNo
U2V0PFJlZlB0cjxXaWRnZXQ+ID46OmNvbnN0X2l0ZXJhdG9yIGN1cnJlbnQgPSBtX2NoaWxkcmVu
LmJlZ2luKCk7IGN1cnJlbnQgIT0gZW5kOyArK2N1cnJlbnQpCisgICAgICAgICgqY3VycmVudCkt
PmNsaXBSZWN0Q2hhbmdlZCgpOworfQorCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5H
KQogc3RhdGljIHZvaWQgcG9zaXRpb25TY3JvbGxiYXJMYXllcihHcmFwaGljc0xheWVyKiBncmFw
aGljc0xheWVyLCBTY3JvbGxiYXIqIHNjcm9sbGJhcikKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Nj
cm9sbFZpZXcuaAppbmRleCBmZTdiMDEwMTE1Mjg3MWMwMjFlZWZkMTUxYjk4NjE5YjZkY2Y5MDdl
Li5mMGQyMDllOGY5Nzc0ZDRiYjgwYTJjMjQwMjdjYTFhYmZlYmYwMjg0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsVmlldy5oCkBAIC0yNDMsNiArMjQzLDkgQEAgcHVibGljOgogICAgIC8v
IFdpZGdldCBvdmVycmlkZSB0byB1cGRhdGUgb3VyIHNjcm9sbGJhcnMgYW5kIG5vdGlmeSBvdXIg
Y29udGVudHMgb2YgdGhlIHJlc2l6ZS4KICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJhbWVSZWN0KGNv
bnN0IEludFJlY3QmKTsKIAorICAgIC8vIFdpZGdldCBvdmVycmlkZSB0byBub3RpZnkgb3VyIGNv
bnRlbnRzIG9mIGEgY2xpcHJlY3QgY2hhbmdlLgorICAgIHZpcnR1YWwgdm9pZCBjbGlwUmVjdENo
YW5nZWQoKSBPVkVSUklERTsKKwogICAgIC8vIEZvciBwbGF0Zm9ybXMgdGhhdCBuZWVkIHRvIGhp
dCB0ZXN0IHNjcm9sbGJhcnMgZnJvbSB3aXRoaW4gdGhlIGVuZ2luZSdzIGV2ZW50IGhhbmRsZXJz
IChsaWtlIFdpbjMyKS4KICAgICBTY3JvbGxiYXIqIHNjcm9sbGJhckF0UG9pbnQoY29uc3QgSW50
UG9pbnQmIHdpbmRvd1BvaW50KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vV2lkZ2V0LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaAppbmRleCBjMmM3
YzZkYzk3YjJhYWEyZWEyMmE5NzExYjhiNjliNzcxNTVjNTljLi41MTU0MjFlMGFjMjIyYWIyNTNh
ZmNkOTlhNDk1NjE5YTYzODBhNjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9XaWRnZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9XaWRnZXQuaApAQCAtMjEw
LDYgKzIxMCw5IEBAIHB1YmxpYzoKICAgICAvLyBOb3RpZmllcyB0aGlzIHdpZGdldCB0aGF0IG90
aGVyIHdpZGdldHMgb24gdGhlIHBhZ2UgaGF2ZSBiZWVuIHJlcG9zaXRpb25lZC4KICAgICB2aXJ0
dWFsIHZvaWQgd2lkZ2V0UG9zaXRpb25zVXBkYXRlZCgpIHt9CiAKKyAgICAvLyBOb3RpZmllcyB0
aGlzIHdpZGdldCB0aGF0IGl0cyBjbGlwIHJlY3QgY2hhbmdlZC4KKyAgICB2aXJ0dWFsIHZvaWQg
Y2xpcFJlY3RDaGFuZ2VkKCkgeyB9CisKICAgICAvLyBXaGV0aGVyIHRyYW5zZm9ybXMgYWZmZWN0
IHRoZSBmcmFtZSByZWN0LiBGSVhNRTogV2UgZ2V0IHJpZCBvZiB0aGlzIGFuZCBoYXZlCiAgICAg
Ly8gdGhlIGZyYW1lIHJlY3RzIGJlIHRoZSBzYW1lIG5vIG1hdHRlciB3aGF0IHRyYW5zZm9ybXMg
YXJlIGFwcGxpZWQuCiAgICAgdmlydHVhbCBib29sIHRyYW5zZm9ybXNBZmZlY3RGcmFtZVJlY3Qo
KSB7IHJldHVybiB0cnVlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1Bs
dWdpblZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcAppbmRl
eCA3ZDkyYmVjNzk3MzhkZmIzY2RhZDY5Y2U1YmFlYzNiMmY3ODJmNDJkLi5hZjA1NzZmMGU5MGEw
YTMxZWZiZjc1OWY2MTIwMWVmNDIxZTQxNTc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2lu
Vmlldy5jcHAKQEAgLTE1OCw2ICsxNTgsMTEgQEAgdm9pZCBQbHVnaW5WaWV3OjpmcmFtZVJlY3Rz
Q2hhbmdlZCgpCiAgICAgdXBkYXRlUGx1Z2luV2lkZ2V0KCk7CiB9CiAKK3ZvaWQgUGx1Z2luVmll
dzo6Y2xpcFJlY3RDaGFuZ2VkKCkKK3sKKyAgICB1cGRhdGVQbHVnaW5XaWRnZXQoKTsKK30KKwog
dm9pZCBQbHVnaW5WaWV3OjpoYW5kbGVFdmVudChFdmVudCogZXZlbnQpCiB7CiAgICAgaWYgKCFt
X3BsdWdpbiB8fCBtX2lzV2luZG93ZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVn
aW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5oCmlu
ZGV4IDg0ZTYyZDhhZTM4ZmMyMjBkZTM4YWFiMmVlMmIzZjFjMzM0ZWJiYjkuLmIzMzM0ODA3ZDUw
OTE3ZDIxYzM1NTczNzQyMmRlZTFiNDg3N2ZkYjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsdWdpbnMvUGx1Z2luVmlldy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2lu
Vmlldy5oCkBAIC0yMTAsNiArMjEwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2
aXJ0dWFsIHZvaWQgc2hvdygpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgaGlkZSgpOwogICAgICAg
ICB2aXJ0dWFsIHZvaWQgcGFpbnQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpOwor
ICAgICAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZFUlJJREU7CiAKICAgICAg
ICAgLy8gVGhpcyBtZXRob2QgaXMgdXNlZCBieSBwbHVnaW5zIG9uIGFsbCBwbGF0Zm9ybXMgdG8g
b2J0YWluIGEgY2xpcCByZWN0IHRoYXQgaW5jbHVkZXMgY2xpcHMgc2V0IGJ5IFdlYkNvcmUsCiAg
ICAgICAgIC8vIGUuZy4sIGluIG92ZXJmbG93OmF1dG8gc2VjdGlvbnMuICBUaGUgY2xpcCByZWN0
cyBjb29yZGluYXRlcyBhcmUgaW4gdGhlIGNvbnRhaW5pbmcgd2luZG93J3MgY29vcmRpbmF0ZSBz
cGFjZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKaW5kZXggMDlk
NTQ0MWZjZWEzNjMzZTMwOTViZGFiOWUyNGQxZTg1MDAwZGMwYi4uNWY1MjY1YzU3NmEzOWNhOTQ4
OTYxYzc0ZGI5YzE4YzM0YWRjN2IyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlcldpZGdldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
cldpZGdldC5jcHAKQEAgLTE1NCw2ICsxNTQsOSBAQCBib29sIFJlbmRlcldpZGdldDo6c2V0V2lk
Z2V0R2VvbWV0cnkoY29uc3QgTGF5b3V0UmVjdCYgZnJhbWUpCiAgICAgUmVuZGVyV2lkZ2V0UHJv
dGVjdG9yIHByb3RlY3Rvcih0aGlzKTsKICAgICBSZWZQdHI8Tm9kZT4gcHJvdGVjdGVkTm9kZShu
b2RlKCkpOwogICAgIG1fd2lkZ2V0LT5zZXRGcmFtZVJlY3Qocm91bmRlZEludFJlY3QoZnJhbWUp
KTsKKworICAgIGlmIChjbGlwQ2hhbmdlZCAmJiAhYm91bmRzQ2hhbmdlZCkKKyAgICAgICAgbV93
aWRnZXQtPmNsaXBSZWN0Q2hhbmdlZCgpOwogICAgIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01Q
T1NJVElORykKICAgICBpZiAoaGFzTGF5ZXIoKSAmJiBsYXllcigpLT5pc0NvbXBvc2l0ZWQoKSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5l
ckltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVy
SW1wbC5jcHAKaW5kZXggYmFkM2Y4MTFjMDA3OWJiOTk1MDg3NDA0MzExMjE4MWUzNWM3MzlkMy4u
YzYyOGY2MGE1NTIwNjNiZmJlNjIzM2Y1M2RkZGIzMTkwMTFhMDVmMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2luQ29udGFpbmVySW1wbC5jcHAKQEAg
LTIyMiw2ICsyMjIsMTIgQEAgdm9pZCBXZWJQbHVnaW5Db250YWluZXJJbXBsOjp3aWRnZXRQb3Np
dGlvbnNVcGRhdGVkKCkKICAgICByZXBvcnRHZW9tZXRyeSgpOwogfQogCit2b2lkIFdlYlBsdWdp
bkNvbnRhaW5lckltcGw6OmNsaXBSZWN0Q2hhbmdlZCgpCit7CisgICAgV2lkZ2V0OjpjbGlwUmVj
dENoYW5nZWQoKTsKKyAgICByZXBvcnRHZW9tZXRyeSgpOworfQorCiB2b2lkIFdlYlBsdWdpbkNv
bnRhaW5lckltcGw6OnNldFBhcmVudFZpc2libGUoYm9vbCBwYXJlbnRWaXNpYmxlKQogewogICAg
IC8vIFdlIG92ZXJyaWRlIHRoaXMgZnVuY3Rpb24gdG8gbWFrZSBzdXJlIHRoYXQgZ2VvbWV0cnkg
dXBkYXRlcyBhcmUgc2VudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViUGx1Z2luQ29udGFpbmVySW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
UGx1Z2luQ29udGFpbmVySW1wbC5oCmluZGV4IGJiMmY0ZWFjNWI3NTg3YjcyMTI0OGNmNTEwYmU5
MjhjNmMyYjlmNjMuLjE5ZDM5N2QyNDdhYWQyZGU4MDM5Mzg5NDkyNWJhNmNkMDYzYjcxNWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lcklt
cGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJ
bXBsLmgKQEAgLTkyLDYgKzkyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJl
bnRWaXNpYmxlKGJvb2wpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRQYXJlbnQoV2ViQ29yZTo6U2Ny
b2xsVmlldyopOwogICAgIHZpcnR1YWwgdm9pZCB3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCk7Cisg
ICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hhbmdlZCgpIE9WRVJSSURFOwogICAgIHZpcnR1YWwg
Ym9vbCBpc1BsdWdpbkNvbnRhaW5lcigpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIAogICAgIC8v
IFdlYlBsdWdpbkNvbnRhaW5lciBtZXRob2RzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21h
Yy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQvbWFj
L1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5oCmluZGV4IDRiNGQ2ZGNhY2U2ZTk0
ZWMwMTA0YWNjY2NjNTlmMWYzMDEwNTZiYjguLjliOTMzZjQxOTMzYThkM2JjY2ZiZTNmNjNmNThh
NTVlYWY3ZjZjNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFz
ZU5ldHNjYXBlUGx1Z2luVmlldy5oCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2Vi
QmFzZU5ldHNjYXBlUGx1Z2luVmlldy5oCkBAIC05OSw2ICs5OSw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIC0gKHZvaWQpaGFuZGxlTW91c2VFeGl0ZWQ6KE5TRXZlbnQgKilldmVudDsKIC0gKHZv
aWQpc2V0QXR0cmlidXRlS2V5czooTlNBcnJheSAqKWtleXMgYW5kVmFsdWVzOihOU0FycmF5ICop
dmFsdWVzOwogLSAodm9pZClmb2N1c0NoYW5nZWQ7CistICh2b2lkKXVwZGF0ZUFuZFNldFdpbmRv
dzsKIAogLSAoV2ViRnJhbWUgKil3ZWJGcmFtZTsKIC0gKFdlYkRhdGFTb3VyY2UgKilkYXRhU291
cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJG
cmFtZUxvYWRlckNsaWVudC5tbQppbmRleCBhMDc2M2FiNTc4OGIwYjU5MmFlOGI1ZTdkN2M5YzQ4
NjRjZDNlODhiLi43ZDczMTM1NzQ2ZWFmYzgwMDgxYjlkZDlkOWRiNTAwMjhmOWFiYTZiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5tbQpAQCAtMTU4Myw2ICsxNTgzLDEyIEBAIHB1YmxpYzoKICAgICAgICAgICAg
IGV2ZW50LT5zZXREZWZhdWx0SGFuZGxlZCgpOyAvLyBXZSBkb24ndCBrbm93IGlmIHRoZSBwbHVn
LWluIGhhcyBoYW5kbGVkIG1vdXNlZG93biBldmVudCBieSBkaXNwbGF5aW5nIGEgY29udGV4dCBt
ZW51LCBzbyB3ZSBuZXZlciB3YW50IFdlYktpdCB0byBzaG93IGEgZGVmYXVsdCBvbmUuCiAgICAg
fQogCisgICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hhbmdlZCgpCisgICAgeworICAgICAgICAv
LyBDaGFuZ2luZyB0aGUgY2xpcCByZWN0IGRvZXNuJ3QgYWZmZWN0IHRoZSB2aWV3IGhpZXJhcmNo
eSwgc28gdGhlIHBsdWdpbiBtdXN0IGJlIHRvbGQgYWJvdXQgdGhlIGNoYW5nZSBkaXJlY3RseS4K
KyAgICAgICAgWyhXZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3ICopcGxhdGZvcm1XaWRnZXQoKSB1
cGRhdGVBbmRTZXRXaW5kb3ddOworICAgIH0KKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQg
bm90aWZ5V2lkZ2V0KFdpZGdldE5vdGlmaWNhdGlvbiBub3RpZmljYXRpb24pCiAgICAgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3Bw
IGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCmluZGV4
IDYxYmI3YmZlMmRhYjM3YzQwNmUxOTA2N2ZhZTBiMzAxODEwYTVkZWIuLjdhNDk1YjA4MDgxOWQ2
OWI4MzdlZGYyMjdiZWE2ZDc0NmM5YjhiMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTczNSw2ICs3MzUsMTIgQEAgdm9pZCBQ
bHVnaW5WaWV3OjpmcmFtZVJlY3RzQ2hhbmdlZCgpCiAgICAgdmlld0dlb21ldHJ5RGlkQ2hhbmdl
KCk7CiB9CiAKK3ZvaWQgUGx1Z2luVmlldzo6Y2xpcFJlY3RDaGFuZ2VkKCkKK3sKKyAgICBXaWRn
ZXQ6OmNsaXBSZWN0Q2hhbmdlZCgpOworICAgIHZpZXdHZW9tZXRyeURpZENoYW5nZSgpOworfQor
CiB2b2lkIFBsdWdpblZpZXc6OnNldFBhcmVudChTY3JvbGxWaWV3KiBzY3JvbGxWaWV3KQogewog
ICAgIFdpZGdldDo6c2V0UGFyZW50KHNjcm9sbFZpZXcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5kZXggZWVjMjM2YTdmYThkOTQyM2Q5ZTZl
NTE0MjU4ZWMxNzkxZWJhMjNhMC4uMzg2ZGE4NjllZmUxMTc0NDVlZTNjYTZkZGYzMzhlOTE4NGEz
NjhlZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdp
blZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5oCkBAIC0xNjAsNiArMTYwLDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgc2hvdygp
OwogICAgIHZpcnR1YWwgdm9pZCBoaWRlKCk7CiAgICAgdmlydHVhbCBib29sIHRyYW5zZm9ybXNB
ZmZlY3RGcmFtZVJlY3QoKTsKKyAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZF
UlJJREU7CiAKICAgICAvLyBXZWJDb3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIKICAgICB2aXJ0
dWFsIHZvaWQgbWVkaWFDYW5TdGFydCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIv
VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDc3MGUyOWZjYTk0M2EyOWQwNTY4NWE0ZjY2YTdmMTA4Mjg0
YjMyYzIuLjkwYmM4ZjA3Yzg0NWI5YWE1YzU2ZTljYTgxY2U2NDRmMzExZjdkNDEgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAxMy0wMi0yNSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTG9nTlBQU2V0V2luZG93IHdpbGwgYmUgdXNl
ZCB3aXRoIG90aGVyIHBvcnRzIGFzIHdlbGwuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9E
dW1wUmVuZGVyVHJlZS5neXBpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2Fw
ZVBsdWdJbi9DTWFrZUxpc3RzLnR4dDoKKwogMjAxMy0wMi0xMCAgVGltIEhvcnRvbiAgPHRpbW90
aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIGF0dGVtcHRlZCBidWls
ZCBmaXggZm9yIEd0ayBhZnRlciByMTQyNDEyCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVy
VHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRl
clRyZWUuZ3lwaQppbmRleCBhYWRiY2M5MzMxMmUwMjg0MmQ2NzI0MGU5NmYzNzE4ZDEyZjdmMDdj
Li5lYjk2MDJlOTdlYjQ4YWZmNDRhYjBmYWRmYzRkZWNiZDMxZjhhMDcxIDEwMDY0NAotLS0gYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpCisrKyBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKQEAgLTExMiw2ICsxMTIsNyBAQAogICAgICAg
ICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2YVNjcmlwdFVSTC5j
cHAnLAogICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVUkxXaXRoSmF2
YVNjcmlwdFVSTERlc3Ryb3lpbmdQbHVnaW4uY3BwJywKICAgICAgICAgICAgICdUZXN0TmV0c2Nh
cGVQbHVnSW4vVGVzdHMvR2V0VXNlckFnZW50V2l0aE51bGxOUFBGcm9tTlBQTmV3LmNwcCcsCisg
ICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0xvZ05QUFNldFdpbmRvdy5jcHAn
LAogICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFBOZXdGYWlscy5jcHAn
LAogICAgICAgICAgICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9OUFJ1bnRpbWVDYWxsc1dp
dGhOdWxsTlBQLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05Q
UnVudGltZU9iamVjdEZyb21EZXN0cm95ZWRQbHVnaW4uY3BwJywKZGlmZiAtLWdpdCBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dCBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dAppbmRleCBl
MzM5YWIxYjE4NzAyYTViNzAwMTA3ZGIyMmUzMWRlMWZkY2QyOTQ2Li5jMTgwZTA5YjI2NWFiZTJh
NmMwY2M5ZjQwMjNlMjM0NmY0ZDFhODYwIDEwMDY0NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9UZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQKKysrIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlzdHMudHh0CkBAIC0xMyw2ICsxMyw3IEBA
IHNldChXZWJLaXRUZXN0TmV0c2NhcGVQbHVnaW5fU09VUkNFUwogICAgICR7V0VCS0lUX1RFU1RO
RVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVSTFdpdGhKYXZhU2NyaXB0VVJMLmNwcAogICAg
ICR7V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVSTFdpdGhKYXZhU2Ny
aXB0VVJMRGVzdHJveWluZ1BsdWdpbi5jcHAKICAgICAke1dFQktJVF9URVNUTkVUU0NBUEVQTFVH
SU5fRElSfS9UZXN0cy9HZXRVc2VyQWdlbnRXaXRoTnVsbE5QUEZyb21OUFBOZXcuY3BwCisgICAg
JHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvTG9nTlBQU2V0V2luZG93LmNw
cAogICAgICR7V0VCS0lUX1RFU1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL05QRGVhbGxvY2F0
ZUNhbGxlZEJlZm9yZU5QU2h1dGRvd24uY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExV
R0lOX0RJUn0vVGVzdHMvTlBQTmV3RmFpbHMuY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBF
UExVR0lOX0RJUn0vVGVzdHMvTlBQU2V0V2luZG93Q2FsbGVkRHVyaW5nRGVzdHJ1Y3Rpb24uY3Bw
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggZTY0OWFiYjhkYTAxNGU3NTQxN2ViMjU3ZjZhOTY5M2IzODA1NTVkMi4uYWQzNDM2
ZTBlNzg5YTQ3NjgzOWVjN2M4NjY0MWFjNmU5MDJkZjE4MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBA
CisyMDEzLTAyLTI1ICBKb2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFBsdWdpbiBpbiBpZnJhbWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgbG9nLW5wcC1zZXQtd2luZG93IHRvIGVu
c3VyZSBwbHVnaW4gY2xpcCBjaGFuZ2VzIGNvcnJlY3RseS4KKworICAgICAgICAqIHBsYXRmb3Jt
L21hYy13azIvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHBsYXRmb3JtL21hYy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFt
ZS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvcGx1Z2luLWNsaXAtc3Vi
ZnJhbWUuaHRtbDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNs
aXAtc3ViZnJhbWUtaWZyYW1lLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAyLTEwICBLZW50YXJvIEhh
cmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkIGdhcmRlbmlu
Zy4gUmViYXNlbGluZWQgYW4gaW1hZ2UuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iNGVhMGU1MDgzNTQ5N2E2OWYyZDQ5NjRlZjhlNWY1ZmFh
OTBjY2QwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9w
bHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDQgQEAK
K0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBOVUxMIHdpbmRvdywgUmVj
dCB7MCwgMCwgMzAwLCAxNTB9LCBDbGlwIFJlY3QgezAsIDAsIDAsIDB9LCBUeXBlIDIKK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBOVUxMIHdpbmRvdywgUmVjdCB7MCwg
MCwgMzAwLCAxNTB9LCBDbGlwIFJlY3QgezAsIDAsIDAsIDB9LCBUeXBlIDIKK0NPTlNPTEUgTUVT
U0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBOVUxMIHdpbmRvdywgUmVjdCB7MCwgMCwgMzAw
LCAxNTB9LCBDbGlwIFJlY3QgezAsIDAsIDMwMCwgMTUwfSwgVHlwZSAyCisKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9wbHVnaW5zL3BsdWdpbi1jbGlw
LXN1YmZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mNzk1MDBjZWQxNDQ4Y2E4ZmNiMDEx
ZDA4ZmZjYWU5M2IwYjJiOTAyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAg
KzEsMyBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5kb3c6IE5VTEwgd2lu
ZG93LCBSZWN0IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgNjAwLCAwLCA2MDB9
LCBUeXBlIDAKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0V2luZG93OiBOVUxMIHdp
bmRvdywgUmVjdCB7MTgsIDIxOCwgMzAwLCAxNTB9LCBDbGlwIFJlY3QgezE4LCAyMTgsIDEwOCwg
MzY4fSwgVHlwZSAwCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNs
aXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xp
cC1zdWJmcmFtZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2JhNjk1ZWI5YjJiNDUzMDQ1MGYy
MDQ3OWFlZmE1YjU5YjIyNzk4OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsdWdp
bnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5kb3c6IG5vbi1OVUxMIHdpbmRvdywgUmVj
dCB7MTgsIDIxOCwgMzAwLCAxNTB9LCBDbGlwIFJlY3QgezY1NTE4LCA2NTMxOCwgNjU1MTgsIDY1
MzE4fSwgVHlwZSAxCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzogTlBQX1NldFdpbmRvdzogbm9u
LU5VTEwgd2luZG93LCBSZWN0IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgMCwg
OTAsIDE1MH0sIFR5cGUgMQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdp
bi1jbGlwLXN1YmZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1
YmZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjVhZDQ5YmI2OTBkZDA4NTg1M2Y1Nzk2NzhjMjc1ZTli
OGYzMGJkNQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1Z2luLWNs
aXAtc3ViZnJhbWUuaHRtbApAQCAtMCwwICsxLDI5IEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1s
PgorPHNjcmlwdD4KK2Z1bmN0aW9uIHRlc3QoKSB7CisgICAgLy8gSW5jcmVhc2UgdGhlIHNpemUg
b2YgdGhlIGNvbnRhaW5lciBzbyB0aGUgaWZyYW1lIGJlY29tZXMgdmlzaWJsZS4KKyAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGFpbmVyIikuc3R5bGUuaGVpZ2h0ID0gIjQwMHB4IjsK
KyAgICBzZXRUaW1lb3V0KGRvbmUsIDEwKTsKK30KKworZnVuY3Rpb24gZG9uZSgpIHsKKyAgICBp
ZiAodGVzdFJ1bm5lcikgeworICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAg
ICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgfQorfQorCitmdW5jdGlvbiBydW5UZXN0
KCkgeworICAgIGlmICh0ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERv
bmUoKTsKKyAgICBzZXRUaW1lb3V0KHRlc3QsIDEwKTsKK30KKzwvc2NyaXB0PgorPGJvZHkgb25s
b2FkPSJydW5UZXN0KCkiPgorCis8ZGl2IGlkID0gImNvbnRhaW5lciIgc3R5bGU9Im92ZXJmbG93
OiBoaWRkZW47IHdpZHRoOjEwMHB4OyBoZWlnaHQ6MTAwcHgiPgorPGlmcmFtZSBpZD0nc3ViZnJh
bWUnIHNyYz0ncmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sJyB3aWR0
aD01MDAgaGVpZ2h0PTUwMCBzdHlsZT0ibWFyZ2luLXRvcDoyMDBweCI+PC9pZnJhbWU+Cis8L2Rp
dj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsdWdpbnMvcmVz
b3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWlmcmFtZS5odG1sIGIvTGF5b3V0VGVzdHMvcGx1
Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uOTJiY2I5MTY0ZWZhNDYxOTViMzExNDdlZTQ2MDlkMTNiODkxODIxOAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL3BsdWdpbi1jbGlwLXN1YmZyYW1l
LWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsNyBAQAorPHNjcmlwdD4KK2Z1bmN0aW9uIHdpbmRvd1dh
c1NldChtc2cpIHsKKyAgICBjb25zb2xlLmxvZyhtc2cpOworfQorPC9zY3JpcHQ+CisKKzxlbWJl
ZCBpZD0idGVzdENQbHVnaW4iIHR5cGU9ImFwcGxpY2F0aW9uL3gtd2Via2l0LXRlc3QtbmV0c2Nh
cGUiIHRlc3Q9ImxvZy1ucHAtc2V0LXdpbmRvdyI+PC9lbWJlZD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190583</attachid>
            <date>2013-02-27 13:08:51 -0800</date>
            <delta_ts>2013-02-27 14:07:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109879-20130227130504.patch</filename>
            <type>text/plain</type>
            <size>18461</size>
            <attacher name="John Bauman">jbauman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0MjE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzRmN2RjOGFlNTI0YWQ2
MzFlZmMxMjE1NGFkMmRlZjNkYTA4ODgzYy4uOGRkZTVmMzkwYWE1MWEyMGJiMTk0ODBiMGQ0YWQz
ZjQxNzAyMTI4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTAyLTI1ICBKb2hu
IEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJh
bWUgbWF5IG5vdCBkaXNwbGF5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDk4NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDaGFuZ2luZyB0aGUgY2xpcHJlY3Qgb24gYSBsYXllciBjb250YWluaW5nIGFu
IGlmcmFtZSBtYXkgY2hhbmdlIHRoZQorICAgICAgICBjbGlwcmVjdCBvZiBwbHVnaW5zIGluc2lk
ZSB0aGUgaWZyYW1lLCBzbyByZWN1cnNpdmVseSB0ZWxsIGFsbCBwbHVnaW5zCisgICAgICAgIGlu
IGlmcmFtZXMgdGhhdCB0aGVpciBjbGlwcmVjdCBoYXMgY2hhbmdlZCBhZnRlciBkb2luZyBsYXlv
dXQgb24gdGhlCisgICAgICAgIG91dGVyIGZyYW1lLgorCisgICAgICAgIFRlc3Q6IHBsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vU2Nyb2xsVmll
dy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxWaWV3OjpjbGlwUmVjdENoYW5nZWQpOgor
ICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbFZpZXcuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9XaWRn
ZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6Y2xpcFJlY3RDaGFuZ2VkKToKKyAgICAg
ICAgKiBwbHVnaW5zL1BsdWdpblZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luVmll
dzo6Y2xpcFJlY3RDaGFuZ2VkKToKKyAgICAgICAgKiBwbHVnaW5zL1BsdWdpblZpZXcuaDoKKyAg
ICAgICAgKiByZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlcldpZGdldDo6c2V0V2lkZ2V0R2VvbWV0cnkpOgorCiAyMDEzLTAyLTI2ICBBbGV4ZXkgUHJv
c2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIERvbid0IGFkZCBhIGJvZHkgdG8g
cGxhdGZvcm0gcmVxdWVzdCB1bnRpbCBuZWNlc3NhcnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
aW5kZXggNWI2MjNhYjRjZTVjYmY0OTBiMzc4MGMzZmM5NDY2ODc3MWQ2NGViYy4uMWNmMGIyYzk2
ZmY4YzM2MDRjMTU3YzI5MDRjZDA0OGUwNDI5MTc0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNiBAQAorMjAxMy0wMi0yNSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNo
cm9taXVtLm9yZz4KKworICAgICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIGNsaXBS
ZWN0Q2hhbmdlZCB0byB1cGRhdGUgdGhlIGdlb21ldHJ5LgorCisgICAgICAgICogc3JjL1dlYlBs
dWdpbkNvbnRhaW5lckltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQbHVnaW5Db250YWlu
ZXJJbXBsOjpjbGlwUmVjdENoYW5nZWQpOgorICAgICAgICAqIHNyYy9XZWJQbHVnaW5Db250YWlu
ZXJJbXBsLmg6CisKIDIwMTMtMDItMjcgIEdsZW5uIEFkYW1zICA8Z2xlbm5Ac2t5bmF2LmNvbT4K
IAogICAgICAgICBBZGQgRU5BQkxFX0NTUzNfVEVYVF9MSU5FX0JSRUFLIGZsYWcuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFu
Z2VMb2cKaW5kZXggYTUxZTZhZTIzNmVhZTU1ZTgzYzBjY2RlMWQyNzU4NzdkMTE0YjRiMC4uYzM5
MzgxYjk2YWQyMjJkODU3MDEyN2E1YzU0ZTBhMzkyN2JhNmYyMyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE2IEBACisyMDEzLTAyLTI1ICBKb2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFBsdWdpbiBpbiBpZnJhbWUgbWF5IG5vdCBkaXNwbGF5CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NzkKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbnN1cmUgTmV0c2Nh
cGVQbHVnaW5XaWRnZXQgaW5mb3JtcyB0aGUgcGx1Z2luIHZpZXcgb2YgdGhlIGNsaXByZWN0IGNo
YW5nZSBkaXJlY3RseS4KKworICAgICAgICAqIFBsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2lu
Vmlldy5oOgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1t
OgorICAgICAgICAoTmV0c2NhcGVQbHVnaW5XaWRnZXQ6OmNsaXBSZWN0Q2hhbmdlZCk6CisKIDIw
MTMtMDItMjYgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAg
RG9uJ3QgYWRkIGEgYm9keSB0byBwbGF0Zm9ybSByZXF1ZXN0IHVudGlsIG5lY2Vzc2FyeQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCmluZGV4IDM0ODMzYWQ0MDE4ZGM5ZjA4NTVlNDAyNjExZWI1ZjU5MTUzMGFlZjQuLjlhNmI3
NDE2YWExZDhhYjkyOTgyYThiYzdkMWUzYjUyNGZlZWI0NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNiBAQAorMjAxMy0wMi0yNSAgSm9obiBCYXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4K
KworICAgICAgICBQbHVnaW4gaW4gaWZyYW1lIG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIGdlb21ldHJ5IHdoZW4g
Y2xpcHJlY3QgY2hhbmdlcy4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5W
aWV3LmNwcDoKKyAgICAgICAgKFdlYktpdDo6UGx1Z2luVmlldzo6Y2xpcFJlY3RDaGFuZ2VkKToK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oOgorCiAyMDEzLTAyLTI3
ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUkVHUkVTU0lPTjogTG9h
ZGluZyBmbGFzaCBzd2l0Y2hlcyB0byBkaXNjcmV0ZSBncmFwaGljcywgMTAwIE1CIG9uIG1lbWJ1
c3RlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcAppbmRleCAyNzAzOGQzMGVh
M2ZhYjI3NThhYzFjY2M2ZWNiMzljOWI2ZmQyMWEwLi4zYzk3YTg1MjM3N2NkMTFlOGY4M2ZmYTM5
NzI4NTMxN2RjOWZlMTI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3Jv
bGxWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxWaWV3LmNwcApA
QCAtODg3LDYgKzg4NywxMyBAQCB2b2lkIFNjcm9sbFZpZXc6OmZyYW1lUmVjdHNDaGFuZ2VkKCkK
ICAgICAgICAgKCpjdXJyZW50KS0+ZnJhbWVSZWN0c0NoYW5nZWQoKTsKIH0KIAordm9pZCBTY3Jv
bGxWaWV3OjpjbGlwUmVjdENoYW5nZWQoKQoreworICAgIEhhc2hTZXQ8UmVmUHRyPFdpZGdldD4g
Pjo6Y29uc3RfaXRlcmF0b3IgZW5kID0gbV9jaGlsZHJlbi5lbmQoKTsKKyAgICBmb3IgKEhhc2hT
ZXQ8UmVmUHRyPFdpZGdldD4gPjo6Y29uc3RfaXRlcmF0b3IgY3VycmVudCA9IG1fY2hpbGRyZW4u
YmVnaW4oKTsgY3VycmVudCAhPSBlbmQ7ICsrY3VycmVudCkKKyAgICAgICAgKCpjdXJyZW50KS0+
Y2xpcFJlY3RDaGFuZ2VkKCk7Cit9CisKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcp
CiBzdGF0aWMgdm9pZCBwb3NpdGlvblNjcm9sbGJhckxheWVyKEdyYXBoaWNzTGF5ZXIqIGdyYXBo
aWNzTGF5ZXIsIFNjcm9sbGJhciogc2Nyb2xsYmFyKQogewpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vU2Nyb2xsVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vU2Ny
b2xsVmlldy5oCmluZGV4IGEzMTY0NWQyZTM0YmE0M2VjNmViOThjYWZmZTJhZjk2M2RjYTdlMGIu
LmQwNGMzZTg3ZDY3MWQ4N2VkNDVhYmRjODVmMzYyYTg3ZTc1NTViMGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmgKQEAgLTI0Myw2ICsyNDMsOSBAQCBwdWJsaWM6CiAgICAgLy8g
V2lkZ2V0IG92ZXJyaWRlIHRvIHVwZGF0ZSBvdXIgc2Nyb2xsYmFycyBhbmQgbm90aWZ5IG91ciBj
b250ZW50cyBvZiB0aGUgcmVzaXplLgogICAgIHZpcnR1YWwgdm9pZCBzZXRGcmFtZVJlY3QoY29u
c3QgSW50UmVjdCYpOwogCisgICAgLy8gV2lkZ2V0IG92ZXJyaWRlIHRvIG5vdGlmeSBvdXIgY29u
dGVudHMgb2YgYSBjbGlwcmVjdCBjaGFuZ2UuCisgICAgdmlydHVhbCB2b2lkIGNsaXBSZWN0Q2hh
bmdlZCgpIE9WRVJSSURFOworCiAgICAgLy8gRm9yIHBsYXRmb3JtcyB0aGF0IG5lZWQgdG8gaGl0
IHRlc3Qgc2Nyb2xsYmFycyBmcm9tIHdpdGhpbiB0aGUgZW5naW5lJ3MgZXZlbnQgaGFuZGxlcnMg
KGxpa2UgV2luMzIpLgogICAgIFNjcm9sbGJhciogc2Nyb2xsYmFyQXRQb2ludChjb25zdCBJbnRQ
b2ludCYgd2luZG93UG9pbnQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9XaWRnZXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCmluZGV4IGMyYzdj
NmRjOTdiMmFhYTJlYTIyYTk3MTFiOGI2OWI3NzE1NWM1OWMuLjUxNTQyMWUwYWMyMjJhYjI1M2Fm
Y2Q5OWE0OTU2MTlhNjM4MGE2MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1dpZGdldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1dpZGdldC5oCkBAIC0yMTAs
NiArMjEwLDkgQEAgcHVibGljOgogICAgIC8vIE5vdGlmaWVzIHRoaXMgd2lkZ2V0IHRoYXQgb3Ro
ZXIgd2lkZ2V0cyBvbiB0aGUgcGFnZSBoYXZlIGJlZW4gcmVwb3NpdGlvbmVkLgogICAgIHZpcnR1
YWwgdm9pZCB3aWRnZXRQb3NpdGlvbnNVcGRhdGVkKCkge30KIAorICAgIC8vIE5vdGlmaWVzIHRo
aXMgd2lkZ2V0IHRoYXQgaXRzIGNsaXAgcmVjdCBjaGFuZ2VkLgorICAgIHZpcnR1YWwgdm9pZCBj
bGlwUmVjdENoYW5nZWQoKSB7IH0KKwogICAgIC8vIFdoZXRoZXIgdHJhbnNmb3JtcyBhZmZlY3Qg
dGhlIGZyYW1lIHJlY3QuIEZJWE1FOiBXZSBnZXQgcmlkIG9mIHRoaXMgYW5kIGhhdmUKICAgICAv
LyB0aGUgZnJhbWUgcmVjdHMgYmUgdGhlIHNhbWUgbm8gbWF0dGVyIHdoYXQgdHJhbnNmb3JtcyBh
cmUgYXBwbGllZC4KICAgICB2aXJ0dWFsIGJvb2wgdHJhbnNmb3Jtc0FmZmVjdEZyYW1lUmVjdCgp
IHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1
Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3BwCmluZGV4
IDdkOTJiZWM3OTczOGRmYjNjZGFkNjljZTViYWVjM2IyZjc4MmY0MmQuLmFmMDU3NmYwZTkwYTBh
MzFlZmJmNzU5ZjYxMjAxZWY0MjFlNDE1NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
dWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5W
aWV3LmNwcApAQCAtMTU4LDYgKzE1OCwxMSBAQCB2b2lkIFBsdWdpblZpZXc6OmZyYW1lUmVjdHND
aGFuZ2VkKCkKICAgICB1cGRhdGVQbHVnaW5XaWRnZXQoKTsKIH0KIAordm9pZCBQbHVnaW5WaWV3
OjpjbGlwUmVjdENoYW5nZWQoKQoreworICAgIHVwZGF0ZVBsdWdpbldpZGdldCgpOworfQorCiB2
b2lkIFBsdWdpblZpZXc6OmhhbmRsZUV2ZW50KEV2ZW50KiBldmVudCkKIHsKICAgICBpZiAoIW1f
cGx1Z2luIHx8IG1faXNXaW5kb3dlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdp
bnMvUGx1Z2luVmlldy5oIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmgKaW5k
ZXggODRlNjJkOGFlMzhmYzIyMGRlMzhhYWIyZWUyYjNmMWMzMzRlYmJiOS4uYjMzMzQ4MDdkNTA5
MTdkMjFjMzU1NzM3NDIyZGVlMWI0ODc3ZmRiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGx1Z2lucy9QbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5W
aWV3LmgKQEAgLTIxMCw2ICsyMTAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZp
cnR1YWwgdm9pZCBzaG93KCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBoaWRlKCk7CiAgICAgICAg
IHZpcnR1YWwgdm9pZCBwYWludChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0Jik7Cisg
ICAgICAgIHZpcnR1YWwgdm9pZCBjbGlwUmVjdENoYW5nZWQoKSBPVkVSUklERTsKIAogICAgICAg
ICAvLyBUaGlzIG1ldGhvZCBpcyB1c2VkIGJ5IHBsdWdpbnMgb24gYWxsIHBsYXRmb3JtcyB0byBv
YnRhaW4gYSBjbGlwIHJlY3QgdGhhdCBpbmNsdWRlcyBjbGlwcyBzZXQgYnkgV2ViQ29yZSwKICAg
ICAgICAgLy8gZS5nLiwgaW4gb3ZlcmZsb3c6YXV0byBzZWN0aW9ucy4gIFRoZSBjbGlwIHJlY3Rz
IGNvb3JkaW5hdGVzIGFyZSBpbiB0aGUgY29udGFpbmluZyB3aW5kb3cncyBjb29yZGluYXRlIHNw
YWNlLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAppbmRleCBjMDc2
ODFmMWVmOTI5NzIwNmJlMDVmN2MwY2Y1MzI1NzVmZDhlYzViLi5jOGRjNWRhOTNjOTg1ZDYwMTMx
OGRiYjkwNGE5Zjg5MWM0MTYwZjEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyV2lkZ2V0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVy
V2lkZ2V0LmNwcApAQCAtMTU1LDYgKzE1NSw5IEBAIGJvb2wgUmVuZGVyV2lkZ2V0OjpzZXRXaWRn
ZXRHZW9tZXRyeShjb25zdCBMYXlvdXRSZWN0JiBmcmFtZSkKICAgICBSZW5kZXJXaWRnZXRQcm90
ZWN0b3IgcHJvdGVjdG9yKHRoaXMpOwogICAgIFJlZlB0cjxOb2RlPiBwcm90ZWN0ZWROb2RlKG5v
ZGUoKSk7CiAgICAgbV93aWRnZXQtPnNldEZyYW1lUmVjdChuZXdGcmFtZSk7CisKKyAgICBpZiAo
Y2xpcENoYW5nZWQgJiYgIWJvdW5kc0NoYW5nZWQpCisgICAgICAgIG1fd2lkZ2V0LT5jbGlwUmVj
dENoYW5nZWQoKTsKICAgICAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCiAgICAg
aWYgKGhhc0xheWVyKCkgJiYgbGF5ZXIoKS0+aXNDb21wb3NpdGVkKCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCmluZGV4
IDE4MDAwMmUzYmZhMmMwNjA0ZmY1NTIwYzcxNGYwMjY5YzZmMDhjZDkuLjZlNGRkZTYyNzdmNzc2
ZTQyMGQ3YjE2N2ZlYWMyYWJmN2Y2MzcwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlBsdWdpbkNvbnRhaW5lckltcGwuY3BwCkBAIC0yMjIsNiArMjIyLDEx
IEBAIHZvaWQgV2ViUGx1Z2luQ29udGFpbmVySW1wbDo6d2lkZ2V0UG9zaXRpb25zVXBkYXRlZCgp
CiAgICAgcmVwb3J0R2VvbWV0cnkoKTsKIH0KIAordm9pZCBXZWJQbHVnaW5Db250YWluZXJJbXBs
OjpjbGlwUmVjdENoYW5nZWQoKQoreworICAgIHJlcG9ydEdlb21ldHJ5KCk7Cit9CisKIHZvaWQg
V2ViUGx1Z2luQ29udGFpbmVySW1wbDo6c2V0UGFyZW50VmlzaWJsZShib29sIHBhcmVudFZpc2li
bGUpCiB7CiAgICAgLy8gV2Ugb3ZlcnJpZGUgdGhpcyBmdW5jdGlvbiB0byBtYWtlIHN1cmUgdGhh
dCBnZW9tZXRyeSB1cGRhdGVzIGFyZSBzZW50CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJQbHVnaW5Db250YWluZXJJbXBsLmgKaW5kZXggYmIyZjRlYWM1Yjc1ODdiNzIx
MjQ4Y2Y1MTBiZTkyOGM2YzJiOWY2My4uMTlkMzk3ZDI0N2FhZDJkZTgwMzkzODk0OTI1YmE2Y2Qw
NjNiNzE1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGx1Z2lu
Q29udGFpbmVySW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBsdWdp
bkNvbnRhaW5lckltcGwuaApAQCAtOTIsNiArOTIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIHNldFBhcmVudFZpc2libGUoYm9vbCk7CiAgICAgdmlydHVhbCB2b2lkIHNldFBhcmVudChX
ZWJDb3JlOjpTY3JvbGxWaWV3Kik7CiAgICAgdmlydHVhbCB2b2lkIHdpZGdldFBvc2l0aW9uc1Vw
ZGF0ZWQoKTsKKyAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZFUlJJREU7CiAg
ICAgdmlydHVhbCBib29sIGlzUGx1Z2luQ29udGFpbmVyKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsg
fQogCiAgICAgLy8gV2ViUGx1Z2luQ29udGFpbmVyIG1ldGhvZHMKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5oIGIvU291cmNl
L1dlYktpdC9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3LmgKaW5kZXggNGI0
ZDZkY2FjZTZlOTRlYzAxMDRhY2NjY2M1OWYxZjMwMTA1NmJiOC4uOWI5MzNmNDE5MzNhOGQzYmNj
ZmJlM2Y2M2Y1OGE1NWVhZjdmNmM1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvUGx1
Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3LmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMv
UGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3LmgKQEAgLTk5LDYgKzk5LDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogLSAodm9pZCloYW5kbGVNb3VzZUV4aXRlZDooTlNFdmVudCAqKWV2
ZW50OwogLSAodm9pZClzZXRBdHRyaWJ1dGVLZXlzOihOU0FycmF5ICopa2V5cyBhbmRWYWx1ZXM6
KE5TQXJyYXkgKil2YWx1ZXM7CiAtICh2b2lkKWZvY3VzQ2hhbmdlZDsKKy0gKHZvaWQpdXBkYXRl
QW5kU2V0V2luZG93OwogCiAtIChXZWJGcmFtZSAqKXdlYkZyYW1lOwogLSAoV2ViRGF0YVNvdXJj
ZSAqKWRhdGFTb3VyY2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCmluZGV4IGE2ZDJjYmNkOTMxZjNjZmE2MTVk
NzYyMWFlYzZjYTM1OTM2OGE5MGYuLjJmN2I1ODc3YmFkNWY1YzcwODJjM2JhNjg5OWQ4N2EzOTk3
Zjk5OTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZy
YW1lTG9hZGVyQ2xpZW50Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCkBAIC0xNTg1LDYgKzE1ODUsMTIgQEAgcHVibGljOgog
ICAgICAgICAgICAgZXZlbnQtPnNldERlZmF1bHRIYW5kbGVkKCk7IC8vIFdlIGRvbid0IGtub3cg
aWYgdGhlIHBsdWctaW4gaGFzIGhhbmRsZWQgbW91c2Vkb3duIGV2ZW50IGJ5IGRpc3BsYXlpbmcg
YSBjb250ZXh0IG1lbnUsIHNvIHdlIG5ldmVyIHdhbnQgV2ViS2l0IHRvIHNob3cgYSBkZWZhdWx0
IG9uZS4KICAgICB9CiAKKyAgICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkKKyAgICB7
CisgICAgICAgIC8vIENoYW5naW5nIHRoZSBjbGlwIHJlY3QgZG9lc24ndCBhZmZlY3QgdGhlIHZp
ZXcgaGllcmFyY2h5LCBzbyB0aGUgcGx1Z2luIG11c3QgYmUgdG9sZCBhYm91dCB0aGUgY2hhbmdl
IGRpcmVjdGx5LgorICAgICAgICBbKFdlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcgKilwbGF0Zm9y
bVdpZGdldCgpIHVwZGF0ZUFuZFNldFdpbmRvd107CisgICAgfQorCiBwcml2YXRlOgogICAgIHZp
cnR1YWwgdm9pZCBub3RpZnlXaWRnZXQoV2lkZ2V0Tm90aWZpY2F0aW9uIG5vdGlmaWNhdGlvbikK
ICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1
Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmll
dy5jcHAKaW5kZXggOGRmMTRjYjBiZWFiZjhiNDI0NzRjMmNiOTBhNDkyYTJkMTlhODU3Zi4uZDlj
MjAwNWQ0NjU5Y2YyNTFhMTQxNjdiNWU5NzBmMjZkYTRiMzdlOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW5WaWV3LmNwcApAQCAtNzM4LDYgKzczOCwx
MSBAQCB2b2lkIFBsdWdpblZpZXc6OmZyYW1lUmVjdHNDaGFuZ2VkKCkKICAgICB2aWV3R2VvbWV0
cnlEaWRDaGFuZ2UoKTsKIH0KIAordm9pZCBQbHVnaW5WaWV3OjpjbGlwUmVjdENoYW5nZWQoKQor
eworICAgIHZpZXdHZW9tZXRyeURpZENoYW5nZSgpOworfQorCiB2b2lkIFBsdWdpblZpZXc6OnNl
dFBhcmVudChTY3JvbGxWaWV3KiBzY3JvbGxWaWV3KQogewogICAgIFdpZGdldDo6c2V0UGFyZW50
KHNjcm9sbFZpZXcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVn
aW5zL1BsdWdpblZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVn
aW5WaWV3LmgKaW5kZXggZWVjMjM2YTdmYThkOTQyM2Q5ZTZlNTE0MjU4ZWMxNzkxZWJhMjNhMC4u
Mzg2ZGE4NjllZmUxMTc0NDVlZTNjYTZkZGYzMzhlOTE4NGEzNjhlZSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpblZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luVmlldy5oCkBAIC0xNjAsNiArMTYwLDcg
QEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgc2hvdygpOwogICAgIHZpcnR1YWwgdm9pZCBo
aWRlKCk7CiAgICAgdmlydHVhbCBib29sIHRyYW5zZm9ybXNBZmZlY3RGcmFtZVJlY3QoKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgY2xpcFJlY3RDaGFuZ2VkKCkgT1ZFUlJJREU7CiAKICAgICAvLyBXZWJD
b3JlOjpNZWRpYUNhblN0YXJ0TGlzdGVuZXIKICAgICB2aXJ0dWFsIHZvaWQgbWVkaWFDYW5TdGFy
dCgpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4
IGQ0OGIyZGM1NDQ0YmQyZjE5YWIyMDAyYmY5ZDE2MjlkMzA3YTI3MzAuLmNkYTQwMGM1N2NhMGZm
NGQxOTQ0NmUxYzJiNzZhNzk2MGFmNDhiYTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZwor
KysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMy0wMi0yNSAgSm9obiBC
YXVtYW4gIDxqYmF1bWFuQGNocm9taXVtLm9yZz4KKworICAgICAgICBQbHVnaW4gaW4gaWZyYW1l
IG1heSBub3QgZGlzcGxheQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTA5ODc5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgTG9nTlBQU2V0V2luZG93IHdpbGwgYmUgdXNlZCB3aXRoIG90aGVyIHBvcnRzIGFz
IHdlbGwuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpOgor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4
dDoKKwogMjAxMy0wMi0yNyAgR2xlbm4gQWRhbXMgIDxnbGVubkBza3luYXYuY29tPgogCiAgICAg
ICAgIEFkZCBFTkFCTEVfQ1NTM19URVhUX0xJTkVfQlJFQUsgZmxhZy4KZGlmZiAtLWdpdCBhL1Rv
b2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkgYi9Ub29scy9EdW1wUmVuZGVy
VHJlZS9EdW1wUmVuZGVyVHJlZS5neXBpCmluZGV4IGQ3NTM5MzkzOWVmYTgwMjVlMTEwMmJjZjQ1
MzY2Zjk3YjYxNzgwZjYuLmNkNDc1NWFhM2M5M2U1YzM1NGZiZGQwMjMxYjY0YjFlMTRjZGZlNDEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLmd5cGkKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvRHVtcFJlbmRlclRyZWUuZ3lwaQpAQCAtMTEzLDYgKzEx
Myw3IEBACiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL0dldFVSTFdpdGhK
YXZhU2NyaXB0VVJMLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3Rz
L0dldFVSTFdpdGhKYXZhU2NyaXB0VVJMRGVzdHJveWluZ1BsdWdpbi5jcHAnLAogICAgICAgICAg
ICAgJ1Rlc3ROZXRzY2FwZVBsdWdJbi9UZXN0cy9HZXRVc2VyQWdlbnRXaXRoTnVsbE5QUEZyb21O
UFBOZXcuY3BwJywKKyAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQbHVnSW4vVGVzdHMvTG9nTlBQ
U2V0V2luZG93LmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05Q
UE5ld0ZhaWxzLmNwcCcsCiAgICAgICAgICAgICAnVGVzdE5ldHNjYXBlUGx1Z0luL1Rlc3RzL05Q
UnVudGltZUNhbGxzV2l0aE51bGxOUFAuY3BwJywKICAgICAgICAgICAgICdUZXN0TmV0c2NhcGVQ
bHVnSW4vVGVzdHMvTlBSdW50aW1lT2JqZWN0RnJvbURlc3Ryb3llZFBsdWdpbi5jcHAnLApkaWZm
IC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlz
dHMudHh0IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luL0NNYWtlTGlz
dHMudHh0CmluZGV4IGUzMzlhYjFiMTg3MDJhNWI3MDAxMDdkYjIyZTMxZGUxZmRjZDI5NDYuLmMx
ODBlMDliMjY1YWJlMmE2YzBjYzlmNDAyM2UyMzQ2ZjRkMWE4NjAgMTAwNjQ0Ci0tLSBhL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi9DTWFrZUxpc3RzLnR4dAorKysgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4vQ01ha2VMaXN0cy50eHQKQEAg
LTEzLDYgKzEzLDcgQEAgc2V0KFdlYktpdFRlc3ROZXRzY2FwZVBsdWdpbl9TT1VSQ0VTCiAgICAg
JHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvR2V0VVJMV2l0aEphdmFTY3Jp
cHRVUkwuY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVzdHMvR2V0
VVJMV2l0aEphdmFTY3JpcHRVUkxEZXN0cm95aW5nUGx1Z2luLmNwcAogICAgICR7V0VCS0lUX1RF
U1RORVRTQ0FQRVBMVUdJTl9ESVJ9L1Rlc3RzL0dldFVzZXJBZ2VudFdpdGhOdWxsTlBQRnJvbU5Q
UE5ldy5jcHAKKyAgICAke1dFQktJVF9URVNUTkVUU0NBUEVQTFVHSU5fRElSfS9UZXN0cy9Mb2dO
UFBTZXRXaW5kb3cuY3BwCiAgICAgJHtXRUJLSVRfVEVTVE5FVFNDQVBFUExVR0lOX0RJUn0vVGVz
dHMvTlBEZWFsbG9jYXRlQ2FsbGVkQmVmb3JlTlBTaHV0ZG93bi5jcHAKICAgICAke1dFQktJVF9U
RVNUTkVUU0NBUEVQTFVHSU5fRElSfS9UZXN0cy9OUFBOZXdGYWlscy5jcHAKICAgICAke1dFQktJ
VF9URVNUTkVUU0NBUEVQTFVHSU5fRElSfS9UZXN0cy9OUFBTZXRXaW5kb3dDYWxsZWREdXJpbmdE
ZXN0cnVjdGlvbi5jcHAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmODQxMGU1NDEyMWFlYTBiMGIyZmE5N2UyYjExOWY1MDJl
NDhhYTNkLi42ZjdmYWJmODNkNmQ5ZGM2NjBlYjRjODgzNTg5ZDEyNjVlOWFlMWQyIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTMtMDItMjUgIEpvaG4gQmF1bWFuICA8amJhdW1hbkBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUGx1Z2luIGluIGlmcmFtZSBtYXkgbm90IGRpc3BsYXkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwOTg3OQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBsb2ctbnBwLXNl
dC13aW5kb3cgdG8gZW5zdXJlIHBsdWdpbiBjbGlwIGNoYW5nZXMgY29ycmVjdGx5LgorCisgICAg
ICAgICogcGxhdGZvcm0vbWFjLXdrMi9wbHVnaW5zL3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVj
dGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3BsdWdpbnMvcGx1Z2luLWNs
aXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3BsdWdp
bi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9w
bHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3Jlc291
cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRtbDogQWRkZWQuCisKIDIwMTMtMDIt
MjcgIFN0ZXBoZW4gQ2hlbm5leSAgPHNjaGVubmV5QGNocm9taXVtLm9yZz4KIAogICAgICAgICBb
Q2hyb21pdW1dIFRlc3QgZXhwZWN0YXRpb25zIHVwZGF0ZXMKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3BsYXRmb3JtL21hYy13azIvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL3BsdWdpbnMvcGx1Z2luLWNsaXAt
c3ViZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI0ZWEwZTUwODM1NDk3YTY5ZjJkNDk2
NGVmOGU1ZjVmYWE5MGNjZDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2syL3BsdWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5kb3c6IE5VTEwg
d2luZG93LCBSZWN0IHswLCAwLCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgMCwgMCwgMH0sIFR5
cGUgMgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5kb3c6IE5VTEwgd2luZG93
LCBSZWN0IHswLCAwLCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgMCwgMCwgMH0sIFR5cGUgMgor
Q09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5kb3c6IE5VTEwgd2luZG93LCBSZWN0
IHswLCAwLCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MCwgMCwgMzAwLCAxNTB9LCBUeXBlIDIKKwpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3BsdWdpbnMvcGx1Z2luLWNsaXAt
c3ViZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3BsdWdpbnMv
cGx1Z2luLWNsaXAtc3ViZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY3OTUwMGNlZDE0
NDhjYThmY2IwMTFkMDhmZmNhZTkzYjBiMmI5MDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9tYWMvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50
eHQKQEAgLTAsMCArMSwzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzogTlBQX1NldFdpbmRv
dzogTlVMTCB3aW5kb3csIFJlY3QgezE4LCAyMTgsIDMwMCwgMTUwfSwgQ2xpcCBSZWN0IHswLCA2
MDAsIDAsIDYwMH0sIFR5cGUgMAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDM6IE5QUF9TZXRXaW5k
b3c6IE5VTEwgd2luZG93LCBSZWN0IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7MTgs
IDIxOCwgMTA4LCAzNjh9LCBUeXBlIDAKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGx1Z2lu
cy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbHVnaW5z
L3BsdWdpbi1jbGlwLXN1YmZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zYmE2OTVlYjli
MmI0NTMwNDUwZjIwNDc5YWVmYTViNTliMjI3OTg4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGx1Z2lucy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwzIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMzogTlBQX1NldFdpbmRvdzogbm9uLU5VTEwg
d2luZG93LCBSZWN0IHsxOCwgMjE4LCAzMDAsIDE1MH0sIENsaXAgUmVjdCB7NjU1MTgsIDY1MzE4
LCA2NTUxOCwgNjUzMTh9LCBUeXBlIDEKK0NPTlNPTEUgTUVTU0FHRTogbGluZSAzOiBOUFBfU2V0
V2luZG93OiBub24tTlVMTCB3aW5kb3csIFJlY3QgezE4LCAyMTgsIDMwMCwgMTUwfSwgQ2xpcCBS
ZWN0IHswLCAwLCA5MCwgMTUwfSwgVHlwZSAxCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
dWdpbnMvcGx1Z2luLWNsaXAtc3ViZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL3BsdWdpbnMvcGx1
Z2luLWNsaXAtc3ViZnJhbWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42NWFkNDliYjY5MGRkMDg1ODUzZjU3
OTY3OGMyNzVlOWI4ZjMwYmQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lu
cy9wbHVnaW4tY2xpcC1zdWJmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjkgQEAKKzwhZG9jdHlwZSBo
dG1sPgorPGh0bWw+Cis8c2NyaXB0PgorZnVuY3Rpb24gdGVzdCgpIHsKKyAgICAvLyBJbmNyZWFz
ZSB0aGUgc2l6ZSBvZiB0aGUgY29udGFpbmVyIHNvIHRoZSBpZnJhbWUgYmVjb21lcyB2aXNpYmxl
LgorICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb250YWluZXIiKS5zdHlsZS5oZWlnaHQg
PSAiNDAwcHgiOworICAgIHNldFRpbWVvdXQoZG9uZSwgMTApOworfQorCitmdW5jdGlvbiBkb25l
KCkgeworICAgIGlmICh0ZXN0UnVubmVyKSB7CisgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9Cit9CisKK2Z1bmN0
aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHRlc3RSdW5uZXIpCisgICAgICAgIHRlc3RSdW5uZXIu
d2FpdFVudGlsRG9uZSgpOworICAgIHNldFRpbWVvdXQodGVzdCwgMTApOworfQorPC9zY3JpcHQ+
Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisKKzxkaXYgaWQgPSAiY29udGFpbmVyIiBzdHls
ZT0ib3ZlcmZsb3c6IGhpZGRlbjsgd2lkdGg6MTAwcHg7IGhlaWdodDoxMDBweCI+Cis8aWZyYW1l
IGlkPSdzdWJmcmFtZScgc3JjPSdyZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1l
Lmh0bWwnIHdpZHRoPTUwMCBoZWlnaHQ9NTAwIHN0eWxlPSJtYXJnaW4tdG9wOjIwMHB4Ij48L2lm
cmFtZT4KKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
cGx1Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNsaXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwgYi9MYXlv
dXRUZXN0cy9wbHVnaW5zL3Jlc291cmNlcy9wbHVnaW4tY2xpcC1zdWJmcmFtZS1pZnJhbWUuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi45MmJjYjkxNjRlZmE0NjE5NWIzMTE0N2VlNDYwOWQxM2I4OTE4MjE4Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvcGx1Z2luLWNs
aXAtc3ViZnJhbWUtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSw3IEBACis8c2NyaXB0PgorZnVuY3Rp
b24gd2luZG93V2FzU2V0KG1zZykgeworICAgIGNvbnNvbGUubG9nKG1zZyk7Cit9Cis8L3Njcmlw
dD4KKworPGVtYmVkIGlkPSJ0ZXN0Q1BsdWdpbiIgdHlwZT0iYXBwbGljYXRpb24veC13ZWJraXQt
dGVzdC1uZXRzY2FwZSIgdGVzdD0ibG9nLW5wcC1zZXQtd2luZG93Ij48L2VtYmVkPgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>