<?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>132601</bug_id>
          
          <creation_ts>2014-05-06 01:46:46 -0700</creation_ts>
          <short_desc>[CSS Regions] Block incorrectly sized when containing an unsplittable box</short_desc>
          <delta_ts>2014-05-20 07:35:30 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>AdobeTracked</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>57312</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrei Bucur">abucur</reporter>
          <assigned_to name="Radu Stavila">stavila</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>hyatt</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>stavila</cc>
    
    <cc>WebkitBugTracker</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1006893</commentid>
    <comment_count>0</comment_count>
      <attachid>230892</attachid>
    <who name="Andrei Bucur">abucur</who>
    <bug_when>2014-05-06 01:46:46 -0700</bug_when>
    <thetext>Created attachment 230892
Repro

See the attachment. The green background should not have been painted in the second region.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1006941</commentid>
    <comment_count>1</comment_count>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-05-06 06:38:42 -0700</bug_when>
    <thetext>Further findings:
- if the child element is display:inline-block, the second region contains a part of the element&apos;s parent with a height equal to the height of the child element that is overflowing the first region. If the parent contains another child after the first one, this second child will NOT be painted at the top of the second region  - INCORRECT BEHAVIOR
- if the child element is display:block, the parent is not painted in the second region unless it has another child, after the first one. If it does, the second child is painted started at the top of the second region - CORRECT BEHAVIOR</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1009764</commentid>
    <comment_count>2</comment_count>
      <attachid>231573</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-05-16 08:32:19 -0700</bug_when>
    <thetext>Created attachment 231573
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1009772</commentid>
    <comment_count>3</comment_count>
      <attachid>231573</attachid>
    <who name="Andrei Bucur">abucur</who>
    <bug_when>2014-05-16 09:15:53 -0700</bug_when>
    <thetext>Comment on attachment 231573
Patch

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

