<?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>131444</bug_id>
          
          <creation_ts>2014-04-09 11:00:12 -0700</creation_ts>
          <short_desc>[CSS Shapes] Add support for shape-outside gradient values</short_desc>
          <delta_ts>2014-04-18 16:31:31 -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>CSS</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>124173</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Zoltan Horvath">zoltan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>giles_joplin</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>syoichi</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>999232</commentid>
    <comment_count>0</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2014-04-09 11:00:12 -0700</bug_when>
    <thetext>As the CSS Shapes Level 1 spec says [1] shape-outside can take image values. Image values can be gradients [2]. Thus we need to add support for gradients [3].

[1] http://www.w3.org/TR/2014/CR-css-shapes-1-20140320/#shapes-from-image
[2] http://www.w3.org/TR/css3-images/#image-type
[3] http://www.w3.org/TR/css3-images/#gradients</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001605</commentid>
    <comment_count>1</comment_count>
      <attachid>229558</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-17 10:53:07 -0700</bug_when>
    <thetext>Created attachment 229558
Patch

Added support for shape-outside gradient values.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001607</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-17 10:54:26 -0700</bug_when>
    <thetext>Attachment 229558 did not pass style-queue:


ERROR: Source/WebCore/rendering/style/ShapeValue.h:71:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:151:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 2 in 9 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001614</commentid>
    <comment_count>3</comment_count>
      <attachid>229561</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-17 11:06:52 -0700</bug_when>
    <thetext>Created attachment 229561
Patch

Fixed some styleOs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001705</commentid>
    <comment_count>4</comment_count>
      <attachid>229578</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-17 14:29:31 -0700</bug_when>
    <thetext>Created attachment 229578
Patch

Removed a spurious ShapeOutsideInfo.cpp include.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001971</commentid>
    <comment_count>5</comment_count>
      <attachid>229578</attachid>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2014-04-18 11:54:18 -0700</bug_when>
    <thetext>Comment on attachment 229578
Patch

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

&gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:123
&gt; +static inline bool checkShapeImageOrigin(Document&amp; document, const ShapeValue&amp; shapeValue)

Why take a ShapeValue instead of a StyleImage?

&gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:128
&gt; +    CachedImage&amp; cachedImage = *(shapeValue.image()-&gt;cachedImage());

I&apos;d ASSERT(shapeValue.image()-&gt;cachedImage()) first, just to be safe.

&gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:151
&gt; +        image = styleImage-&gt;image(const_cast&lt;RenderBox*&gt;(&amp;renderBox), imageSize).get();

The const_cast makes me very uncomfortable. There isn&apos;t a better way to do this? Maybe we need to refactor StyleImage so it can take a const?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001973</commentid>
    <comment_count>6</comment_count>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-18 12:24:14 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 229578 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=229578&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:123
&gt; &gt; +static inline bool checkShapeImageOrigin(Document&amp; document, const ShapeValue&amp; shapeValue)
&gt; 
&gt; Why take a ShapeValue instead of a StyleImage?

I&apos;ve changed the parameter to StyleImage*.


&gt; &gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:128
&gt; &gt; +    CachedImage&amp; cachedImage = *(shapeValue.image()-&gt;cachedImage());
&gt; 
&gt; I&apos;d ASSERT(shapeValue.image()-&gt;cachedImage()) first, just to be safe.

OK.

&gt; 
&gt; &gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:151
&gt; &gt; +        image = styleImage-&gt;image(const_cast&lt;RenderBox*&gt;(&amp;renderBox), imageSize).get();
&gt; 
&gt; The const_cast makes me very uncomfortable. There isn&apos;t a better way to do this? Maybe we need to refactor StyleImage so it can take a const?

I did take a shot at that. The overall change would be much bigger than this patch.  There are about 10 classes that implement this image() method and in some cases the not-const RenderElement is passed along to other methods.  If it&apos;s worth tracking down the complete transitive closure of the change, it might be better to do it as a separate patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1001976</commentid>
    <comment_count>7</comment_count>
      <attachid>229662</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-18 12:29:31 -0700</bug_when>
    <thetext>Created attachment 229662
Patch

Made the suggested changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002019</commentid>
    <comment_count>8</comment_count>
      <attachid>229662</attachid>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2014-04-18 13:55:42 -0700</bug_when>
    <thetext>Comment on attachment 229662
Patch

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

&gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:125
&gt; +    ASSERT(styleImage);

if this can&apos;t be null, why not pass a reference? (even better, can it be a const ref?)

&gt; Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp:153
&gt; +        image = styleImage-&gt;image(const_cast&lt;RenderBox*&gt;(&amp;renderBox), imageSize).get();

It would be nice to see a follow-up patch that removes the need for the const_cast here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002051</commentid>
    <comment_count>9</comment_count>
      <attachid>229682</attachid>
    <who name="Hans Muller">giles_joplin</who>
    <bug_when>2014-04-18 15:30:09 -0700</bug_when>
    <thetext>Created attachment 229682
Patch

I&apos;ve made the checkShapeImageOrigin() StyleImage* parameter a const StyleImage&amp;.

I&apos;ll attempt to make this StyleImage function&apos;s RenderElement* parameter, const RenderElement*, in a separate patch:

    virtual PassRefPtr&lt;Image&gt; image(RenderElement*, const FloatSize&amp;) const = 0;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002054</commentid>
    <comment_count>10</comment_count>
      <attachid>229682</attachid>
    <who name="Bem Jones-Bey">bjonesbe</who>
    <bug_when>2014-04-18 15:48:59 -0700</bug_when>
    <thetext>Comment on attachment 229682
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002069</commentid>
    <comment_count>11</comment_count>
      <attachid>229682</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-18 16:31:26 -0700</bug_when>
    <thetext>Comment on attachment 229682
Patch

Clearing flags on attachment: 229682

Committed r167518: &lt;http://trac.webkit.org/changeset/167518&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002070</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-18 16:31:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229558</attachid>
            <date>2014-04-17 10:53:07 -0700</date>
            <delta_ts>2014-04-17 11:06:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>10595</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYzFhNjAxZC4uMjQ1OGI3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTA0
LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBBZGQgcGFyc2luZyBzdXBwb3J0IGZvciBncmFkaWVudHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTQ0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3Bh
cnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTE2ICBP
bGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxlIEVTNiBmZWF0
dXJlOkFycmF5LnByb3RvdHlwZS5maWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50
eHQKaW5kZXggMTg2NDBjMC4uOTM2NmY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVj
dGVkLnR4dApAQCAtMTY3LDYgKzE2NywxMCBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAi
cG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBn
ZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1hcmdpbi1ib3ggcG9s
eWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24oMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCBibHVlKSIp
IGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgYmx1ZSkiCitQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0
byByaWdodCwgcmVkLCBibHVlKSIpIGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwg
Ymx1ZSkiCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJyYWRpYWwt
Z3JhZGllbnQoYXQgMTBweCAyMHB4LCByZWQgMCUsIGJsdWUgNTAlLCBncmVlbiA5NSUpIikgaXMg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiCitQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiKSBpcyAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUwJSwg
Z3JlZW4gOTUlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVC
YXNlVVJMKGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVy
bCgnaW1hZ2UnKSIpKSBpcyAidXJsKGltYWdlKSIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1vdXRzaWRlIiwgImNhbGMoKSIpIGlzICIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCmluZGV4IDc5YmRmZmIuLmFl
NTQ2MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy10ZXN0LXV0aWxzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy10ZXN0LXV0aWxzLmpzCkBAIC05NCw3ICs5NCwxMCBAQCB2YXIgdmFsaWRTaGFwZVZhbHVl
cyA9IFsKICAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRl
bnQtYm94Il0sCiAgICAgWyJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmctYm94IHBvbHlnb24oMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBw
YWRkaW5nLWJveCJdLAogICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0sCisKKyAgICAibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZWQsIGJs
dWUpIiwKKyAgICAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUw
JSwgZ3JlZW4gOTUlKSIKIF07CiAKIC8vIEludmFsaWQgdmFsdWVzIGZvciBzaGFwZS1vdXRzaWRl
LiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3ODZmMmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRl
LWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1leHBlY3RlZC5odG1sCkBAIC0w
LDAgKzEsMjIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNp
bWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDUxcHg7IC8qIHNoYXBl
LW91dHNpZGUgaW50ZXJ2YWxzIGRlcml2ZWQgZnJvbSBpbWFnZXMgYXJlIGVuZC1wb2ludCBleGNs
dXNpdmUgKi8KKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgd2lkdGg6IDYwMHB4OworICAgIGNvbG9yOiBn
cmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50Ij4KKyAgPGRpdiBpZD0iaW1hZ2Ut
c2hhcGUiPjwvZGl2PgorICBYPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9z
aGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTU0Mjg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZs
b2F0OiBsZWZ0OworICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogbGluZWFyLWdyYWRpZW50KHRv
IHJpZ2h0LCByZ2JhKDAsIDAsIDI1NSwgMSksIHJnYmEoMCwgMCwgMjU1LCAwKSk7CisgICAgLXdl
YmtpdC1zaGFwZS1pbWFnZS10aHJlc2hvbGQ6IDAuNTsKKyAgICB3aWR0aDogMTAwcHg7CisgICAg
aGVpZ2h0OiAxMDBweDsKK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUwcHgvMSBBaGVtLCBz
YW5zLXNlcmlmOworICAgIHdpZHRoOiA2MDBweDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0
eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4K
KyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU3
ZmNkYjUuLjA3ZDFmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0wNC0xNyAg
SGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10g
QWRkIHBhcnNpbmcgc3VwcG9ydCBmb3IgZ3JhZGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0NDQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBzaGFwZS1vdXRzaWRl
IGdyYWRpZW50IHZhbHVlcy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sCisKKyAgICAgICAg
KiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBs
eVByb3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOgorICAgICAgICAqIHJlbmRlcmluZy9zaGFwZXMv
U2hhcGVPdXRzaWRlSW5mby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjaGVja1NoYXBlSW1hZ2VP
cmlnaW4pOgorICAgICAgICAoV2ViQ29yZTo6Z2V0U2hhcGVJbWFnZUFuZFJlY3QpOgorICAgICAg
ICAoV2ViQ29yZTo6U2hhcGVPdXRzaWRlSW5mbzo6aXNFbmFibGVkRm9yKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVWYWx1
ZTo6aXNJbWFnZVZhbGlkKToKKwogMjAxNC0wNC0xNiAgQmVtIEpvbmVzLUJleSAgPGJqb25lc2Jl
QGFkb2JlLmNvbT4KIAogICAgICAgICBGaXggQ29kZUdlbmVyYXRvci5wbSB0byBvbmx5IHdyaXRl
IGZpbGVzIGlmIHRoZSBnZW5lcmF0ZWQgY29udGVudCBoYXMgY2hhbmdlZApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmluZGV4IDBhYzM5ZDEuLjdhMjI0
ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAK
QEAgLTIxNzgsNyArMjE3OCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIENTU1ByaW1pdGl2ZVZh
bHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWUpOwogICAgICAg
ICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVBdXRvKQog
ICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVzb2x2ZXItPnN0eWxlKCksIDApOwotICAg
ICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0ltYWdlVmFsdWUoKSB8fCB2YWx1ZS0+aXNJbWFnZVNl
dFZhbHVlKCkpIHsKKyAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+aXNJbWFnZVZhbHVlKCkgfHwg
dmFsdWUtPmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIHx8IHZhbHVlLT5pc0ltYWdlU2V0VmFsdWUo
KSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNoYXBlID0gU2hhcGVWYWx1ZTo6
Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUltYWdlKHByb3BlcnR5LCB2YWx1
ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgc2hhcGUu
cmVsZWFzZSgpKTsKICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+aXNWYWx1ZUxpc3QoKSkgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJ
bmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGVPdXRzaWRlSW5m
by5jcHAKaW5kZXggMzcyMzVlMC4uOGNkNTc2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3BwCkBAIC00MCw2ICs0MCw3IEBA
CiAjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKICNpbmNs
dWRlICJSZW5kZXJSZWdpb24uaCIKKyNpbmNsdWRlICJTdHlsZUdlbmVyYXRlZEltYWdlLmgiCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTIwLDggKzEyMSwxMiBAQCB2b2lkIFNoYXBlT3V0
c2lkZUluZm86OnNldFJlZmVyZW5jZUJveExvZ2ljYWxTaXplKExheW91dFNpemUgbmV3UmVmZXJl
bmNlQm94TG9naQogICAgIG1fcmVmZXJlbmNlQm94TG9naWNhbFNpemUgPSBuZXdSZWZlcmVuY2VC
b3hMb2dpY2FsU2l6ZTsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGNoZWNrU2hhcGVJbWFnZU9y
aWdpbihEb2N1bWVudCYgZG9jdW1lbnQsIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSkKK3N0YXRp
YyBpbmxpbmUgYm9vbCBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oRG9jdW1lbnQmIGRvY3VtZW50LCBj
b25zdCBTaGFwZVZhbHVlJiBzaGFwZVZhbHVlKQogeworICAgIGlmIChzaGFwZVZhbHVlLmltYWdl
KCktPmlzR2VuZXJhdGVkSW1hZ2UoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBDYWNo
ZWRJbWFnZSYgY2FjaGVkSW1hZ2UgPSAqKHNoYXBlVmFsdWUuaW1hZ2UoKS0+Y2FjaGVkSW1hZ2Uo
KSk7CiAgICAgaWYgKGNhY2hlZEltYWdlLmlzT3JpZ2luQ2xlYW4oZG9jdW1lbnQuc2VjdXJpdHlP
cmlnaW4oKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCkBAIC0xNDAsNyArMTQ1LDEyIEBAIHN0
YXRpYyB2b2lkIGdldFNoYXBlSW1hZ2VBbmRSZWN0KGNvbnN0IFNoYXBlVmFsdWUmIHNoYXBlVmFs
dWUsIGNvbnN0IFJlbmRlckJveCYKICAgICBjb25zdCBMYXlvdXRTaXplJiBpbWFnZVNpemUgPSBy
ZW5kZXJCb3guY2FsY3VsYXRlSW1hZ2VJbnRyaW5zaWNEaW1lbnNpb25zKHN0eWxlSW1hZ2UsIHJv
dW5kZWRJbnRTaXplKHJlZmVyZW5jZUJveFNpemUpLCBSZW5kZXJJbWFnZTo6U2NhbGVCeUVmZmVj
dGl2ZVpvb20pOwogICAgIHN0eWxlSW1hZ2UtPnNldENvbnRhaW5lclNpemVGb3JSZW5kZXJlcigm
cmVuZGVyQm94LCBpbWFnZVNpemUsIHJlbmRlckJveC5zdHlsZSgpLmVmZmVjdGl2ZVpvb20oKSk7
CiAKLSAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZEltYWdlKCktPmltYWdlRm9yUmVuZGVy
ZXIoJnJlbmRlckJveCk7CisgICAgaW1hZ2UgPSBudWxscHRyOworICAgIGlmIChzdHlsZUltYWdl
LT5pc0NhY2hlZEltYWdlKCkgfHwgc3R5bGVJbWFnZS0+aXNDYWNoZWRJbWFnZVNldCgpKQorICAg
ICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZEltYWdlKCktPmltYWdlRm9yUmVuZGVyZXIo
JnJlbmRlckJveCk7CisgICAgZWxzZSBpZiAoc3R5bGVJbWFnZS0+aXNHZW5lcmF0ZWRJbWFnZSgp
KQorICAgICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmltYWdlKGNvbnN0X2Nhc3Q8UmVuZGVyQm94
Kj4oJnJlbmRlckJveCksIGltYWdlU2l6ZSkuZ2V0KCk7CisgICAgICAgIAogICAgIGlmIChyZW5k
ZXJCb3guaXNSZW5kZXJJbWFnZSgpKQogICAgICAgICByZWN0ID0gdG9SZW5kZXJJbWFnZSgmcmVu
ZGVyQm94KS0+cmVwbGFjZWRDb250ZW50UmVjdChyZW5kZXJCb3guaW50cmluc2ljU2l6ZSgpKTsK
ICAgICBlbHNlCkBAIC0yOTMsNyArMzAzLDcgQEAgYm9vbCBTaGFwZU91dHNpZGVJbmZvOjppc0Vu
YWJsZWRGb3IoY29uc3QgUmVuZGVyQm94JiBib3gpCiAKICAgICBzd2l0Y2ggKHNoYXBlVmFsdWUt
PnR5cGUoKSkgewogICAgIGNhc2UgU2hhcGVWYWx1ZTo6U2hhcGU6IHJldHVybiBzaGFwZVZhbHVl
LT5zaGFwZSgpOwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVl
LT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCks
ICooc2hhcGVWYWx1ZS0+aW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSkpOworICAgIGNhc2UgU2hhcGVW
YWx1ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVlLT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1No
YXBlSW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCksICpzaGFwZVZhbHVlKTsKICAgICBjYXNlIFNo
YXBlVmFsdWU6OkJveDogcmV0dXJuIHRydWU7CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaAppbmRleCBkNjI3NGZlLi4wM2EyM2RhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmgKQEAgLTY3LDcgKzY3LDE1
IEBAIHB1YmxpYzoKICAgICBDU1NCb3hUeXBlIGNzc0JveCgpIGNvbnN0IHsgcmV0dXJuIG1fY3Nz
Qm94OyB9CiAKICAgICBTdHlsZUltYWdlKiBpbWFnZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1hZ2Uu
Z2V0KCk7IH0KLSAgICBib29sIGlzSW1hZ2VWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIGltYWdlKCkg
JiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBpbWFnZSgpLT5jYWNoZWRJbWFnZSgpLT5oYXNJ
bWFnZSgpOyB9CisKKyAgICBib29sIGlzSW1hZ2VWYWxpZCgpIGNvbnN0IHsgCisgICAgICAgIGlm
ICghaW1hZ2UoKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYgKGltYWdl
KCktPmlzQ2FjaGVkSW1hZ2UoKSB8fCBpbWFnZSgpLT5pc0NhY2hlZEltYWdlU2V0KCkpCisgICAg
ICAgICAgICByZXR1cm4gaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBpbWFnZSgpLT5jYWNoZWRJ
bWFnZSgpLT5oYXNJbWFnZSgpOworICAgICAgICByZXR1cm4gaW1hZ2UoKS0+aXNHZW5lcmF0ZWRJ
bWFnZSgpOworICAgIH0KKwogICAgIHZvaWQgc2V0SW1hZ2UoUGFzc1JlZlB0cjxTdHlsZUltYWdl
PiBpbWFnZSkKICAgICB7CiAgICAgICAgIEFTU0VSVCh0eXBlKCkgPT0gSW1hZ2UpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229561</attachid>
            <date>2014-04-17 11:06:52 -0700</date>
            <delta_ts>2014-04-17 14:29:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>10591</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYzFhNjAxZC4uMjQ1OGI3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTA0
LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBBZGQgcGFyc2luZyBzdXBwb3J0IGZvciBncmFkaWVudHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTQ0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3Bh
cnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTE2ICBP
bGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxlIEVTNiBmZWF0
dXJlOkFycmF5LnByb3RvdHlwZS5maWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50
eHQKaW5kZXggMTg2NDBjMC4uOTM2NmY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVj
dGVkLnR4dApAQCAtMTY3LDYgKzE2NywxMCBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAi
cG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBn
ZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1hcmdpbi1ib3ggcG9s
eWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24oMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCBibHVlKSIp
IGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgYmx1ZSkiCitQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0
byByaWdodCwgcmVkLCBibHVlKSIpIGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwg
Ymx1ZSkiCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJyYWRpYWwt
Z3JhZGllbnQoYXQgMTBweCAyMHB4LCByZWQgMCUsIGJsdWUgNTAlLCBncmVlbiA5NSUpIikgaXMg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiCitQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiKSBpcyAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUwJSwg
Z3JlZW4gOTUlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVC
YXNlVVJMKGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVy
bCgnaW1hZ2UnKSIpKSBpcyAidXJsKGltYWdlKSIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1vdXRzaWRlIiwgImNhbGMoKSIpIGlzICIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCmluZGV4IDc5YmRmZmIuLmFl
NTQ2MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy10ZXN0LXV0aWxzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy10ZXN0LXV0aWxzLmpzCkBAIC05NCw3ICs5NCwxMCBAQCB2YXIgdmFsaWRTaGFwZVZhbHVl
cyA9IFsKICAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRl
bnQtYm94Il0sCiAgICAgWyJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmctYm94IHBvbHlnb24oMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBw
YWRkaW5nLWJveCJdLAogICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0sCisKKyAgICAibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZWQsIGJs
dWUpIiwKKyAgICAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUw
JSwgZ3JlZW4gOTUlKSIKIF07CiAKIC8vIEludmFsaWQgdmFsdWVzIGZvciBzaGFwZS1vdXRzaWRl
LiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3ODZmMmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRl
LWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1leHBlY3RlZC5odG1sCkBAIC0w
LDAgKzEsMjIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNp
bWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDUxcHg7IC8qIHNoYXBl
LW91dHNpZGUgaW50ZXJ2YWxzIGRlcml2ZWQgZnJvbSBpbWFnZXMgYXJlIGVuZC1wb2ludCBleGNs
dXNpdmUgKi8KKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgd2lkdGg6IDYwMHB4OworICAgIGNvbG9yOiBn
cmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50Ij4KKyAgPGRpdiBpZD0iaW1hZ2Ut
c2hhcGUiPjwvZGl2PgorICBYPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9z
aGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTU0Mjg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZs
b2F0OiBsZWZ0OworICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogbGluZWFyLWdyYWRpZW50KHRv
IHJpZ2h0LCByZ2JhKDAsIDAsIDI1NSwgMSksIHJnYmEoMCwgMCwgMjU1LCAwKSk7CisgICAgLXdl
YmtpdC1zaGFwZS1pbWFnZS10aHJlc2hvbGQ6IDAuNTsKKyAgICB3aWR0aDogMTAwcHg7CisgICAg
aGVpZ2h0OiAxMDBweDsKK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUwcHgvMSBBaGVtLCBz
YW5zLXNlcmlmOworICAgIHdpZHRoOiA2MDBweDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0
eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4K
KyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU3
ZmNkYjUuLjA3ZDFmNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0wNC0xNyAg
SGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10g
QWRkIHBhcnNpbmcgc3VwcG9ydCBmb3IgZ3JhZGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0NDQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBzaGFwZS1vdXRzaWRl
IGdyYWRpZW50IHZhbHVlcy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sCisKKyAgICAgICAg
KiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBs
eVByb3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOgorICAgICAgICAqIHJlbmRlcmluZy9zaGFwZXMv
U2hhcGVPdXRzaWRlSW5mby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjaGVja1NoYXBlSW1hZ2VP
cmlnaW4pOgorICAgICAgICAoV2ViQ29yZTo6Z2V0U2hhcGVJbWFnZUFuZFJlY3QpOgorICAgICAg
ICAoV2ViQ29yZTo6U2hhcGVPdXRzaWRlSW5mbzo6aXNFbmFibGVkRm9yKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVWYWx1
ZTo6aXNJbWFnZVZhbGlkKToKKwogMjAxNC0wNC0xNiAgQmVtIEpvbmVzLUJleSAgPGJqb25lc2Jl
QGFkb2JlLmNvbT4KIAogICAgICAgICBGaXggQ29kZUdlbmVyYXRvci5wbSB0byBvbmx5IHdyaXRl
IGZpbGVzIGlmIHRoZSBnZW5lcmF0ZWQgY29udGVudCBoYXMgY2hhbmdlZApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmluZGV4IDBhYzM5ZDEuLjdhMjI0
ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAK
QEAgLTIxNzgsNyArMjE3OCw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgIENTU1ByaW1pdGl2ZVZh
bHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWUpOwogICAgICAg
ICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVBdXRvKQog
ICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVzb2x2ZXItPnN0eWxlKCksIDApOwotICAg
ICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0ltYWdlVmFsdWUoKSB8fCB2YWx1ZS0+aXNJbWFnZVNl
dFZhbHVlKCkpIHsKKyAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+aXNJbWFnZVZhbHVlKCkgfHwg
dmFsdWUtPmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIHx8IHZhbHVlLT5pc0ltYWdlU2V0VmFsdWUo
KSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNoYXBlID0gU2hhcGVWYWx1ZTo6
Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUltYWdlKHByb3BlcnR5LCB2YWx1
ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgc2hhcGUu
cmVsZWFzZSgpKTsKICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+aXNWYWx1ZUxpc3QoKSkgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJ
bmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFwZXMvU2hhcGVPdXRzaWRlSW5m
by5jcHAKaW5kZXggMzcyMzVlMC4uMDdjMTk3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3BwCkBAIC00MCw2ICs0MCw3IEBA
CiAjaW5jbHVkZSAiUmVuZGVyQm94LmgiCiAjaW5jbHVkZSAiUmVuZGVySW1hZ2UuaCIKICNpbmNs
dWRlICJSZW5kZXJSZWdpb24uaCIKKyNpbmNsdWRlICJTdHlsZUdlbmVyYXRlZEltYWdlLmgiCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTIwLDggKzEyMSwxMiBAQCB2b2lkIFNoYXBlT3V0
c2lkZUluZm86OnNldFJlZmVyZW5jZUJveExvZ2ljYWxTaXplKExheW91dFNpemUgbmV3UmVmZXJl
bmNlQm94TG9naQogICAgIG1fcmVmZXJlbmNlQm94TG9naWNhbFNpemUgPSBuZXdSZWZlcmVuY2VC
b3hMb2dpY2FsU2l6ZTsKIH0KIAotc3RhdGljIGlubGluZSBib29sIGNoZWNrU2hhcGVJbWFnZU9y
aWdpbihEb2N1bWVudCYgZG9jdW1lbnQsIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSkKK3N0YXRp
YyBpbmxpbmUgYm9vbCBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oRG9jdW1lbnQmIGRvY3VtZW50LCBj
b25zdCBTaGFwZVZhbHVlJiBzaGFwZVZhbHVlKQogeworICAgIGlmIChzaGFwZVZhbHVlLmltYWdl
KCktPmlzR2VuZXJhdGVkSW1hZ2UoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBDYWNo
ZWRJbWFnZSYgY2FjaGVkSW1hZ2UgPSAqKHNoYXBlVmFsdWUuaW1hZ2UoKS0+Y2FjaGVkSW1hZ2Uo
KSk7CiAgICAgaWYgKGNhY2hlZEltYWdlLmlzT3JpZ2luQ2xlYW4oZG9jdW1lbnQuc2VjdXJpdHlP
cmlnaW4oKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCkBAIC0xNDAsNyArMTQ1LDEyIEBAIHN0
YXRpYyB2b2lkIGdldFNoYXBlSW1hZ2VBbmRSZWN0KGNvbnN0IFNoYXBlVmFsdWUmIHNoYXBlVmFs
dWUsIGNvbnN0IFJlbmRlckJveCYKICAgICBjb25zdCBMYXlvdXRTaXplJiBpbWFnZVNpemUgPSBy
ZW5kZXJCb3guY2FsY3VsYXRlSW1hZ2VJbnRyaW5zaWNEaW1lbnNpb25zKHN0eWxlSW1hZ2UsIHJv
dW5kZWRJbnRTaXplKHJlZmVyZW5jZUJveFNpemUpLCBSZW5kZXJJbWFnZTo6U2NhbGVCeUVmZmVj
dGl2ZVpvb20pOwogICAgIHN0eWxlSW1hZ2UtPnNldENvbnRhaW5lclNpemVGb3JSZW5kZXJlcigm
cmVuZGVyQm94LCBpbWFnZVNpemUsIHJlbmRlckJveC5zdHlsZSgpLmVmZmVjdGl2ZVpvb20oKSk7
CiAKLSAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZEltYWdlKCktPmltYWdlRm9yUmVuZGVy
ZXIoJnJlbmRlckJveCk7CisgICAgaW1hZ2UgPSBudWxscHRyOworICAgIGlmIChzdHlsZUltYWdl
LT5pc0NhY2hlZEltYWdlKCkgfHwgc3R5bGVJbWFnZS0+aXNDYWNoZWRJbWFnZVNldCgpKQorICAg
ICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZEltYWdlKCktPmltYWdlRm9yUmVuZGVyZXIo
JnJlbmRlckJveCk7CisgICAgZWxzZSBpZiAoc3R5bGVJbWFnZS0+aXNHZW5lcmF0ZWRJbWFnZSgp
KQorICAgICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmltYWdlKGNvbnN0X2Nhc3Q8UmVuZGVyQm94
Kj4oJnJlbmRlckJveCksIGltYWdlU2l6ZSkuZ2V0KCk7CisKICAgICBpZiAocmVuZGVyQm94Lmlz
UmVuZGVySW1hZ2UoKSkKICAgICAgICAgcmVjdCA9IHRvUmVuZGVySW1hZ2UoJnJlbmRlckJveCkt
PnJlcGxhY2VkQ29udGVudFJlY3QocmVuZGVyQm94LmludHJpbnNpY1NpemUoKSk7CiAgICAgZWxz
ZQpAQCAtMjkzLDcgKzMwMyw3IEBAIGJvb2wgU2hhcGVPdXRzaWRlSW5mbzo6aXNFbmFibGVkRm9y
KGNvbnN0IFJlbmRlckJveCYgYm94KQogCiAgICAgc3dpdGNoIChzaGFwZVZhbHVlLT50eXBlKCkp
IHsKICAgICBjYXNlIFNoYXBlVmFsdWU6OlNoYXBlOiByZXR1cm4gc2hhcGVWYWx1ZS0+c2hhcGUo
KTsKLSAgICBjYXNlIFNoYXBlVmFsdWU6OkltYWdlOiByZXR1cm4gc2hhcGVWYWx1ZS0+aXNJbWFn
ZVZhbGlkKCkgJiYgY2hlY2tTaGFwZUltYWdlT3JpZ2luKGJveC5kb2N1bWVudCgpLCAqKHNoYXBl
VmFsdWUtPmltYWdlKCktPmNhY2hlZEltYWdlKCkpKTsKKyAgICBjYXNlIFNoYXBlVmFsdWU6Oklt
YWdlOiByZXR1cm4gc2hhcGVWYWx1ZS0+aXNJbWFnZVZhbGlkKCkgJiYgY2hlY2tTaGFwZUltYWdl
T3JpZ2luKGJveC5kb2N1bWVudCgpLCAqc2hhcGVWYWx1ZSk7CiAgICAgY2FzZSBTaGFwZVZhbHVl
OjpCb3g6IHJldHVybiB0cnVlOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TaGFwZVZhbHVlLmgKaW5kZXggZDYyNzRmZS4uZWM4M2QwYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCkBAIC02Nyw3ICs2NywxNiBAQCBwdWJs
aWM6CiAgICAgQ1NTQm94VHlwZSBjc3NCb3goKSBjb25zdCB7IHJldHVybiBtX2Nzc0JveDsgfQog
CiAgICAgU3R5bGVJbWFnZSogaW1hZ2UoKSBjb25zdCB7IHJldHVybiBtX2ltYWdlLmdldCgpOyB9
Ci0gICAgYm9vbCBpc0ltYWdlVmFsaWQoKSBjb25zdCB7IHJldHVybiBpbWFnZSgpICYmIGltYWdl
KCktPmNhY2hlZEltYWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKTsg
fQorCisgICAgYm9vbCBpc0ltYWdlVmFsaWQoKSBjb25zdAorICAgIHsKKyAgICAgICAgaWYgKCFp
bWFnZSgpKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBpZiAoaW1hZ2UoKS0+
aXNDYWNoZWRJbWFnZSgpIHx8IGltYWdlKCktPmlzQ2FjaGVkSW1hZ2VTZXQoKSkKKyAgICAgICAg
ICAgIHJldHVybiBpbWFnZSgpLT5jYWNoZWRJbWFnZSgpICYmIGltYWdlKCktPmNhY2hlZEltYWdl
KCktPmhhc0ltYWdlKCk7CisgICAgICAgIHJldHVybiBpbWFnZSgpLT5pc0dlbmVyYXRlZEltYWdl
KCk7CisgICAgfQorCiAgICAgdm9pZCBzZXRJbWFnZShQYXNzUmVmUHRyPFN0eWxlSW1hZ2U+IGlt
YWdlKQogICAgIHsKICAgICAgICAgQVNTRVJUKHR5cGUoKSA9PSBJbWFnZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229578</attachid>
            <date>2014-04-17 14:29:31 -0700</date>
            <delta_ts>2014-04-18 12:29:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>10626</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYzFhNjAxZC4uMjQ1OGI3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTA0
LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBBZGQgcGFyc2luZyBzdXBwb3J0IGZvciBncmFkaWVudHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTQ0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3Bh
cnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTE2ICBP
bGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxlIEVTNiBmZWF0
dXJlOkFycmF5LnByb3RvdHlwZS5maWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50
eHQKaW5kZXggMTg2NDBjMC4uOTM2NmY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVj
dGVkLnR4dApAQCAtMTY3LDYgKzE2NywxMCBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAi
cG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBn
ZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1hcmdpbi1ib3ggcG9s
eWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24oMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCBibHVlKSIp
IGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgYmx1ZSkiCitQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0
byByaWdodCwgcmVkLCBibHVlKSIpIGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwg
Ymx1ZSkiCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJyYWRpYWwt
Z3JhZGllbnQoYXQgMTBweCAyMHB4LCByZWQgMCUsIGJsdWUgNTAlLCBncmVlbiA5NSUpIikgaXMg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiCitQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiKSBpcyAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUwJSwg
Z3JlZW4gOTUlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVC
YXNlVVJMKGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVy
bCgnaW1hZ2UnKSIpKSBpcyAidXJsKGltYWdlKSIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1vdXRzaWRlIiwgImNhbGMoKSIpIGlzICIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCmluZGV4IDc5YmRmZmIuLmFl
NTQ2MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy10ZXN0LXV0aWxzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy10ZXN0LXV0aWxzLmpzCkBAIC05NCw3ICs5NCwxMCBAQCB2YXIgdmFsaWRTaGFwZVZhbHVl
cyA9IFsKICAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRl
bnQtYm94Il0sCiAgICAgWyJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmctYm94IHBvbHlnb24oMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBw
YWRkaW5nLWJveCJdLAogICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0sCisKKyAgICAibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZWQsIGJs
dWUpIiwKKyAgICAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUw
JSwgZ3JlZW4gOTUlKSIKIF07CiAKIC8vIEludmFsaWQgdmFsdWVzIGZvciBzaGFwZS1vdXRzaWRl
LiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3ODZmMmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRl
LWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1leHBlY3RlZC5odG1sCkBAIC0w
LDAgKzEsMjIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNp
bWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDUxcHg7IC8qIHNoYXBl
LW91dHNpZGUgaW50ZXJ2YWxzIGRlcml2ZWQgZnJvbSBpbWFnZXMgYXJlIGVuZC1wb2ludCBleGNs
dXNpdmUgKi8KKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgd2lkdGg6IDYwMHB4OworICAgIGNvbG9yOiBn
cmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50Ij4KKyAgPGRpdiBpZD0iaW1hZ2Ut
c2hhcGUiPjwvZGl2PgorICBYPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9z
aGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTU0Mjg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZs
b2F0OiBsZWZ0OworICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogbGluZWFyLWdyYWRpZW50KHRv
IHJpZ2h0LCByZ2JhKDAsIDAsIDI1NSwgMSksIHJnYmEoMCwgMCwgMjU1LCAwKSk7CisgICAgLXdl
YmtpdC1zaGFwZS1pbWFnZS10aHJlc2hvbGQ6IDAuNTsKKyAgICB3aWR0aDogMTAwcHg7CisgICAg
aGVpZ2h0OiAxMDBweDsKK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUwcHgvMSBBaGVtLCBz
YW5zLXNlcmlmOworICAgIHdpZHRoOiA2MDBweDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0
eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4K
KyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU3
ZmNkYjUuLjU4NDZlNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0wNC0xNyAg
SGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10g
QWRkIHBhcnNpbmcgc3VwcG9ydCBmb3IgZ3JhZGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0NDQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBzaGFwZS1vdXRzaWRl
IGdyYWRpZW50IHZhbHVlcy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sCisKKyAgICAgICAg
KiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBs
eVByb3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOiBBY2NlcHQgZ2VuZXJhdGVkIGltYWdlcyBhcyBz
aGFwZS1vdXRzaWRlIHZhbHVlcy4KKyAgICAgICAgKiByZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0
c2lkZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y2hlY2tTaGFwZUltYWdlT3JpZ2luKTog
R2VuZXJhdGVkIGltYWdlcyBnZXQgYSBwYXNzLCBvdGhlcnMgZG8gbm90LgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0U2hhcGVJbWFnZUFuZFJlY3QpOiBVc2UgU3R5bGVJbWFnZTo6aW1hZ2UoKSB0byBn
ZXQgYSBnZW5lcmF0ZWQgaW1hZ2UuCisgICAgICAgIChXZWJDb3JlOjpTaGFwZU91dHNpZGVJbmZv
Ojppc0VuYWJsZWRGb3IpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6
CisgICAgICAgIChXZWJDb3JlOjpTaGFwZVZhbHVlOjppc0ltYWdlVmFsaWQpOiBHZW5lcmF0ZWQg
aW1hZ2VzIGFyZSBhbHdheXMgY29uc2lkZXJlZCB2YWxpZC4KKwogMjAxNC0wNC0xNiAgQmVtIEpv
bmVzLUJleSAgPGJqb25lc2JlQGFkb2JlLmNvbT4KIAogICAgICAgICBGaXggQ29kZUdlbmVyYXRv
ci5wbSB0byBvbmx5IHdyaXRlIGZpbGVzIGlmIHRoZSBnZW5lcmF0ZWQgY29udGVudCBoYXMgY2hh
bmdlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmlu
ZGV4IDBhYzM5ZDEuLjdhMjI0ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXBy
ZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKQEAgLTIxNzgsNyArMjE3OCw3IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFs
dWUodmFsdWUpOwogICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkg
PT0gQ1NTVmFsdWVBdXRvKQogICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVzb2x2ZXIt
PnN0eWxlKCksIDApOwotICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0ltYWdlVmFsdWUoKSB8
fCB2YWx1ZS0+aXNJbWFnZVNldFZhbHVlKCkpIHsKKyAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNJbWFnZVZhbHVlKCkgfHwgdmFsdWUtPmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIHx8IHZhbHVl
LT5pc0ltYWdlU2V0VmFsdWUoKSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNo
YXBlID0gU2hhcGVWYWx1ZTo6Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUlt
YWdlKHByb3BlcnR5LCB2YWx1ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZl
ci0+c3R5bGUoKSwgc2hhcGUucmVsZWFzZSgpKTsKICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNWYWx1ZUxpc3QoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3No
YXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFw
ZXMvU2hhcGVPdXRzaWRlSW5mby5jcHAKaW5kZXggMzcyMzVlMC4uODg5NWM4NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3Bw
CkBAIC0xMjAsOCArMTIwLDEyIEBAIHZvaWQgU2hhcGVPdXRzaWRlSW5mbzo6c2V0UmVmZXJlbmNl
Qm94TG9naWNhbFNpemUoTGF5b3V0U2l6ZSBuZXdSZWZlcmVuY2VCb3hMb2dpCiAgICAgbV9yZWZl
cmVuY2VCb3hMb2dpY2FsU2l6ZSA9IG5ld1JlZmVyZW5jZUJveExvZ2ljYWxTaXplOwogfQogCi1z
dGF0aWMgaW5saW5lIGJvb2wgY2hlY2tTaGFwZUltYWdlT3JpZ2luKERvY3VtZW50JiBkb2N1bWVu
dCwgQ2FjaGVkSW1hZ2UmIGNhY2hlZEltYWdlKQorc3RhdGljIGlubGluZSBib29sIGNoZWNrU2hh
cGVJbWFnZU9yaWdpbihEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFNoYXBlVmFsdWUmIHNoYXBl
VmFsdWUpCiB7CisgICAgaWYgKHNoYXBlVmFsdWUuaW1hZ2UoKS0+aXNHZW5lcmF0ZWRJbWFnZSgp
KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSA9
ICooc2hhcGVWYWx1ZS5pbWFnZSgpLT5jYWNoZWRJbWFnZSgpKTsKICAgICBpZiAoY2FjaGVkSW1h
Z2UuaXNPcmlnaW5DbGVhbihkb2N1bWVudC5zZWN1cml0eU9yaWdpbigpKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAKQEAgLTE0MCw3ICsxNDQsMTIgQEAgc3RhdGljIHZvaWQgZ2V0U2hhcGVJbWFn
ZUFuZFJlY3QoY29uc3QgU2hhcGVWYWx1ZSYgc2hhcGVWYWx1ZSwgY29uc3QgUmVuZGVyQm94Jgog
ICAgIGNvbnN0IExheW91dFNpemUmIGltYWdlU2l6ZSA9IHJlbmRlckJveC5jYWxjdWxhdGVJbWFn
ZUludHJpbnNpY0RpbWVuc2lvbnMoc3R5bGVJbWFnZSwgcm91bmRlZEludFNpemUocmVmZXJlbmNl
Qm94U2l6ZSksIFJlbmRlckltYWdlOjpTY2FsZUJ5RWZmZWN0aXZlWm9vbSk7CiAgICAgc3R5bGVJ
bWFnZS0+c2V0Q29udGFpbmVyU2l6ZUZvclJlbmRlcmVyKCZyZW5kZXJCb3gsIGltYWdlU2l6ZSwg
cmVuZGVyQm94LnN0eWxlKCkuZWZmZWN0aXZlWm9vbSgpKTsKIAotICAgIGltYWdlID0gc3R5bGVJ
bWFnZS0+Y2FjaGVkSW1hZ2UoKS0+aW1hZ2VGb3JSZW5kZXJlcigmcmVuZGVyQm94KTsKKyAgICBp
bWFnZSA9IG51bGxwdHI7CisgICAgaWYgKHN0eWxlSW1hZ2UtPmlzQ2FjaGVkSW1hZ2UoKSB8fCBz
dHlsZUltYWdlLT5pc0NhY2hlZEltYWdlU2V0KCkpCisgICAgICAgIGltYWdlID0gc3R5bGVJbWFn
ZS0+Y2FjaGVkSW1hZ2UoKS0+aW1hZ2VGb3JSZW5kZXJlcigmcmVuZGVyQm94KTsKKyAgICBlbHNl
IGlmIChzdHlsZUltYWdlLT5pc0dlbmVyYXRlZEltYWdlKCkpCisgICAgICAgIGltYWdlID0gc3R5
bGVJbWFnZS0+aW1hZ2UoY29uc3RfY2FzdDxSZW5kZXJCb3gqPigmcmVuZGVyQm94KSwgaW1hZ2VT
aXplKS5nZXQoKTsKKwogICAgIGlmIChyZW5kZXJCb3guaXNSZW5kZXJJbWFnZSgpKQogICAgICAg
ICByZWN0ID0gdG9SZW5kZXJJbWFnZSgmcmVuZGVyQm94KS0+cmVwbGFjZWRDb250ZW50UmVjdChy
ZW5kZXJCb3guaW50cmluc2ljU2l6ZSgpKTsKICAgICBlbHNlCkBAIC0yOTMsNyArMzAyLDcgQEAg
Ym9vbCBTaGFwZU91dHNpZGVJbmZvOjppc0VuYWJsZWRGb3IoY29uc3QgUmVuZGVyQm94JiBib3gp
CiAKICAgICBzd2l0Y2ggKHNoYXBlVmFsdWUtPnR5cGUoKSkgewogICAgIGNhc2UgU2hhcGVWYWx1
ZTo6U2hhcGU6IHJldHVybiBzaGFwZVZhbHVlLT5zaGFwZSgpOwotICAgIGNhc2UgU2hhcGVWYWx1
ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVlLT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBl
SW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCksICooc2hhcGVWYWx1ZS0+aW1hZ2UoKS0+Y2FjaGVk
SW1hZ2UoKSkpOworICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVl
LT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCks
ICpzaGFwZVZhbHVlKTsKICAgICBjYXNlIFNoYXBlVmFsdWU6OkJveDogcmV0dXJuIHRydWU7CiAg
ICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVW
YWx1ZS5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaAppbmRl
eCBkNjI3NGZlLi5lYzgzZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU2hhcGVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9T
aGFwZVZhbHVlLmgKQEAgLTY3LDcgKzY3LDE2IEBAIHB1YmxpYzoKICAgICBDU1NCb3hUeXBlIGNz
c0JveCgpIGNvbnN0IHsgcmV0dXJuIG1fY3NzQm94OyB9CiAKICAgICBTdHlsZUltYWdlKiBpbWFn
ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1hZ2UuZ2V0KCk7IH0KLSAgICBib29sIGlzSW1hZ2VWYWxp
ZCgpIGNvbnN0IHsgcmV0dXJuIGltYWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBp
bWFnZSgpLT5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpOyB9CisKKyAgICBib29sIGlzSW1hZ2VW
YWxpZCgpIGNvbnN0CisgICAgeworICAgICAgICBpZiAoIWltYWdlKCkpCisgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgICAgIGlmIChpbWFnZSgpLT5pc0NhY2hlZEltYWdlKCkgfHwgaW1h
Z2UoKS0+aXNDYWNoZWRJbWFnZVNldCgpKQorICAgICAgICAgICAgcmV0dXJuIGltYWdlKCktPmNh
Y2hlZEltYWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKTsKKyAgICAg
ICAgcmV0dXJuIGltYWdlKCktPmlzR2VuZXJhdGVkSW1hZ2UoKTsKKyAgICB9CisKICAgICB2b2lk
IHNldEltYWdlKFBhc3NSZWZQdHI8U3R5bGVJbWFnZT4gaW1hZ2UpCiAgICAgewogICAgICAgICBB
U1NFUlQodHlwZSgpID09IEltYWdlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229662</attachid>
            <date>2014-04-18 12:29:31 -0700</date>
            <delta_ts>2014-04-18 15:30:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>10677</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYzFhNjAxZC4uMjQ1OGI3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTA0
LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBBZGQgcGFyc2luZyBzdXBwb3J0IGZvciBncmFkaWVudHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTQ0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3Bh
cnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTE2ICBP
bGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxlIEVTNiBmZWF0
dXJlOkFycmF5LnByb3RvdHlwZS5maWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50
eHQKaW5kZXggMTg2NDBjMC4uOTM2NmY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVj
dGVkLnR4dApAQCAtMTY3LDYgKzE2NywxMCBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAi
cG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBn
ZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1hcmdpbi1ib3ggcG9s
eWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24oMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCBibHVlKSIp
IGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgYmx1ZSkiCitQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0
byByaWdodCwgcmVkLCBibHVlKSIpIGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwg
Ymx1ZSkiCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJyYWRpYWwt
Z3JhZGllbnQoYXQgMTBweCAyMHB4LCByZWQgMCUsIGJsdWUgNTAlLCBncmVlbiA5NSUpIikgaXMg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiCitQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiKSBpcyAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUwJSwg
Z3JlZW4gOTUlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVC
YXNlVVJMKGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVy
bCgnaW1hZ2UnKSIpKSBpcyAidXJsKGltYWdlKSIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1vdXRzaWRlIiwgImNhbGMoKSIpIGlzICIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCmluZGV4IDc5YmRmZmIuLmFl
NTQ2MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy10ZXN0LXV0aWxzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy10ZXN0LXV0aWxzLmpzCkBAIC05NCw3ICs5NCwxMCBAQCB2YXIgdmFsaWRTaGFwZVZhbHVl
cyA9IFsKICAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRl
bnQtYm94Il0sCiAgICAgWyJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmctYm94IHBvbHlnb24oMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBw
YWRkaW5nLWJveCJdLAogICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0sCisKKyAgICAibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZWQsIGJs
dWUpIiwKKyAgICAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUw
JSwgZ3JlZW4gOTUlKSIKIF07CiAKIC8vIEludmFsaWQgdmFsdWVzIGZvciBzaGFwZS1vdXRzaWRl
LiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3ODZmMmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRl
LWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1leHBlY3RlZC5odG1sCkBAIC0w
LDAgKzEsMjIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNp
bWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDUxcHg7IC8qIHNoYXBl
LW91dHNpZGUgaW50ZXJ2YWxzIGRlcml2ZWQgZnJvbSBpbWFnZXMgYXJlIGVuZC1wb2ludCBleGNs
dXNpdmUgKi8KKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgd2lkdGg6IDYwMHB4OworICAgIGNvbG9yOiBn
cmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50Ij4KKyAgPGRpdiBpZD0iaW1hZ2Ut
c2hhcGUiPjwvZGl2PgorICBYPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9z
aGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTU0Mjg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZs
b2F0OiBsZWZ0OworICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogbGluZWFyLWdyYWRpZW50KHRv
IHJpZ2h0LCByZ2JhKDAsIDAsIDI1NSwgMSksIHJnYmEoMCwgMCwgMjU1LCAwKSk7CisgICAgLXdl
YmtpdC1zaGFwZS1pbWFnZS10aHJlc2hvbGQ6IDAuNTsKKyAgICB3aWR0aDogMTAwcHg7CisgICAg
aGVpZ2h0OiAxMDBweDsKK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUwcHgvMSBBaGVtLCBz
YW5zLXNlcmlmOworICAgIHdpZHRoOiA2MDBweDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0
eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4K
KyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU3
ZmNkYjUuLjU4NDZlNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0wNC0xNyAg
SGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10g
QWRkIHBhcnNpbmcgc3VwcG9ydCBmb3IgZ3JhZGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0NDQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBzaGFwZS1vdXRzaWRl
IGdyYWRpZW50IHZhbHVlcy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sCisKKyAgICAgICAg
KiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBs
eVByb3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOiBBY2NlcHQgZ2VuZXJhdGVkIGltYWdlcyBhcyBz
aGFwZS1vdXRzaWRlIHZhbHVlcy4KKyAgICAgICAgKiByZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0
c2lkZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y2hlY2tTaGFwZUltYWdlT3JpZ2luKTog
R2VuZXJhdGVkIGltYWdlcyBnZXQgYSBwYXNzLCBvdGhlcnMgZG8gbm90LgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0U2hhcGVJbWFnZUFuZFJlY3QpOiBVc2UgU3R5bGVJbWFnZTo6aW1hZ2UoKSB0byBn
ZXQgYSBnZW5lcmF0ZWQgaW1hZ2UuCisgICAgICAgIChXZWJDb3JlOjpTaGFwZU91dHNpZGVJbmZv
Ojppc0VuYWJsZWRGb3IpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6
CisgICAgICAgIChXZWJDb3JlOjpTaGFwZVZhbHVlOjppc0ltYWdlVmFsaWQpOiBHZW5lcmF0ZWQg
aW1hZ2VzIGFyZSBhbHdheXMgY29uc2lkZXJlZCB2YWxpZC4KKwogMjAxNC0wNC0xNiAgQmVtIEpv
bmVzLUJleSAgPGJqb25lc2JlQGFkb2JlLmNvbT4KIAogICAgICAgICBGaXggQ29kZUdlbmVyYXRv
ci5wbSB0byBvbmx5IHdyaXRlIGZpbGVzIGlmIHRoZSBnZW5lcmF0ZWQgY29udGVudCBoYXMgY2hh
bmdlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmlu
ZGV4IDBhYzM5ZDEuLjdhMjI0ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXBy
ZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKQEAgLTIxNzgsNyArMjE3OCw3IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFs
dWUodmFsdWUpOwogICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkg
PT0gQ1NTVmFsdWVBdXRvKQogICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVzb2x2ZXIt
PnN0eWxlKCksIDApOwotICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0ltYWdlVmFsdWUoKSB8
fCB2YWx1ZS0+aXNJbWFnZVNldFZhbHVlKCkpIHsKKyAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNJbWFnZVZhbHVlKCkgfHwgdmFsdWUtPmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIHx8IHZhbHVl
LT5pc0ltYWdlU2V0VmFsdWUoKSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNo
YXBlID0gU2hhcGVWYWx1ZTo6Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUlt
YWdlKHByb3BlcnR5LCB2YWx1ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZl
ci0+c3R5bGUoKSwgc2hhcGUucmVsZWFzZSgpKTsKICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNWYWx1ZUxpc3QoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3No
YXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFw
ZXMvU2hhcGVPdXRzaWRlSW5mby5jcHAKaW5kZXggMzcyMzVlMC4uM2ExMGQ5MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3Bw
CkBAIC0xMjAsOCArMTIwLDE0IEBAIHZvaWQgU2hhcGVPdXRzaWRlSW5mbzo6c2V0UmVmZXJlbmNl
Qm94TG9naWNhbFNpemUoTGF5b3V0U2l6ZSBuZXdSZWZlcmVuY2VCb3hMb2dpCiAgICAgbV9yZWZl
cmVuY2VCb3hMb2dpY2FsU2l6ZSA9IG5ld1JlZmVyZW5jZUJveExvZ2ljYWxTaXplOwogfQogCi1z
dGF0aWMgaW5saW5lIGJvb2wgY2hlY2tTaGFwZUltYWdlT3JpZ2luKERvY3VtZW50JiBkb2N1bWVu
dCwgQ2FjaGVkSW1hZ2UmIGNhY2hlZEltYWdlKQorc3RhdGljIGlubGluZSBib29sIGNoZWNrU2hh
cGVJbWFnZU9yaWdpbihEb2N1bWVudCYgZG9jdW1lbnQsIFN0eWxlSW1hZ2UqIHN0eWxlSW1hZ2Up
CiB7CisgICAgQVNTRVJUKHN0eWxlSW1hZ2UpOworICAgIGlmIChzdHlsZUltYWdlLT5pc0dlbmVy
YXRlZEltYWdlKCkpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgQVNTRVJUKHN0eWxlSW1h
Z2UtPmNhY2hlZEltYWdlKCkpOworICAgIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSA9ICooc3R5
bGVJbWFnZS0+Y2FjaGVkSW1hZ2UoKSk7CiAgICAgaWYgKGNhY2hlZEltYWdlLmlzT3JpZ2luQ2xl
YW4oZG9jdW1lbnQuc2VjdXJpdHlPcmlnaW4oKSkpCiAgICAgICAgIHJldHVybiB0cnVlOwogCkBA
IC0xNDAsNyArMTQ2LDEyIEBAIHN0YXRpYyB2b2lkIGdldFNoYXBlSW1hZ2VBbmRSZWN0KGNvbnN0
IFNoYXBlVmFsdWUmIHNoYXBlVmFsdWUsIGNvbnN0IFJlbmRlckJveCYKICAgICBjb25zdCBMYXlv
dXRTaXplJiBpbWFnZVNpemUgPSByZW5kZXJCb3guY2FsY3VsYXRlSW1hZ2VJbnRyaW5zaWNEaW1l
bnNpb25zKHN0eWxlSW1hZ2UsIHJvdW5kZWRJbnRTaXplKHJlZmVyZW5jZUJveFNpemUpLCBSZW5k
ZXJJbWFnZTo6U2NhbGVCeUVmZmVjdGl2ZVpvb20pOwogICAgIHN0eWxlSW1hZ2UtPnNldENvbnRh
aW5lclNpemVGb3JSZW5kZXJlcigmcmVuZGVyQm94LCBpbWFnZVNpemUsIHJlbmRlckJveC5zdHls
ZSgpLmVmZmVjdGl2ZVpvb20oKSk7CiAKLSAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZElt
YWdlKCktPmltYWdlRm9yUmVuZGVyZXIoJnJlbmRlckJveCk7CisgICAgaW1hZ2UgPSBudWxscHRy
OworICAgIGlmIChzdHlsZUltYWdlLT5pc0NhY2hlZEltYWdlKCkgfHwgc3R5bGVJbWFnZS0+aXND
YWNoZWRJbWFnZVNldCgpKQorICAgICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmNhY2hlZEltYWdl
KCktPmltYWdlRm9yUmVuZGVyZXIoJnJlbmRlckJveCk7CisgICAgZWxzZSBpZiAoc3R5bGVJbWFn
ZS0+aXNHZW5lcmF0ZWRJbWFnZSgpKQorICAgICAgICBpbWFnZSA9IHN0eWxlSW1hZ2UtPmltYWdl
KGNvbnN0X2Nhc3Q8UmVuZGVyQm94Kj4oJnJlbmRlckJveCksIGltYWdlU2l6ZSkuZ2V0KCk7CisK
ICAgICBpZiAocmVuZGVyQm94LmlzUmVuZGVySW1hZ2UoKSkKICAgICAgICAgcmVjdCA9IHRvUmVu
ZGVySW1hZ2UoJnJlbmRlckJveCktPnJlcGxhY2VkQ29udGVudFJlY3QocmVuZGVyQm94LmludHJp
bnNpY1NpemUoKSk7CiAgICAgZWxzZQpAQCAtMjkzLDcgKzMwNCw3IEBAIGJvb2wgU2hhcGVPdXRz
aWRlSW5mbzo6aXNFbmFibGVkRm9yKGNvbnN0IFJlbmRlckJveCYgYm94KQogCiAgICAgc3dpdGNo
IChzaGFwZVZhbHVlLT50eXBlKCkpIHsKICAgICBjYXNlIFNoYXBlVmFsdWU6OlNoYXBlOiByZXR1
cm4gc2hhcGVWYWx1ZS0+c2hhcGUoKTsKLSAgICBjYXNlIFNoYXBlVmFsdWU6OkltYWdlOiByZXR1
cm4gc2hhcGVWYWx1ZS0+aXNJbWFnZVZhbGlkKCkgJiYgY2hlY2tTaGFwZUltYWdlT3JpZ2luKGJv
eC5kb2N1bWVudCgpLCAqKHNoYXBlVmFsdWUtPmltYWdlKCktPmNhY2hlZEltYWdlKCkpKTsKKyAg
ICBjYXNlIFNoYXBlVmFsdWU6OkltYWdlOiByZXR1cm4gc2hhcGVWYWx1ZS0+aXNJbWFnZVZhbGlk
KCkgJiYgY2hlY2tTaGFwZUltYWdlT3JpZ2luKGJveC5kb2N1bWVudCgpLCBzaGFwZVZhbHVlLT5p
bWFnZSgpKTsKICAgICBjYXNlIFNoYXBlVmFsdWU6OkJveDogcmV0dXJuIHRydWU7CiAgICAgfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5o
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaAppbmRleCBkNjI3
NGZlLi5lYzgzZDBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUv
U2hhcGVWYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZh
bHVlLmgKQEAgLTY3LDcgKzY3LDE2IEBAIHB1YmxpYzoKICAgICBDU1NCb3hUeXBlIGNzc0JveCgp
IGNvbnN0IHsgcmV0dXJuIG1fY3NzQm94OyB9CiAKICAgICBTdHlsZUltYWdlKiBpbWFnZSgpIGNv
bnN0IHsgcmV0dXJuIG1faW1hZ2UuZ2V0KCk7IH0KLSAgICBib29sIGlzSW1hZ2VWYWxpZCgpIGNv
bnN0IHsgcmV0dXJuIGltYWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBpbWFnZSgp
LT5jYWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpOyB9CisKKyAgICBib29sIGlzSW1hZ2VWYWxpZCgp
IGNvbnN0CisgICAgeworICAgICAgICBpZiAoIWltYWdlKCkpCisgICAgICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIGlmIChpbWFnZSgpLT5pc0NhY2hlZEltYWdlKCkgfHwgaW1hZ2UoKS0+
aXNDYWNoZWRJbWFnZVNldCgpKQorICAgICAgICAgICAgcmV0dXJuIGltYWdlKCktPmNhY2hlZElt
YWdlKCkgJiYgaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKS0+aGFzSW1hZ2UoKTsKKyAgICAgICAgcmV0
dXJuIGltYWdlKCktPmlzR2VuZXJhdGVkSW1hZ2UoKTsKKyAgICB9CisKICAgICB2b2lkIHNldElt
YWdlKFBhc3NSZWZQdHI8U3R5bGVJbWFnZT4gaW1hZ2UpCiAgICAgewogICAgICAgICBBU1NFUlQo
dHlwZSgpID09IEltYWdlKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229682</attachid>
            <date>2014-04-18 15:30:09 -0700</date>
            <delta_ts>2014-04-18 16:31:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>tmp.patch</filename>
            <type>text/plain</type>
            <size>10658</size>
            <attacher name="Hans Muller">giles_joplin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxYzFhNjAxZC4uMjQ1OGI3MiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTA0
LTE3ICBIYW5zIE11bGxlciAgPGhtdWxsZXJAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hh
cGVzXSBBZGQgcGFyc2luZyBzdXBwb3J0IGZvciBncmFkaWVudHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTQ0NAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3Bh
cnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBl
LW91dHNpZGUtZmxvYXRzL3NoYXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3No
YXBlLW91dHNpZGUtbGluZWFyLWdyYWRpZW50Lmh0bWw6IEFkZGVkLgorCiAyMDE0LTA0LTE2ICBP
bGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgU2ltcGxlIEVTNiBmZWF0
dXJlOkFycmF5LnByb3RvdHlwZS5maWxsCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50
eHQKaW5kZXggMTg2NDBjMC4uOTM2NmY4NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVj
dGVkLnR4dApAQCAtMTY3LDYgKzE2NywxMCBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMQogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAi
cG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBn
ZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1hcmdpbi1ib3ggcG9s
eWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24oMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCBibHVlKSIp
IGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgYmx1ZSkiCitQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImxpbmVhci1ncmFkaWVudCh0
byByaWdodCwgcmVkLCBibHVlKSIpIGlzICJsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwg
Ymx1ZSkiCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJyYWRpYWwt
Z3JhZGllbnQoYXQgMTBweCAyMHB4LCByZWQgMCUsIGJsdWUgNTAlLCBncmVlbiA5NSUpIikgaXMg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiCitQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InJhZGlhbC1ncmFkaWVudChhdCAxMHB4IDIwcHgsIHJlZCAwJSwgYmx1ZSA1MCUsIGdyZWVuIDk1
JSkiKSBpcyAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUwJSwg
Z3JlZW4gOTUlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVC
YXNlVVJMKGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVy
bCgnaW1hZ2UnKSIpKSBpcyAidXJsKGltYWdlKSIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1vdXRzaWRlIiwgImNhbGMoKSIpIGlzICIiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zh
c3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCmluZGV4IDc5YmRmZmIuLmFl
NTQ2MDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy10ZXN0LXV0aWxzLmpzCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy10ZXN0LXV0aWxzLmpzCkBAIC05NCw3ICs5NCwxMCBAQCB2YXIgdmFsaWRTaGFwZVZhbHVl
cyA9IFsKICAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRl
bnQtYm94Il0sCiAgICAgWyJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmctYm94IHBvbHlnb24oMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBw
YWRkaW5nLWJveCJdLAogICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbigwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24oMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbigwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0sCisKKyAgICAibGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZWQsIGJs
dWUpIiwKKyAgICAicmFkaWFsLWdyYWRpZW50KGF0IDEwcHggMjBweCwgcmVkIDAlLCBibHVlIDUw
JSwgZ3JlZW4gOTUlKSIKIF07CiAKIC8vIEludmFsaWQgdmFsdWVzIGZvciBzaGFwZS1vdXRzaWRl
LiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUKZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3NoYXBlLW91dHNpZGUtZmxvYXRzL3NoYXBlLW91
dHNpZGUtbGluZWFyLWdyYWRpZW50LWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3No
YXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1l
eHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3ODZmMmUK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRl
LWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC1leHBlY3RlZC5odG1sCkBAIC0w
LDAgKzEsMjIgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNp
bWFnZS1zaGFwZSB7CisgICAgZmxvYXQ6IGxlZnQ7CisgICAgd2lkdGg6IDUxcHg7IC8qIHNoYXBl
LW91dHNpZGUgaW50ZXJ2YWxzIGRlcml2ZWQgZnJvbSBpbWFnZXMgYXJlIGVuZC1wb2ludCBleGNs
dXNpdmUgKi8KKyAgICBoZWlnaHQ6IDEwMHB4OworfQorCisjY29udGVudCB7CisgICAgZm9udDog
NTBweC8xIEFoZW0sIHNhbnMtc2VyaWY7CisgICAgd2lkdGg6IDYwMHB4OworICAgIGNvbG9yOiBn
cmVlbjsKK30KKzwvc3R5bGU+Cis8ZGl2IGlkPSJjb250ZW50Ij4KKyAgPGRpdiBpZD0iaW1hZ2Ut
c2hhcGUiPjwvZGl2PgorICBYPGJyPlg8YnI+WAorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9zaGFwZS1vdXRzaWRlLWZsb2F0cy9z
aGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hhcGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTU0Mjg0Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvc2hhcGUtb3V0c2lkZS1mbG9hdHMvc2hh
cGUtb3V0c2lkZS1saW5lYXItZ3JhZGllbnQuaHRtbApAQCAtMCwwICsxLDI0IEBACis8IURPQ1RZ
UEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c3R5bGU+CisjaW1hZ2Utc2hhcGUgeworICAgIGZs
b2F0OiBsZWZ0OworICAgIC13ZWJraXQtc2hhcGUtb3V0c2lkZTogbGluZWFyLWdyYWRpZW50KHRv
IHJpZ2h0LCByZ2JhKDAsIDAsIDI1NSwgMSksIHJnYmEoMCwgMCwgMjU1LCAwKSk7CisgICAgLXdl
YmtpdC1zaGFwZS1pbWFnZS10aHJlc2hvbGQ6IDAuNTsKKyAgICB3aWR0aDogMTAwcHg7CisgICAg
aGVpZ2h0OiAxMDBweDsKK30KKworI2NvbnRlbnQgeworICAgIGZvbnQ6IDUwcHgvMSBBaGVtLCBz
YW5zLXNlcmlmOworICAgIHdpZHRoOiA2MDBweDsKKyAgICBjb2xvcjogZ3JlZW47Cit9Cis8L3N0
eWxlPgorPGRpdiBpZD0iY29udGVudCI+CisgIDxkaXYgaWQ9ImltYWdlLXNoYXBlIj48L2Rpdj4K
KyAgWDxicj5YPGJyPlgKKzwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU3
ZmNkYjUuLjU4NDZlNTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0wNC0xNyAg
SGFucyBNdWxsZXIgIDxobXVsbGVyQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10g
QWRkIHBhcnNpbmcgc3VwcG9ydCBmb3IgZ3JhZGllbnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0NDQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRlZCBzdXBwb3J0IGZvciBzaGFwZS1vdXRzaWRl
IGdyYWRpZW50IHZhbHVlcy4KKworICAgICAgICBUZXN0OiBmYXN0L3NoYXBlcy9zaGFwZS1vdXRz
aWRlLWZsb2F0cy9zaGFwZS1vdXRzaWRlLWxpbmVhci1ncmFkaWVudC5odG1sCisKKyAgICAgICAg
KiBjc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBs
eVByb3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOiBBY2NlcHQgZ2VuZXJhdGVkIGltYWdlcyBhcyBz
aGFwZS1vdXRzaWRlIHZhbHVlcy4KKyAgICAgICAgKiByZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0
c2lkZUluZm8uY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y2hlY2tTaGFwZUltYWdlT3JpZ2luKTog
R2VuZXJhdGVkIGltYWdlcyBnZXQgYSBwYXNzLCBvdGhlcnMgZG8gbm90LgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0U2hhcGVJbWFnZUFuZFJlY3QpOiBVc2UgU3R5bGVJbWFnZTo6aW1hZ2UoKSB0byBn
ZXQgYSBnZW5lcmF0ZWQgaW1hZ2UuCisgICAgICAgIChXZWJDb3JlOjpTaGFwZU91dHNpZGVJbmZv
Ojppc0VuYWJsZWRGb3IpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6
CisgICAgICAgIChXZWJDb3JlOjpTaGFwZVZhbHVlOjppc0ltYWdlVmFsaWQpOiBHZW5lcmF0ZWQg
aW1hZ2VzIGFyZSBhbHdheXMgY29uc2lkZXJlZCB2YWxpZC4KKwogMjAxNC0wNC0xNiAgQmVtIEpv
bmVzLUJleSAgPGJqb25lc2JlQGFkb2JlLmNvbT4KIAogICAgICAgICBGaXggQ29kZUdlbmVyYXRv
ci5wbSB0byBvbmx5IHdyaXRlIGZpbGVzIGlmIHRoZSBnZW5lcmF0ZWQgY29udGVudCBoYXMgY2hh
bmdlZApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmlu
ZGV4IDBhYzM5ZDEuLjdhMjI0ZTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXBy
ZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRl
ZFN0eWxlQnVpbGRlci5jcHAKQEAgLTIxNzgsNyArMjE3OCw3IEBAIHB1YmxpYzoKICAgICAgICAg
ICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFs
dWUodmFsdWUpOwogICAgICAgICAgICAgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkg
PT0gQ1NTVmFsdWVBdXRvKQogICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVzb2x2ZXIt
PnN0eWxlKCksIDApOwotICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc0ltYWdlVmFsdWUoKSB8
fCB2YWx1ZS0+aXNJbWFnZVNldFZhbHVlKCkpIHsKKyAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNJbWFnZVZhbHVlKCkgfHwgdmFsdWUtPmlzSW1hZ2VHZW5lcmF0b3JWYWx1ZSgpIHx8IHZhbHVl
LT5pc0ltYWdlU2V0VmFsdWUoKSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNo
YXBlID0gU2hhcGVWYWx1ZTo6Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUlt
YWdlKHByb3BlcnR5LCB2YWx1ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZl
ci0+c3R5bGUoKSwgc2hhcGUucmVsZWFzZSgpKTsKICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZS0+
aXNWYWx1ZUxpc3QoKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3No
YXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zaGFw
ZXMvU2hhcGVPdXRzaWRlSW5mby5jcHAKaW5kZXggMzcyMzVlMC4uMDU1NTMyNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3NoYXBlcy9TaGFwZU91dHNpZGVJbmZvLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc2hhcGVzL1NoYXBlT3V0c2lkZUluZm8uY3Bw
CkBAIC0xMjAsOCArMTIwLDEzIEBAIHZvaWQgU2hhcGVPdXRzaWRlSW5mbzo6c2V0UmVmZXJlbmNl
Qm94TG9naWNhbFNpemUoTGF5b3V0U2l6ZSBuZXdSZWZlcmVuY2VCb3hMb2dpCiAgICAgbV9yZWZl
cmVuY2VCb3hMb2dpY2FsU2l6ZSA9IG5ld1JlZmVyZW5jZUJveExvZ2ljYWxTaXplOwogfQogCi1z
dGF0aWMgaW5saW5lIGJvb2wgY2hlY2tTaGFwZUltYWdlT3JpZ2luKERvY3VtZW50JiBkb2N1bWVu
dCwgQ2FjaGVkSW1hZ2UmIGNhY2hlZEltYWdlKQorc3RhdGljIGlubGluZSBib29sIGNoZWNrU2hh
cGVJbWFnZU9yaWdpbihEb2N1bWVudCYgZG9jdW1lbnQsIGNvbnN0IFN0eWxlSW1hZ2UmIHN0eWxl
SW1hZ2UpCiB7CisgICAgaWYgKHN0eWxlSW1hZ2UuaXNHZW5lcmF0ZWRJbWFnZSgpKQorICAgICAg
ICByZXR1cm4gdHJ1ZTsKKworICAgIEFTU0VSVChzdHlsZUltYWdlLmNhY2hlZEltYWdlKCkpOwor
ICAgIENhY2hlZEltYWdlJiBjYWNoZWRJbWFnZSA9ICooc3R5bGVJbWFnZS5jYWNoZWRJbWFnZSgp
KTsKICAgICBpZiAoY2FjaGVkSW1hZ2UuaXNPcmlnaW5DbGVhbihkb2N1bWVudC5zZWN1cml0eU9y
aWdpbigpKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAgLTE0MCw3ICsxNDUsMTIgQEAgc3Rh
dGljIHZvaWQgZ2V0U2hhcGVJbWFnZUFuZFJlY3QoY29uc3QgU2hhcGVWYWx1ZSYgc2hhcGVWYWx1
ZSwgY29uc3QgUmVuZGVyQm94JgogICAgIGNvbnN0IExheW91dFNpemUmIGltYWdlU2l6ZSA9IHJl
bmRlckJveC5jYWxjdWxhdGVJbWFnZUludHJpbnNpY0RpbWVuc2lvbnMoc3R5bGVJbWFnZSwgcm91
bmRlZEludFNpemUocmVmZXJlbmNlQm94U2l6ZSksIFJlbmRlckltYWdlOjpTY2FsZUJ5RWZmZWN0
aXZlWm9vbSk7CiAgICAgc3R5bGVJbWFnZS0+c2V0Q29udGFpbmVyU2l6ZUZvclJlbmRlcmVyKCZy
ZW5kZXJCb3gsIGltYWdlU2l6ZSwgcmVuZGVyQm94LnN0eWxlKCkuZWZmZWN0aXZlWm9vbSgpKTsK
IAotICAgIGltYWdlID0gc3R5bGVJbWFnZS0+Y2FjaGVkSW1hZ2UoKS0+aW1hZ2VGb3JSZW5kZXJl
cigmcmVuZGVyQm94KTsKKyAgICBpbWFnZSA9IG51bGxwdHI7CisgICAgaWYgKHN0eWxlSW1hZ2Ut
PmlzQ2FjaGVkSW1hZ2UoKSB8fCBzdHlsZUltYWdlLT5pc0NhY2hlZEltYWdlU2V0KCkpCisgICAg
ICAgIGltYWdlID0gc3R5bGVJbWFnZS0+Y2FjaGVkSW1hZ2UoKS0+aW1hZ2VGb3JSZW5kZXJlcigm
cmVuZGVyQm94KTsKKyAgICBlbHNlIGlmIChzdHlsZUltYWdlLT5pc0dlbmVyYXRlZEltYWdlKCkp
CisgICAgICAgIGltYWdlID0gc3R5bGVJbWFnZS0+aW1hZ2UoY29uc3RfY2FzdDxSZW5kZXJCb3gq
PigmcmVuZGVyQm94KSwgaW1hZ2VTaXplKS5nZXQoKTsKKwogICAgIGlmIChyZW5kZXJCb3guaXNS
ZW5kZXJJbWFnZSgpKQogICAgICAgICByZWN0ID0gdG9SZW5kZXJJbWFnZSgmcmVuZGVyQm94KS0+
cmVwbGFjZWRDb250ZW50UmVjdChyZW5kZXJCb3guaW50cmluc2ljU2l6ZSgpKTsKICAgICBlbHNl
CkBAIC0yOTMsNyArMzAzLDcgQEAgYm9vbCBTaGFwZU91dHNpZGVJbmZvOjppc0VuYWJsZWRGb3Io
Y29uc3QgUmVuZGVyQm94JiBib3gpCiAKICAgICBzd2l0Y2ggKHNoYXBlVmFsdWUtPnR5cGUoKSkg
ewogICAgIGNhc2UgU2hhcGVWYWx1ZTo6U2hhcGU6IHJldHVybiBzaGFwZVZhbHVlLT5zaGFwZSgp
OwotICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1hZ2U6IHJldHVybiBzaGFwZVZhbHVlLT5pc0ltYWdl
VmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VPcmlnaW4oYm94LmRvY3VtZW50KCksICooc2hhcGVW
YWx1ZS0+aW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSkpOworICAgIGNhc2UgU2hhcGVWYWx1ZTo6SW1h
Z2U6IHJldHVybiBzaGFwZVZhbHVlLT5pc0ltYWdlVmFsaWQoKSAmJiBjaGVja1NoYXBlSW1hZ2VP
cmlnaW4oYm94LmRvY3VtZW50KCksICooc2hhcGVWYWx1ZS0+aW1hZ2UoKSkpOwogICAgIGNhc2Ug
U2hhcGVWYWx1ZTo6Qm94OiByZXR1cm4gdHJ1ZTsKICAgICB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCmluZGV4IGQ2Mjc0ZmUuLmVjODNkMGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaApAQCAtNjcsNyArNjcs
MTYgQEAgcHVibGljOgogICAgIENTU0JveFR5cGUgY3NzQm94KCkgY29uc3QgeyByZXR1cm4gbV9j
c3NCb3g7IH0KIAogICAgIFN0eWxlSW1hZ2UqIGltYWdlKCkgY29uc3QgeyByZXR1cm4gbV9pbWFn
ZS5nZXQoKTsgfQotICAgIGJvb2wgaXNJbWFnZVZhbGlkKCkgY29uc3QgeyByZXR1cm4gaW1hZ2Uo
KSAmJiBpbWFnZSgpLT5jYWNoZWRJbWFnZSgpICYmIGltYWdlKCktPmNhY2hlZEltYWdlKCktPmhh
c0ltYWdlKCk7IH0KKworICAgIGJvb2wgaXNJbWFnZVZhbGlkKCkgY29uc3QKKyAgICB7CisgICAg
ICAgIGlmICghaW1hZ2UoKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYg
KGltYWdlKCktPmlzQ2FjaGVkSW1hZ2UoKSB8fCBpbWFnZSgpLT5pc0NhY2hlZEltYWdlU2V0KCkp
CisgICAgICAgICAgICByZXR1cm4gaW1hZ2UoKS0+Y2FjaGVkSW1hZ2UoKSAmJiBpbWFnZSgpLT5j
YWNoZWRJbWFnZSgpLT5oYXNJbWFnZSgpOworICAgICAgICByZXR1cm4gaW1hZ2UoKS0+aXNHZW5l
cmF0ZWRJbWFnZSgpOworICAgIH0KKwogICAgIHZvaWQgc2V0SW1hZ2UoUGFzc1JlZlB0cjxTdHls
ZUltYWdlPiBpbWFnZSkKICAgICB7CiAgICAgICAgIEFTU0VSVCh0eXBlKCkgPT0gSW1hZ2UpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>