&gt; Source/WebCore/rendering/RenderBlockLineLayout.cpp:723
&gt; +    if (view().layoutState() &amp;&amp; view().layoutState()-&gt;isPaginated()) {

It should probably be best if this was a helper method on RenderBlockFlow with the line box as a parameter.

&gt; Source/WebCore/rendering/RenderBlockLineLayout.cpp:726
&gt; +            if (firstRun &amp;&amp; firstRun-&gt;renderer().isBox() &amp;&amp; toRenderBox(firstRun-&gt;renderer()).isUnsplittableForPagination()) {

What about cases when the line is really big (e.g. there&apos;s a span on the line with a large font-size)? Anything placed on a line is unsplittable because the line is unsplittable. I don&apos;t think having a box on the line is necessary to trigger this &quot;pull up&quot; condition.

&gt; Source/WebCore/rendering/RenderBlockLineLayout.cpp:727
&gt; +                LayoutUnit lineLogicalTop = logicalTopForChild(toRenderBox(firstRun-&gt;renderer()));

Here you should use the information computed by the RootInlineBox::alignBoxesInBlockDirection function. That function places the line inside the RenderBlockFlow so after it is called you can use lineBox-&gt;logicalTop().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010313</commentid>
    <comment_count>4</comment_count>
      <attachid>231726</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-05-19 15:07:48 -0700</bug_when>
    <thetext>Created attachment 231726
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010430</commentid>
    <comment_count>5</comment_count>
      <attachid>231757</attachid>
    <who name="Radu Stavila">stavila</who>
    <bug_when>2014-05-20 01:42:02 -0700</bug_when>
    <thetext>Created attachment 231757
Patch v2 with slight improvement</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010480</commentid>
    <comment_count>6</comment_count>
      <attachid>231757</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-05-20 07:05:29 -0700</bug_when>
    <thetext>Comment on attachment 231757
Patch v2 with slight improvement

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010489</commentid>
    <comment_count>7</comment_count>
      <attachid>231757</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-20 07:35:26 -0700</bug_when>
    <thetext>Comment on attachment 231757
Patch v2 with slight improvement

Clearing flags on attachment: 231757

Committed r169110: &lt;http://trac.webkit.org/changeset/169110&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1010490</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-05-20 07:35:30 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>230892</attachid>
            <date>2014-05-06 01:46:46 -0700</date>
            <delta_ts>2014-05-06 01:46:46 -0700</delta_ts>
            <desc>Repro</desc>
            <filename>b132242.html</filename>
            <type>text/html</type>
            <size>1079</size>
            <attacher name="Andrei Bucur">abucur</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgogICAgPGhlYWQ+CiAgICAgICAgPHN0eWxlPgogICAgICAg
ICAgICAjcmVnaW9uIHsKICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93Owog
ICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CiAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7
CiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OwogICAgICAgICAgICAgICAgYm9yZGVyOiA1
cHggc29saWQgcmVkOwogICAgICAgICAgICB9CiAgICAgICAgICAgICNyZWdpb24yIHsKICAgICAg
ICAgICAgICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OwogICAgICAgICAgICAgICAgZmxvYXQ6
IGxlZnQ7CiAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7CiAgICAgICAgICAgICAgICBoZWln
aHQ6IDIwMHB4OwogICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwMHB4OwogICAgICAgICAg
ICAgICAgYm9yZGVyOiA1cHggc29saWQgYmxhY2s7CiAgICAgICAgICAgIH0KICAgICAgICAgICAg
I2FydGljbGUgewogICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7CiAgICAg
ICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjsKICAgICAgICAgICAgfQogICAgICAg
ICAgICAjdmlkZW8gewogICAgICAgICAgICAgICAgeHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAg
ICAgICAgICAgIHRvcDogMjBweDsKICAgICAgICAgICAgICAgIHdpZHRoOiAzMjBweDsKICAgICAg
ICAgICAgICAgIGhlaWdodDogNDgwcHg7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiBzYWxtb247CiAgICAgICAgICAgICAgICBib3JkZXI6IHRoaW4gc29saWQgZ3JlZW47CiAgICAg
ICAgICAgIH0KICAgICAgICA8L3N0eWxlPgogICAgPC9oZWFkPgogICAgPGJvZHk+CiAgICAgICAg
PGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KICAgICAgICA8ZGl2IGlkPSJyZWdpb24yIj48L2Rpdj4K
ICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KICAgICAgICAgICAgPHZpZGVvIGlkPSJ2aWRlbyIg
Y29udHJvbHM+PC92aWRlbz4KICAgICAgICA8L2Rpdj4KICAgIDwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>231573</attachid>
            <date>2014-05-16 08:32:19 -0700</date>
            <delta_ts>2014-05-19 15:07:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>132601.patch</filename>
            <type>text/plain</type>
            <size>12646</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0ZTNjY2E0Li5lNzEwM2IyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTQtMDUt
MTYgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgUmVn
aW9uc10gQmxvY2sgaW5jb3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0
YWJsZSBib3gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzMjYwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIHRlc3RzIGZvciB0aGUgbGF5b3V0IG9mIGVsZW1lbnRzIGZvbGxvd2luZyBpbmxpbmUt
YmxvY2sgZWxlbWVudHMgCisgICAgICAgIHRoYXQgb3ZlcmZsb3cgdGhlaXIgcmVnaW9uLCB3aXRo
IGFuZCB3aXRob3V0IGFub255bW91cyBibG9ja3MuCisKKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
aW5saW5lLWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5vbnltb3Vz
LW92ZXJmbG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9pbmxpbmUtYmxv
Y2stb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2lubGluZS1ibG9jay1vdmVyZmxvdy5odG1sOiBBZGRlZC4KKwogMjAxNC0wNS0xNSAgRGFuaWVs
IEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCkgaW4gRG9jdW1lbnRPcmRlcmVkTWFwOjpnZXQoKSB3aGVuIHJlbW92aW5nIFNWRyBzdWJ0cmVl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLWluc2lk
ZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy1leHBlY3RlZC5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQxZDA4NjQyCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5v
bnltb3VzLW92ZXJmbG93LWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSw0OSBAQAorPCFET0NUWVBF
IGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAg
LnJlZ2lvbiB7CisgICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgYmx1ZTsKKyAgICAg
ICAgICAgICAgICBmbG9hdDogbGVmdDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNyZWdp
b24xIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1MHB4OworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgI3JlZ2lvbjIgeworICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAg
ICAgICAgICAgICBoZWlnaHQ6IDIwMHB4OworICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1
MHB4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgLmFydGljbGUgeworICAgICAgICAgICAg
ICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDk5OTk7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICAjYXJ0aWNsZTEgeworICAgICAgICAgICAgICAgIGhlaWdodDogMjMwcHg7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICAjdmlkZW8geworICAgICAgICAgICAgICAgIHdpZHRoOiAzMjBweDsK
KyAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICAgICAgICAgIGJhY2tncm91
bmQtY29sb3I6IHNhbG1vbjsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCBibGFj
azsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zdHlsZT4KKyAgICA8L2hlYWQ+CisKKyAgICA8
Ym9keT4KKyAgICAgICAgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEzMjYwMSI+QnVnIDEzMjYwMSAtIFtDU1MgUmVnaW9uc10gQmxvY2sgaW5jb3JyZWN0
bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0YWJsZSBib3g8L2E+CisgICAgICAg
IDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgdGhlIDxzcGFuIHN0eWxlPSJjb2xvcjojMDBCQjAwIj5n
cmVlbiB0ZXh0PC9zcGFuPiBpcyBwb3NpdGlvbmVkIGF0IHRoZSB2ZXJ5IHRvcCBvZiB0aGUgc2Vj
b25kIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlIj5yZWdpb248L3NwYW4+IGFuZCB0aGUgPHNwYW4g
c3R5bGU9ImNvbG9yOmJsdWUiPmJsdWUgdGV4dDwvc3Bhbj4gaW1tZWRpYXRlbHkgYWZ0ZXIgaXQu
PC9wPgorICAgICAgICA8ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24xIj4KKyAgICAgICAg
ICAgIDxkaXYgY2xhc3M9ImFydGljbGUiIGlkPSJhcnRpY2xlMSI+CisgICAgICAgICAgICAgICAg
PHZpZGVvIGlkPSJ2aWRlbyIgY29udHJvbHM+PC92aWRlbz48c3BhbiBzdHlsZT0iY29sb3I6IzAw
RkYwMCI+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIAorICAg
ICAgICA8ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24yIj4KKyAgICAgICAgICAgIDxkaXYg
Y2xhc3M9ImFydGljbGUiIGlkPSJhcnRpY2xlMiI+CisgICAgICAgICAgICAgICAgPHNwYW4gc3R5
bGU9ImNvbG9yOiMwMEZGMDAiPlRoaXMgdGV4dCwgdG9nZXRoZXIgd2l0aCB0aGUgdmlkZW8gZWxl
bWVudCwgYXJlIGluc2lkZSBhbiBhbm9ueW1vdXNlIGJsb2NrPC9zcGFuPgorICAgICAgICAgICAg
ICAgIDxkaXYgaWQ9ImFmdGVyIiBzdHlsZT0iY29sb3I6Ymx1ZSI+VGhpcyBkaXYgaXMgYWZ0ZXIg
dGhlIGFub255bW91cyBibG9jazwvZGl2PgorICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwv
ZGl2PgorICAgICAgICAKKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3cu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFub255
bW91cy1vdmVyZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEw
MTMwNTMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5l
LWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3cuaHRtbApAQCAtMCwwICsxLDQxIEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c3R5bGU+CisgICAg
ICAgICAgICAucmVnaW9uIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctZnJvbTogZmxv
dzsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCBibHVlOworICAgICAgICAgICAg
ICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3JlZ2lvbjEgewor
ICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICAjcmVnaW9uMiB7CisgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAgICAg
ICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICAjYXJ0aWNsZSB7CisgICAgICAgICAgICAgICAgLXdl
YmtpdC1mbG93LWludG86IGZsb3c7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjog
IzAwOTk5OTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICN2aWRlbyB7CisgICAgICAgICAg
ICAgICAgd2lkdGg6IDMyMHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAg
ICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2FsbW9uOworICAgICAgICAgICAgICAgIGJv
cmRlcjogM3B4IHNvbGlkIGJsYWNrOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgor
ICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8YSBocmVmPSJodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAxIj5CdWcgMTMyNjAxIC0gW0NTUyBSZWdp
b25zXSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVuIGNvbnRhaW5pbmcgYW4gdW5zcGxpdHRh
YmxlIGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgPHNwYW4gc3R5
bGU9ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3NwYW4+IGlzIHBvc2l0aW9uZWQgYXQgdGhl
IHZlcnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5bGU9ImNvbG9yOmJsdWUiPnJlZ2lvbjwv
c3Bhbj4gYW5kIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6Ymx1ZSI+Ymx1ZSB0ZXh0PC9zcGFuPiBp
bW1lZGlhdGVseSBhZnRlciBpdC48L3A+CisgICAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9
InJlZ2lvbjEiPjwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24y
Ij48L2Rpdj4KKyAgICAgICAgPGRpdiBpZD0iYXJ0aWNsZSI+CisgICAgICAgICAgICA8dmlkZW8g
aWQ9InZpZGVvIiBjb250cm9scz48L3ZpZGVvPjxzcGFuIHN0eWxlPSJjb2xvcjojMDBGRjAwIj5U
aGlzIHRleHQsIHRvZ2V0aGVyIHdpdGggdGhlIHZpZGVvIGVsZW1lbnQsIGFyZSBpbnNpZGUgYW4g
YW5vbnltb3VzZSBibG9jazwvc3Bhbj4KKyAgICAgICAgICAgIDxkaXYgaWQ9ImFmdGVyIiBzdHls
ZT0iY29sb3I6Ymx1ZSI+VGhpcyBkaXYgaXMgYWZ0ZXIgdGhlIGFub255bW91cyBibG9jazwvZGl2
PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLW92ZXJmbG93LWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLW92ZXJmbG93LWV4cGVjdGVk
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGRhNDczMAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZs
b3ctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDQ4IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1s
PgorICAgIDxoZWFkPgorICAgICAgICA8c3R5bGU+CisgICAgICAgICAgICAucmVnaW9uIHsKKyAg
ICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCBibHVlOworICAgICAgICAgICAgICAgIGZs
b2F0OiBsZWZ0OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3JlZ2lvbjEgeworICAgICAg
ICAgICAgICAgIGhlaWdodDogMjUwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAjcmVn
aW9uMiB7CisgICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4OworICAgICAgICAgICAgICAgIGhl
aWdodDogMjAwcHg7CisgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICAuYXJ0aWNsZSB7CisgICAgICAgICAgICAgICAgYmFja2dyb3Vu
ZC1jb2xvcjogIzAwOTk5OTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNhcnRpY2xlMSB7
CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMzBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgICN2aWRlbyB7CisgICAgICAgICAgICAgICAgd2lkdGg6IDMyMHB4OworICAgICAgICAgICAg
ICAgIGhlaWdodDogMzAwcHg7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2Fs
bW9uOworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGJsYWNrOworICAgICAgICAg
ICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9z
dHlsZT4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keT4KKyAgICAgICAgPGEgaHJlZj0iaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjYwMSI+QnVnIDEzMjYwMSAtIFtD
U1MgUmVnaW9uc10gQmxvY2sgaW5jb3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVu
c3BsaXR0YWJsZSBib3g8L2E+CisgICAgICAgIDxwPlRoaXMgdGVzdCBwYXNzZXMgaWYgdGhlIDxz
cGFuIHN0eWxlPSJjb2xvcjojMDBCQjAwIj5ncmVlbiB0ZXh0PC9zcGFuPiBpcyBwb3NpdGlvbmVk
IGF0IHRoZSB2ZXJ5IHRvcCBvZiB0aGUgc2Vjb25kIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlIj5y
ZWdpb248L3NwYW4+LjwvcD4KKyAgICAgICAgPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9u
MSI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlIiBpZD0iYXJ0aWNsZTEiPgorICAg
ICAgICAgICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGNvbnRyb2xzPjwvdmlkZW8+CisgICAgICAg
ICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisKKyAgICAgICAgPGRpdiBjbGFzcz0icmVnaW9u
IiBpZD0icmVnaW9uMiI+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlIiBpZD0iYXJ0
aWNsZTIiPgorICAgICAgICAgICAgICAgIDxkaXYgaWQ9ImFmdGVyIiBzdHlsZT0iY29sb3I6IzAw
RkYwMCI+VGhpcyBkaXYgaXMgZmxvd2VkIGFmdGVyIHRoZSB2aWRlbyBlbGVtZW50LjwvZGl2Pgor
ICAgICAgICAgICAgPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZs
b3cuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZsb3cu
aHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYjE1YmQxCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1vdmVyZmxv
dy5odG1sCkBAIC0wLDAgKzEsNDQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhl
YWQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAgICAgIC5yZWdpb24geworICAgICAgICAgICAg
ICAgIC13ZWJraXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4
IHNvbGlkIGJsdWU7CisgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9
CisgICAgICAgICAgICAjcmVnaW9uMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNyZWdpb24yIHsKKyAgICAgICAgICAgICAgICB3
aWR0aDogMzAwcHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAg
ICAgICBtYXJnaW4tbGVmdDogNTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIC5hcnRp
Y2xlIHsKKyAgICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OTk5OworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgI3ZpZGVvIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7CisgICAgICAgICAg
ICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBz
YWxtb247CisgICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgYmxhY2s7CisgICAgICAg
ICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworICAgICAgICAgICAgfQorICAgICAgICA8
L3N0eWxlPgorICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8YSBocmVmPSJodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAxIj5CdWcgMTMyNjAxIC0g
W0NTUyBSZWdpb25zXSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVuIGNvbnRhaW5pbmcgYW4g
dW5zcGxpdHRhYmxlIGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUg
PHNwYW4gc3R5bGU9ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3NwYW4+IGlzIHBvc2l0aW9u
ZWQgYXQgdGhlIHZlcnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5bGU9ImNvbG9yOmJsdWUi
PnJlZ2lvbjwvc3Bhbj4uPC9wPgorICAgICAgICA8ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdp
b24xIj48L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMiI+PC9k
aXY+CisgICAgICAgIDxkaXYgY2xhc3M9ImFydGljbGUiIGlkPSJhcnRpY2xlMSI+CisgICAgICAg
ICAgICA8dmlkZW8gaWQ9InZpZGVvIiBjb250cm9scz48L3ZpZGVvPgorICAgICAgICA8L2Rpdj4K
KyAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFydGljbGUyIj4KKyAgICAgICAgICAg
IDxkaXYgaWQ9ImFmdGVyIiBzdHlsZT0iY29sb3I6IzAwRkYwMCI+VGhpcyBkaXYgaXMgZmxvd2Vk
IGFmdGVyIHRoZSB2aWRlbyBlbGVtZW50LjwvZGl2PgorICAgICAgICA8L2Rpdj4KKyAgICA8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDZiMDE0Mi4uOTVhOWU2MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI0IEBACisyMDE0LTA1LTE2ICBSYWR1IFN0YXZpbGEgIDxzdGF2aWxhQGFkb2Jl
LmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNdIEJsb2NrIGluY29ycmVjdGx5IHNpemVkIHdo
ZW4gY29udGFpbmluZyBhbiB1bnNwbGl0dGFibGUgYm94CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI2MDEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGxheWluZyBvdXQgZWxlbWVudHMgaW4gYSBy
ZWdpb24sIHdoZW4gYW4gdW5zcGxpdHRhYmxlIGVsZW1lbnRzIGlzIGVuY291bnRlcmVkCisgICAg
ICAgIHRoZSBzaXplIG9mIGl0cyBwYXJlbnQgbXVzdCBub3QgYmUgaW5jcmVhc2VkIGJleW9uZCB0
aGUgYm90dG9tIG9mIHRoZSBjdXJyZW50IHJlZ2lvbiwKKyAgICAgICAgdW5sZXNzIGlmIGl0cyB0
aGUgbGFzdCByZWdpb24uIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCB0aGUgbmV4dCBzaWJsaW5nIG9m
IHRoZQorICAgICAgICB1bnNwbGl0dGFibGUgZWxlbWVudCBpcyBjb3JyZWN0bHkgbGFpZCBvdXQg
YXQgdGhlIHRvcCBvZiB0aGUgbmV4dCByZWdpb24sIGluc3RlYWQKKyAgICAgICAgb2YgbGVhdmlu
ZyBhbiBlbXB0eSBzcGFjZSBlcXVhbCB0byB0aGUgaGVpZ2h0IG9mIHRoZSBvdmVyZmxvdywgYXMg
aXQgZGlkIHVudGlsIG5vdy4KKworICAgICAgICBUZXN0czogZmFzdC9yZWdpb25zL2lubGluZS1i
bG9jay1pbnNpZGUtYW5vbnltb3VzLW92ZXJmbG93Lmh0bWwKKyAgICAgICAgICAgICAgIGZhc3Qv
cmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZsb3cuaHRtbAorCisgICAgICAgICogcmVuZGVyaW5n
L1JlbmRlckJsb2NrRmxvdy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJCbG9ja0Zsb3c6
Omhhc05leHRQYWdlKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6Y29tcHV0ZUJsb2NrRGly
ZWN0aW9uUG9zaXRpb25zRm9yTGluZSk6CisKIDIwMTQtMDUtMTUgIERhbmllbCBCYXRlcyAgPGRh
YmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIEF0dGVtcHQgdG8gZml4IHRoZSBBcHBsZSBNYXZl
cmlja3MgUmVsZWFzZSwgQXBwbGUgTW91bnRhaW5MaW9uIFJlbGVhc2UsCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCmluZGV4IDFkNThiNmEuLmFkZTNmY2Ug
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwCkBAIC0x
NzU4LDcgKzE3NTgsNyBAQCBib29sIFJlbmRlckJsb2NrRmxvdzo6aGFzTmV4dFBhZ2UoTGF5b3V0
VW5pdCBsb2dpY2FsT2Zmc2V0LCBQYWdlQm91bmRhcnlSdWxlIHBhZwogICAgIFJlbmRlclJlZ2lv
biogc3RhcnRSZWdpb24gPSBudWxscHRyOwogICAgIFJlbmRlclJlZ2lvbiogZW5kUmVnaW9uID0g
bnVsbHB0cjsKICAgICBmbG93VGhyZWFkLT5nZXRSZWdpb25SYW5nZUZvckJveCh0aGlzLCBzdGFy
dFJlZ2lvbiwgZW5kUmVnaW9uKTsKLSAgICByZXR1cm4gcmVnaW9uICE9IGVuZFJlZ2lvbjsKKyAg
ICByZXR1cm4gKGVuZFJlZ2lvbiAmJiByZWdpb24gIT0gZW5kUmVnaW9uKTsKIH0KIAogTGF5b3V0
VW5pdCBSZW5kZXJCbG9ja0Zsb3c6OmFkanVzdEZvclVuc3BsaXR0YWJsZUNoaWxkKFJlbmRlckJv
eCYgY2hpbGQsIExheW91dFVuaXQgbG9naWNhbE9mZnNldCwgYm9vbCBpbmNsdWRlTWFyZ2lucykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlv
dXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5j
cHAKaW5kZXggNzBhNmMwZS4uODkwYjJiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAKQEAgLTcxNiw3ICs3MTYsMjUgQEAgQmlk
aVJ1biogUmVuZGVyQmxvY2tGbG93Ojpjb21wdXRlSW5saW5lRGlyZWN0aW9uUG9zaXRpb25zRm9y
U2VnbWVudChSb290SW5saW5lQm8KIHZvaWQgUmVuZGVyQmxvY2tGbG93Ojpjb21wdXRlQmxvY2tE
aXJlY3Rpb25Qb3NpdGlvbnNGb3JMaW5lKFJvb3RJbmxpbmVCb3gqIGxpbmVCb3gsIEJpZGlSdW4q
IGZpcnN0UnVuLCBHbHlwaE92ZXJmbG93QW5kRmFsbGJhY2tGb250c01hcCYgdGV4dEJveERhdGFN
YXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFZlcnRpY2FsUG9zaXRpb25DYWNoZSYgdmVydGljYWxQb3NpdGlvbkNhY2hlKQogewotICAg
IHNldExvZ2ljYWxIZWlnaHQobGluZUJveC0+YWxpZ25Cb3hlc0luQmxvY2tEaXJlY3Rpb24obG9n
aWNhbEhlaWdodCgpLCB0ZXh0Qm94RGF0YU1hcCwgdmVydGljYWxQb3NpdGlvbkNhY2hlKSk7Cisg
ICAgTGF5b3V0VW5pdCBsaW5lTG9naWNhbEhlaWdodCA9IGxpbmVCb3gtPmFsaWduQm94ZXNJbkJs
b2NrRGlyZWN0aW9uKGxvZ2ljYWxIZWlnaHQoKSwgdGV4dEJveERhdGFNYXAsIHZlcnRpY2FsUG9z
aXRpb25DYWNoZSk7CisKKyAgICAvLyBJZiB0aGUgaW5saW5lIGNoaWxkIGJlaW5nIGxhaWQgb3V0
IGlzIHVuc3BsaXR0YWJsZSBmb3IgcGFnaW5hdGlvbiAoc3VjaCBhcyBhIHZpZGVvKSwKKyAgICAv
LyBtYWtlIHN1cmUgbm90IHRvIGluY3JlYXNlIHRoZSBwYXJlbnQnIGhlaWdodCBiZXlvbmQgdGhl
IGN1cnJlbnQgcGFnZSAodW5sZXNzIGl0J3MgdGhlIGxhc3QgcGFnZSkuCisgICAgaWYgKHZpZXco
KS5sYXlvdXRTdGF0ZSgpICYmIHZpZXcoKS5sYXlvdXRTdGF0ZSgpLT5pc1BhZ2luYXRlZCgpKSB7
CisgICAgICAgIFJlbmRlckZsb3dUaHJlYWQqIGZsb3dUaHJlYWQgPSBmbG93VGhyZWFkQ29udGFp
bmluZ0Jsb2NrKCk7CisgICAgICAgIGlmIChmbG93VGhyZWFkICYmIGZsb3dUaHJlYWQtPmlzUmVu
ZGVyTmFtZWRGbG93VGhyZWFkKCkpIHsKKyAgICAgICAgICAgIGlmIChmaXJzdFJ1biAmJiBmaXJz
dFJ1bi0+cmVuZGVyZXIoKS5pc0JveCgpICYmIHRvUmVuZGVyQm94KGZpcnN0UnVuLT5yZW5kZXJl
cigpKS5pc1Vuc3BsaXR0YWJsZUZvclBhZ2luYXRpb24oKSkgeworICAgICAgICAgICAgICAgIExh
eW91dFVuaXQgbGluZUxvZ2ljYWxUb3AgPSBsb2dpY2FsVG9wRm9yQ2hpbGQodG9SZW5kZXJCb3go
Zmlyc3RSdW4tPnJlbmRlcmVyKCkpKTsKKyAgICAgICAgICAgICAgICBpZiAoaGFzTmV4dFBhZ2Uo
bGluZUxvZ2ljYWxUb3ApKSB7CisgICAgICAgICAgICAgICAgICAgIExheW91dFVuaXQgcmVtYWlu
aW5nTG9naWNhbEhlaWdodCA9IHBhZ2VSZW1haW5pbmdMb2dpY2FsSGVpZ2h0Rm9yT2Zmc2V0KGxp
bmVMb2dpY2FsVG9wLCBFeGNsdWRlUGFnZUJvdW5kYXJ5KTsKKyAgICAgICAgICAgICAgICAgICAg
aWYgKHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQgPCBsaW5lTG9naWNhbEhlaWdodCkKKyAgICAgICAg
ICAgICAgICAgICAgICAgIGxpbmVMb2dpY2FsSGVpZ2h0ID0gcmVtYWluaW5nTG9naWNhbEhlaWdo
dDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICB9CisK
KyAgICBzZXRMb2dpY2FsSGVpZ2h0KGxpbmVMb2dpY2FsSGVpZ2h0KTsKIAogICAgIC8vIE5vdyBt
YWtlIHN1cmUgd2UgcGxhY2UgcmVwbGFjZWQgcmVuZGVyIG9iamVjdHMgY29ycmVjdGx5LgogICAg
IGZvciAoQmlkaVJ1biogciA9IGZpcnN0UnVuOyByOyByID0gci0+bmV4dCgpKSB7Cg==
</data>
<flag name="review"
          id="256023"
          type_id="1"
          status="-"
          setter="abucur"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>231726</attachid>
            <date>2014-05-19 15:07:48 -0700</date>
            <delta_ts>2014-05-20 01:42:02 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>132601.patch</filename>
            <type>text/plain</type>
            <size>18230</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1MDg4MDM5Li45ODQ2YjFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTQtMDUt
MTYgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgUmVn
aW9uc10gQmxvY2sgaW5jb3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0
YWJsZSBib3gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzMjYwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIHRlc3RzIGZvciB0aGUgbGF5b3V0IG9mIGVsZW1lbnRzIGZvbGxvd2luZyBpbmxpbmUt
YmxvY2sgZWxlbWVudHMgCisgICAgICAgIHRoYXQgb3ZlcmZsb3cgdGhlaXIgcmVnaW9uLCB3aXRo
IGFuZCB3aXRob3V0IGFub255bW91cyBibG9ja3MuCisKKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
aW5saW5lLWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5vbnltb3Vz
LW92ZXJmbG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9pbmxpbmUtYmxv
Y2stb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2lubGluZS1ibG9jay1vdmVyZmxvdy5odG1sOiBBZGRlZC4KKwogMjAxNC0wNS0xOSAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBTcGxpdCBzY3JvbGxp
bmcgdHJlZSBTY3JvbGxpbmdOb2RlcyBpbnRvIEZyYW1lU2Nyb2xsaW5nTm9kZXMgYW5kIE92ZXJm
bG93U2Nyb2xsaW5nTm9kZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9p
bmxpbmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5vbnltb3VzLW92ZXJm
bG93LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDFk
MDg2NDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5l
LWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsx
LDQ5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c3R5
bGU+CisgICAgICAgICAgICAucmVnaW9uIHsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBz
b2xpZCBibHVlOworICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgI3JlZ2lvbjEgeworICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICAjcmVnaW9uMiB7CisgICAgICAgICAgICAgICAgd2lk
dGg6IDMwMHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgICAgICAg
ICAgbWFyZ2luLWxlZnQ6IDUwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAuYXJ0aWNs
ZSB7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTk5OTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICNhcnRpY2xlMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAy
MzBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICN2aWRlbyB7CisgICAgICAgICAgICAg
ICAgd2lkdGg6IDMyMHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2FsbW9uOworICAgICAgICAgICAgICAgIGJvcmRl
cjogM3B4IHNvbGlkIGJsYWNrOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAg
IDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAxIj5CdWcgMTMyNjAxIC0gW0NTUyBSZWdpb25z
XSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVuIGNvbnRhaW5pbmcgYW4gdW5zcGxpdHRhYmxl
IGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgPHNwYW4gc3R5bGU9
ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3NwYW4+IGlzIHBvc2l0aW9uZWQgYXQgdGhlIHZl
cnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5bGU9ImNvbG9yOmJsdWUiPnJlZ2lvbjwvc3Bh
bj4gYW5kIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6Ymx1ZSI+Ymx1ZSB0ZXh0PC9zcGFuPiBpbW1l
ZGlhdGVseSBhZnRlciBpdC48L3A+CisgICAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJl
Z2lvbjEiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFydGljbGUxIj4K
KyAgICAgICAgICAgICAgICA8dmlkZW8gaWQ9InZpZGVvIiBjb250cm9scz48L3ZpZGVvPjxzcGFu
IHN0eWxlPSJjb2xvcjojMDBGRjAwIj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rp
dj4KKyAgICAgICAgCisgICAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIiPgor
ICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFydGljbGUyIj4KKyAgICAgICAg
ICAgICAgICA8c3BhbiBzdHlsZT0iY29sb3I6IzAwRkYwMCI+VGhpcyB0ZXh0LCB0b2dldGhlciB3
aXRoIHRoZSB2aWRlbyBlbGVtZW50LCBhcmUgaW5zaWRlIGFuIGFub255bW91c2UgYmxvY2s8L3Nw
YW4+CisgICAgICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjpibHVlIj5U
aGlzIGRpdiBpcyBhZnRlciB0aGUgYW5vbnltb3VzIGJsb2NrPC9kaXY+CisgICAgICAgICAgICA8
L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIAorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFu
b255bW91cy1vdmVyZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1i
bG9jay1pbnNpZGUtYW5vbnltb3VzLW92ZXJmbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYTAxMzA1MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy5odG1sCkBA
IC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAg
ICAgIDxzdHlsZT4KKyAgICAgICAgICAgIC5yZWdpb24geworICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGJs
dWU7CisgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICAjcmVnaW9uMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICNyZWdpb24yIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzAw
cHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAgICAgICBtYXJn
aW4tbGVmdDogNTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNhcnRpY2xlIHsKKyAg
ICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjMDA5OTk5OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3Zp
ZGVvIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7CisgICAgICAgICAgICAgICAgaGVp
Z2h0OiAzMDBweDsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb247Cisg
ICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHk+CisgICAgICAgIDxhIGhy
ZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI2MDEiPkJ1ZyAx
MzI2MDEgLSBbQ1NTIFJlZ2lvbnNdIEJsb2NrIGluY29ycmVjdGx5IHNpemVkIHdoZW4gY29udGFp
bmluZyBhbiB1bnNwbGl0dGFibGUgYm94PC9hPgorICAgICAgICA8cD5UaGlzIHRlc3QgcGFzc2Vz
IGlmIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6IzAwQkIwMCI+Z3JlZW4gdGV4dDwvc3Bhbj4gaXMg
cG9zaXRpb25lZCBhdCB0aGUgdmVyeSB0b3Agb2YgdGhlIHNlY29uZCA8c3BhbiBzdHlsZT0iY29s
b3I6Ymx1ZSI+cmVnaW9uPC9zcGFuPiBhbmQgdGhlIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlIj5i
bHVlIHRleHQ8L3NwYW4+IGltbWVkaWF0ZWx5IGFmdGVyIGl0LjwvcD4KKyAgICAgICAgPGRpdiBj
bGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMSI+PC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InJl
Z2lvbiIgaWQ9InJlZ2lvbjIiPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAg
ICAgICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGNvbnRyb2xzPjwvdmlkZW8+PHNwYW4gc3R5bGU9
ImNvbG9yOiMwMEZGMDAiPlRoaXMgdGV4dCwgdG9nZXRoZXIgd2l0aCB0aGUgdmlkZW8gZWxlbWVu
dCwgYXJlIGluc2lkZSBhbiBhbm9ueW1vdXNlIGJsb2NrPC9zcGFuPgorICAgICAgICAgICAgPGRp
diBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjpibHVlIj5UaGlzIGRpdiBpcyBhZnRlciB0aGUgYW5v
bnltb3VzIGJsb2NrPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZs
b3ctZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2st
b3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4wZGE0NzMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lu
bGluZS1ibG9jay1vdmVyZmxvdy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAg
ICAgIC5yZWdpb24geworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGJsdWU7Cisg
ICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAj
cmVnaW9uMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICNyZWdpb24yIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7Cisg
ICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAgICAgICBtYXJnaW4tbGVm
dDogNTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIC5hcnRpY2xlIHsKKyAgICAgICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OTk5OworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgI2FydGljbGUxIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIzMHB4OworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgI3ZpZGVvIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzIw
cHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBzYWxtb247CisgICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQg
YmxhY2s7CisgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworICAgICAgICAg
ICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAg
ICA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAx
Ij5CdWcgMTMyNjAxIC0gW0NTUyBSZWdpb25zXSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVu
IGNvbnRhaW5pbmcgYW4gdW5zcGxpdHRhYmxlIGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0
IHBhc3NlcyBpZiB0aGUgPHNwYW4gc3R5bGU9ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3Nw
YW4+IGlzIHBvc2l0aW9uZWQgYXQgdGhlIHZlcnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5
bGU9ImNvbG9yOmJsdWUiPnJlZ2lvbjwvc3Bhbj4uPC9wPgorICAgICAgICA8ZGl2IGNsYXNzPSJy
ZWdpb24iIGlkPSJyZWdpb24xIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFydGljbGUiIGlk
PSJhcnRpY2xlMSI+CisgICAgICAgICAgICAgICAgPHZpZGVvIGlkPSJ2aWRlbyIgY29udHJvbHM+
PC92aWRlbz4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKworICAgICAgICA8
ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24yIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9
ImFydGljbGUiIGlkPSJhcnRpY2xlMiI+CisgICAgICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIi
IHN0eWxlPSJjb2xvcjojMDBGRjAwIj5UaGlzIGRpdiBpcyBmbG93ZWQgYWZ0ZXIgdGhlIHZpZGVv
IGVsZW1lbnQuPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lu
bGluZS1ibG9jay1vdmVyZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGlu
ZS1ibG9jay1vdmVyZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjFiMTViZDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5s
aW5lLWJsb2NrLW92ZXJmbG93Lmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgLnJlZ2lv
biB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7CisgICAgICAgICAg
ICAgICAgYm9yZGVyOiAzcHggc29saWQgYmx1ZTsKKyAgICAgICAgICAgICAgICBmbG9hdDogbGVm
dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNyZWdpb24xIHsKKyAgICAgICAgICAgICAg
ICBoZWlnaHQ6IDI1MHB4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3JlZ2lvbjIgewor
ICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIw
MHB4OworICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgLmFydGljbGUgeworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBmbG93OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDk5OTk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICAjdmlkZW8geworICAgICAgICAgICAgICAgIHdpZHRoOiAz
MjBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHNhbG1vbjsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xp
ZCBibGFjazsKKyAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHk+CisgICAg
ICAgIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI2
MDEiPkJ1ZyAxMzI2MDEgLSBbQ1NTIFJlZ2lvbnNdIEJsb2NrIGluY29ycmVjdGx5IHNpemVkIHdo
ZW4gY29udGFpbmluZyBhbiB1bnNwbGl0dGFibGUgYm94PC9hPgorICAgICAgICA8cD5UaGlzIHRl
c3QgcGFzc2VzIGlmIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6IzAwQkIwMCI+Z3JlZW4gdGV4dDwv
c3Bhbj4gaXMgcG9zaXRpb25lZCBhdCB0aGUgdmVyeSB0b3Agb2YgdGhlIHNlY29uZCA8c3BhbiBz
dHlsZT0iY29sb3I6Ymx1ZSI+cmVnaW9uPC9zcGFuPi48L3A+CisgICAgICAgIDxkaXYgY2xhc3M9
InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJyZWdpb24i
IGlkPSJyZWdpb24yIj48L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFy
dGljbGUxIj4KKyAgICAgICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGNvbnRyb2xzPjwvdmlkZW8+
CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlIiBpZD0iYXJ0aWNs
ZTIiPgorICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjojMDBGRjAwIj5U
aGlzIGRpdiBpcyBmbG93ZWQgYWZ0ZXIgdGhlIHZpZGVvIGVsZW1lbnQuPC9kaXY+CisgICAgICAg
IDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2ZGY5Y2Y1Li4yN2I3
OTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDUtMTkgIFJhZHUgU3Rhdmls
YSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgUmVnaW9uc10gQmxvY2sgaW5j
b3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0YWJsZSBib3gKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjYwMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gbGF5aW5nIG91
dCBlbGVtZW50cyBpbiBhIHJlZ2lvbiwgd2hlbiBhbiBpbmxpbmUgZWxlbWVudCBpcyBlbmNvdW50
ZXJlZAorICAgICAgICB0aGUgc2l6ZSBvZiBpdHMgcGFyZW50IG11c3Qgbm90IGJlIGluY3JlYXNl
ZCBiZXlvbmQgdGhlIGJvdHRvbSBvZiB0aGUgY3VycmVudCByZWdpb24sCisgICAgICAgIHVubGVz
cyBpZiBpdHMgdGhlIGxhc3QgcmVnaW9uLiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgdGhlIG5leHQg
c2libGluZyBvZiB0aGUKKyAgICAgICAgaW5saW5lIGVsZW1lbnQgaXMgY29ycmVjdGx5IGxhaWQg
b3V0IGF0IHRoZSB0b3Agb2YgdGhlIG5leHQgcmVnaW9uLCBpbnN0ZWFkCisgICAgICAgIG9mIGxl
YXZpbmcgYW4gZW1wdHkgc3BhY2UgZXF1YWwgdG8gdGhlIGhlaWdodCBvZiB0aGUgb3ZlcmZsb3cs
IGFzIGl0IGRpZCB1bnRpbCBub3cuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvcmVnaW9ucy9pbmxp
bmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy5odG1sCisgICAgICAgICAgICAgICBm
YXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLW92ZXJmbG93Lmh0bWwKKworICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tG
bG93OjphZGp1c3RMaW5lUG9zaXRpb25Gb3JQYWdpbmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrRmxvdzo6aGFzTmV4dFBhZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCbG9ja0Zsb3cuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6bGF5b3V0UnVuc0FuZEZs
b2F0c0luUmFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpsaW5rVG9F
bmRMaW5lSWZOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpkZXRl
cm1pbmVTdGFydFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6
Y2hlY2tQYWdpbmF0aW9uQW5kRmxvYXRzQXRFbmRMaW5lKToKKwogMjAxNC0wNS0xOSAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBTcGxpdCBzY3JvbGxp
bmcgdHJlZSBTY3JvbGxpbmdOb2RlcyBpbnRvIEZyYW1lU2Nyb2xsaW5nTm9kZXMgYW5kIE92ZXJm
bG93U2Nyb2xsaW5nTm9kZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5jcHAKaW5kZXggMWQ1OGI2YS4uNzljZDE4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTE2MjAsNyArMTYyMCw3IEBAIHN0YXRpYyBp
bmxpbmUgTGF5b3V0VW5pdCBjYWxjdWxhdGVNaW5pbXVtUGFnZUhlaWdodChSZW5kZXJTdHlsZSog
cmVuZGVyU3R5bGUsIFJvCiAgICAgcmV0dXJuIGxpbmVCb3R0b20gLSBsaW5lVG9wOwogfQogCi12
b2lkIFJlbmRlckJsb2NrRmxvdzo6YWRqdXN0TGluZVBvc2l0aW9uRm9yUGFnaW5hdGlvbihSb290
SW5saW5lQm94KiBsaW5lQm94LCBMYXlvdXRVbml0JiBkZWx0YSwgUmVuZGVyRmxvd1RocmVhZCog
Zmxvd1RocmVhZCkKK3ZvaWQgUmVuZGVyQmxvY2tGbG93OjphZGp1c3RMaW5lUG9zaXRpb25Gb3JQ
YWdpbmF0aW9uKFJvb3RJbmxpbmVCb3gqIGxpbmVCb3gsIExheW91dFVuaXQmIGRlbHRhLCBib29s
JiBvdmVyZmxvd3NSZWdpb24sIFJlbmRlckZsb3dUaHJlYWQqIGZsb3dUaHJlYWQpCiB7CiAgICAg
Ly8gRklYTUU6IEZvciBub3cgd2UgcGFnaW5hdGUgdXNpbmcgbGluZSBvdmVyZmxvdy4gVGhpcyBl
bnN1cmVzIHRoYXQgbGluZXMgZG9uJ3Qgb3ZlcmxhcCBhdCBhbGwgd2hlbiB3ZQogICAgIC8vIHB1
dCBhIHN0cnV0IGJldHdlZW4gdGhlbSBmb3IgcGFnaW5hdGlvbiBwdXJwb3Nlcy4gSG93ZXZlciwg
dGhpcyByZWFsbHkgaXNuJ3QgdGhlIGRlc2lyZWQgcmVuZGVyaW5nLCBzaW5jZQpAQCAtMTY1OSw2
ICsxNjU5LDcgQEAgdm9pZCBSZW5kZXJCbG9ja0Zsb3c6OmFkanVzdExpbmVQb3NpdGlvbkZvclBh
Z2luYXRpb24oUm9vdElubGluZUJveCogbGluZUJveCwgTGEKICAgICAgICAgLy8gRnJvbSBoZXJl
LCB0aGUgZml4IGlzIG5vdCBzdHJhaWdodGZvcndhcmQgYmVjYXVzZSBpdCdzIG5vdCBlYXN5IHRv
IGFsd2F5cyBkZXRlcm1pbmUgd2hlbiB0aGUgY3VycmVudCBsaW5lIGlzIHRoZSBmaXJzdCBpbiB0
aGUgcGFnZS4KICAgICAgICAgcmV0dXJuOwogICAgIExheW91dFVuaXQgcmVtYWluaW5nTG9naWNh
bEhlaWdodCA9IHBhZ2VSZW1haW5pbmdMb2dpY2FsSGVpZ2h0Rm9yT2Zmc2V0KGxvZ2ljYWxPZmZz
ZXQsIEV4Y2x1ZGVQYWdlQm91bmRhcnkpOworICAgIG92ZXJmbG93c1JlZ2lvbiA9IChsaW5lSGVp
Z2h0ID4gcmVtYWluaW5nTG9naWNhbEhlaWdodCk7CiAKICAgICBpbnQgbGluZUluZGV4ID0gbGlu
ZUNvdW50KGxpbmVCb3gpOwogICAgIGlmIChyZW1haW5pbmdMb2dpY2FsSGVpZ2h0IDwgbGluZUhl
aWdodCB8fCAoc2hvdWxkQnJlYWtBdExpbmVUb0F2b2lkV2lkb3coKSAmJiBsaW5lQnJlYWtUb0F2
b2lkV2lkb3coKSA9PSBsaW5lSW5kZXgpKSB7CkBAIC0xNjczLDYgKzE2NzQsOCBAQCB2b2lkIFJl
bmRlckJsb2NrRmxvdzo6YWRqdXN0TGluZVBvc2l0aW9uRm9yUGFnaW5hdGlvbihSb290SW5saW5l
Qm94KiBsaW5lQm94LCBMYQogICAgICAgICAgICAgLy8gU3BsaXQgdGhlIHRvcCBtYXJnaW4gaW4g
b3JkZXIgdG8gYXZvaWQgc3BsaXR0aW5nIHRoZSB2aXNpYmxlIHBhcnQgb2YgdGhlIGxpbmUuCiAg
ICAgICAgICAgICByZW1haW5pbmdMb2dpY2FsSGVpZ2h0IC09IHN0ZDo6bWluKGxpbmVIZWlnaHQg
LSBwYWdlTG9naWNhbEhlaWdodCwgc3RkOjptYXg8TGF5b3V0VW5pdD4oMCwgbG9naWNhbFZpc3Vh
bE92ZXJmbG93LnkoKSAtIGxpbmVCb3gtPmxpbmVUb3BXaXRoTGVhZGluZygpKSk7CiAgICAgICAg
IH0KKyAgICAgICAgTGF5b3V0VW5pdCByZW1haW5pbmdMb2dpY2FsSGVpZ2h0QXROZXdPZmZzZXQg
PSBwYWdlUmVtYWluaW5nTG9naWNhbEhlaWdodEZvck9mZnNldChsb2dpY2FsT2Zmc2V0ICsgcmVt
YWluaW5nTG9naWNhbEhlaWdodCwgRXhjbHVkZVBhZ2VCb3VuZGFyeSk7CisgICAgICAgIG92ZXJm
bG93c1JlZ2lvbiA9IChsaW5lSGVpZ2h0ID4gcmVtYWluaW5nTG9naWNhbEhlaWdodEF0TmV3T2Zm
c2V0KTsKICAgICAgICAgTGF5b3V0VW5pdCB0b3RhbExvZ2ljYWxIZWlnaHQgPSBsaW5lSGVpZ2h0
ICsgc3RkOjptYXg8TGF5b3V0VW5pdD4oMCwgbG9naWNhbE9mZnNldCk7CiAgICAgICAgIExheW91
dFVuaXQgcGFnZUxvZ2ljYWxIZWlnaHRBdE5ld09mZnNldCA9IGhhc1VuaWZvcm1QYWdlTG9naWNh
bEhlaWdodCA/IHBhZ2VMb2dpY2FsSGVpZ2h0IDogcGFnZUxvZ2ljYWxIZWlnaHRGb3JPZmZzZXQo
bG9naWNhbE9mZnNldCArIHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQpOwogICAgICAgICBzZXRQYWdl
QnJlYWsobG9naWNhbE9mZnNldCwgbGluZUhlaWdodCAtIHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQp
OwpAQCAtMTc1OCw3ICsxNzYxLDcgQEAgYm9vbCBSZW5kZXJCbG9ja0Zsb3c6Omhhc05leHRQYWdl
KExheW91dFVuaXQgbG9naWNhbE9mZnNldCwgUGFnZUJvdW5kYXJ5UnVsZSBwYWcKICAgICBSZW5k
ZXJSZWdpb24qIHN0YXJ0UmVnaW9uID0gbnVsbHB0cjsKICAgICBSZW5kZXJSZWdpb24qIGVuZFJl
Z2lvbiA9IG51bGxwdHI7CiAgICAgZmxvd1RocmVhZC0+Z2V0UmVnaW9uUmFuZ2VGb3JCb3godGhp
cywgc3RhcnRSZWdpb24sIGVuZFJlZ2lvbik7Ci0gICAgcmV0dXJuIHJlZ2lvbiAhPSBlbmRSZWdp
b247CisgICAgcmV0dXJuIChlbmRSZWdpb24gJiYgcmVnaW9uICE9IGVuZFJlZ2lvbik7CiB9CiAK
IExheW91dFVuaXQgUmVuZGVyQmxvY2tGbG93OjphZGp1c3RGb3JVbnNwbGl0dGFibGVDaGlsZChS
ZW5kZXJCb3gmIGNoaWxkLCBMYXlvdXRVbml0IGxvZ2ljYWxPZmZzZXQsIGJvb2wgaW5jbHVkZU1h
cmdpbnMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tG
bG93LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2tGbG93LmgKaW5kZXgg
MDgyNzk1OC4uNDkxYTJjYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2tGbG93LmgKQEAgLTU5MCw3ICs1OTAsNyBAQCBwcml2YXRlOgogCiBwdWJsaWM6CiAgICAgLy8g
RklYTUUtQkxPQ0tGTE9XOiBUaGVzZSBjYW4gYmUgbWFkZSBwcm90ZWN0ZWQgYWdhaW4gb25jZSBh
bGwgY2FsbGVycyBoYXZlIGJlZW4gbW92ZWQgaGVyZS4KLSAgICB2b2lkIGFkanVzdExpbmVQb3Np
dGlvbkZvclBhZ2luYXRpb24oUm9vdElubGluZUJveCosIExheW91dFVuaXQmIGRlbHRhT2Zmc2V0
LCBSZW5kZXJGbG93VGhyZWFkKik7IC8vIENvbXB1dGVzIGEgZGVsdGFPZmZzZXQgdmFsdWUgdGhh
dCBwdXQgYSBsaW5lIGF0IHRoZSB0b3Agb2YgdGhlIG5leHQgcGFnZSBpZiBpdCBkb2Vzbid0IGZp
dCBvbiB0aGUgY3VycmVudCBwYWdlLgorICAgIHZvaWQgYWRqdXN0TGluZVBvc2l0aW9uRm9yUGFn
aW5hdGlvbihSb290SW5saW5lQm94KiwgTGF5b3V0VW5pdCYgZGVsdGFPZmZzZXQsIGJvb2wmIG92
ZXJmbG93c1JlZ2lvbiwgUmVuZGVyRmxvd1RocmVhZCopOyAvLyBDb21wdXRlcyBhIGRlbHRhT2Zm
c2V0IHZhbHVlIHRoYXQgcHV0IGEgbGluZSBhdCB0aGUgdG9wIG9mIHRoZSBuZXh0IHBhZ2UgaWYg
aXQgZG9lc24ndCBmaXQgb24gdGhlIGN1cnJlbnQgcGFnZS4KICAgICB2b2lkIHVwZGF0ZVJlZ2lv
bkZvckxpbmUoUm9vdElubGluZUJveCopIGNvbnN0OwogICAgIHZvaWQgY3JlYXRlUmVuZGVyTmFt
ZWRGbG93RnJhZ21lbnRJZk5lZWRlZCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwCmluZGV4IDcwOGE0NjYuLjJjNDg2MTIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQu
Y3BwCkBAIC0xMTI4LDcgKzExMjgsOCBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGF5b3V0UnVu
c0FuZEZsb2F0c0luUmFuZ2UoTGluZUxheW91dFN0YXRlJiBsYXlvdXRTdGF0ZSwgSQogCiAgICAg
ICAgICAgICAgICAgaWYgKHBhZ2luYXRlZCkgewogICAgICAgICAgICAgICAgICAgICBMYXlvdXRV
bml0IGFkanVzdG1lbnQgPSAwOwotICAgICAgICAgICAgICAgICAgICBhZGp1c3RMaW5lUG9zaXRp
b25Gb3JQYWdpbmF0aW9uKGxpbmVCb3gsIGFkanVzdG1lbnQsIGxheW91dFN0YXRlLmZsb3dUaHJl
YWQoKSk7CisgICAgICAgICAgICAgICAgICAgIGJvb2wgb3ZlcmZsb3dzUmVnaW9uID0gZmFsc2U7
CisgICAgICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGlu
ZUJveCwgYWRqdXN0bWVudCwgb3ZlcmZsb3dzUmVnaW9uLCBsYXlvdXRTdGF0ZS5mbG93VGhyZWFk
KCkpOwogICAgICAgICAgICAgICAgICAgICBpZiAoYWRqdXN0bWVudCkgewogICAgICAgICAgICAg
ICAgICAgICAgICAgTGF5b3V0VW5pdCBvbGRMaW5lV2lkdGggPSBhdmFpbGFibGVMb2dpY2FsV2lk
dGhGb3JMaW5lKG9sZExvZ2ljYWxIZWlnaHQsIGxheW91dFN0YXRlLmxpbmVJbmZvKCkuaXNGaXJz
dExpbmUoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lQm94LT5hZGp1c3RCbG9ja0Rp
cmVjdGlvblBvc2l0aW9uKGFkanVzdG1lbnQpOwpAQCAtMTE0NCw2ICsxMTQ1LDE2IEBAIHZvaWQg
UmVuZGVyQmxvY2tGbG93OjpsYXlvdXRSdW5zQW5kRmxvYXRzSW5SYW5nZShMaW5lTGF5b3V0U3Rh
dGUmIGxheW91dFN0YXRlLCBJCiAKICAgICAgICAgICAgICAgICAgICAgICAgIHNldExvZ2ljYWxI
ZWlnaHQobGluZUJveC0+bGluZUJvdHRvbVdpdGhMZWFkaW5nKCkpOwogICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBpZiAoUmVu
ZGVyRmxvd1RocmVhZCogZmxvd1RocmVhZCA9IGZsb3dUaHJlYWRDb250YWluaW5nQmxvY2soKSkg
eworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZsb3dUaHJlYWQtPmlzUmVuZGVyTmFtZWRG
bG93VGhyZWFkKCkgJiYgb3ZlcmZsb3dzUmVnaW9uICYmIGhhc05leHRQYWdlKGxpbmVCb3gtPmxp
bmVUb3AoKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMaW1pdCB0aGUgaGVp
Z2h0IG9mIHRoaXMgYmxvY2sgdG8gdGhlIGVuZCBvZiB0aGUgY3VycmVudCByZWdpb24gYmVjYXVz
ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGl0IGlzIGFsc28gZnJhZ21lbnRlZCBp
bnRvIHRoZSBuZXh0IHJlZ2lvbi4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXlvdXRV
bml0IHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQgPSBwYWdlUmVtYWluaW5nTG9naWNhbEhlaWdodEZv
ck9mZnNldChsb2dpY2FsVG9wKCksIEV4Y2x1ZGVQYWdlQm91bmRhcnkpOworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGlmIChsb2dpY2FsSGVpZ2h0KCkgPiByZW1haW5pbmdMb2dpY2FsSGVp
Z2h0KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRMb2dpY2FsSGVpZ2h0KHJl
bWFpbmluZ0xvZ2ljYWxIZWlnaHQpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICAgICAgaWYgKGxheW91dFN0YXRlLmZs
b3dUaHJlYWQoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVJlZ2lvbkZvckxpbmUo
bGluZUJveCk7CkBAIC0xMjU5LDcgKzEyNzAsOCBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGlu
a1RvRW5kTGluZUlmTmVlZGVkKExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUpCiAgICAgICAg
ICAgICAgICAgbGluZS0+YXR0YWNoTGluZSgpOwogICAgICAgICAgICAgICAgIGlmIChwYWdpbmF0
ZWQpIHsKICAgICAgICAgICAgICAgICAgICAgZGVsdGEgLT0gbGluZS0+cGFnaW5hdGlvblN0cnV0
KCk7Ci0gICAgICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24o
bGluZSwgZGVsdGEsIGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSk7CisgICAgICAgICAgICAgICAg
ICAgIGJvb2wgb3ZlcmZsb3dzUmVnaW9uID0gZmFsc2U7CisgICAgICAgICAgICAgICAgICAgIGFk
anVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGluZSwgZGVsdGEsIG92ZXJmbG93c1JlZ2lv
biwgbGF5b3V0U3RhdGUuZmxvd1RocmVhZCgpKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgaWYgKGRlbHRhKSB7CiAgICAgICAgICAgICAgICAgICAgIGxheW91dFN0YXRlLnVw
ZGF0ZVJlcGFpbnRSYW5nZUZyb21Cb3gobGluZSwgZGVsdGEpOwpAQCAtMTQ5OSw3ICsxNTExLDgg
QEAgUm9vdElubGluZUJveCogUmVuZGVyQmxvY2tGbG93OjpkZXRlcm1pbmVTdGFydFBvc2l0aW9u
KExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3QKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIHBhZ2luYXRpb25EZWx0YSAtPSBjdXJy
LT5wYWdpbmF0aW9uU3RydXQoKTsKLSAgICAgICAgICAgICAgICBhZGp1c3RMaW5lUG9zaXRpb25G
b3JQYWdpbmF0aW9uKGN1cnIsIHBhZ2luYXRpb25EZWx0YSwgbGF5b3V0U3RhdGUuZmxvd1RocmVh
ZCgpKTsKKyAgICAgICAgICAgICAgICBib29sIG92ZXJmbG93c1JlZ2lvbiA9IGZhbHNlOworICAg
ICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24oY3VyciwgcGFnaW5h
dGlvbkRlbHRhLCBvdmVyZmxvd3NSZWdpb24sIGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSk7CiAg
ICAgICAgICAgICAgICAgaWYgKHBhZ2luYXRpb25EZWx0YSkgewogICAgICAgICAgICAgICAgICAg
ICBpZiAoY29udGFpbnNGbG9hdHMoKSB8fCAhbGF5b3V0U3RhdGUuZmxvYXRzKCkuaXNFbXB0eSgp
KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogRG8gYmV0dGVyIGV2ZW50dWFs
bHkuICBGb3Igbm93IGlmIHdlIGV2ZXIgc2hpZnQgYmVjYXVzZSBvZiBwYWdpbmF0aW9uIGFuZCBm
bG9hdHMgYXJlIHByZXNlbnQganVzdCBnbyB0byBhIGZ1bGwgbGF5b3V0LgpAQCAtMTY0Nyw4ICsx
NjYwLDkgQEAgYm9vbCBSZW5kZXJCbG9ja0Zsb3c6OmNoZWNrUGFnaW5hdGlvbkFuZEZsb2F0c0F0
RW5kTGluZShMaW5lTGF5b3V0U3RhdGUmIGxheW91dFMKICAgICAgICAgICAgICAgICAvLyBUaGlz
IGlzbid0IHRoZSByZWFsIG1vdmUgd2UncmUgZ29pbmcgdG8gZG8sIHNvIGRvbid0IHVwZGF0ZSB0
aGUgbGluZSBib3gncyBwYWdpbmF0aW9uCiAgICAgICAgICAgICAgICAgLy8gc3RydXQgeWV0Lgog
ICAgICAgICAgICAgICAgIExheW91dFVuaXQgb2xkUGFnaW5hdGlvblN0cnV0ID0gbGluZUJveC0+
cGFnaW5hdGlvblN0cnV0KCk7CisgICAgICAgICAgICAgICAgYm9vbCBvdmVyZmxvd3NSZWdpb24g
PSBmYWxzZTsKICAgICAgICAgICAgICAgICBsaW5lRGVsdGEgLT0gb2xkUGFnaW5hdGlvblN0cnV0
OwotICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGluZUJv
eCwgbGluZURlbHRhLCBsYXlvdXRTdGF0ZS5mbG93VGhyZWFkKCkpOworICAgICAgICAgICAgICAg
IGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGluZUJveCwgbGluZURlbHRhLCBvdmVy
Zmxvd3NSZWdpb24sIGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSk7CiAgICAgICAgICAgICAgICAg
bGluZUJveC0+c2V0UGFnaW5hdGlvblN0cnV0KG9sZFBhZ2luYXRpb25TdHJ1dCk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBpZiAobGluZVdpZHRoRm9yUGFnaW5hdGVkTGluZUNoYW5nZWQo
bGluZUJveCwgbGluZURlbHRhLCBsYXlvdXRTdGF0ZS5mbG93VGhyZWFkKCkpKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>231757</attachid>
            <date>2014-05-20 01:42:02 -0700</date>
            <delta_ts>2014-05-20 07:35:25 -0700</delta_ts>
            <desc>Patch v2 with slight improvement</desc>
            <filename>132601.patch</filename>
            <type>text/plain</type>
            <size>18947</size>
            <attacher name="Radu Stavila">stavila</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1MDg4MDM5Li45ODQ2YjFiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTQtMDUt
MTYgIFJhZHUgU3RhdmlsYSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgUmVn
aW9uc10gQmxvY2sgaW5jb3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0
YWJsZSBib3gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEzMjYwMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZGVkIHRlc3RzIGZvciB0aGUgbGF5b3V0IG9mIGVsZW1lbnRzIGZvbGxvd2luZyBpbmxpbmUt
YmxvY2sgZWxlbWVudHMgCisgICAgICAgIHRoYXQgb3ZlcmZsb3cgdGhlaXIgcmVnaW9uLCB3aXRo
IGFuZCB3aXRob3V0IGFub255bW91cyBibG9ja3MuCisKKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMv
aW5saW5lLWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5vbnltb3Vz
LW92ZXJmbG93Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9pbmxpbmUtYmxv
Y2stb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFzdC9yZWdpb25z
L2lubGluZS1ibG9jay1vdmVyZmxvdy5odG1sOiBBZGRlZC4KKwogMjAxNC0wNS0xOSAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBTcGxpdCBzY3JvbGxp
bmcgdHJlZSBTY3JvbGxpbmdOb2RlcyBpbnRvIEZyYW1lU2Nyb2xsaW5nTm9kZXMgYW5kIE92ZXJm
bG93U2Nyb2xsaW5nTm9kZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9p
bmxpbmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy1leHBlY3RlZC5odG1sIGIvTGF5
b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1ibG9jay1pbnNpZGUtYW5vbnltb3VzLW92ZXJm
bG93LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDFk
MDg2NDIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5saW5l
LWJsb2NrLWluc2lkZS1hbm9ueW1vdXMtb3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsx
LDQ5IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8c3R5
bGU+CisgICAgICAgICAgICAucmVnaW9uIHsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBz
b2xpZCBibHVlOworICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgI3JlZ2lvbjEgeworICAgICAgICAgICAgICAgIGhlaWdodDogMjUwcHg7Cisg
ICAgICAgICAgICB9CisgICAgICAgICAgICAjcmVnaW9uMiB7CisgICAgICAgICAgICAgICAgd2lk
dGg6IDMwMHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogMjAwcHg7CisgICAgICAgICAgICAg
ICAgbWFyZ2luLWxlZnQ6IDUwcHg7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAuYXJ0aWNs
ZSB7CisgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwOTk5OTsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICNhcnRpY2xlMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAy
MzBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICN2aWRlbyB7CisgICAgICAgICAgICAg
ICAgd2lkdGg6IDMyMHB4OworICAgICAgICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAg
ICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2FsbW9uOworICAgICAgICAgICAgICAgIGJvcmRl
cjogM3B4IHNvbGlkIGJsYWNrOworICAgICAgICAgICAgfQorICAgICAgICA8L3N0eWxlPgorICAg
IDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAgICA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAxIj5CdWcgMTMyNjAxIC0gW0NTUyBSZWdpb25z
XSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVuIGNvbnRhaW5pbmcgYW4gdW5zcGxpdHRhYmxl
IGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB0aGUgPHNwYW4gc3R5bGU9
ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3NwYW4+IGlzIHBvc2l0aW9uZWQgYXQgdGhlIHZl
cnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5bGU9ImNvbG9yOmJsdWUiPnJlZ2lvbjwvc3Bh
bj4gYW5kIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6Ymx1ZSI+Ymx1ZSB0ZXh0PC9zcGFuPiBpbW1l
ZGlhdGVseSBhZnRlciBpdC48L3A+CisgICAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJl
Z2lvbjEiPgorICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFydGljbGUxIj4K
KyAgICAgICAgICAgICAgICA8dmlkZW8gaWQ9InZpZGVvIiBjb250cm9scz48L3ZpZGVvPjxzcGFu
IHN0eWxlPSJjb2xvcjojMDBGRjAwIj4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rp
dj4KKyAgICAgICAgCisgICAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgaWQ9InJlZ2lvbjIiPgor
ICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFydGljbGUyIj4KKyAgICAgICAg
ICAgICAgICA8c3BhbiBzdHlsZT0iY29sb3I6IzAwRkYwMCI+VGhpcyB0ZXh0LCB0b2dldGhlciB3
aXRoIHRoZSB2aWRlbyBlbGVtZW50LCBhcmUgaW5zaWRlIGFuIGFub255bW91c2UgYmxvY2s8L3Nw
YW4+CisgICAgICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjpibHVlIj5U
aGlzIGRpdiBpcyBhZnRlciB0aGUgYW5vbnltb3VzIGJsb2NrPC9kaXY+CisgICAgICAgICAgICA8
L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAgICAgIAorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFu
b255bW91cy1vdmVyZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGluZS1i
bG9jay1pbnNpZGUtYW5vbnltb3VzLW92ZXJmbG93Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uYTAxMzA1MwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvcmVnaW9ucy9pbmxpbmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy5odG1sCkBA
IC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAg
ICAgIDxzdHlsZT4KKyAgICAgICAgICAgIC5yZWdpb24geworICAgICAgICAgICAgICAgIC13ZWJr
aXQtZmxvdy1mcm9tOiBmbG93OworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGJs
dWU7CisgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICAjcmVnaW9uMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgICNyZWdpb24yIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzAw
cHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAgICAgICBtYXJn
aW4tbGVmdDogNTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNhcnRpY2xlIHsKKyAg
ICAgICAgICAgICAgICAtd2Via2l0LWZsb3ctaW50bzogZmxvdzsKKyAgICAgICAgICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiAjMDA5OTk5OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3Zp
ZGVvIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7CisgICAgICAgICAgICAgICAgaGVp
Z2h0OiAzMDBweDsKKyAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzYWxtb247Cisg
ICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICB9Cisg
ICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHk+CisgICAgICAgIDxhIGhy
ZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI2MDEiPkJ1ZyAx
MzI2MDEgLSBbQ1NTIFJlZ2lvbnNdIEJsb2NrIGluY29ycmVjdGx5IHNpemVkIHdoZW4gY29udGFp
bmluZyBhbiB1bnNwbGl0dGFibGUgYm94PC9hPgorICAgICAgICA8cD5UaGlzIHRlc3QgcGFzc2Vz
IGlmIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6IzAwQkIwMCI+Z3JlZW4gdGV4dDwvc3Bhbj4gaXMg
cG9zaXRpb25lZCBhdCB0aGUgdmVyeSB0b3Agb2YgdGhlIHNlY29uZCA8c3BhbiBzdHlsZT0iY29s
b3I6Ymx1ZSI+cmVnaW9uPC9zcGFuPiBhbmQgdGhlIDxzcGFuIHN0eWxlPSJjb2xvcjpibHVlIj5i
bHVlIHRleHQ8L3NwYW4+IGltbWVkaWF0ZWx5IGFmdGVyIGl0LjwvcD4KKyAgICAgICAgPGRpdiBj
bGFzcz0icmVnaW9uIiBpZD0icmVnaW9uMSI+PC9kaXY+CisgICAgICAgIDxkaXYgY2xhc3M9InJl
Z2lvbiIgaWQ9InJlZ2lvbjIiPjwvZGl2PgorICAgICAgICA8ZGl2IGlkPSJhcnRpY2xlIj4KKyAg
ICAgICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGNvbnRyb2xzPjwvdmlkZW8+PHNwYW4gc3R5bGU9
ImNvbG9yOiMwMEZGMDAiPlRoaXMgdGV4dCwgdG9nZXRoZXIgd2l0aCB0aGUgdmlkZW8gZWxlbWVu
dCwgYXJlIGluc2lkZSBhbiBhbm9ueW1vdXNlIGJsb2NrPC9zcGFuPgorICAgICAgICAgICAgPGRp
diBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjpibHVlIj5UaGlzIGRpdiBpcyBhZnRlciB0aGUgYW5v
bnltb3VzIGJsb2NrPC9kaXY+CisgICAgICAgIDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2stb3ZlcmZs
b3ctZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9pbmxpbmUtYmxvY2st
b3ZlcmZsb3ctZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li4wZGE0NzMwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lu
bGluZS1ibG9jay1vdmVyZmxvdy1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsNDggQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzdHlsZT4KKyAgICAgICAg
ICAgIC5yZWdpb24geworICAgICAgICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkIGJsdWU7Cisg
ICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAj
cmVnaW9uMSB7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICNyZWdpb24yIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7Cisg
ICAgICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKKyAgICAgICAgICAgICAgICBtYXJnaW4tbGVm
dDogNTBweDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIC5hcnRpY2xlIHsKKyAgICAgICAg
ICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5OTk5OworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgI2FydGljbGUxIHsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIzMHB4OworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgI3ZpZGVvIHsKKyAgICAgICAgICAgICAgICB3aWR0aDogMzIw
cHg7CisgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMDBweDsKKyAgICAgICAgICAgICAgICBiYWNr
Z3JvdW5kLWNvbG9yOiBzYWxtb247CisgICAgICAgICAgICAgICAgYm9yZGVyOiAzcHggc29saWQg
YmxhY2s7CisgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworICAgICAgICAg
ICAgfQorICAgICAgICA8L3N0eWxlPgorICAgIDwvaGVhZD4KKworICAgIDxib2R5PgorICAgICAg
ICA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMyNjAx
Ij5CdWcgMTMyNjAxIC0gW0NTUyBSZWdpb25zXSBCbG9jayBpbmNvcnJlY3RseSBzaXplZCB3aGVu
IGNvbnRhaW5pbmcgYW4gdW5zcGxpdHRhYmxlIGJveDwvYT4KKyAgICAgICAgPHA+VGhpcyB0ZXN0
IHBhc3NlcyBpZiB0aGUgPHNwYW4gc3R5bGU9ImNvbG9yOiMwMEJCMDAiPmdyZWVuIHRleHQ8L3Nw
YW4+IGlzIHBvc2l0aW9uZWQgYXQgdGhlIHZlcnkgdG9wIG9mIHRoZSBzZWNvbmQgPHNwYW4gc3R5
bGU9ImNvbG9yOmJsdWUiPnJlZ2lvbjwvc3Bhbj4uPC9wPgorICAgICAgICA8ZGl2IGNsYXNzPSJy
ZWdpb24iIGlkPSJyZWdpb24xIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFydGljbGUiIGlk
PSJhcnRpY2xlMSI+CisgICAgICAgICAgICAgICAgPHZpZGVvIGlkPSJ2aWRlbyIgY29udHJvbHM+
PC92aWRlbz4KKyAgICAgICAgICAgIDwvZGl2PgorICAgICAgICA8L2Rpdj4KKworICAgICAgICA8
ZGl2IGNsYXNzPSJyZWdpb24iIGlkPSJyZWdpb24yIj4KKyAgICAgICAgICAgIDxkaXYgY2xhc3M9
ImFydGljbGUiIGlkPSJhcnRpY2xlMiI+CisgICAgICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIi
IHN0eWxlPSJjb2xvcjojMDBGRjAwIj5UaGlzIGRpdiBpcyBmbG93ZWQgYWZ0ZXIgdGhlIHZpZGVv
IGVsZW1lbnQuPC9kaXY+CisgICAgICAgICAgICA8L2Rpdj4KKyAgICAgICAgPC9kaXY+CisgICAg
PC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lu
bGluZS1ibG9jay1vdmVyZmxvdy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL2lubGlu
ZS1ibG9jay1vdmVyZmxvdy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
LjFiMTViZDEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvaW5s
aW5lLWJsb2NrLW92ZXJmbG93Lmh0bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHN0eWxlPgorICAgICAgICAgICAgLnJlZ2lv
biB7CisgICAgICAgICAgICAgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7CisgICAgICAgICAg
ICAgICAgYm9yZGVyOiAzcHggc29saWQgYmx1ZTsKKyAgICAgICAgICAgICAgICBmbG9hdDogbGVm
dDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNyZWdpb24xIHsKKyAgICAgICAgICAgICAg
ICBoZWlnaHQ6IDI1MHB4OworICAgICAgICAgICAgfQorICAgICAgICAgICAgI3JlZ2lvbjIgewor
ICAgICAgICAgICAgICAgIHdpZHRoOiAzMDBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDIw
MHB4OworICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4OworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgLmFydGljbGUgeworICAgICAgICAgICAgICAgIC13ZWJraXQtZmxvdy1pbnRv
OiBmbG93OworICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDk5OTk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICAjdmlkZW8geworICAgICAgICAgICAgICAgIHdpZHRoOiAz
MjBweDsKKyAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwMHB4OworICAgICAgICAgICAgICAgIGJh
Y2tncm91bmQtY29sb3I6IHNhbG1vbjsKKyAgICAgICAgICAgICAgICBib3JkZXI6IDNweCBzb2xp
ZCBibGFjazsKKyAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7CisgICAgICAg
ICAgICB9CisgICAgICAgIDwvc3R5bGU+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHk+CisgICAg
ICAgIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzI2
MDEiPkJ1ZyAxMzI2MDEgLSBbQ1NTIFJlZ2lvbnNdIEJsb2NrIGluY29ycmVjdGx5IHNpemVkIHdo
ZW4gY29udGFpbmluZyBhbiB1bnNwbGl0dGFibGUgYm94PC9hPgorICAgICAgICA8cD5UaGlzIHRl
c3QgcGFzc2VzIGlmIHRoZSA8c3BhbiBzdHlsZT0iY29sb3I6IzAwQkIwMCI+Z3JlZW4gdGV4dDwv
c3Bhbj4gaXMgcG9zaXRpb25lZCBhdCB0aGUgdmVyeSB0b3Agb2YgdGhlIHNlY29uZCA8c3BhbiBz
dHlsZT0iY29sb3I6Ymx1ZSI+cmVnaW9uPC9zcGFuPi48L3A+CisgICAgICAgIDxkaXYgY2xhc3M9
InJlZ2lvbiIgaWQ9InJlZ2lvbjEiPjwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJyZWdpb24i
IGlkPSJyZWdpb24yIj48L2Rpdj4KKyAgICAgICAgPGRpdiBjbGFzcz0iYXJ0aWNsZSIgaWQ9ImFy
dGljbGUxIj4KKyAgICAgICAgICAgIDx2aWRlbyBpZD0idmlkZW8iIGNvbnRyb2xzPjwvdmlkZW8+
CisgICAgICAgIDwvZGl2PgorICAgICAgICA8ZGl2IGNsYXNzPSJhcnRpY2xlIiBpZD0iYXJ0aWNs
ZTIiPgorICAgICAgICAgICAgPGRpdiBpZD0iYWZ0ZXIiIHN0eWxlPSJjb2xvcjojMDBGRjAwIj5U
aGlzIGRpdiBpcyBmbG93ZWQgYWZ0ZXIgdGhlIHZpZGVvIGVsZW1lbnQuPC9kaXY+CisgICAgICAg
IDwvZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA2ZGY5Y2Y1Li4yN2I3
OTc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTQtMDUtMTkgIFJhZHUgU3Rhdmls
YSAgPHN0YXZpbGFAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgUmVnaW9uc10gQmxvY2sgaW5j
b3JyZWN0bHkgc2l6ZWQgd2hlbiBjb250YWluaW5nIGFuIHVuc3BsaXR0YWJsZSBib3gKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMjYwMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gbGF5aW5nIG91
dCBlbGVtZW50cyBpbiBhIHJlZ2lvbiwgd2hlbiBhbiBpbmxpbmUgZWxlbWVudCBpcyBlbmNvdW50
ZXJlZAorICAgICAgICB0aGUgc2l6ZSBvZiBpdHMgcGFyZW50IG11c3Qgbm90IGJlIGluY3JlYXNl
ZCBiZXlvbmQgdGhlIGJvdHRvbSBvZiB0aGUgY3VycmVudCByZWdpb24sCisgICAgICAgIHVubGVz
cyBpZiBpdHMgdGhlIGxhc3QgcmVnaW9uLiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgdGhlIG5leHQg
c2libGluZyBvZiB0aGUKKyAgICAgICAgaW5saW5lIGVsZW1lbnQgaXMgY29ycmVjdGx5IGxhaWQg
b3V0IGF0IHRoZSB0b3Agb2YgdGhlIG5leHQgcmVnaW9uLCBpbnN0ZWFkCisgICAgICAgIG9mIGxl
YXZpbmcgYW4gZW1wdHkgc3BhY2UgZXF1YWwgdG8gdGhlIGhlaWdodCBvZiB0aGUgb3ZlcmZsb3cs
IGFzIGl0IGRpZCB1bnRpbCBub3cuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvcmVnaW9ucy9pbmxp
bmUtYmxvY2staW5zaWRlLWFub255bW91cy1vdmVyZmxvdy5odG1sCisgICAgICAgICAgICAgICBm
YXN0L3JlZ2lvbnMvaW5saW5lLWJsb2NrLW92ZXJmbG93Lmh0bWwKKworICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJCbG9ja0Zsb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tG
bG93OjphZGp1c3RMaW5lUG9zaXRpb25Gb3JQYWdpbmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrRmxvdzo6aGFzTmV4dFBhZ2UpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5k
ZXJCbG9ja0Zsb3cuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2tMaW5lTGF5b3V0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6bGF5b3V0UnVuc0FuZEZs
b2F0c0luUmFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpsaW5rVG9F
bmRMaW5lSWZOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyQmxvY2tGbG93OjpkZXRl
cm1pbmVTdGFydFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckJsb2NrRmxvdzo6
Y2hlY2tQYWdpbmF0aW9uQW5kRmxvYXRzQXRFbmRMaW5lKToKKwogMjAxNC0wNS0xOSAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBTcGxpdCBzY3JvbGxp
bmcgdHJlZSBTY3JvbGxpbmdOb2RlcyBpbnRvIEZyYW1lU2Nyb2xsaW5nTm9kZXMgYW5kIE92ZXJm
bG93U2Nyb2xsaW5nTm9kZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2Nr
Rmxvdy5jcHAKaW5kZXggMWQ1OGI2YS4uN2UxOTFiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5jcHAKQEAgLTE2MjAsNyArMTYyMCw3IEBAIHN0YXRpYyBp
bmxpbmUgTGF5b3V0VW5pdCBjYWxjdWxhdGVNaW5pbXVtUGFnZUhlaWdodChSZW5kZXJTdHlsZSog
cmVuZGVyU3R5bGUsIFJvCiAgICAgcmV0dXJuIGxpbmVCb3R0b20gLSBsaW5lVG9wOwogfQogCi12
b2lkIFJlbmRlckJsb2NrRmxvdzo6YWRqdXN0TGluZVBvc2l0aW9uRm9yUGFnaW5hdGlvbihSb290
SW5saW5lQm94KiBsaW5lQm94LCBMYXlvdXRVbml0JiBkZWx0YSwgUmVuZGVyRmxvd1RocmVhZCog
Zmxvd1RocmVhZCkKK3ZvaWQgUmVuZGVyQmxvY2tGbG93OjphZGp1c3RMaW5lUG9zaXRpb25Gb3JQ
YWdpbmF0aW9uKFJvb3RJbmxpbmVCb3gqIGxpbmVCb3gsIExheW91dFVuaXQmIGRlbHRhLCBib29s
JiBvdmVyZmxvd3NSZWdpb24sIFJlbmRlckZsb3dUaHJlYWQqIGZsb3dUaHJlYWQpCiB7CiAgICAg
Ly8gRklYTUU6IEZvciBub3cgd2UgcGFnaW5hdGUgdXNpbmcgbGluZSBvdmVyZmxvdy4gVGhpcyBl
bnN1cmVzIHRoYXQgbGluZXMgZG9uJ3Qgb3ZlcmxhcCBhdCBhbGwgd2hlbiB3ZQogICAgIC8vIHB1
dCBhIHN0cnV0IGJldHdlZW4gdGhlbSBmb3IgcGFnaW5hdGlvbiBwdXJwb3Nlcy4gSG93ZXZlciwg
dGhpcyByZWFsbHkgaXNuJ3QgdGhlIGRlc2lyZWQgcmVuZGVyaW5nLCBzaW5jZQpAQCAtMTY0MSw2
ICsxNjQxLDcgQEAgdm9pZCBSZW5kZXJCbG9ja0Zsb3c6OmFkanVzdExpbmVQb3NpdGlvbkZvclBh
Z2luYXRpb24oUm9vdElubGluZUJveCogbGluZUJveCwgTGEKICAgICAvLyBGSVhNRTogQW5vdGhl
ciBwcm9ibGVtIHdpdGggc2ltcGx5IG1vdmluZyBsaW5lcyBpcyB0aGF0IHRoZSBhdmFpbGFibGUg
bGluZSB3aWR0aCBtYXkgY2hhbmdlIChiZWNhdXNlIG9mIGZsb2F0cykuCiAgICAgLy8gVGVjaG5p
Y2FsbHkgaWYgdGhlIGxvY2F0aW9uIHdlIG1vdmUgdGhlIGxpbmUgdG8gaGFzIGEgZGlmZmVyZW50
IGxpbmUgd2lkdGggdGhhbiBvdXIgb2xkIHBvc2l0aW9uLCB0aGVuIHdlIG5lZWQgdG8gZGlydHkg
dGhlCiAgICAgLy8gbGluZSBhbmQgYWxsIGZvbGxvd2luZyBsaW5lcy4KKyAgICBvdmVyZmxvd3NS
ZWdpb24gPSBmYWxzZTsKICAgICBMYXlvdXRSZWN0IGxvZ2ljYWxWaXN1YWxPdmVyZmxvdyA9IGxp
bmVCb3gtPmxvZ2ljYWxWaXN1YWxPdmVyZmxvd1JlY3QobGluZUJveC0+bGluZVRvcCgpLCBsaW5l
Qm94LT5saW5lQm90dG9tKCkpOwogICAgIExheW91dFVuaXQgbG9naWNhbE9mZnNldCA9IHN0ZDo6
bWluKGxpbmVCb3gtPmxpbmVUb3BXaXRoTGVhZGluZygpLCBsb2dpY2FsVmlzdWFsT3ZlcmZsb3cu
eSgpKTsKICAgICBMYXlvdXRVbml0IGxvZ2ljYWxCb3R0b20gPSBzdGQ6Om1heChsaW5lQm94LT5s
aW5lQm90dG9tV2l0aExlYWRpbmcoKSwgbG9naWNhbFZpc3VhbE92ZXJmbG93Lm1heFkoKSk7CkBA
IC0xNjU5LDYgKzE2NjAsNyBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6YWRqdXN0TGluZVBvc2l0
aW9uRm9yUGFnaW5hdGlvbihSb290SW5saW5lQm94KiBsaW5lQm94LCBMYQogICAgICAgICAvLyBG
cm9tIGhlcmUsIHRoZSBmaXggaXMgbm90IHN0cmFpZ2h0Zm9yd2FyZCBiZWNhdXNlIGl0J3Mgbm90
IGVhc3kgdG8gYWx3YXlzIGRldGVybWluZSB3aGVuIHRoZSBjdXJyZW50IGxpbmUgaXMgdGhlIGZp
cnN0IGluIHRoZSBwYWdlLgogICAgICAgICByZXR1cm47CiAgICAgTGF5b3V0VW5pdCByZW1haW5p
bmdMb2dpY2FsSGVpZ2h0ID0gcGFnZVJlbWFpbmluZ0xvZ2ljYWxIZWlnaHRGb3JPZmZzZXQobG9n
aWNhbE9mZnNldCwgRXhjbHVkZVBhZ2VCb3VuZGFyeSk7CisgICAgb3ZlcmZsb3dzUmVnaW9uID0g
KGxpbmVIZWlnaHQgPiByZW1haW5pbmdMb2dpY2FsSGVpZ2h0KTsKIAogICAgIGludCBsaW5lSW5k
ZXggPSBsaW5lQ291bnQobGluZUJveCk7CiAgICAgaWYgKHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQg
PCBsaW5lSGVpZ2h0IHx8IChzaG91bGRCcmVha0F0TGluZVRvQXZvaWRXaWRvdygpICYmIGxpbmVC
cmVha1RvQXZvaWRXaWRvdygpID09IGxpbmVJbmRleCkpIHsKQEAgLTE2NzMsNiArMTY3NSw4IEBA
IHZvaWQgUmVuZGVyQmxvY2tGbG93OjphZGp1c3RMaW5lUG9zaXRpb25Gb3JQYWdpbmF0aW9uKFJv
b3RJbmxpbmVCb3gqIGxpbmVCb3gsIExhCiAgICAgICAgICAgICAvLyBTcGxpdCB0aGUgdG9wIG1h
cmdpbiBpbiBvcmRlciB0byBhdm9pZCBzcGxpdHRpbmcgdGhlIHZpc2libGUgcGFydCBvZiB0aGUg
bGluZS4KICAgICAgICAgICAgIHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQgLT0gc3RkOjptaW4obGlu
ZUhlaWdodCAtIHBhZ2VMb2dpY2FsSGVpZ2h0LCBzdGQ6Om1heDxMYXlvdXRVbml0PigwLCBsb2dp
Y2FsVmlzdWFsT3ZlcmZsb3cueSgpIC0gbGluZUJveC0+bGluZVRvcFdpdGhMZWFkaW5nKCkpKTsK
ICAgICAgICAgfQorICAgICAgICBMYXlvdXRVbml0IHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHRBdE5l
d09mZnNldCA9IHBhZ2VSZW1haW5pbmdMb2dpY2FsSGVpZ2h0Rm9yT2Zmc2V0KGxvZ2ljYWxPZmZz
ZXQgKyByZW1haW5pbmdMb2dpY2FsSGVpZ2h0LCBFeGNsdWRlUGFnZUJvdW5kYXJ5KTsKKyAgICAg
ICAgb3ZlcmZsb3dzUmVnaW9uID0gKGxpbmVIZWlnaHQgPiByZW1haW5pbmdMb2dpY2FsSGVpZ2h0
QXROZXdPZmZzZXQpOwogICAgICAgICBMYXlvdXRVbml0IHRvdGFsTG9naWNhbEhlaWdodCA9IGxp
bmVIZWlnaHQgKyBzdGQ6Om1heDxMYXlvdXRVbml0PigwLCBsb2dpY2FsT2Zmc2V0KTsKICAgICAg
ICAgTGF5b3V0VW5pdCBwYWdlTG9naWNhbEhlaWdodEF0TmV3T2Zmc2V0ID0gaGFzVW5pZm9ybVBh
Z2VMb2dpY2FsSGVpZ2h0ID8gcGFnZUxvZ2ljYWxIZWlnaHQgOiBwYWdlTG9naWNhbEhlaWdodEZv
ck9mZnNldChsb2dpY2FsT2Zmc2V0ICsgcmVtYWluaW5nTG9naWNhbEhlaWdodCk7CiAgICAgICAg
IHNldFBhZ2VCcmVhayhsb2dpY2FsT2Zmc2V0LCBsaW5lSGVpZ2h0IC0gcmVtYWluaW5nTG9naWNh
bEhlaWdodCk7CkBAIC0xNzU4LDcgKzE3NjIsNyBAQCBib29sIFJlbmRlckJsb2NrRmxvdzo6aGFz
TmV4dFBhZ2UoTGF5b3V0VW5pdCBsb2dpY2FsT2Zmc2V0LCBQYWdlQm91bmRhcnlSdWxlIHBhZwog
ICAgIFJlbmRlclJlZ2lvbiogc3RhcnRSZWdpb24gPSBudWxscHRyOwogICAgIFJlbmRlclJlZ2lv
biogZW5kUmVnaW9uID0gbnVsbHB0cjsKICAgICBmbG93VGhyZWFkLT5nZXRSZWdpb25SYW5nZUZv
ckJveCh0aGlzLCBzdGFydFJlZ2lvbiwgZW5kUmVnaW9uKTsKLSAgICByZXR1cm4gcmVnaW9uICE9
IGVuZFJlZ2lvbjsKKyAgICByZXR1cm4gKGVuZFJlZ2lvbiAmJiByZWdpb24gIT0gZW5kUmVnaW9u
KTsKIH0KIAogTGF5b3V0VW5pdCBSZW5kZXJCbG9ja0Zsb3c6OmFkanVzdEZvclVuc3BsaXR0YWJs
ZUNoaWxkKFJlbmRlckJveCYgY2hpbGQsIExheW91dFVuaXQgbG9naWNhbE9mZnNldCwgYm9vbCBp
bmNsdWRlTWFyZ2lucykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJCbG9ja0Zsb3cuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0Zsb3cu
aAppbmRleCAwODI3OTU4Li40OTFhMmNjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrRmxvdy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJCbG9ja0Zsb3cuaApAQCAtNTkwLDcgKzU5MCw3IEBAIHByaXZhdGU6CiAKIHB1YmxpYzoK
ICAgICAvLyBGSVhNRS1CTE9DS0ZMT1c6IFRoZXNlIGNhbiBiZSBtYWRlIHByb3RlY3RlZCBhZ2Fp
biBvbmNlIGFsbCBjYWxsZXJzIGhhdmUgYmVlbiBtb3ZlZCBoZXJlLgotICAgIHZvaWQgYWRqdXN0
TGluZVBvc2l0aW9uRm9yUGFnaW5hdGlvbihSb290SW5saW5lQm94KiwgTGF5b3V0VW5pdCYgZGVs
dGFPZmZzZXQsIFJlbmRlckZsb3dUaHJlYWQqKTsgLy8gQ29tcHV0ZXMgYSBkZWx0YU9mZnNldCB2
YWx1ZSB0aGF0IHB1dCBhIGxpbmUgYXQgdGhlIHRvcCBvZiB0aGUgbmV4dCBwYWdlIGlmIGl0IGRv
ZXNuJ3QgZml0IG9uIHRoZSBjdXJyZW50IHBhZ2UuCisgICAgdm9pZCBhZGp1c3RMaW5lUG9zaXRp
b25Gb3JQYWdpbmF0aW9uKFJvb3RJbmxpbmVCb3gqLCBMYXlvdXRVbml0JiBkZWx0YU9mZnNldCwg
Ym9vbCYgb3ZlcmZsb3dzUmVnaW9uLCBSZW5kZXJGbG93VGhyZWFkKik7IC8vIENvbXB1dGVzIGEg
ZGVsdGFPZmZzZXQgdmFsdWUgdGhhdCBwdXQgYSBsaW5lIGF0IHRoZSB0b3Agb2YgdGhlIG5leHQg
cGFnZSBpZiBpdCBkb2Vzbid0IGZpdCBvbiB0aGUgY3VycmVudCBwYWdlLgogICAgIHZvaWQgdXBk
YXRlUmVnaW9uRm9yTGluZShSb290SW5saW5lQm94KikgY29uc3Q7CiAgICAgdm9pZCBjcmVhdGVS
ZW5kZXJOYW1lZEZsb3dGcmFnbWVudElmTmVlZGVkKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9ja0xpbmVMYXlvdXQuY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrTGluZUxheW91dC5jcHAKaW5kZXggNzA4YTQ2Ni4uNGQ1
NzIyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrTGlu
ZUxheW91dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrTGlu
ZUxheW91dC5jcHAKQEAgLTExMjgsNyArMTEyOCw4IEBAIHZvaWQgUmVuZGVyQmxvY2tGbG93Ojps
YXlvdXRSdW5zQW5kRmxvYXRzSW5SYW5nZShMaW5lTGF5b3V0U3RhdGUmIGxheW91dFN0YXRlLCBJ
CiAKICAgICAgICAgICAgICAgICBpZiAocGFnaW5hdGVkKSB7CiAgICAgICAgICAgICAgICAgICAg
IExheW91dFVuaXQgYWRqdXN0bWVudCA9IDA7Ci0gICAgICAgICAgICAgICAgICAgIGFkanVzdExp
bmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGluZUJveCwgYWRqdXN0bWVudCwgbGF5b3V0U3RhdGUu
Zmxvd1RocmVhZCgpKTsKKyAgICAgICAgICAgICAgICAgICAgYm9vbCBvdmVyZmxvd3NSZWdpb247
CisgICAgICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGlu
ZUJveCwgYWRqdXN0bWVudCwgb3ZlcmZsb3dzUmVnaW9uLCBsYXlvdXRTdGF0ZS5mbG93VGhyZWFk
KCkpOwogICAgICAgICAgICAgICAgICAgICBpZiAoYWRqdXN0bWVudCkgewogICAgICAgICAgICAg
ICAgICAgICAgICAgTGF5b3V0VW5pdCBvbGRMaW5lV2lkdGggPSBhdmFpbGFibGVMb2dpY2FsV2lk
dGhGb3JMaW5lKG9sZExvZ2ljYWxIZWlnaHQsIGxheW91dFN0YXRlLmxpbmVJbmZvKCkuaXNGaXJz
dExpbmUoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lQm94LT5hZGp1c3RCbG9ja0Rp
cmVjdGlvblBvc2l0aW9uKGFkanVzdG1lbnQpOwpAQCAtMTE0NCw2ICsxMTQ1LDE2IEBAIHZvaWQg
UmVuZGVyQmxvY2tGbG93OjpsYXlvdXRSdW5zQW5kRmxvYXRzSW5SYW5nZShMaW5lTGF5b3V0U3Rh
dGUmIGxheW91dFN0YXRlLCBJCiAKICAgICAgICAgICAgICAgICAgICAgICAgIHNldExvZ2ljYWxI
ZWlnaHQobGluZUJveC0+bGluZUJvdHRvbVdpdGhMZWFkaW5nKCkpOwogICAgICAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgICAgICBpZiAoUmVu
ZGVyRmxvd1RocmVhZCogZmxvd1RocmVhZCA9IGZsb3dUaHJlYWRDb250YWluaW5nQmxvY2soKSkg
eworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZsb3dUaHJlYWQtPmlzUmVuZGVyTmFtZWRG
bG93VGhyZWFkKCkgJiYgb3ZlcmZsb3dzUmVnaW9uICYmIGhhc05leHRQYWdlKGxpbmVCb3gtPmxp
bmVUb3AoKSkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMaW1pdCB0aGUgaGVp
Z2h0IG9mIHRoaXMgYmxvY2sgdG8gdGhlIGVuZCBvZiB0aGUgY3VycmVudCByZWdpb24gYmVjYXVz
ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGl0IGlzIGFsc28gZnJhZ21lbnRlZCBp
bnRvIHRoZSBuZXh0IHJlZ2lvbi4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXlvdXRV
bml0IHJlbWFpbmluZ0xvZ2ljYWxIZWlnaHQgPSBwYWdlUmVtYWluaW5nTG9naWNhbEhlaWdodEZv
ck9mZnNldChsb2dpY2FsVG9wKCksIEV4Y2x1ZGVQYWdlQm91bmRhcnkpOworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGlmIChsb2dpY2FsSGVpZ2h0KCkgPiByZW1haW5pbmdMb2dpY2FsSGVp
Z2h0KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRMb2dpY2FsSGVpZ2h0KHJl
bWFpbmluZ0xvZ2ljYWxIZWlnaHQpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgICAgICAgICB9CiAKICAgICAgICAgICAgICAgICAgICAgaWYgKGxheW91dFN0YXRlLmZs
b3dUaHJlYWQoKSkKICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVJlZ2lvbkZvckxpbmUo
bGluZUJveCk7CkBAIC0xMjU5LDcgKzEyNzAsOCBAQCB2b2lkIFJlbmRlckJsb2NrRmxvdzo6bGlu
a1RvRW5kTGluZUlmTmVlZGVkKExpbmVMYXlvdXRTdGF0ZSYgbGF5b3V0U3RhdGUpCiAgICAgICAg
ICAgICAgICAgbGluZS0+YXR0YWNoTGluZSgpOwogICAgICAgICAgICAgICAgIGlmIChwYWdpbmF0
ZWQpIHsKICAgICAgICAgICAgICAgICAgICAgZGVsdGEgLT0gbGluZS0+cGFnaW5hdGlvblN0cnV0
KCk7Ci0gICAgICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24o
bGluZSwgZGVsdGEsIGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSk7CisgICAgICAgICAgICAgICAg
ICAgIGJvb2wgb3ZlcmZsb3dzUmVnaW9uOworICAgICAgICAgICAgICAgICAgICBhZGp1c3RMaW5l
UG9zaXRpb25Gb3JQYWdpbmF0aW9uKGxpbmUsIGRlbHRhLCBvdmVyZmxvd3NSZWdpb24sIGxheW91
dFN0YXRlLmZsb3dUaHJlYWQoKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
IGlmIChkZWx0YSkgewogICAgICAgICAgICAgICAgICAgICBsYXlvdXRTdGF0ZS51cGRhdGVSZXBh
aW50UmFuZ2VGcm9tQm94KGxpbmUsIGRlbHRhKTsKQEAgLTE0OTksNyArMTUxMSw4IEBAIFJvb3RJ
bmxpbmVCb3gqIFJlbmRlckJsb2NrRmxvdzo6ZGV0ZXJtaW5lU3RhcnRQb3NpdGlvbihMaW5lTGF5
b3V0U3RhdGUmIGxheW91dFN0CiAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgICAgICBwYWdpbmF0aW9uRGVsdGEgLT0gY3Vyci0+cGFnaW5h
dGlvblN0cnV0KCk7Ci0gICAgICAgICAgICAgICAgYWRqdXN0TGluZVBvc2l0aW9uRm9yUGFnaW5h
dGlvbihjdXJyLCBwYWdpbmF0aW9uRGVsdGEsIGxheW91dFN0YXRlLmZsb3dUaHJlYWQoKSk7Cisg
ICAgICAgICAgICAgICAgYm9vbCBvdmVyZmxvd3NSZWdpb247CisgICAgICAgICAgICAgICAgYWRq
dXN0TGluZVBvc2l0aW9uRm9yUGFnaW5hdGlvbihjdXJyLCBwYWdpbmF0aW9uRGVsdGEsIG92ZXJm
bG93c1JlZ2lvbiwgbGF5b3V0U3RhdGUuZmxvd1RocmVhZCgpKTsKICAgICAgICAgICAgICAgICBp
ZiAocGFnaW5hdGlvbkRlbHRhKSB7CiAgICAgICAgICAgICAgICAgICAgIGlmIChjb250YWluc0Zs
b2F0cygpIHx8ICFsYXlvdXRTdGF0ZS5mbG9hdHMoKS5pc0VtcHR5KCkpIHsKICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vIEZJWE1FOiBEbyBiZXR0ZXIgZXZlbnR1YWxseS4gIEZvciBub3cgaWYg
d2UgZXZlciBzaGlmdCBiZWNhdXNlIG9mIHBhZ2luYXRpb24gYW5kIGZsb2F0cyBhcmUgcHJlc2Vu
dCBqdXN0IGdvIHRvIGEgZnVsbCBsYXlvdXQuCkBAIC0xNjQ3LDggKzE2NjAsOSBAQCBib29sIFJl
bmRlckJsb2NrRmxvdzo6Y2hlY2tQYWdpbmF0aW9uQW5kRmxvYXRzQXRFbmRMaW5lKExpbmVMYXlv
dXRTdGF0ZSYgbGF5b3V0UwogICAgICAgICAgICAgICAgIC8vIFRoaXMgaXNuJ3QgdGhlIHJlYWwg
bW92ZSB3ZSdyZSBnb2luZyB0byBkbywgc28gZG9uJ3QgdXBkYXRlIHRoZSBsaW5lIGJveCdzIHBh
Z2luYXRpb24KICAgICAgICAgICAgICAgICAvLyBzdHJ1dCB5ZXQuCiAgICAgICAgICAgICAgICAg
TGF5b3V0VW5pdCBvbGRQYWdpbmF0aW9uU3RydXQgPSBsaW5lQm94LT5wYWdpbmF0aW9uU3RydXQo
KTsKKyAgICAgICAgICAgICAgICBib29sIG92ZXJmbG93c1JlZ2lvbjsKICAgICAgICAgICAgICAg
ICBsaW5lRGVsdGEgLT0gb2xkUGFnaW5hdGlvblN0cnV0OwotICAgICAgICAgICAgICAgIGFkanVz
dExpbmVQb3NpdGlvbkZvclBhZ2luYXRpb24obGluZUJveCwgbGluZURlbHRhLCBsYXlvdXRTdGF0
ZS5mbG93VGhyZWFkKCkpOworICAgICAgICAgICAgICAgIGFkanVzdExpbmVQb3NpdGlvbkZvclBh
Z2luYXRpb24obGluZUJveCwgbGluZURlbHRhLCBvdmVyZmxvd3NSZWdpb24sIGxheW91dFN0YXRl
LmZsb3dUaHJlYWQoKSk7CiAgICAgICAgICAgICAgICAgbGluZUJveC0+c2V0UGFnaW5hdGlvblN0
cnV0KG9sZFBhZ2luYXRpb25TdHJ1dCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAo
bGluZVdpZHRoRm9yUGFnaW5hdGVkTGluZUNoYW5nZWQobGluZUJveCwgbGluZURlbHRhLCBsYXlv
dXRTdGF0ZS5mbG93VGhyZWFkKCkpKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>