<?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>110195</bug_id>
          
          <creation_ts>2013-02-19 02:05:45 -0800</creation_ts>
          <short_desc>[CSS Regions] Region styling (@region) breaks formatting via ::first-letter</short_desc>
          <delta_ts>2022-07-12 17:16:55 -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>WONTFIX</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>71487</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mihai Balan">mibalan</reporter>
          <assigned_to name="Takashi Sakamoto">tasak</assigned_to>
          <cc>allan.jensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>buildbot</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>esprehn</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mihnea</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>rniwa</cc>
    
    <cc>tasak</cc>
    
    <cc>WebkitBugTracker</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>836142</commentid>
    <comment_count>0</comment_count>
    <who name="Mihai Balan">mibalan</who>
    <bug_when>2013-02-19 02:05:45 -0800</bug_when>
    <thetext>If content is styled both via ::first-letter and then an @region applies to it, too, then the properties set via ::first-letter are discarded.
However, if font-size is specified, the box for the first letter will be the same as if font-size applies, but the actual letter is displayed without the font-size specified in ::first-letter.

See attached ref-test for a clearer picture of the problem (the letter &apos;M&apos; should be 2.5em tall, italic and monospace; all the text should be green).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836146</commentid>
    <comment_count>1</comment_count>
      <attachid>189031</attachid>
    <who name="Mihai Balan">mibalan</who>
    <bug_when>2013-02-19 02:07:48 -0800</bug_when>
    <thetext>Created attachment 189031
Ref test highlighting the problem</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>837305</commentid>
    <comment_count>2</comment_count>
      <attachid>189274</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-02-20 03:15:38 -0800</bug_when>
    <thetext>Created attachment 189274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844401</commentid>
    <comment_count>3</comment_count>
      <attachid>190792</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-02-28 13:15:32 -0800</bug_when>
    <thetext>Created attachment 190792
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844469</commentid>
    <comment_count>4</comment_count>
      <attachid>190792</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-28 14:15:35 -0800</bug_when>
    <thetext>Comment on attachment 190792
Patch

Attachment 190792 did not pass chromium-ews (chromium-xvfb):
Output: http://webkit-commit-queue.appspot.com/results/16775977

New failing tests:
css3/flexbox/inline-flex-crash2.html
css3/flexbox/flexbox-ignore-container-firstLetter.html
css3/flexbox/flexbox-ignore-firstLetter.html
css3/flexbox/inline-flex-crash.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844540</commentid>
    <comment_count>5</comment_count>
      <attachid>190792</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-28 15:28:59 -0800</bug_when>
    <thetext>Comment on attachment 190792
Patch

Attachment 190792 did not pass mac-ews (mac):
Output: http://webkit-commit-queue.appspot.com/results/16672719</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>844816</commentid>
    <comment_count>6</comment_count>
      <attachid>190792</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-28 22:13:26 -0800</bug_when>
    <thetext>Comment on attachment 190792
Patch

Attachment 190792 did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-commit-queue.appspot.com/results/16766317

New failing tests:
css3/flexbox/inline-flex-crash2.html
css3/flexbox/flexbox-ignore-container-firstLetter.html
css3/flexbox/flexbox-ignore-firstLetter.html
css3/flexbox/inline-flex-crash.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847490</commentid>
    <comment_count>7</comment_count>
      <attachid>191446</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-03-05 02:45:40 -0800</bug_when>
    <thetext>Created attachment 191446
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>847761</commentid>
    <comment_count>8</comment_count>
      <attachid>191446</attachid>
    <who name="Mihnea Ovidenie">mihnea</who>
    <bug_when>2013-03-05 09:52:44 -0800</bug_when>
    <thetext>Comment on attachment 191446
Patch

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

&gt; Source/WebCore/ChangeLog:1
&gt; +2013-02-20  Takashi Sakamoto  &lt;tasak@google.com&gt;

This is an informal review, please feel free to ignore it.

&gt; Source/WebCore/ChangeLog:8
&gt; +        While RenderRegion updates styles, it should consider the case,

In fact, you are talking about RenderRegion computing the styles in region for elements that are displayed inside the region.

&gt; Source/WebCore/ChangeLog:17
&gt; +        Added one more parameter, regionForStyling, to see a pseudo style in

see = set

&gt; Source/WebCore/ChangeLog:20
&gt; +        (StyleResolver):

You can get rid of lines like this in Changelogs.

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

I would rather put the method on the RenderBlock class itself rather than put it in the header file.

&gt; Source/WebCore/rendering/RenderRegion.cpp:533
&gt; +{

Please add an ASSERT here that your object is really an anonymous one.

&gt; Source/WebCore/rendering/RenderRegion.cpp:536
&gt; +    RenderStyle* parentStyle;

If you do: RenderStyle* parentStyle = parent-&gt;style(), you may get rid of the else statement.

&gt; LayoutTests/fast/regions/pseudo-first-letter-inside-flowthread.html:28
&gt; +&lt;span&gt;Morem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda ipsam rem fugit accusantium fugiat ea.&lt;/span&gt;

Should be Lorem ... here right? :) I mean L instead of M. Or you can as well put a meaningful text, like what is this test for (I would also like to have a reference to the bug you are trying to solve).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>849873</commentid>
    <comment_count>9</comment_count>
      <attachid>191947</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-03-07 01:34:37 -0800</bug_when>
    <thetext>Created attachment 191947
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>849897</commentid>
    <comment_count>10</comment_count>
      <attachid>191953</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-03-07 02:13:18 -0800</bug_when>
    <thetext>Created attachment 191953
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>849899</commentid>
    <comment_count>11</comment_count>
      <attachid>191446</attachid>
    <who name="Takashi Sakamoto">tasak</who>
    <bug_when>2013-03-07 02:15:48 -0800</bug_when>
    <thetext>Comment on attachment 191446
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        While RenderRegion updates styles, it should consider the case,
&gt; 
&gt; In fact, you are talking about RenderRegion computing the styles in region for elements that are displayed inside the region.

I changed the description.

&gt;&gt; Source/WebCore/ChangeLog:17
&gt;&gt; +        Added one more parameter, regionForStyling, to see a pseudo style in
&gt; 
&gt; see = set

Done.

&gt;&gt; Source/WebCore/ChangeLog:26
&gt;&gt; +        (WebCore):
&gt; 
&gt; I would rather put the method on the RenderBlock class itself rather than put it in the header file.

I see. Done.

&gt;&gt; Source/WebCore/rendering/RenderRegion.cpp:533
&gt;&gt; +{
&gt; 
&gt; Please add an ASSERT here that your object is really an anonymous one.

I see. Done.

&gt;&gt; Source/WebCore/rendering/RenderRegion.cpp:536
&gt;&gt; +    RenderStyle* parentStyle;
&gt; 
&gt; If you do: RenderStyle* parentStyle = parent-&gt;style(), you may get rid of the else statement.

Done.

&gt;&gt; LayoutTests/fast/regions/pseudo-first-letter-inside-flowthread.html:28
&gt;&gt; +&lt;span&gt;Morem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda ipsam rem fugit accusantium fugiat ea.&lt;/span&gt;
&gt; 
&gt; Should be Lorem ... here right? :) I mean L instead of M. Or you can as well put a meaningful text, like what is this test for (I would also like to have a reference to the bug you are trying to solve).

I see. Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>860093</commentid>
    <comment_count>12</comment_count>
      <attachid>191953</attachid>
    <who name="Elliott Sprehn">esprehn</who>
    <bug_when>2013-03-21 00:19:27 -0700</bug_when>
    <thetext>Comment on attachment 191953
Patch

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

&gt; Source/WebCore/rendering/RenderRegion.cpp:540
&gt; +        const PseudoStyleRequest pseudoStyleRequest(FIRST_LETTER);

Scope these correctly inside the inner if.

&gt; Source/WebCore/rendering/RenderRegion.cpp:541
&gt; +        parentStyle = parent-&gt;firstLineStyle();

This will override the parentStyle if you fall through this if into the createAnonymousStyleWithDisplay below, is that intended? Seems safer to just use parent-&gt;style() in each place and not have this local.

&gt; Source/WebCore/rendering/RenderRegion.cpp:546
&gt; +                return styleInRegion.release();

Is it actually possible for this to be null? How would we have a first-letter render object but no style?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>900248</commentid>
    <comment_count>13</comment_count>
    <who name="Michelangelo De Simone">michelangelo</who>
    <bug_when>2013-06-13 11:34:14 -0700</bug_when>
    <thetext>Still repros on today&apos;s nightly (r151543)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976989</commentid>
    <comment_count>14</comment_count>
      <attachid>191953</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-05 11:19:48 -0800</bug_when>
    <thetext>Comment on attachment 191953
Patch

Clearing review flag on patches from before 2014. If this patch is still relevant, please reset the r? flag.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1882804</commentid>
    <comment_count>15</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2022-07-12 17:16:55 -0700</bug_when>
    <thetext>CSS Regions were removed in Bug 174978.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>189031</attachid>
            <date>2013-02-19 02:07:48 -0800</date>
            <delta_ts>2013-02-19 02:07:48 -0800</delta_ts>
            <desc>Ref test highlighting the problem</desc>
            <filename>110195_first-letter-and-@region.zip</filename>
            <type>application/x-zip-compressed</type>
            <size>993</size>
            <attacher name="Mihai Balan">mibalan</attacher>
            
              <data encoding="base64">UEsDBBQAAAAIADBgU0KgVa14HgEAAOQBAAAmAAAAZmlyc3QtbGV0dGVyLWFuZC1AcmVnaW9uLWV4
cGVjdGVkLmh0bWxVkc1OwzAMx89D4h1MudJVQkJCXVbBhRs3eACTuJ2lNKkSF6kg3p0k3WA72fn7
62dH3RivZZkIDjLa7vpKZQsW3bCvyFVFITTJbtRIgqAPGCLJvnp/e6kfqxIQFkudUBR2AzwFGtg7
QGegbXsOUWpLIhRUUzJLTZRl9W61d0JO4Ds9NtpbH1oYApHbJeHnLOOy2Zrfp1Ad+YtauN8+0Lj7
E/OApLKgZf0v9ziyXVqI6GIdKXB/GqOaE5NqjjurD2+Wgmv4E9jsqyNK2Xujpu7VBxqBpziPYDI7
RBbAdKo7SLmRtJDMAdDwxJF1PhBZli08x1RDzmCuxhFyn34ecrXWc8ITnlcFBQi3qpm6QplQLpDW
c1ddiRT6TF2c8qm/UEsDBBQAAAAIABxgU0L1bFdFRwEAAFkCAAAdAAAAZmlyc3QtbGV0dGVyLWFu
ZC1AcmVnaW9uLmh0bWxlUsFOwzAMPQ+JfzDlSjcJCQmVrBoXbtzgA7LE7SzSpEpcpoL27yRpN6g4
2fHzc55fIm60Uzz2CAfuTH19JVIEI227LdAWuYJSx7gSHbIEdZA+IG+L97eX8rHIABMbrBkDk21h
57ElZ0FaDVXVkA9cGmRGLza5M3MCj1N2q5xltAzf8bAqj7j/IC4b444lWXYVpPQpYqc/zcu5E7WJ
UBnoCyu4Xz9g93QpprtilVgaUr/lRnZkxgqCtKEM6Km5XDOv8F9S4123lLQ74zNnwe2nsFLOOF9B
6xFtFnCa2WJzNkJsZqPF3ukxe6TpE0hvi3npbPZK9PWr89gB9WHoQKfJEIhBxve5g9gbUDHy4EFq
6imQSq+ChngNzyFy0GqZ2LKDNKcZ2sRWaohGMA1TRTKgXItNX2eVUcpC0rRkUWckq0+qc5J/0g9Q
SwECPwAUAAAACAAwYFNCoFWteB4BAADkAQAAJgAkAAAAAAAAACAAAAAAAAAAZmlyc3QtbGV0dGVy
LWFuZC1AcmVnaW9uLWV4cGVjdGVkLmh0bWwKACAAAAAAAAEAGADOHtMWiA7OASAaLAyIDs4Bi5Ih
DIgOzgFQSwECPwAUAAAACAAcYFNC9WxXRUcBAABZAgAAHQAkAAAAAAAAACAAAABiAQAAZmlyc3Qt
bGV0dGVyLWFuZC1AcmVnaW9uLmh0bWwKACAAAAAAAAEAGAAA5zsCiA7OAdpBGXWGDs4Bu7kOdYYO
zgFQSwUGAAAAAAIAAgDnAAAA5AIAAAAA
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>189274</attachid>
            <date>2013-02-20 03:15:38 -0800</date>
            <delta_ts>2013-02-28 13:15:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110195-20130220201200.patch</filename>
            <type>text/plain</type>
            <size>11331</size>
            <attacher name="Takashi Sakamoto">tasak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQzNDI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTk4NDgyNWZmMjcwZGVl
NTIwMWI3NGI3ZDM0YTk5NzMzZjA0NmYzNi4uNDlhNTMwMzE3NjBiYzM1YTYzZDNiNDcwODliN2Q0
OGVjMWZhNGZkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEzLTAyLTIwICBUYWth
c2hpIFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBzdHlsaW5nIChAcmVnaW9uKSBicmVha3MgZm9ybWF0dGluZyB2aWEgOjpmaXJzdC1s
ZXR0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
aWxlIFJlbmRlclJlZ2lvbiB1cGRhdGVzIHN0eWxlcywgaXQgc2hvdWxkIGNvbnNpZGVyIHRoZSBj
YXNlLAorICAgICAgICBhbiBhbm9ueW1vdXMgcmVuZGVyIG9iamVjdCB3YXMgY3JlYXRlZCBmb3Ig
cHNldWRvIGZpcnN0LWxldHRlci4KKyAgICAgICAgSW4gdGhlIGNhc2UsIFJlbmRlclJlZ2lvbiBz
aG91bGQgdXNlIHBzZXVkb1N0eWxlRm9yRWxlbWVudCB0byBvYnRhaW4KKyAgICAgICAgYSBjb3Jy
ZWN0IHN0eWxlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0
dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OnBzZXVkb1N0eWxlRm9yRWxl
bWVudCk6CisgICAgICAgIEFkZGVkIG9uZSBtb3JlIHBhcmFtZXRlciwgcmVnaW9uRm9yU3R5bGlu
ZywgdG8gc2VlIGEgcHNldWRvIHN0eWxlIGluCisgICAgICAgIGEgcmVnaW9uLgorICAgICAgICAq
IGNzcy9TdHlsZVJlc29sdmVyLmg6CisgICAgICAgIChTdHlsZVJlc29sdmVyKToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
bG9jay5oOgorICAgICAgICAoV2ViQ29yZTo6ZmluZEZpcnN0TGV0dGVyQmxvY2spOgorICAgICAg
ICBNb3ZlZCBmaW5kRmlyc3RMZXR0ZXJCbG9jayBmcm9tIC5jcHAgdG8gLmgsIGJlY2F1c2UgUmVu
ZGVyUmVnaW9uIGFsc28KKyAgICAgICAgcmVxdWlyZXMgdGhlIG1ldGhvZCB0byBzb2x2ZSBwc2V1
ZG8gZmlyc3QtbGV0dGVyJ3Mgc3R5bGUuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lv
bjo6Y29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24pOgorICAgICAgICBBZGRlZCB0byBjb21w
dXRlIGEgc3R5bGUgZm9yIGEgZ2VuZXJhdGVkIHJlbmRlciBvYmplY3QgZm9yCisgICAgICAgIEZJ
UlNUX0xFVFRFUi4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
UmVnaW9uOjpjb21wdXRlQ2hpbGRyZW5TdHlsZUluUmVnaW9uKToKKyAgICAgICAgTW9kaWZ5IHRv
IHVzZSBjb21wdXRlQW5vbnltb3VzU3R5bGVJblJlZ2lvbiB3aGVuIGEgY2hpbGQgb2JqZWN0IGlz
CisgICAgICAgIGFub255bW91cy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmg6
CisgICAgICAgIChSZW5kZXJSZWdpb24pOgorCiAyMDEzLTAyLTE5ICBIYXlhdG8gSXRvIDxoYXlh
dG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGN1bGF0ZSBFdmVudFBhdGggaW4gRXZlbnRE
aXNwYXRjaGVyJ3MgY29uc3RydWN0b3IuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVSZXNvbHZlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAK
aW5kZXggMzU0YjJjOTAyMWQxODQ1ZjMxOWZlOWMwN2I5ZjE1OTBiYjY2OGZhNy4uY2VmNDQ3NThi
ZTU2ZmJjYzIyZjc3MmM2OTBhYmU4ZDk1N2FmZjNiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJl
c29sdmVyLmNwcApAQCAtMTU2Nyw3ICsxNTY3LDcgQEAgdm9pZCBTdHlsZVJlc29sdmVyOjprZXlm
cmFtZVN0eWxlc0ZvckFuaW1hdGlvbihFbGVtZW50KiBlLCBjb25zdCBSZW5kZXJTdHlsZSogZWwK
ICAgICB9CiB9CiAKLVBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFN0eWxlUmVzb2x2ZXI6OnBzZXVk
b1N0eWxlRm9yRWxlbWVudChQc2V1ZG9JZCBwc2V1ZG8sIEVsZW1lbnQqIGUsIFJlbmRlclN0eWxl
KiBwYXJlbnRTdHlsZSkKK1Bhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFN0eWxlUmVzb2x2ZXI6OnBz
ZXVkb1N0eWxlRm9yRWxlbWVudChQc2V1ZG9JZCBwc2V1ZG8sIEVsZW1lbnQqIGUsIFJlbmRlclN0
eWxlKiBwYXJlbnRTdHlsZSwgUmVuZGVyUmVnaW9uKiByZWdpb25Gb3JTdHlsaW5nKQogewogICAg
IEFTU0VSVChwYXJlbnRTdHlsZSk7CiAgICAgaWYgKCFlKQpAQCAtMTU3Nyw3ICsxNTc3LDcgQEAg
UGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gU3R5bGVSZXNvbHZlcjo6cHNldWRvU3R5bGVGb3JFbGVt
ZW50KFBzZXVkb0lkIHBzZXVkbywgRWwKIAogICAgIGluaXRFbGVtZW50KGUpOwogCi0gICAgc3Rh
dGUuaW5pdEZvclN0eWxlUmVzb2x2ZShkb2N1bWVudCgpLCBlLCBwYXJlbnRTdHlsZSwgcHNldWRv
KTsKKyAgICBzdGF0ZS5pbml0Rm9yU3R5bGVSZXNvbHZlKGRvY3VtZW50KCksIGUsIHBhcmVudFN0
eWxlLCBwc2V1ZG8sIHJlZ2lvbkZvclN0eWxpbmcpOwogICAgIHN0YXRlLnNldFN0eWxlKFJlbmRl
clN0eWxlOjpjcmVhdGUoKSk7CiAgICAgc3RhdGUuc3R5bGUoKS0+aW5oZXJpdEZyb20obV9zdGF0
ZS5wYXJlbnRTdHlsZSgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggMmNk
YWMxZWRhZTUxYjhlMzUwNDE1OTQ4MWJiNjMzZjhkMTIxMGJjOS4uYzc3Yzk5ODIxMjlmM2YxMzc1
OTZmYzkxMzkzOWViZTNmZDVjYWQ2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBA
IC0xNzAsNyArMTcwLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBrZXlmcmFtZVN0eWxlc0ZvckFu
aW1hdGlvbihFbGVtZW50KiwgY29uc3QgUmVuZGVyU3R5bGUqLCBLZXlmcmFtZUxpc3QmKTsKIAot
ICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxlRm9yRWxlbWVudChQc2V1ZG9J
ZCwgRWxlbWVudCosIFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSk7CisgICAgUGFzc1JlZlB0cjxS
ZW5kZXJTdHlsZT4gcHNldWRvU3R5bGVGb3JFbGVtZW50KFBzZXVkb0lkLCBFbGVtZW50KiwgUmVu
ZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBSZW5kZXJSZWdpb24qIHJlZ2lvbkZvclN0eWxpbmcgPSAw
KTsKIAogICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlRm9yUGFnZShpbnQgcGFnZUlu
ZGV4KTsKICAgICBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBkZWZhdWx0U3R5bGVGb3JFbGVtZW50
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAppbmRleCAzY2RlZWY3
ZDQwZjk5N2RjYjAyYzU3OGI5MTc3YTAxZDFlNjVlMWQyLi5mZThhZGY1ZmMzMzRmYWVmYzM3NmZi
OTI0NzEyOTRhNzdjNjcxOTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5jcHAKQEAgLTY0OTYsMjUgKzY0OTYsNiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgc2hvdWxkU2tp
cEZvckZpcnN0TGV0dGVyKFVDaGFyIGMpCiAgICAgcmV0dXJuIGlzU3BhY2VPck5ld2xpbmUoYykg
fHwgYyA9PSBub0JyZWFrU3BhY2UgfHwgaXNQdW5jdHVhdGlvbkZvckZpcnN0TGV0dGVyKGMpOwog
fQogCi1zdGF0aWMgaW5saW5lIFJlbmRlck9iamVjdCogZmluZEZpcnN0TGV0dGVyQmxvY2soUmVu
ZGVyQmxvY2sqIHN0YXJ0KQotewotICAgIFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jayA9
IHN0YXJ0OwotICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgIGJvb2wgY2FuSGF2ZUZpcnN0TGV0
dGVyUmVuZGVyZXIgPSBmaXJzdExldHRlckJsb2NrLT5zdHlsZSgpLT5oYXNQc2V1ZG9TdHlsZShG
SVJTVF9MRVRURVIpCi0gICAgICAgICAgICAmJiBmaXJzdExldHRlckJsb2NrLT5jYW5IYXZlR2Vu
ZXJhdGVkQ2hpbGRyZW4oKTsKLSAgICAgICAgaWYgKGNhbkhhdmVGaXJzdExldHRlclJlbmRlcmVy
KQotICAgICAgICAgICAgcmV0dXJuIGZpcnN0TGV0dGVyQmxvY2s7Ci0KLSAgICAgICAgUmVuZGVy
T2JqZWN0KiBwYXJlbnRCbG9jayA9IGZpcnN0TGV0dGVyQmxvY2stPnBhcmVudCgpOwotICAgICAg
ICBpZiAoZmlyc3RMZXR0ZXJCbG9jay0+aXNSZXBsYWNlZCgpIHx8ICFwYXJlbnRCbG9jayB8fCBw
YXJlbnRCbG9jay0+Zmlyc3RDaGlsZCgpICE9IGZpcnN0TGV0dGVyQmxvY2sgfHwgCi0gICAgICAg
ICAgICAhcGFyZW50QmxvY2stPmlzQmxvY2tGbG93KCkpCi0gICAgICAgICAgICByZXR1cm4gMDsK
LSAgICAgICAgZmlyc3RMZXR0ZXJCbG9jayA9IHBhcmVudEJsb2NrOwotICAgIH0gCi0KLSAgICBy
ZXR1cm4gMDsKLX0KLQogdm9pZCBSZW5kZXJCbG9jazo6dXBkYXRlRmlyc3RMZXR0ZXJTdHlsZShS
ZW5kZXJPYmplY3QqIGZpcnN0TGV0dGVyQmxvY2ssIFJlbmRlck9iamVjdCogY3VycmVudENoaWxk
KQogewogICAgIFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXIgPSBjdXJyZW50Q2hpbGQtPnBhcmVu
dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaAppbmRleCA2MGM1N2U3NWUw
MDFhNDc2MWExZGZlZDQ3ZTJhMTczZGY1M2Y3Zjk1Li40OTAxZjkxOGJkMzEyZmYyODgyY2E5YzAx
MmQ3ZTgzOWY1MzhhODJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2suaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaApA
QCAtMTI3Miw2ICsxMjcyLDIzIEBAIHRlbXBsYXRlPD4gc3RydWN0IFZhbHVlVG9TdHJpbmc8UmVu
ZGVyQmxvY2s6OkZsb2F0aW5nT2JqZWN0Kj4gewogfTsKICNlbmRpZgogCitpbmxpbmUgUmVuZGVy
T2JqZWN0KiBmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJPYmplY3QqIHN0YXJ0KQoreworICAg
IFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jayA9IHN0YXJ0OworICAgIHdoaWxlICh0cnVl
KSB7CisgICAgICAgIGJvb2wgY2FuSGF2ZUZpcnN0TGV0dGVyUmVuZGVyZXIgPSBmaXJzdExldHRl
ckJsb2NrLT5zdHlsZSgpLT5oYXNQc2V1ZG9TdHlsZShGSVJTVF9MRVRURVIpCisgICAgICAgICAg
ICAmJiBmaXJzdExldHRlckJsb2NrLT5jYW5IYXZlR2VuZXJhdGVkQ2hpbGRyZW4oKTsKKyAgICAg
ICAgaWYgKGNhbkhhdmVGaXJzdExldHRlclJlbmRlcmVyKQorICAgICAgICAgICAgcmV0dXJuIGZp
cnN0TGV0dGVyQmxvY2s7CisKKyAgICAgICAgUmVuZGVyT2JqZWN0KiBwYXJlbnRCbG9jayA9IGZp
cnN0TGV0dGVyQmxvY2stPnBhcmVudCgpOworICAgICAgICBpZiAoZmlyc3RMZXR0ZXJCbG9jay0+
aXNSZXBsYWNlZCgpIHx8ICFwYXJlbnRCbG9jayB8fCBwYXJlbnRCbG9jay0+Zmlyc3RDaGlsZCgp
ICE9IGZpcnN0TGV0dGVyQmxvY2sgfHwgIXBhcmVudEJsb2NrLT5pc0Jsb2NrRmxvdygpKQorICAg
ICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGZpcnN0TGV0dGVyQmxvY2sgPSBwYXJlbnRCbG9j
azsKKyAgICB9IAorICAgIHJldHVybiAwOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
ICNlbmRpZiAvLyBSZW5kZXJCbG9ja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyUmVnaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJS
ZWdpb24uY3BwCmluZGV4IGI5N2M1OTY0ODQ0ZTlmM2QxNGYwOTIxZTE0YmQ4OGFkOGY0N2ZkZjUu
LjU1MDY3Yzc3YzhkMTUzMmJlYzk3N2M0ZDRmOTFjMjc3NjFkMjkwNGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCkBAIC01MjAsNiArNTIwLDI3IEBAIFBhc3NS
ZWZQdHI8UmVuZGVyU3R5bGU+IFJlbmRlclJlZ2lvbjo6Y29tcHV0ZVN0eWxlSW5SZWdpb24oY29u
c3QgUmVuZGVyT2JqZWN0KiBvCiAgICAgcmV0dXJuIHJlbmRlck9iamVjdFJlZ2lvblN0eWxlLnJl
bGVhc2UoKTsKIH0KIAorUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gUmVuZGVyUmVnaW9uOjpjb21w
dXRlQW5vbnltb3VzU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKK3sK
KyAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlSW5SZWdpb247CisgICAgUmVuZGVyT2JqZWN0
KiBwYXJlbnQgPSBvYmplY3QtPnBhcmVudCgpOworICAgIFJlbmRlclN0eWxlKiBwYXJlbnRTdHls
ZTsKKworICAgIGlmIChvYmplY3QtPnN0eWxlKCktPnN0eWxlVHlwZSgpID09IEZJUlNUX0xFVFRF
UikgeworICAgICAgICBwYXJlbnRTdHlsZSA9IHBhcmVudC0+Zmlyc3RMaW5lU3R5bGUoKTsKKyAg
ICAgICAgaWYgKGNvbnN0IFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jayA9IGZpbmRGaXJz
dExldHRlckJsb2NrKHBhcmVudCkpIHsKKyAgICAgICAgICAgIEVsZW1lbnQqIGVsZW1lbnQgPSB0
b0VsZW1lbnQoZmlyc3RMZXR0ZXJCbG9jay0+bm9kZSgpKTsKKyAgICAgICAgICAgIHN0eWxlSW5S
ZWdpb24gPSBkb2N1bWVudCgpLT5zdHlsZVJlc29sdmVyKCktPnBzZXVkb1N0eWxlRm9yRWxlbWVu
dChGSVJTVF9MRVRURVIsIGVsZW1lbnQsIHBhcmVudFN0eWxlLCB0aGlzKTsKKyAgICAgICAgICAg
IGlmIChzdHlsZUluUmVnaW9uKQorICAgICAgICAgICAgICAgIHJldHVybiBzdHlsZUluUmVnaW9u
LnJlbGVhc2UoKTsKKyAgICAgICAgfQorICAgIH0gZWxzZQorICAgICAgICBwYXJlbnRTdHlsZSA9
IHBhcmVudC0+c3R5bGUoKTsKKyAgICAKKyAgICBzdHlsZUluUmVnaW9uID0gUmVuZGVyU3R5bGU6
OmNyZWF0ZUFub255bW91c1N0eWxlV2l0aERpc3BsYXkocGFyZW50U3R5bGUsIG9iamVjdC0+c3R5
bGUoKS0+ZGlzcGxheSgpKTsKKyAgICByZXR1cm4gc3R5bGVJblJlZ2lvbi5yZWxlYXNlKCk7Cit9
CisKIHZvaWQgUmVuZGVyUmVnaW9uOjpjb21wdXRlQ2hpbGRyZW5TdHlsZUluUmVnaW9uKGNvbnN0
IFJlbmRlck9iamVjdCogb2JqZWN0KQogewogICAgIGZvciAoUmVuZGVyT2JqZWN0KiBjaGlsZCA9
IG9iamVjdC0+Zmlyc3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0+bmV4dFNpYmxpbmco
KSkgewpAQCAtNTMzLDcgKzU1NCw3IEBAIHZvaWQgUmVuZGVyUmVnaW9uOjpjb21wdXRlQ2hpbGRy
ZW5TdHlsZUluUmVnaW9uKGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0KQogICAgICAgICAgICAg
b2JqZWN0UmVnaW9uU3R5bGVDYWNoZWQgPSB0cnVlOwogICAgICAgICB9IGVsc2UgewogICAgICAg
ICAgICAgaWYgKGNoaWxkLT5pc0Fub255bW91cygpKQotICAgICAgICAgICAgICAgIGNoaWxkU3R5
bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjcmVhdGVBbm9ueW1vdXNTdHlsZVdpdGhEaXNwbGF5
KG9iamVjdC0+c3R5bGUoKSwgY2hpbGQtPnN0eWxlKCktPmRpc3BsYXkoKSk7CisgICAgICAgICAg
ICAgICAgY2hpbGRTdHlsZUluUmVnaW9uID0gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24o
Y2hpbGQpOwogICAgICAgICAgICAgZWxzZSBpZiAoY2hpbGQtPmlzVGV4dCgpKQogICAgICAgICAg
ICAgICAgIGNoaWxkU3R5bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjbG9uZShvYmplY3QtPnN0
eWxlKCkpOwogICAgICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclJlZ2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJl
Z2lvbi5oCmluZGV4IDg0ZTliMTA1MTIwNTY0NzI0MTMxMjEwZjFlYWMzNjFiYTQ5NGVkZDguLjQx
YzMwYTRiYmRhMzNhYzMwNjRlZDZlMjg2NDhmMjk5MmQyYWFiNTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmgKQEAgLTE1Niw2ICsxNTYsOCBAQCBwcml2YXRlOgogICAg
IHZpcnR1YWwgdm9pZCBpbnN0YWxsRmxvd1RocmVhZCgpOwogCiAgICAgUGFzc1JlZlB0cjxSZW5k
ZXJTdHlsZT4gY29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAg
UGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY29u
c3QgUmVuZGVyT2JqZWN0Kik7CisKICAgICB2b2lkIGNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdp
b24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgdm9pZCBzZXRPYmplY3RTdHlsZUluUmVnaW9u
KFJlbmRlck9iamVjdCosIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+LCBib29sIG9iamVjdFJlZ2lv
blN0eWxlQ2FjaGVkKTsKICAgICB2b2lkIHByaW50UmVnaW9uT2JqZWN0c1N0eWxlcygpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDBkYjk2NzE0NjI3NDU1MzY1MWU4YjNiMTM3MGRmMTc4NmVkYTAyNzUuLjVlYzJjYjkyZTVi
MTI0ZDA0MDViMTZiMzg1YjZhYWY4NThlM2IwNTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAx
My0wMi0yMCAgVGFrYXNoaSBTYWthbW90byAgPHRhc2FrQGdvb2dsZS5jb20+CisKKyAgICAgICAg
W0NTUyBSZWdpb25zXSBSZWdpb24gc3R5bGluZyAoQHJlZ2lvbikgYnJlYWtzIGZvcm1hdHRpbmcg
dmlhIDo6Zmlyc3QtbGV0dGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTAxOTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93
dGhyZWFkLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1
ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAy
LTE5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEZp
eCBUaWxlQ2FjaGUgdGlsZSBzaXplIHdoZW4gem9vbWVkIG9uIHNsb3ctc2Nyb2xsaW5nIHNpdGUK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVy
LWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjZhYmE1YjU4NGZkYWYyMzUwYTg2NDViNDQ3M2JiNWM3YmJiN2FmMzUKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxldHRl
ci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1sCkBAIC0wLDAgKzEsMjIgQEAKKzwhZG9j
dHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4KKyNjb250ZW50IHsKKyAgICBjb2xv
cjogZ3JlZW47Cit9CisKKyNjb250ZW50OjpmaXJzdC1sZXR0ZXIgeworICAgIGZvbnQtc2l6ZTog
Mi41ZW07CisgICAgZm9udC1zdHlsZTogaXRhbGljOworICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNl
cmlmOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iY29udGVudCI+Cis8
c3Bhbj5Nb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzaWNpbmcg
ZWxpdC4gQXNzdW1lbmRhIGlwc2FtIHJlbSBmdWdpdCBhY2N1c2FudGl1bSBmdWdpYXQgZWEuPC9z
cGFuPgorPC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24iPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3BzZXVkby1maXJzdC1sZXR0ZXIt
aW5zaWRlLWZsb3d0aHJlYWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8t
Zmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uN2Q5N2MxZDdh
MDIyY2FhZDM5NTc0YzgwNjQ0ZGIyNDI1NzFmYzI3NAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFk
Lmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHN0eWxlPgorI2NvbnRlbnQgeworICAgIC13ZWJraXQtZmxvdy1pbnRvOiBmbG93OworfQorCisj
Y29udGVudDo6Zmlyc3QtbGV0dGVyIHsKKyAgICBmb250LXNpemU6IDIuNWVtOworICAgIGZvbnQt
c3R5bGU6IGl0YWxpYzsKKyAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsKK30KKworI3JlZ2lv
biB7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7Cit9CisKK0Atd2Via2l0LXJlZ2lvbiAj
cmVnaW9uIHsKKyAgICBzcGFuIHsKKyAgICAgICAgY29sb3I6IGdyZWVuOworICAgIH0KK30KKzwv
c3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImNvbnRlbnQiPgorPHNwYW4+TW9yZW0g
aXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2ljaW5nIGVsaXQuIEFzc3Vt
ZW5kYSBpcHNhbSByZW0gZnVnaXQgYWNjdXNhbnRpdW0gZnVnaWF0IGVhLjwvc3Bhbj4KKzwvZGl2
PgorPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>190792</attachid>
            <date>2013-02-28 13:15:32 -0800</date>
            <delta_ts>2013-03-05 02:45:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110195-20130301061144.patch</filename>
            <type>text/plain</type>
            <size>11564</size>
            <attacher name="Takashi Sakamoto">tasak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0MzE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTk3ODgwOGY3NTI5ZmI0
N2RkYjdlNjgzZTBiOWQ4ZDYyNDI1MTIwZi4uNDhkNzM3OWFhYjI2MjJlZTg4MDY4YTFlYzFlMmYy
ZTRlN2ZmYTZhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEzLTAyLTIwICBUYWth
c2hpIFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBzdHlsaW5nIChAcmVnaW9uKSBicmVha3MgZm9ybWF0dGluZyB2aWEgOjpmaXJzdC1s
ZXR0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
aWxlIFJlbmRlclJlZ2lvbiB1cGRhdGVzIHN0eWxlcywgaXQgc2hvdWxkIGNvbnNpZGVyIHRoZSBj
YXNlLAorICAgICAgICBhbiBhbm9ueW1vdXMgcmVuZGVyIG9iamVjdCB3YXMgY3JlYXRlZCBmb3Ig
cHNldWRvIGZpcnN0LWxldHRlci4KKyAgICAgICAgSW4gdGhlIGNhc2UsIFJlbmRlclJlZ2lvbiBz
aG91bGQgdXNlIHBzZXVkb1N0eWxlRm9yRWxlbWVudCB0byBvYnRhaW4KKyAgICAgICAgYSBjb3Jy
ZWN0IHN0eWxlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0
dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OnBzZXVkb1N0eWxlRm9yRWxl
bWVudCk6CisgICAgICAgIEFkZGVkIG9uZSBtb3JlIHBhcmFtZXRlciwgcmVnaW9uRm9yU3R5bGlu
ZywgdG8gc2VlIGEgcHNldWRvIHN0eWxlIGluCisgICAgICAgIGEgcmVnaW9uLgorICAgICAgICAq
IGNzcy9TdHlsZVJlc29sdmVyLmg6CisgICAgICAgIChTdHlsZVJlc29sdmVyKToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
bG9jay5oOgorICAgICAgICAoV2ViQ29yZTo6ZmluZEZpcnN0TGV0dGVyQmxvY2spOgorICAgICAg
ICBNb3ZlZCBmaW5kRmlyc3RMZXR0ZXJCbG9jayBmcm9tIC5jcHAgdG8gLmgsIGJlY2F1c2UgUmVu
ZGVyUmVnaW9uIGFsc28KKyAgICAgICAgcmVxdWlyZXMgdGhlIG1ldGhvZCB0byBzb2x2ZSBwc2V1
ZG8gZmlyc3QtbGV0dGVyJ3Mgc3R5bGUuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lv
bjo6Y29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24pOgorICAgICAgICBBZGRlZCB0byBjb21w
dXRlIGEgc3R5bGUgZm9yIGEgZ2VuZXJhdGVkIHJlbmRlciBvYmplY3QgZm9yCisgICAgICAgIEZJ
UlNUX0xFVFRFUi4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
UmVnaW9uOjpjb21wdXRlQ2hpbGRyZW5TdHlsZUluUmVnaW9uKToKKyAgICAgICAgTW9kaWZ5IHRv
IHVzZSBjb21wdXRlQW5vbnltb3VzU3R5bGVJblJlZ2lvbiB3aGVuIGEgY2hpbGQgb2JqZWN0IGlz
CisgICAgICAgIGFub255bW91cy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmg6
CisgICAgICAgIChSZW5kZXJSZWdpb24pOgorCiAyMDEzLTAyLTI4ICBBbGJlcnRvIEdhcmNpYSAg
PGFnYXJjaWFAaWdhbGlhLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gVXNlciBjcmVkZW50
aWFscyBpcyBub3QgY29ycmVjdGx5IGhhbmRsZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVy
LmNwcAppbmRleCA2ZTczOWEzODU5ODlmNDdjYWZhZmE4ODgzNzY3NzY0ZmY3YzliZDJlLi44NmQ2
M2M4NjJlMjY4MzQxMDgwZTVlZjY3NGVmMTMyNTIzNGVlYmYwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUmVzb2x2ZXIuY3BwCkBAIC0xNTczLDcgKzE1NzMsNyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6
OmtleWZyYW1lU3R5bGVzRm9yQW5pbWF0aW9uKEVsZW1lbnQqIGUsIGNvbnN0IFJlbmRlclN0eWxl
KiBlbAogICAgIH0KIH0KIAotUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gU3R5bGVSZXNvbHZlcjo6
cHNldWRvU3R5bGVGb3JFbGVtZW50KEVsZW1lbnQqIGUsIGNvbnN0IFBzZXVkb1N0eWxlUmVxdWVz
dCYgcHNldWRvU3R5bGVSZXF1ZXN0LCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUpCitQYXNzUmVm
UHRyPFJlbmRlclN0eWxlPiBTdHlsZVJlc29sdmVyOjpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxl
bWVudCogZSwgY29uc3QgUHNldWRvU3R5bGVSZXF1ZXN0JiBwc2V1ZG9TdHlsZVJlcXVlc3QsIFJl
bmRlclN0eWxlKiBwYXJlbnRTdHlsZSwgUmVuZGVyUmVnaW9uKiByZWdpb25Gb3JTdHlsaW5nKQog
ewogICAgIEFTU0VSVChwYXJlbnRTdHlsZSk7CiAgICAgaWYgKCFlKQpAQCAtMTU4Myw3ICsxNTgz
LDcgQEAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gU3R5bGVSZXNvbHZlcjo6cHNldWRvU3R5bGVG
b3JFbGVtZW50KEVsZW1lbnQqIGUsIGNvbnN0IFAKIAogICAgIGluaXRFbGVtZW50KGUpOwogCi0g
ICAgc3RhdGUuaW5pdEZvclN0eWxlUmVzb2x2ZShkb2N1bWVudCgpLCBlLCBwYXJlbnRTdHlsZSwg
cHNldWRvU3R5bGVSZXF1ZXN0KTsKKyAgICBzdGF0ZS5pbml0Rm9yU3R5bGVSZXNvbHZlKGRvY3Vt
ZW50KCksIGUsIHBhcmVudFN0eWxlLCBwc2V1ZG9TdHlsZVJlcXVlc3QsIHJlZ2lvbkZvclN0eWxp
bmcpOwogICAgIHN0YXRlLnNldFN0eWxlKFJlbmRlclN0eWxlOjpjcmVhdGUoKSk7CiAgICAgc3Rh
dGUuc3R5bGUoKS0+aW5oZXJpdEZyb20obV9zdGF0ZS5wYXJlbnRTdHlsZSgpKTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggNDJjOTVjOTFmZDg0ZTNmMmEzYmFlNjYxMTE1MTI0
NjJlOGYwMjM5Ny4uMmJhMGZiMjJmZjg0MmQ2ZWYwOTljOTc4YjUzOTM0MWU0OTkzYWJjMiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBAIC0xODUsNyArMTg1LDcgQEAgcHVibGljOgog
CiAgICAgdm9pZCBrZXlmcmFtZVN0eWxlc0ZvckFuaW1hdGlvbihFbGVtZW50KiwgY29uc3QgUmVu
ZGVyU3R5bGUqLCBLZXlmcmFtZUxpc3QmKTsKIAotICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+
IHBzZXVkb1N0eWxlRm9yRWxlbWVudChFbGVtZW50KiwgY29uc3QgUHNldWRvU3R5bGVSZXF1ZXN0
JiwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlKTsKKyAgICBQYXNzUmVmUHRyPFJlbmRlclN0eWxl
PiBwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCosIGNvbnN0IFBzZXVkb1N0eWxlUmVxdWVz
dCYsIFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSwgUmVuZGVyUmVnaW9uKiByZWdpb25Gb3JTdHls
aW5nID0gMCk7CiAKICAgICBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBzdHlsZUZvclBhZ2UoaW50
IHBhZ2VJbmRleCk7CiAgICAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gZGVmYXVsdFN0eWxlRm9y
RWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJs
b2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKaW5kZXgg
ZDdhMjM0YWFiZGM0ZWRlM2ZiOGJmY2VkYmY3Zjg4MjMwYmFhYjczZi4uMzY5ZGIzMjEwN2Q5Y2Qw
NDI2ZTNkMzg4ZTRkNjY1MjIwMWQyY2ZmOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyQmxvY2suY3BwCkBAIC02NDg2LDI1ICs2NDg2LDYgQEAgc3RhdGljIGlubGluZSBib29sIHNo
b3VsZFNraXBGb3JGaXJzdExldHRlcihVQ2hhciBjKQogICAgIHJldHVybiBpc1NwYWNlT3JOZXds
aW5lKGMpIHx8IGMgPT0gbm9CcmVha1NwYWNlIHx8IGlzUHVuY3R1YXRpb25Gb3JGaXJzdExldHRl
cihjKTsKIH0KIAotc3RhdGljIGlubGluZSBSZW5kZXJPYmplY3QqIGZpbmRGaXJzdExldHRlckJs
b2NrKFJlbmRlckJsb2NrKiBzdGFydCkKLXsKLSAgICBSZW5kZXJPYmplY3QqIGZpcnN0TGV0dGVy
QmxvY2sgPSBzdGFydDsKLSAgICB3aGlsZSAodHJ1ZSkgewotICAgICAgICBib29sIGNhbkhhdmVG
aXJzdExldHRlclJlbmRlcmVyID0gZmlyc3RMZXR0ZXJCbG9jay0+c3R5bGUoKS0+aGFzUHNldWRv
U3R5bGUoRklSU1RfTEVUVEVSKQotICAgICAgICAgICAgJiYgZmlyc3RMZXR0ZXJCbG9jay0+Y2Fu
SGF2ZUdlbmVyYXRlZENoaWxkcmVuKCkgJiYgIWZpcnN0TGV0dGVyQmxvY2stPmlzRmxleGlibGVC
b3goKTsKLSAgICAgICAgaWYgKGNhbkhhdmVGaXJzdExldHRlclJlbmRlcmVyKQotICAgICAgICAg
ICAgcmV0dXJuIGZpcnN0TGV0dGVyQmxvY2s7Ci0KLSAgICAgICAgUmVuZGVyT2JqZWN0KiBwYXJl
bnRCbG9jayA9IGZpcnN0TGV0dGVyQmxvY2stPnBhcmVudCgpOwotICAgICAgICBpZiAoZmlyc3RM
ZXR0ZXJCbG9jay0+aXNSZXBsYWNlZCgpIHx8ICFwYXJlbnRCbG9jayB8fCBwYXJlbnRCbG9jay0+
Zmlyc3RDaGlsZCgpICE9IGZpcnN0TGV0dGVyQmxvY2sgfHwgCi0gICAgICAgICAgICAhcGFyZW50
QmxvY2stPmlzQmxvY2tGbG93KCkgfHwgcGFyZW50QmxvY2stPmlzRmxleGlibGVCb3goKSkKLSAg
ICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBmaXJzdExldHRlckJsb2NrID0gcGFyZW50Qmxv
Y2s7Ci0gICAgfSAKLQotICAgIHJldHVybiAwOwotfQotCiB2b2lkIFJlbmRlckJsb2NrOjp1cGRh
dGVGaXJzdExldHRlclN0eWxlKFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jaywgUmVuZGVy
T2JqZWN0KiBjdXJyZW50Q2hpbGQpCiB7CiAgICAgUmVuZGVyT2JqZWN0KiBmaXJzdExldHRlciA9
IGN1cnJlbnRDaGlsZC0+cGFyZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQmxvY2suaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5oCmluZGV4IGJiMjkwMWU2YzY4MzYxODNmZTRhYzAyNTBmNmEwYjAzNTNkZWQxODkuLjQxNTQz
YmI4ODc4YmQxNTBjMmY5ZmE5MjFiMDk1ZWIxYjQ3ZDEyOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9jay5oCkBAIC0xMjc1LDYgKzEyNzUsMjMgQEAgdGVtcGxhdGU8PiBzdHJ1
Y3QgVmFsdWVUb1N0cmluZzxSZW5kZXJCbG9jazo6RmxvYXRpbmdPYmplY3QqPiB7CiB9OwogI2Vu
ZGlmCiAKK2lubGluZSBSZW5kZXJPYmplY3QqIGZpbmRGaXJzdExldHRlckJsb2NrKFJlbmRlck9i
amVjdCogc3RhcnQpCit7CisgICAgUmVuZGVyT2JqZWN0KiBmaXJzdExldHRlckJsb2NrID0gc3Rh
cnQ7CisgICAgd2hpbGUgKHRydWUpIHsKKyAgICAgICAgYm9vbCBjYW5IYXZlRmlyc3RMZXR0ZXJS
ZW5kZXJlciA9IGZpcnN0TGV0dGVyQmxvY2stPnN0eWxlKCktPmhhc1BzZXVkb1N0eWxlKEZJUlNU
X0xFVFRFUikKKyAgICAgICAgICAgICYmIGZpcnN0TGV0dGVyQmxvY2stPmNhbkhhdmVHZW5lcmF0
ZWRDaGlsZHJlbigpOworICAgICAgICBpZiAoY2FuSGF2ZUZpcnN0TGV0dGVyUmVuZGVyZXIpCisg
ICAgICAgICAgICByZXR1cm4gZmlyc3RMZXR0ZXJCbG9jazsKKworICAgICAgICBSZW5kZXJPYmpl
Y3QqIHBhcmVudEJsb2NrID0gZmlyc3RMZXR0ZXJCbG9jay0+cGFyZW50KCk7CisgICAgICAgIGlm
IChmaXJzdExldHRlckJsb2NrLT5pc1JlcGxhY2VkKCkgfHwgIXBhcmVudEJsb2NrIHx8IHBhcmVu
dEJsb2NrLT5maXJzdENoaWxkKCkgIT0gZmlyc3RMZXR0ZXJCbG9jayB8fCAhcGFyZW50QmxvY2st
PmlzQmxvY2tGbG93KCkpCisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgZmlyc3RMZXR0
ZXJCbG9jayA9IHBhcmVudEJsb2NrOworICAgIH0gCisgICAgcmV0dXJuIDA7Cit9CisKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIFJlbmRlckJsb2NrX2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5jcHAKaW5kZXggZGZjMTcyZmRiOWRkYzljZmMxNzM0
NTYzMTNjOGY2YzRlYmYwZGEwMi4uZGNlNzQwNTQ3MGIyMTU1MDUzYmJhZTkzYmE0NWU2ODNmZDFm
YWJjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5jcHAKQEAgLTUy
OSw2ICs1MjksMjggQEAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gUmVuZGVyUmVnaW9uOjpjb21w
dXRlU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG8KICAgICByZXR1cm4gcmVuZGVy
T2JqZWN0UmVnaW9uU3R5bGUucmVsZWFzZSgpOwogfQogCitQYXNzUmVmUHRyPFJlbmRlclN0eWxl
PiBSZW5kZXJSZWdpb246OmNvbXB1dGVBbm9ueW1vdXNTdHlsZUluUmVnaW9uKGNvbnN0IFJlbmRl
ck9iamVjdCogb2JqZWN0KQoreworICAgIFJlZlB0cjxSZW5kZXJTdHlsZT4gc3R5bGVJblJlZ2lv
bjsKKyAgICBSZW5kZXJPYmplY3QqIHBhcmVudCA9IG9iamVjdC0+cGFyZW50KCk7CisgICAgUmVu
ZGVyU3R5bGUqIHBhcmVudFN0eWxlOworCisgICAgaWYgKG9iamVjdC0+c3R5bGUoKS0+c3R5bGVU
eXBlKCkgPT0gRklSU1RfTEVUVEVSKSB7CisgICAgICAgIGNvbnN0IFBzZXVkb1N0eWxlUmVxdWVz
dCBwc2V1ZG9TdHlsZVJlcXVlc3QoRklSU1RfTEVUVEVSKTsKKyAgICAgICAgcGFyZW50U3R5bGUg
PSBwYXJlbnQtPmZpcnN0TGluZVN0eWxlKCk7CisgICAgICAgIGlmIChjb25zdCBSZW5kZXJPYmpl
Y3QqIGZpcnN0TGV0dGVyQmxvY2sgPSBmaW5kRmlyc3RMZXR0ZXJCbG9jayhwYXJlbnQpKSB7Cisg
ICAgICAgICAgICBFbGVtZW50KiBlbGVtZW50ID0gdG9FbGVtZW50KGZpcnN0TGV0dGVyQmxvY2st
Pm5vZGUoKSk7CisgICAgICAgICAgICBzdHlsZUluUmVnaW9uID0gZG9jdW1lbnQoKS0+c3R5bGVS
ZXNvbHZlcigpLT5wc2V1ZG9TdHlsZUZvckVsZW1lbnQoZWxlbWVudCwgcHNldWRvU3R5bGVSZXF1
ZXN0LCBwYXJlbnRTdHlsZSwgdGhpcyk7CisgICAgICAgICAgICBpZiAoc3R5bGVJblJlZ2lvbikK
KyAgICAgICAgICAgICAgICByZXR1cm4gc3R5bGVJblJlZ2lvbi5yZWxlYXNlKCk7CisgICAgICAg
IH0KKyAgICB9IGVsc2UKKyAgICAgICAgcGFyZW50U3R5bGUgPSBwYXJlbnQtPnN0eWxlKCk7Cisg
ICAgCisgICAgc3R5bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjcmVhdGVBbm9ueW1vdXNTdHls
ZVdpdGhEaXNwbGF5KHBhcmVudFN0eWxlLCBvYmplY3QtPnN0eWxlKCktPmRpc3BsYXkoKSk7Cisg
ICAgcmV0dXJuIHN0eWxlSW5SZWdpb24ucmVsZWFzZSgpOworfQorCiB2b2lkIFJlbmRlclJlZ2lv
bjo6Y29tcHV0ZUNoaWxkcmVuU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG9iamVj
dCkKIHsKICAgICBmb3IgKFJlbmRlck9iamVjdCogY2hpbGQgPSBvYmplY3QtPmZpcnN0Q2hpbGQo
KTsgY2hpbGQ7IGNoaWxkID0gY2hpbGQtPm5leHRTaWJsaW5nKCkpIHsKQEAgLTU0Miw3ICs1NjQs
NyBAQCB2b2lkIFJlbmRlclJlZ2lvbjo6Y29tcHV0ZUNoaWxkcmVuU3R5bGVJblJlZ2lvbihjb25z
dCBSZW5kZXJPYmplY3QqIG9iamVjdCkKICAgICAgICAgICAgIG9iamVjdFJlZ2lvblN0eWxlQ2Fj
aGVkID0gdHJ1ZTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIGlmIChjaGlsZC0+aXNB
bm9ueW1vdXMoKSkKLSAgICAgICAgICAgICAgICBjaGlsZFN0eWxlSW5SZWdpb24gPSBSZW5kZXJT
dHlsZTo6Y3JlYXRlQW5vbnltb3VzU3R5bGVXaXRoRGlzcGxheShvYmplY3QtPnN0eWxlKCksIGNo
aWxkLT5zdHlsZSgpLT5kaXNwbGF5KCkpOworICAgICAgICAgICAgICAgIGNoaWxkU3R5bGVJblJl
Z2lvbiA9IGNvbXB1dGVBbm9ueW1vdXNTdHlsZUluUmVnaW9uKGNoaWxkKTsKICAgICAgICAgICAg
IGVsc2UgaWYgKGNoaWxkLT5pc1RleHQoKSkKICAgICAgICAgICAgICAgICBjaGlsZFN0eWxlSW5S
ZWdpb24gPSBSZW5kZXJTdHlsZTo6Y2xvbmUob2JqZWN0LT5zdHlsZSgpKTsKICAgICAgICAgICAg
IGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24u
aCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uaAppbmRleCBmYjQ3NWMz
MjczN2I3ZTAyN2YxODgxNDBiOTEyZmE5YzIzM2ZkYWVkLi5mMDI5NjgzYjY4YmViMTY1MjlmZTU5
ZWY5MDUxZjU3OTE4NzNiY2VlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyUmVnaW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lv
bi5oCkBAIC0xNTEsNiArMTUxLDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgaW5zdGFs
bEZsb3dUaHJlYWQoKTsKIAogICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNvbXB1dGVTdHls
ZUluUmVnaW9uKGNvbnN0IFJlbmRlck9iamVjdCopOworICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5
bGU+IGNvbXB1dGVBbm9ueW1vdXNTdHlsZUluUmVnaW9uKGNvbnN0IFJlbmRlck9iamVjdCopOwor
CiAgICAgdm9pZCBjb21wdXRlQ2hpbGRyZW5TdHlsZUluUmVnaW9uKGNvbnN0IFJlbmRlck9iamVj
dCopOwogICAgIHZvaWQgc2V0T2JqZWN0U3R5bGVJblJlZ2lvbihSZW5kZXJPYmplY3QqLCBQYXNz
UmVmUHRyPFJlbmRlclN0eWxlPiwgYm9vbCBvYmplY3RSZWdpb25TdHlsZUNhY2hlZCk7CiAgICAg
dm9pZCBwcmludFJlZ2lvbk9iamVjdHNTdHlsZXMoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBhZWM4ZTMyNjM4MzA2OWE3
MTgwZjM0ZWVlYmJlMmM4OGE3MmY4N2QzLi43NWE3NzM2YTM2ODcxOTc4YjYyYzQwNjlkYmE0ODli
NmQxNmZhZTEzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTMtMDItMjAgIFRha2FzaGkgU2Fr
YW1vdG8gIDx0YXNha0Bnb29nbGUuY29tPgorCisgICAgICAgIFtDU1MgUmVnaW9uc10gUmVnaW9u
IHN0eWxpbmcgKEByZWdpb24pIGJyZWFrcyBmb3JtYXR0aW5nIHZpYSA6OmZpcnN0LWxldHRlcgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEwMTk1CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L3Jl
Z2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNp
ZGUtZmxvd3RocmVhZC5odG1sOiBBZGRlZC4KKwogMjAxMy0wMi0yOCAgw4Fkw6FtIEthbGxhaSAg
PGthZGFtQGluZi51LXN6ZWdlZC5odT4KIAogICAgICAgICBbUXRdIFVucmV2aWV3ZWQgZ2FyZGVu
aW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3BzZXVkby1maXJzdC1s
ZXR0ZXItaW5zaWRlLWZsb3d0aHJlYWQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
cmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uNmFiYTViNTg0ZmRhZjIzNTBhODY0NWI0NDczYmI1YzdiYmI3YWYzNQot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3Qt
bGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0bWwKQEAgLTAsMCArMSwyMiBAQAor
PCFkb2N0eXBlIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2NvbnRlbnQgeworICAg
IGNvbG9yOiBncmVlbjsKK30KKworI2NvbnRlbnQ6OmZpcnN0LWxldHRlciB7CisgICAgZm9udC1z
aXplOiAyLjVlbTsKKyAgICBmb250LXN0eWxlOiBpdGFsaWM7CisgICAgZm9udC1mYW1pbHk6IHNh
bnMtc2VyaWY7Cit9Cis8L3N0eWxlPgorPC9oZWFkPgorPGJvZHk+Cis8ZGl2IGlkPSJjb250ZW50
Ij4KKzxzcGFuPk1vcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciBhZGlwaXNp
Y2luZyBlbGl0LiBBc3N1bWVuZGEgaXBzYW0gcmVtIGZ1Z2l0IGFjY3VzYW50aXVtIGZ1Z2lhdCBl
YS48L3NwYW4+Cis8L2Rpdj4KKzxkaXYgaWQ9InJlZ2lvbiI+PC9kaXY+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxl
dHRlci1pbnNpZGUtZmxvd3RocmVhZC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3Bz
ZXVkby1maXJzdC1sZXR0ZXItaW5zaWRlLWZsb3d0aHJlYWQuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZDk3
YzFkN2EwMjJjYWFkMzk1NzRjODA2NDRkYjI0MjU3MWZjMjc0Ci0tLSAvZGV2L251bGwKKysrIGIv
TGF5b3V0VGVzdHMvZmFzdC9yZWdpb25zL3BzZXVkby1maXJzdC1sZXR0ZXItaW5zaWRlLWZsb3d0
aHJlYWQuaHRtbApAQCAtMCwwICsxLDMyIEBACis8IWRvY3R5cGUgaHRtbD4KKzxodG1sPgorPGhl
YWQ+Cis8c3R5bGU+CisjY29udGVudCB7CisgICAgLXdlYmtpdC1mbG93LWludG86IGZsb3c7Cit9
CisKKyNjb250ZW50OjpmaXJzdC1sZXR0ZXIgeworICAgIGZvbnQtc2l6ZTogMi41ZW07CisgICAg
Zm9udC1zdHlsZTogaXRhbGljOworICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworfQorCisj
cmVnaW9uIHsKKyAgICAtd2Via2l0LWZsb3ctZnJvbTogZmxvdzsKK30KKworQC13ZWJraXQtcmVn
aW9uICNyZWdpb24geworICAgIHNwYW4geworICAgICAgICBjb2xvcjogZ3JlZW47CisgICAgfQor
fQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5PgorPGRpdiBpZD0iY29udGVudCI+Cis8c3Bhbj5N
b3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4g
QXNzdW1lbmRhIGlwc2FtIHJlbSBmdWdpdCBhY2N1c2FudGl1bSBmdWdpYXQgZWEuPC9zcGFuPgor
PC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24iPjwvZGl2PgorPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191446</attachid>
            <date>2013-03-05 02:45:40 -0800</date>
            <delta_ts>2013-03-07 02:15:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110195-20130305194147.patch</filename>
            <type>text/plain</type>
            <size>11751</size>
            <attacher name="Takashi Sakamoto">tasak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ0NzI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGQxYjlkNWY5YTIxOGQ3
YWM0MjkxNzczNGU0MjBlNjBlZGE4NzdmOS4uYTE3MzhiMzE3NDE5ZWMxZTgyNTAyMWZjNmIzMzE0
YzljOWM5YmMwMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEzLTAyLTIwICBUYWth
c2hpIFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBzdHlsaW5nIChAcmVnaW9uKSBicmVha3MgZm9ybWF0dGluZyB2aWEgOjpmaXJzdC1s
ZXR0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
aWxlIFJlbmRlclJlZ2lvbiB1cGRhdGVzIHN0eWxlcywgaXQgc2hvdWxkIGNvbnNpZGVyIHRoZSBj
YXNlLAorICAgICAgICBhbiBhbm9ueW1vdXMgcmVuZGVyIG9iamVjdCB3YXMgY3JlYXRlZCBmb3Ig
cHNldWRvIGZpcnN0LWxldHRlci4KKyAgICAgICAgSW4gdGhlIGNhc2UsIFJlbmRlclJlZ2lvbiBz
aG91bGQgdXNlIHBzZXVkb1N0eWxlRm9yRWxlbWVudCB0byBvYnRhaW4KKyAgICAgICAgYSBjb3Jy
ZWN0IHN0eWxlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0
dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKKworICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlUmVzb2x2ZXI6OnBzZXVkb1N0eWxlRm9yRWxl
bWVudCk6CisgICAgICAgIEFkZGVkIG9uZSBtb3JlIHBhcmFtZXRlciwgcmVnaW9uRm9yU3R5bGlu
ZywgdG8gc2VlIGEgcHNldWRvIHN0eWxlIGluCisgICAgICAgIGEgcmVnaW9uLgorICAgICAgICAq
IGNzcy9TdHlsZVJlc29sdmVyLmg6CisgICAgICAgIChTdHlsZVJlc29sdmVyKToKKyAgICAgICAg
KiByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
bG9jay5oOgorICAgICAgICAoV2ViQ29yZTo6ZmluZEZpcnN0TGV0dGVyQmxvY2spOgorICAgICAg
ICBNb3ZlZCBmaW5kRmlyc3RMZXR0ZXJCbG9jayBmcm9tIC5jcHAgdG8gLmgsIGJlY2F1c2UgUmVu
ZGVyUmVnaW9uIGFsc28KKyAgICAgICAgcmVxdWlyZXMgdGhlIG1ldGhvZCB0byBzb2x2ZSBwc2V1
ZG8gZmlyc3QtbGV0dGVyJ3Mgc3R5bGUuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBy
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclJlZ2lv
bjo6Y29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24pOgorICAgICAgICBBZGRlZCB0byBjb21w
dXRlIGEgc3R5bGUgZm9yIGEgZ2VuZXJhdGVkIHJlbmRlciBvYmplY3QgZm9yCisgICAgICAgIEZJ
UlNUX0xFVFRFUi4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
UmVnaW9uOjpjb21wdXRlQ2hpbGRyZW5TdHlsZUluUmVnaW9uKToKKyAgICAgICAgTW9kaWZ5IHRv
IHVzZSBjb21wdXRlQW5vbnltb3VzU3R5bGVJblJlZ2lvbiB3aGVuIGEgY2hpbGQgb2JqZWN0IGlz
CisgICAgICAgIGFub255bW91cy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmg6
CisgICAgICAgIChSZW5kZXJSZWdpb24pOgorCiAyMDEzLTAzLTA0ICBBcnBpdGEgQmFodWd1bmEg
IDxhLmJhaEBzYW1zdW5nLmNvbT4KIAogICAgICAgICBnZXRBdHRyaWJ1dGUgZG9lcyBub3QgYmVo
YXZlIGNvcnJlY3RseSBmb3IgbWl4ZWQtY2FzZSBhdHRyaWJ1dGVzIG9uIEhUTUwgZWxlbWVudHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAppbmRleCBkMTY1MWQ1ZDk1YmYzMTNlMDk3
MDNhMDQyOWFkZDljNWQ5YmMyMDIzLi4xYmFiMzEzYzc4NmYxZjAzYjRlYjg3YTI5MDQ3YmUyMDRm
ODRiMjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0xNTczLDcgKzE1
NzMsNyBAQCB2b2lkIFN0eWxlUmVzb2x2ZXI6OmtleWZyYW1lU3R5bGVzRm9yQW5pbWF0aW9uKEVs
ZW1lbnQqIGUsIGNvbnN0IFJlbmRlclN0eWxlKiBlbAogICAgIH0KIH0KIAotUGFzc1JlZlB0cjxS
ZW5kZXJTdHlsZT4gU3R5bGVSZXNvbHZlcjo6cHNldWRvU3R5bGVGb3JFbGVtZW50KEVsZW1lbnQq
IGUsIGNvbnN0IFBzZXVkb1N0eWxlUmVxdWVzdCYgcHNldWRvU3R5bGVSZXF1ZXN0LCBSZW5kZXJT
dHlsZSogcGFyZW50U3R5bGUpCitQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBTdHlsZVJlc29sdmVy
Ojpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwgY29uc3QgUHNldWRvU3R5bGVSZXF1
ZXN0JiBwc2V1ZG9TdHlsZVJlcXVlc3QsIFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSwgUmVuZGVy
UmVnaW9uKiByZWdpb25Gb3JTdHlsaW5nKQogewogICAgIEFTU0VSVChwYXJlbnRTdHlsZSk7CiAg
ICAgaWYgKCFlKQpAQCAtMTU4Myw3ICsxNTgzLDcgQEAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4g
U3R5bGVSZXNvbHZlcjo6cHNldWRvU3R5bGVGb3JFbGVtZW50KEVsZW1lbnQqIGUsIGNvbnN0IFAK
IAogICAgIGluaXRFbGVtZW50KGUpOwogCi0gICAgc3RhdGUuaW5pdEZvclN0eWxlUmVzb2x2ZShk
b2N1bWVudCgpLCBlLCBwYXJlbnRTdHlsZSwgcHNldWRvU3R5bGVSZXF1ZXN0KTsKKyAgICBzdGF0
ZS5pbml0Rm9yU3R5bGVSZXNvbHZlKGRvY3VtZW50KCksIGUsIHBhcmVudFN0eWxlLCBwc2V1ZG9T
dHlsZVJlcXVlc3QsIHJlZ2lvbkZvclN0eWxpbmcpOwogICAgIHN0YXRlLnNldFN0eWxlKFJlbmRl
clN0eWxlOjpjcmVhdGUoKSk7CiAgICAgc3RhdGUuc3R5bGUoKS0+aW5oZXJpdEZyb20obV9zdGF0
ZS5wYXJlbnRTdHlsZSgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxl
UmVzb2x2ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKaW5kZXggNDJj
OTVjOTFmZDg0ZTNmMmEzYmFlNjYxMTE1MTI0NjJlOGYwMjM5Ny4uMmJhMGZiMjJmZjg0MmQ2ZWYw
OTljOTc4YjUzOTM0MWU0OTkzYWJjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUmVzb2x2ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5oCkBA
IC0xODUsNyArMTg1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBrZXlmcmFtZVN0eWxlc0ZvckFu
aW1hdGlvbihFbGVtZW50KiwgY29uc3QgUmVuZGVyU3R5bGUqLCBLZXlmcmFtZUxpc3QmKTsKIAot
ICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxlRm9yRWxlbWVudChFbGVtZW50
KiwgY29uc3QgUHNldWRvU3R5bGVSZXF1ZXN0JiwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlKTsK
KyAgICBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVu
dCosIGNvbnN0IFBzZXVkb1N0eWxlUmVxdWVzdCYsIFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSwg
UmVuZGVyUmVnaW9uKiByZWdpb25Gb3JTdHlsaW5nID0gMCk7CiAKICAgICBQYXNzUmVmUHRyPFJl
bmRlclN0eWxlPiBzdHlsZUZvclBhZ2UoaW50IHBhZ2VJbmRleCk7CiAgICAgUGFzc1JlZlB0cjxS
ZW5kZXJTdHlsZT4gZGVmYXVsdFN0eWxlRm9yRWxlbWVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCbG9jay5jcHAKaW5kZXggYmY5ZTE4NWQyYTA1YWZlZjgwZDc2MDg3YTI2Zjk5
OGRjOGExYzEyNy4uZmU0MWY1NmYyNWFkODMzNTc5NjIzMWM3ZDg3YWQwYjVlM2I1MjcwNCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCkBAIC02NTA4LDI1ICs2NTA4
LDYgQEAgc3RhdGljIGlubGluZSBib29sIHNob3VsZFNraXBGb3JGaXJzdExldHRlcihVQ2hhciBj
KQogICAgIHJldHVybiBpc1NwYWNlT3JOZXdsaW5lKGMpIHx8IGMgPT0gbm9CcmVha1NwYWNlIHx8
IGlzUHVuY3R1YXRpb25Gb3JGaXJzdExldHRlcihjKTsKIH0KIAotc3RhdGljIGlubGluZSBSZW5k
ZXJPYmplY3QqIGZpbmRGaXJzdExldHRlckJsb2NrKFJlbmRlckJsb2NrKiBzdGFydCkKLXsKLSAg
ICBSZW5kZXJPYmplY3QqIGZpcnN0TGV0dGVyQmxvY2sgPSBzdGFydDsKLSAgICB3aGlsZSAodHJ1
ZSkgewotICAgICAgICBib29sIGNhbkhhdmVGaXJzdExldHRlclJlbmRlcmVyID0gZmlyc3RMZXR0
ZXJCbG9jay0+c3R5bGUoKS0+aGFzUHNldWRvU3R5bGUoRklSU1RfTEVUVEVSKQotICAgICAgICAg
ICAgJiYgZmlyc3RMZXR0ZXJCbG9jay0+Y2FuSGF2ZUdlbmVyYXRlZENoaWxkcmVuKCkgJiYgIWZp
cnN0TGV0dGVyQmxvY2stPmlzRmxleGlibGVCb3goKTsKLSAgICAgICAgaWYgKGNhbkhhdmVGaXJz
dExldHRlclJlbmRlcmVyKQotICAgICAgICAgICAgcmV0dXJuIGZpcnN0TGV0dGVyQmxvY2s7Ci0K
LSAgICAgICAgUmVuZGVyT2JqZWN0KiBwYXJlbnRCbG9jayA9IGZpcnN0TGV0dGVyQmxvY2stPnBh
cmVudCgpOwotICAgICAgICBpZiAoZmlyc3RMZXR0ZXJCbG9jay0+aXNSZXBsYWNlZCgpIHx8ICFw
YXJlbnRCbG9jayB8fCBwYXJlbnRCbG9jay0+Zmlyc3RDaGlsZCgpICE9IGZpcnN0TGV0dGVyQmxv
Y2sgfHwgCi0gICAgICAgICAgICAhcGFyZW50QmxvY2stPmlzQmxvY2tGbG93KCkgfHwgcGFyZW50
QmxvY2stPmlzRmxleGlibGVCb3goKSkKLSAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICBm
aXJzdExldHRlckJsb2NrID0gcGFyZW50QmxvY2s7Ci0gICAgfSAKLQotICAgIHJldHVybiAwOwot
fQotCiB2b2lkIFJlbmRlckJsb2NrOjp1cGRhdGVGaXJzdExldHRlclN0eWxlKFJlbmRlck9iamVj
dCogZmlyc3RMZXR0ZXJCbG9jaywgUmVuZGVyT2JqZWN0KiBjdXJyZW50Q2hpbGQpCiB7CiAgICAg
UmVuZGVyT2JqZWN0KiBmaXJzdExldHRlciA9IGN1cnJlbnRDaGlsZC0+cGFyZW50KCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCmluZGV4IDQ4YzIxZjM5ODQ2ZjlkNzM1MDY1
MDBlOWQyYmRjMmE5OWYzNzc2MTUuLmYwMDE0YzJiMDhkODBmOTRiNGQ1Y2MwMjU2YTQ2ZmJiZjVi
ZjAwMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCkBAIC0xMjg3LDYg
KzEyODcsMjMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgVmFsdWVUb1N0cmluZzxSZW5kZXJCbG9jazo6
RmxvYXRpbmdPYmplY3QqPiB7CiB9OwogI2VuZGlmCiAKK2lubGluZSBSZW5kZXJPYmplY3QqIGZp
bmRGaXJzdExldHRlckJsb2NrKFJlbmRlck9iamVjdCogc3RhcnQpCit7CisgICAgUmVuZGVyT2Jq
ZWN0KiBmaXJzdExldHRlckJsb2NrID0gc3RhcnQ7CisgICAgd2hpbGUgKHRydWUpIHsKKyAgICAg
ICAgYm9vbCBjYW5IYXZlRmlyc3RMZXR0ZXJSZW5kZXJlciA9IGZpcnN0TGV0dGVyQmxvY2stPnN0
eWxlKCktPmhhc1BzZXVkb1N0eWxlKEZJUlNUX0xFVFRFUikKKyAgICAgICAgICAgICYmIGZpcnN0
TGV0dGVyQmxvY2stPmNhbkhhdmVHZW5lcmF0ZWRDaGlsZHJlbigpICYmICFmaXJzdExldHRlckJs
b2NrLT5pc0ZsZXhpYmxlQm94KCk7CisgICAgICAgIGlmIChjYW5IYXZlRmlyc3RMZXR0ZXJSZW5k
ZXJlcikKKyAgICAgICAgICAgIHJldHVybiBmaXJzdExldHRlckJsb2NrOworCisgICAgICAgIFJl
bmRlck9iamVjdCogcGFyZW50QmxvY2sgPSBmaXJzdExldHRlckJsb2NrLT5wYXJlbnQoKTsKKyAg
ICAgICAgaWYgKGZpcnN0TGV0dGVyQmxvY2stPmlzUmVwbGFjZWQoKSB8fCAhcGFyZW50QmxvY2sg
fHwgcGFyZW50QmxvY2stPmZpcnN0Q2hpbGQoKSAhPSBmaXJzdExldHRlckJsb2NrIHx8ICFwYXJl
bnRCbG9jay0+aXNCbG9ja0Zsb3coKSB8fCBwYXJlbnRCbG9jay0+aXNGbGV4aWJsZUJveCgpKQor
ICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIGZpcnN0TGV0dGVyQmxvY2sgPSBwYXJlbnRC
bG9jazsKKyAgICB9IAorICAgIHJldHVybiAwOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CiAKICNlbmRpZiAvLyBSZW5kZXJCbG9ja19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJSZWdpb24uY3BwCmluZGV4IDAzOTJjZmQ3MDdhYmIzYzFiOTcxOTcxOGQ0NjU2ZjIzZjE2NDcx
NGMuLmIxNTQxZjdjOTcxMjM1NmM3YWNmYWYzY2ViZDA3ZTYwNDhhYzc0ZGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCkBAIC01MjksNiArNTI5LDI4IEBAIFBh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IFJlbmRlclJlZ2lvbjo6Y29tcHV0ZVN0eWxlSW5SZWdpb24o
Y29uc3QgUmVuZGVyT2JqZWN0KiBvCiAgICAgcmV0dXJuIHJlbmRlck9iamVjdFJlZ2lvblN0eWxl
LnJlbGVhc2UoKTsKIH0KIAorUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gUmVuZGVyUmVnaW9uOjpj
b21wdXRlQW5vbnltb3VzU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkK
K3sKKyAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlSW5SZWdpb247CisgICAgUmVuZGVyT2Jq
ZWN0KiBwYXJlbnQgPSBvYmplY3QtPnBhcmVudCgpOworICAgIFJlbmRlclN0eWxlKiBwYXJlbnRT
dHlsZTsKKworICAgIGlmIChvYmplY3QtPnN0eWxlKCktPnN0eWxlVHlwZSgpID09IEZJUlNUX0xF
VFRFUikgeworICAgICAgICBjb25zdCBQc2V1ZG9TdHlsZVJlcXVlc3QgcHNldWRvU3R5bGVSZXF1
ZXN0KEZJUlNUX0xFVFRFUik7CisgICAgICAgIHBhcmVudFN0eWxlID0gcGFyZW50LT5maXJzdExp
bmVTdHlsZSgpOworICAgICAgICBpZiAoY29uc3QgUmVuZGVyT2JqZWN0KiBmaXJzdExldHRlckJs
b2NrID0gZmluZEZpcnN0TGV0dGVyQmxvY2socGFyZW50KSkgeworICAgICAgICAgICAgRWxlbWVu
dCogZWxlbWVudCA9IHRvRWxlbWVudChmaXJzdExldHRlckJsb2NrLT5ub2RlKCkpOworICAgICAg
ICAgICAgc3R5bGVJblJlZ2lvbiA9IGRvY3VtZW50KCktPnN0eWxlUmVzb2x2ZXIoKS0+cHNldWRv
U3R5bGVGb3JFbGVtZW50KGVsZW1lbnQsIHBzZXVkb1N0eWxlUmVxdWVzdCwgcGFyZW50U3R5bGUs
IHRoaXMpOworICAgICAgICAgICAgaWYgKHN0eWxlSW5SZWdpb24pCisgICAgICAgICAgICAgICAg
cmV0dXJuIHN0eWxlSW5SZWdpb24ucmVsZWFzZSgpOworICAgICAgICB9CisgICAgfSBlbHNlCisg
ICAgICAgIHBhcmVudFN0eWxlID0gcGFyZW50LT5zdHlsZSgpOworICAgIAorICAgIHN0eWxlSW5S
ZWdpb24gPSBSZW5kZXJTdHlsZTo6Y3JlYXRlQW5vbnltb3VzU3R5bGVXaXRoRGlzcGxheShwYXJl
bnRTdHlsZSwgb2JqZWN0LT5zdHlsZSgpLT5kaXNwbGF5KCkpOworICAgIHJldHVybiBzdHlsZUlu
UmVnaW9uLnJlbGVhc2UoKTsKK30KKwogdm9pZCBSZW5kZXJSZWdpb246OmNvbXB1dGVDaGlsZHJl
blN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgZm9yIChS
ZW5kZXJPYmplY3QqIGNoaWxkID0gb2JqZWN0LT5maXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9
IGNoaWxkLT5uZXh0U2libGluZygpKSB7CkBAIC01NDIsNyArNTY0LDcgQEAgdm9pZCBSZW5kZXJS
ZWdpb246OmNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBv
YmplY3QpCiAgICAgICAgICAgICBvYmplY3RSZWdpb25TdHlsZUNhY2hlZCA9IHRydWU7CiAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICBpZiAoY2hpbGQtPmlzQW5vbnltb3VzKCkgfHwgY2hp
bGQtPmlzSW5GbG93UmVuZGVyRmxvd1RocmVhZCgpKQotICAgICAgICAgICAgICAgIGNoaWxkU3R5
bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjcmVhdGVBbm9ueW1vdXNTdHlsZVdpdGhEaXNwbGF5
KG9iamVjdC0+c3R5bGUoKSwgY2hpbGQtPnN0eWxlKCktPmRpc3BsYXkoKSk7CisgICAgICAgICAg
ICAgICAgY2hpbGRTdHlsZUluUmVnaW9uID0gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24o
Y2hpbGQpOwogICAgICAgICAgICAgZWxzZSBpZiAoY2hpbGQtPmlzVGV4dCgpKQogICAgICAgICAg
ICAgICAgIGNoaWxkU3R5bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjbG9uZShvYmplY3QtPnN0
eWxlKCkpOwogICAgICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlclJlZ2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJl
Z2lvbi5oCmluZGV4IDM0NGRjYjk4YTQ4MDg2YmEzMDA3MWFmMWZjNGI2NzAzZTkzMDExOTEuLjhk
YmFlMjVlYTlkMzI0ODI5YjI4NTdiY2QwYzhlMGE5ZDJmODBjMzkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyUmVnaW9uLmgKQEAgLTE1NSw2ICsxNTUsOCBAQCBwcml2YXRlOgogICAg
IHZpcnR1YWwgdm9pZCBpbnN0YWxsRmxvd1RocmVhZCgpOwogCiAgICAgUGFzc1JlZlB0cjxSZW5k
ZXJTdHlsZT4gY29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAg
UGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY29u
c3QgUmVuZGVyT2JqZWN0Kik7CisKICAgICB2b2lkIGNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdp
b24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgdm9pZCBzZXRPYmplY3RTdHlsZUluUmVnaW9u
KFJlbmRlck9iamVjdCosIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+LCBib29sIG9iamVjdFJlZ2lv
blN0eWxlQ2FjaGVkKTsKICAgICB2b2lkIHByaW50UmVnaW9uT2JqZWN0c1N0eWxlcygpOwpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDI1NDExYTY0MGRiNDhhYWVlMWUzNjFiMTRlYjIyMmE3OTExMjM2OTkuLjJkZTg5ZmVkYTJm
YTFlMTg1MWRjY2Y4ZDZhZTg3YTBjNTRhMjFjOTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAx
My0wMi0yMCAgVGFrYXNoaSBTYWthbW90byAgPHRhc2FrQGdvb2dsZS5jb20+CisKKyAgICAgICAg
W0NTUyBSZWdpb25zXSBSZWdpb24gc3R5bGluZyAoQHJlZ2lvbikgYnJlYWtzIGZvcm1hdHRpbmcg
dmlhIDo6Zmlyc3QtbGV0dGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMTAxOTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93
dGhyZWFkLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1
ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAz
LTA0ICBBcnBpdGEgQmFodWd1bmEgIDxhLmJhaEBzYW1zdW5nLmNvbT4KIAogICAgICAgICBnZXRB
dHRyaWJ1dGUgZG9lcyBub3QgYmVoYXZlIGNvcnJlY3RseSBmb3IgbWl4ZWQtY2FzZSBhdHRyaWJ1
dGVzIG9uIEhUTUwgZWxlbWVudHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9u
cy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3Ro
cmVhZC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZhYmE1YjU4NGZkYWYyMzUwYTg2NDViNDQ3
M2JiNWM3YmJiN2FmMzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lv
bnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1sCkBA
IC0wLDAgKzEsMjIgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHlsZT4K
KyNjb250ZW50IHsKKyAgICBjb2xvcjogZ3JlZW47Cit9CisKKyNjb250ZW50OjpmaXJzdC1sZXR0
ZXIgeworICAgIGZvbnQtc2l6ZTogMi41ZW07CisgICAgZm9udC1zdHlsZTogaXRhbGljOworICAg
IGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5Pgor
PGRpdiBpZD0iY29udGVudCI+Cis8c3Bhbj5Nb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29u
c2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4gQXNzdW1lbmRhIGlwc2FtIHJlbSBmdWdpdCBhY2N1
c2FudGl1bSBmdWdpYXQgZWEuPC9zcGFuPgorPC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24iPjwvZGl2
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdpb25z
L3BzZXVkby1maXJzdC1sZXR0ZXItaW5zaWRlLWZsb3d0aHJlYWQuaHRtbCBiL0xheW91dFRlc3Rz
L2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uN2Q5N2MxZDdhMDIyY2FhZDM5NTc0YzgwNjQ0ZGIyNDI1NzFmYzI3NAotLS0g
L2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0
dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFkb2N0eXBlIGh0
bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2NvbnRlbnQgeworICAgIC13ZWJraXQtZmxv
dy1pbnRvOiBmbG93OworfQorCisjY29udGVudDo6Zmlyc3QtbGV0dGVyIHsKKyAgICBmb250LXNp
emU6IDIuNWVtOworICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKKyAgICBmb250LWZhbWlseTogc2Fu
cy1zZXJpZjsKK30KKworI3JlZ2lvbiB7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7Cit9
CisKK0Atd2Via2l0LXJlZ2lvbiAjcmVnaW9uIHsKKyAgICBzcGFuIHsKKyAgICAgICAgY29sb3I6
IGdyZWVuOworICAgIH0KK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9ImNv
bnRlbnQiPgorPHNwYW4+TW9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFk
aXBpc2ljaW5nIGVsaXQuIEFzc3VtZW5kYSBpcHNhbSByZW0gZnVnaXQgYWNjdXNhbnRpdW0gZnVn
aWF0IGVhLjwvc3Bhbj4KKzwvZGl2PgorPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKzwvYm9keT4K
KzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191947</attachid>
            <date>2013-03-07 01:34:37 -0800</date>
            <delta_ts>2013-03-07 02:13:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110195-20130307183041.patch</filename>
            <type>text/plain</type>
            <size>10671</size>
            <attacher name="Takashi Sakamoto">tasak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzFjYjI0YTJjNGU3NDFl
NGQ5YzkzNGU1ZTQ2MzU4ZThlN2ZkZjQzZS4uNTFjZGRkMDNiYzE3NDUxNjA0MjAwNDI1ODA2NTE1
ZGMxZjVhY2ZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTIwICBUYWth
c2hpIFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBzdHlsaW5nIChAcmVnaW9uKSBicmVha3MgZm9ybWF0dGluZyB2aWEgOjpmaXJzdC1s
ZXR0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
ZW4gUmVuZGVyUmVnaW9uIGNvbXB1dGVzIHRoZSBzdHlsZXMgaW4gcmVnaW9uIGZvciBlbGVtZW50
cyB0aGF0IGFyZQorICAgICAgICBkaXNwbGF5ZWQgaW5zaWRlIHRoZSByZWdpb24sIGl0IHNob3Vs
ZCBjb25zaWRlciB0aGUgY2FzZSwKKyAgICAgICAgYW4gYW5vbnltb3VzIHJlbmRlciBvYmplY3Qg
d2FzIGNyZWF0ZWQgZm9yIHBzZXVkbyBmaXJzdC1sZXR0ZXIuCisgICAgICAgIEluIHRoZSBjYXNl
LCBSZW5kZXJSZWdpb24gc2hvdWxkIHVzZSBwc2V1ZG9TdHlsZUZvckVsZW1lbnQgdG8gb2J0YWlu
CisgICAgICAgIGEgY29ycmVjdCBzdHlsZS4KKworICAgICAgICBUZXN0OiBmYXN0L3JlZ2lvbnMv
cHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC5odG1sCisKKyAgICAgICAgKiBj
c3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjpw
c2V1ZG9TdHlsZUZvckVsZW1lbnQpOgorICAgICAgICBBZGRlZCBvbmUgbW9yZSBwYXJhbWV0ZXIs
IHJlZ2lvbkZvclN0eWxpbmcsIHRvIHNldCBhIHBzZXVkbyBzdHlsZSBpbgorICAgICAgICBhIHJl
Z2lvbi4KKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5oOgorICAgICAgICAoU3R5bGVSZXNv
bHZlcik6CisgICAgICAgIEFkZGVkIFJlbmRlclJlZ2lvbiogdG8gcHNldWRvU3R5bGVGb3JFbGVt
ZW50J3MgcGFyYW1ldGVyIGxpc3QuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNw
cDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrOjpmaW5kRmlyc3RMZXR0ZXJCbG9jayk6CisgICAgICAgIENoYW5nZWQgZnJv
bSBzdGF0aWMgaW5saW5lIGZ1bmN0aW9uIHRvIHN0YXRpYyBtZXRob2QgYW5kIGl0cyBhcmd1bWVu
dAorICAgICAgICBmcm9tIFJlbmRlckJsb2NrKiB0byBSZW5kZXJPYmplY3QqLiBUaGlzIGlzIHJl
cXVyaWVkIHRvIGZpbmQgYSBmaXJzdAorICAgICAgICBsZXR0ZXIgYmxvY2sgaW4gUmVuZGVyUmVn
aW9uLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJS
ZWdpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpjb21wdXRlQW5vbnlt
b3VzU3R5bGVJblJlZ2lvbik6CisgICAgICAgIEFkZGVkIHRvIGNvbXB1dGUgYSBzdHlsZSBmb3Ig
YSBnZW5lcmF0ZWQgcmVuZGVyIG9iamVjdCBmb3IKKyAgICAgICAgRklSU1RfTEVUVEVSLgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OmNvbXB1dGVD
aGlsZHJlblN0eWxlSW5SZWdpb24pOgorICAgICAgICBNb2RpZnkgdG8gdXNlIGNvbXB1dGVBbm9u
eW1vdXNTdHlsZUluUmVnaW9uIHdoZW4gYSBjaGlsZCBvYmplY3QgaXMKKyAgICAgICAgYW5vbnlt
b3VzLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJSZWdpb24uaDoKKyAgICAgICAgKFJlbmRl
clJlZ2lvbik6CisKIDIwMTMtMDMtMDYgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBTVkdWaWV3U3BlYzo6dmlld1RhcmdldApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDRiZDA0OTAxODExMGIxYzNkZTdiMGQzOWNi
MWFiMjFmZGI1MDM0NGIuLjA1Yzk5ZjJlNTdlNjM3Y2IwNjk3YTQxNzUyOGJjZmQ0Y2YyOTQ2ZTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTE1NzQsNyArMTU3NCw3IEBA
IHZvaWQgU3R5bGVSZXNvbHZlcjo6a2V5ZnJhbWVTdHlsZXNGb3JBbmltYXRpb24oRWxlbWVudCog
ZSwgY29uc3QgUmVuZGVyU3R5bGUqIGVsCiAgICAgfQogfQogCi1QYXNzUmVmUHRyPFJlbmRlclN0
eWxlPiBTdHlsZVJlc29sdmVyOjpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwgY29u
c3QgUHNldWRvU3R5bGVSZXF1ZXN0JiBwc2V1ZG9TdHlsZVJlcXVlc3QsIFJlbmRlclN0eWxlKiBw
YXJlbnRTdHlsZSkKK1Bhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFN0eWxlUmVzb2x2ZXI6OnBzZXVk
b1N0eWxlRm9yRWxlbWVudChFbGVtZW50KiBlLCBjb25zdCBQc2V1ZG9TdHlsZVJlcXVlc3QmIHBz
ZXVkb1N0eWxlUmVxdWVzdCwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBSZW5kZXJSZWdpb24q
IHJlZ2lvbkZvclN0eWxpbmcpCiB7CiAgICAgQVNTRVJUKHBhcmVudFN0eWxlKTsKICAgICBpZiAo
IWUpCkBAIC0xNTg0LDcgKzE1ODQsNyBAQCBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBTdHlsZVJl
c29sdmVyOjpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwgY29uc3QgUAogCiAgICAg
aW5pdEVsZW1lbnQoZSk7CiAKLSAgICBzdGF0ZS5pbml0Rm9yU3R5bGVSZXNvbHZlKGRvY3VtZW50
KCksIGUsIHBhcmVudFN0eWxlLCBwc2V1ZG9TdHlsZVJlcXVlc3QpOworICAgIHN0YXRlLmluaXRG
b3JTdHlsZVJlc29sdmUoZG9jdW1lbnQoKSwgZSwgcGFyZW50U3R5bGUsIHBzZXVkb1N0eWxlUmVx
dWVzdCwgcmVnaW9uRm9yU3R5bGluZyk7CiAgICAgc3RhdGUuc2V0U3R5bGUoUmVuZGVyU3R5bGU6
OmNyZWF0ZSgpKTsKICAgICBzdGF0ZS5zdHlsZSgpLT5pbmhlcml0RnJvbShtX3N0YXRlLnBhcmVu
dFN0eWxlKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZl
ci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAppbmRleCA0MmM5NWM5MWZk
ODRlM2YyYTNiYWU2NjExMTUxMjQ2MmU4ZjAyMzk3Li4yYmEwZmIyMmZmODQyZDZlZjA5OWM5Nzhi
NTM5MzQxZTQ5OTNhYmMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNv
bHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKQEAgLTE4NSw3
ICsxODUsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGtleWZyYW1lU3R5bGVzRm9yQW5pbWF0aW9u
KEVsZW1lbnQqLCBjb25zdCBSZW5kZXJTdHlsZSosIEtleWZyYW1lTGlzdCYpOwogCi0gICAgUGFz
c1JlZlB0cjxSZW5kZXJTdHlsZT4gcHNldWRvU3R5bGVGb3JFbGVtZW50KEVsZW1lbnQqLCBjb25z
dCBQc2V1ZG9TdHlsZVJlcXVlc3QmLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUpOworICAgIFBh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxlRm9yRWxlbWVudChFbGVtZW50KiwgY29u
c3QgUHNldWRvU3R5bGVSZXF1ZXN0JiwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBSZW5kZXJS
ZWdpb24qIHJlZ2lvbkZvclN0eWxpbmcgPSAwKTsKIAogICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5
bGU+IHN0eWxlRm9yUGFnZShpbnQgcGFnZUluZGV4KTsKICAgICBQYXNzUmVmUHRyPFJlbmRlclN0
eWxlPiBkZWZhdWx0U3R5bGVGb3JFbGVtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcAppbmRleCBiZGQyMWNjYzY1YTkxMDdmYTQ1ZjM4ZGFhMzAxZTFlMDZiZDky
N2M4Li45YmUyNTMxNTY3OTA3NWRhODllN2IwZDljNWNkYzYwOTUyMDlmNWVmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTY1MzIsNyArNjUzMiw3IEBAIHN0
YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRTa2lwRm9yRmlyc3RMZXR0ZXIoVUNoYXIgYykKICAgICBy
ZXR1cm4gaXNTcGFjZU9yTmV3bGluZShjKSB8fCBjID09IG5vQnJlYWtTcGFjZSB8fCBpc1B1bmN0
dWF0aW9uRm9yRmlyc3RMZXR0ZXIoYyk7CiB9CiAKLXN0YXRpYyBpbmxpbmUgUmVuZGVyT2JqZWN0
KiBmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJCbG9jayogc3RhcnQpCitSZW5kZXJPYmplY3Qq
IFJlbmRlckJsb2NrOjpmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJPYmplY3QqIHN0YXJ0KQog
ewogICAgIFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jayA9IHN0YXJ0OwogICAgIHdoaWxl
ICh0cnVlKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2suaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCmluZGV4IDQyMWMw
NWE2ODdlOGY5MDBlMDY1NWU1NzY1NDBhYTBhZDdlY2YxMWQuLjBkZmZkMzQyZTIxZjA4MDQ4YmEz
NzgyNjI1ZjZjNjQzOWMxODE5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5oCkBAIC0zNjAsNiArMzYwLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCB1cGRhdGVMb2dpY2Fs
V2lkdGhGb3JBbGlnbm1lbnQoY29uc3QgRVRleHRBbGlnbiYsIEJpZGlSdW4qIHRyYWlsaW5nU3Bh
Y2VSdW4sIGZsb2F0JiBsb2dpY2FsTGVmdCwgZmxvYXQmIHRvdGFsTG9naWNhbFdpZHRoLCBmbG9h
dCYgYXZhaWxhYmxlTG9naWNhbFdpZHRoLCBpbnQgZXhwYW5zaW9uT3Bwb3J0dW5pdHlDb3VudCk7
CiAKKyAgICBzdGF0aWMgUmVuZGVyT2JqZWN0KiBmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJP
YmplY3QqKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRmlyc3RMZXR0ZXIoKTsKIAogICAgIGNs
YXNzIE1hcmdpblZhbHVlcyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyUmVnaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24u
Y3BwCmluZGV4IDZjMDFmMjIzOThhMzM3ZTUwYjkzNzZiMTcyY2FjMWE4OGYwZGU0NTcuLjY1YzRj
ZjVmMWI2YmU4ZDk1OTM5NjhmNzM3ZDMyY2M3Mzk4N2ZjZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCkBAIC01MjksNiArNTI5LDI4IEBAIFBhc3NSZWZQdHI8
UmVuZGVyU3R5bGU+IFJlbmRlclJlZ2lvbjo6Y29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVu
ZGVyT2JqZWN0KiBvCiAgICAgcmV0dXJuIHJlbmRlck9iamVjdFJlZ2lvblN0eWxlLnJlbGVhc2Uo
KTsKIH0KIAorUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gUmVuZGVyUmVnaW9uOjpjb21wdXRlQW5v
bnltb3VzU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKK3sKKyAgICBB
U1NFUlQob2JqZWN0LT5pc0Fub255bW91cygpIHx8IG9iamVjdC0+aXNJbkZsb3dSZW5kZXJGbG93
VGhyZWFkKCkpOworICAgIFJlZlB0cjxSZW5kZXJTdHlsZT4gc3R5bGVJblJlZ2lvbjsKKyAgICBS
ZW5kZXJPYmplY3QqIHBhcmVudCA9IG9iamVjdC0+cGFyZW50KCk7CisgICAgUmVuZGVyU3R5bGUq
IHBhcmVudFN0eWxlID0gcGFyZW50LT5zdHlsZSgpOworCisgICAgaWYgKG9iamVjdC0+c3R5bGUo
KS0+c3R5bGVUeXBlKCkgPT0gRklSU1RfTEVUVEVSKSB7CisgICAgICAgIGNvbnN0IFBzZXVkb1N0
eWxlUmVxdWVzdCBwc2V1ZG9TdHlsZVJlcXVlc3QoRklSU1RfTEVUVEVSKTsKKyAgICAgICAgcGFy
ZW50U3R5bGUgPSBwYXJlbnQtPmZpcnN0TGluZVN0eWxlKCk7CisgICAgICAgIGlmIChjb25zdCBS
ZW5kZXJPYmplY3QqIGZpcnN0TGV0dGVyQmxvY2sgPSBSZW5kZXJCbG9jazo6ZmluZEZpcnN0TGV0
dGVyQmxvY2socGFyZW50KSkgeworICAgICAgICAgICAgRWxlbWVudCogZWxlbWVudCA9IHRvRWxl
bWVudChmaXJzdExldHRlckJsb2NrLT5ub2RlKCkpOworICAgICAgICAgICAgc3R5bGVJblJlZ2lv
biA9IGRvY3VtZW50KCktPnN0eWxlUmVzb2x2ZXIoKS0+cHNldWRvU3R5bGVGb3JFbGVtZW50KGVs
ZW1lbnQsIHBzZXVkb1N0eWxlUmVxdWVzdCwgcGFyZW50U3R5bGUsIHRoaXMpOworICAgICAgICAg
ICAgaWYgKHN0eWxlSW5SZWdpb24pCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0eWxlSW5SZWdp
b24ucmVsZWFzZSgpOworICAgICAgICB9CisgICAgfQorICAgIAorICAgIHN0eWxlSW5SZWdpb24g
PSBSZW5kZXJTdHlsZTo6Y3JlYXRlQW5vbnltb3VzU3R5bGVXaXRoRGlzcGxheShwYXJlbnRTdHls
ZSwgb2JqZWN0LT5zdHlsZSgpLT5kaXNwbGF5KCkpOworICAgIHJldHVybiBzdHlsZUluUmVnaW9u
LnJlbGVhc2UoKTsKK30KKwogdm9pZCBSZW5kZXJSZWdpb246OmNvbXB1dGVDaGlsZHJlblN0eWxl
SW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgZm9yIChSZW5kZXJP
YmplY3QqIGNoaWxkID0gb2JqZWN0LT5maXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxk
LT5uZXh0U2libGluZygpKSB7CkBAIC01NDIsNyArNTY0LDcgQEAgdm9pZCBSZW5kZXJSZWdpb246
OmNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBvYmplY3Qp
CiAgICAgICAgICAgICBvYmplY3RSZWdpb25TdHlsZUNhY2hlZCA9IHRydWU7CiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBpZiAoY2hpbGQtPmlzQW5vbnltb3VzKCkgfHwgY2hpbGQtPmlz
SW5GbG93UmVuZGVyRmxvd1RocmVhZCgpKQotICAgICAgICAgICAgICAgIGNoaWxkU3R5bGVJblJl
Z2lvbiA9IFJlbmRlclN0eWxlOjpjcmVhdGVBbm9ueW1vdXNTdHlsZVdpdGhEaXNwbGF5KG9iamVj
dC0+c3R5bGUoKSwgY2hpbGQtPnN0eWxlKCktPmRpc3BsYXkoKSk7CisgICAgICAgICAgICAgICAg
Y2hpbGRTdHlsZUluUmVnaW9uID0gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY2hpbGQp
OwogICAgICAgICAgICAgZWxzZSBpZiAoY2hpbGQtPmlzVGV4dCgpKQogICAgICAgICAgICAgICAg
IGNoaWxkU3R5bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjbG9uZShvYmplY3QtPnN0eWxlKCkp
OwogICAgICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclJlZ2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5o
CmluZGV4IGE2MzAxN2NlZjRjN2MwMDI5NTVlOWRjODJkNjM5YmY2YTAyNDEzMzEuLmQ5M2Y5MTRj
OTczMDFmZWRkN2MzZDI5YjBmMzU5OTJkMjQ1MmZlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyUmVnaW9uLmgKQEAgLTE1NSw2ICsxNTUsOCBAQCBwcml2YXRlOgogICAgIHZpcnR1
YWwgdm9pZCBpbnN0YWxsRmxvd1RocmVhZCgpOwogCiAgICAgUGFzc1JlZlB0cjxSZW5kZXJTdHls
ZT4gY29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAgUGFzc1Jl
ZlB0cjxSZW5kZXJTdHlsZT4gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY29uc3QgUmVu
ZGVyT2JqZWN0Kik7CisKICAgICB2b2lkIGNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdpb24oY29u
c3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgdm9pZCBzZXRPYmplY3RTdHlsZUluUmVnaW9uKFJlbmRl
ck9iamVjdCosIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+LCBib29sIG9iamVjdFJlZ2lvblN0eWxl
Q2FjaGVkKTsKICAgICB2b2lkIHByaW50UmVnaW9uT2JqZWN0c1N0eWxlcygpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDVh
Nzg0NTFjZDU1YjYzMDc5MWIxN2IyYzE2YTA5YTk0OGRmZmM4YTQuLjk2ZmRmNjRjNzk1M2YyZjBh
YmE2YjI0ODEzMzM3ODgyMmY0ZDM2YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMy0wMi0y
MCAgVGFrYXNoaSBTYWthbW90byAgPHRhc2FrQGdvb2dsZS5jb20+CisKKyAgICAgICAgW0NTUyBS
ZWdpb25zXSBSZWdpb24gc3R5bGluZyAoQHJlZ2lvbikgYnJlYWtzIGZvcm1hdHRpbmcgdmlhIDo6
Zmlyc3QtbGV0dGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTAxOTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFk
LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmly
c3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAzLTA2ICBS
b2dlciBGb25nICA8cm9nZXJfZm9uZ0BhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBn
YXJkZW5pbmcgQXBwbGVXaW4gcG9ydC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxv
d3RocmVhZC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjZhYmE1YjU4NGZkYWYyMzUwYTg2NDVi
NDQ3M2JiNWM3YmJiN2FmMzUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1s
CkBAIC0wLDAgKzEsMjIgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHls
ZT4KKyNjb250ZW50IHsKKyAgICBjb2xvcjogZ3JlZW47Cit9CisKKyNjb250ZW50OjpmaXJzdC1s
ZXR0ZXIgeworICAgIGZvbnQtc2l6ZTogMi41ZW07CisgICAgZm9udC1zdHlsZTogaXRhbGljOwor
ICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBpZD0iY29udGVudCI+Cis8c3Bhbj5Nb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwg
Y29uc2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4gQXNzdW1lbmRhIGlwc2FtIHJlbSBmdWdpdCBh
Y2N1c2FudGl1bSBmdWdpYXQgZWEuPC9zcGFuPgorPC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24iPjwv
ZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3BzZXVkby1maXJzdC1sZXR0ZXItaW5zaWRlLWZsb3d0aHJlYWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2Q5N2MxZDdhMDIyY2FhZDM5NTc0YzgwNjQ0ZGIyNDI1NzFmYzI3NAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3Qt
bGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFkb2N0eXBl
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2NvbnRlbnQgeworICAgIC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OworfQorCisjY29udGVudDo6Zmlyc3QtbGV0dGVyIHsKKyAgICBmb250
LXNpemU6IDIuNWVtOworICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKKyAgICBmb250LWZhbWlseTog
c2Fucy1zZXJpZjsKK30KKworI3JlZ2lvbiB7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7
Cit9CisKK0Atd2Via2l0LXJlZ2lvbiAjcmVnaW9uIHsKKyAgICBzcGFuIHsKKyAgICAgICAgY29s
b3I6IGdyZWVuOworICAgIH0KK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9
ImNvbnRlbnQiPgorPHNwYW4+TW9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVy
IGFkaXBpc2ljaW5nIGVsaXQuIEFzc3VtZW5kYSBpcHNhbSByZW0gZnVnaXQgYWNjdXNhbnRpdW0g
ZnVnaWF0IGVhLjwvc3Bhbj4KKzwvZGl2PgorPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKzwvYm9k
eT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>191953</attachid>
            <date>2013-03-07 02:13:18 -0800</date>
            <delta_ts>2014-02-05 11:19:47 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-110195-20130307190922.patch</filename>
            <type>text/plain</type>
            <size>10671</size>
            <attacher name="Takashi Sakamoto">tasak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1MDE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzFjYjI0YTJjNGU3NDFl
NGQ5YzkzNGU1ZTQ2MzU4ZThlN2ZkZjQzZS4uNTFjZGRkMDNiYzE3NDUxNjA0MjAwNDI1ODA2NTE1
ZGMxZjVhY2ZjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTAyLTIwICBUYWth
c2hpIFNha2Ftb3RvICA8dGFzYWtAZ29vZ2xlLmNvbT4KKworICAgICAgICBbQ1NTIFJlZ2lvbnNd
IFJlZ2lvbiBzdHlsaW5nIChAcmVnaW9uKSBicmVha3MgZm9ybWF0dGluZyB2aWEgOjpmaXJzdC1s
ZXR0ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEx
MDE5NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdo
ZW4gUmVuZGVyUmVnaW9uIGNvbXB1dGVzIHRoZSBzdHlsZXMgaW4gcmVnaW9uIGZvciBlbGVtZW50
cyB0aGF0IGFyZQorICAgICAgICBkaXNwbGF5ZWQgaW5zaWRlIHRoZSByZWdpb24sIGl0IHNob3Vs
ZCBjb25zaWRlciB0aGUgY2FzZSwKKyAgICAgICAgYW4gYW5vbnltb3VzIHJlbmRlciBvYmplY3Qg
d2FzIGNyZWF0ZWQgZm9yIHBzZXVkbyBmaXJzdC1sZXR0ZXIuCisgICAgICAgIEluIHRoZSBjYXNl
LCBSZW5kZXJSZWdpb24gc2hvdWxkIHVzZSBwc2V1ZG9TdHlsZUZvckVsZW1lbnQgdG8gb2J0YWlu
CisgICAgICAgIGEgY29ycmVjdCBzdHlsZS4KKworICAgICAgICBUZXN0OiBmYXN0L3JlZ2lvbnMv
cHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC5odG1sCisKKyAgICAgICAgKiBj
c3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjpw
c2V1ZG9TdHlsZUZvckVsZW1lbnQpOgorICAgICAgICBBZGRlZCBvbmUgbW9yZSBwYXJhbWV0ZXIs
IHJlZ2lvbkZvclN0eWxpbmcsIHRvIHNldCBhIHBzZXVkbyBzdHlsZSBpbgorICAgICAgICBhIHJl
Z2lvbi4KKyAgICAgICAgKiBjc3MvU3R5bGVSZXNvbHZlci5oOgorICAgICAgICAoU3R5bGVSZXNv
bHZlcik6CisgICAgICAgIEFkZGVkIFJlbmRlclJlZ2lvbiogdG8gcHNldWRvU3R5bGVGb3JFbGVt
ZW50J3MgcGFyYW1ldGVyIGxpc3QuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNw
cDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyQmxvY2suaDoKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckJsb2NrOjpmaW5kRmlyc3RMZXR0ZXJCbG9jayk6CisgICAgICAgIENoYW5nZWQgZnJv
bSBzdGF0aWMgaW5saW5lIGZ1bmN0aW9uIHRvIHN0YXRpYyBtZXRob2QgYW5kIGl0cyBhcmd1bWVu
dAorICAgICAgICBmcm9tIFJlbmRlckJsb2NrKiB0byBSZW5kZXJPYmplY3QqLiBUaGlzIGlzIHJl
cXVyaWVkIHRvIGZpbmQgYSBmaXJzdAorICAgICAgICBsZXR0ZXIgYmxvY2sgaW4gUmVuZGVyUmVn
aW9uLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJS
ZWdpb24uY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyUmVnaW9uOjpjb21wdXRlQW5vbnlt
b3VzU3R5bGVJblJlZ2lvbik6CisgICAgICAgIEFkZGVkIHRvIGNvbXB1dGUgYSBzdHlsZSBmb3Ig
YSBnZW5lcmF0ZWQgcmVuZGVyIG9iamVjdCBmb3IKKyAgICAgICAgRklSU1RfTEVUVEVSLgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJSZWdpb246OmNvbXB1dGVD
aGlsZHJlblN0eWxlSW5SZWdpb24pOgorICAgICAgICBNb2RpZnkgdG8gdXNlIGNvbXB1dGVBbm9u
eW1vdXNTdHlsZUluUmVnaW9uIHdoZW4gYSBjaGlsZCBvYmplY3QgaXMKKyAgICAgICAgYW5vbnlt
b3VzLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJSZWdpb24uaDoKKyAgICAgICAgKFJlbmRl
clJlZ2lvbik6CisKIDIwMTMtMDMtMDYgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBDcmFzaCBpbiBTVkdWaWV3U3BlYzo6dmlld1RhcmdldApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCmluZGV4IDRiZDA0OTAxODExMGIxYzNkZTdiMGQzOWNi
MWFiMjFmZGI1MDM0NGIuLjA1Yzk5ZjJlNTdlNjM3Y2IwNjk3YTQxNzUyOGJjZmQ0Y2YyOTQ2ZTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKQEAgLTE1NzQsNyArMTU3NCw3IEBA
IHZvaWQgU3R5bGVSZXNvbHZlcjo6a2V5ZnJhbWVTdHlsZXNGb3JBbmltYXRpb24oRWxlbWVudCog
ZSwgY29uc3QgUmVuZGVyU3R5bGUqIGVsCiAgICAgfQogfQogCi1QYXNzUmVmUHRyPFJlbmRlclN0
eWxlPiBTdHlsZVJlc29sdmVyOjpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwgY29u
c3QgUHNldWRvU3R5bGVSZXF1ZXN0JiBwc2V1ZG9TdHlsZVJlcXVlc3QsIFJlbmRlclN0eWxlKiBw
YXJlbnRTdHlsZSkKK1Bhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFN0eWxlUmVzb2x2ZXI6OnBzZXVk
b1N0eWxlRm9yRWxlbWVudChFbGVtZW50KiBlLCBjb25zdCBQc2V1ZG9TdHlsZVJlcXVlc3QmIHBz
ZXVkb1N0eWxlUmVxdWVzdCwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBSZW5kZXJSZWdpb24q
IHJlZ2lvbkZvclN0eWxpbmcpCiB7CiAgICAgQVNTRVJUKHBhcmVudFN0eWxlKTsKICAgICBpZiAo
IWUpCkBAIC0xNTg0LDcgKzE1ODQsNyBAQCBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBTdHlsZVJl
c29sdmVyOjpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwgY29uc3QgUAogCiAgICAg
aW5pdEVsZW1lbnQoZSk7CiAKLSAgICBzdGF0ZS5pbml0Rm9yU3R5bGVSZXNvbHZlKGRvY3VtZW50
KCksIGUsIHBhcmVudFN0eWxlLCBwc2V1ZG9TdHlsZVJlcXVlc3QpOworICAgIHN0YXRlLmluaXRG
b3JTdHlsZVJlc29sdmUoZG9jdW1lbnQoKSwgZSwgcGFyZW50U3R5bGUsIHBzZXVkb1N0eWxlUmVx
dWVzdCwgcmVnaW9uRm9yU3R5bGluZyk7CiAgICAgc3RhdGUuc2V0U3R5bGUoUmVuZGVyU3R5bGU6
OmNyZWF0ZSgpKTsKICAgICBzdGF0ZS5zdHlsZSgpLT5pbmhlcml0RnJvbShtX3N0YXRlLnBhcmVu
dFN0eWxlKCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZl
ci5oIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuaAppbmRleCA0MmM5NWM5MWZk
ODRlM2YyYTNiYWU2NjExMTUxMjQ2MmU4ZjAyMzk3Li4yYmEwZmIyMmZmODQyZDZlZjA5OWM5Nzhi
NTM5MzQxZTQ5OTNhYmMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNv
bHZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmgKQEAgLTE4NSw3
ICsxODUsNyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGtleWZyYW1lU3R5bGVzRm9yQW5pbWF0aW9u
KEVsZW1lbnQqLCBjb25zdCBSZW5kZXJTdHlsZSosIEtleWZyYW1lTGlzdCYpOwogCi0gICAgUGFz
c1JlZlB0cjxSZW5kZXJTdHlsZT4gcHNldWRvU3R5bGVGb3JFbGVtZW50KEVsZW1lbnQqLCBjb25z
dCBQc2V1ZG9TdHlsZVJlcXVlc3QmLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUpOworICAgIFBh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxlRm9yRWxlbWVudChFbGVtZW50KiwgY29u
c3QgUHNldWRvU3R5bGVSZXF1ZXN0JiwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBSZW5kZXJS
ZWdpb24qIHJlZ2lvbkZvclN0eWxpbmcgPSAwKTsKIAogICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5
bGU+IHN0eWxlRm9yUGFnZShpbnQgcGFnZUluZGV4KTsKICAgICBQYXNzUmVmUHRyPFJlbmRlclN0
eWxlPiBkZWZhdWx0U3R5bGVGb3JFbGVtZW50KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckJsb2NrLmNwcAppbmRleCBiZGQyMWNjYzY1YTkxMDdmYTQ1ZjM4ZGFhMzAxZTFlMDZiZDky
N2M4Li45YmUyNTMxNTY3OTA3NWRhODllN2IwZDljNWNkYzYwOTUyMDlmNWVmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTY1MzIsNyArNjUzMiw3IEBAIHN0
YXRpYyBpbmxpbmUgYm9vbCBzaG91bGRTa2lwRm9yRmlyc3RMZXR0ZXIoVUNoYXIgYykKICAgICBy
ZXR1cm4gaXNTcGFjZU9yTmV3bGluZShjKSB8fCBjID09IG5vQnJlYWtTcGFjZSB8fCBpc1B1bmN0
dWF0aW9uRm9yRmlyc3RMZXR0ZXIoYyk7CiB9CiAKLXN0YXRpYyBpbmxpbmUgUmVuZGVyT2JqZWN0
KiBmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJCbG9jayogc3RhcnQpCitSZW5kZXJPYmplY3Qq
IFJlbmRlckJsb2NrOjpmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJPYmplY3QqIHN0YXJ0KQog
ewogICAgIFJlbmRlck9iamVjdCogZmlyc3RMZXR0ZXJCbG9jayA9IHN0YXJ0OwogICAgIHdoaWxl
ICh0cnVlKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxv
Y2suaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5oCmluZGV4IDQyMWMw
NWE2ODdlOGY5MDBlMDY1NWU1NzY1NDBhYTBhZDdlY2YxMWQuLjBkZmZkMzQyZTIxZjA4MDQ4YmEz
NzgyNjI1ZjZjNjQzOWMxODE5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJCbG9jay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJCbG9j
ay5oCkBAIC0zNjAsNiArMzYwLDcgQEAgcHVibGljOgogCiAgICAgdm9pZCB1cGRhdGVMb2dpY2Fs
V2lkdGhGb3JBbGlnbm1lbnQoY29uc3QgRVRleHRBbGlnbiYsIEJpZGlSdW4qIHRyYWlsaW5nU3Bh
Y2VSdW4sIGZsb2F0JiBsb2dpY2FsTGVmdCwgZmxvYXQmIHRvdGFsTG9naWNhbFdpZHRoLCBmbG9h
dCYgYXZhaWxhYmxlTG9naWNhbFdpZHRoLCBpbnQgZXhwYW5zaW9uT3Bwb3J0dW5pdHlDb3VudCk7
CiAKKyAgICBzdGF0aWMgUmVuZGVyT2JqZWN0KiBmaW5kRmlyc3RMZXR0ZXJCbG9jayhSZW5kZXJP
YmplY3QqKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlRmlyc3RMZXR0ZXIoKTsKIAogICAgIGNs
YXNzIE1hcmdpblZhbHVlcyB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyUmVnaW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24u
Y3BwCmluZGV4IDZjMDFmMjIzOThhMzM3ZTUwYjkzNzZiMTcyY2FjMWE4OGYwZGU0NTcuLjY1YzRj
ZjVmMWI2YmU4ZDk1OTM5NjhmNzM3ZDMyY2M3Mzk4N2ZjZDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJSZWdpb24uY3BwCkBAIC01MjksNiArNTI5LDI4IEBAIFBhc3NSZWZQdHI8
UmVuZGVyU3R5bGU+IFJlbmRlclJlZ2lvbjo6Y29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVu
ZGVyT2JqZWN0KiBvCiAgICAgcmV0dXJuIHJlbmRlck9iamVjdFJlZ2lvblN0eWxlLnJlbGVhc2Uo
KTsKIH0KIAorUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gUmVuZGVyUmVnaW9uOjpjb21wdXRlQW5v
bnltb3VzU3R5bGVJblJlZ2lvbihjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCkKK3sKKyAgICBB
U1NFUlQob2JqZWN0LT5pc0Fub255bW91cygpIHx8IG9iamVjdC0+aXNJbkZsb3dSZW5kZXJGbG93
VGhyZWFkKCkpOworICAgIFJlZlB0cjxSZW5kZXJTdHlsZT4gc3R5bGVJblJlZ2lvbjsKKyAgICBS
ZW5kZXJPYmplY3QqIHBhcmVudCA9IG9iamVjdC0+cGFyZW50KCk7CisgICAgUmVuZGVyU3R5bGUq
IHBhcmVudFN0eWxlID0gcGFyZW50LT5zdHlsZSgpOworCisgICAgaWYgKG9iamVjdC0+c3R5bGUo
KS0+c3R5bGVUeXBlKCkgPT0gRklSU1RfTEVUVEVSKSB7CisgICAgICAgIGNvbnN0IFBzZXVkb1N0
eWxlUmVxdWVzdCBwc2V1ZG9TdHlsZVJlcXVlc3QoRklSU1RfTEVUVEVSKTsKKyAgICAgICAgcGFy
ZW50U3R5bGUgPSBwYXJlbnQtPmZpcnN0TGluZVN0eWxlKCk7CisgICAgICAgIGlmIChjb25zdCBS
ZW5kZXJPYmplY3QqIGZpcnN0TGV0dGVyQmxvY2sgPSBSZW5kZXJCbG9jazo6ZmluZEZpcnN0TGV0
dGVyQmxvY2socGFyZW50KSkgeworICAgICAgICAgICAgRWxlbWVudCogZWxlbWVudCA9IHRvRWxl
bWVudChmaXJzdExldHRlckJsb2NrLT5ub2RlKCkpOworICAgICAgICAgICAgc3R5bGVJblJlZ2lv
biA9IGRvY3VtZW50KCktPnN0eWxlUmVzb2x2ZXIoKS0+cHNldWRvU3R5bGVGb3JFbGVtZW50KGVs
ZW1lbnQsIHBzZXVkb1N0eWxlUmVxdWVzdCwgcGFyZW50U3R5bGUsIHRoaXMpOworICAgICAgICAg
ICAgaWYgKHN0eWxlSW5SZWdpb24pCisgICAgICAgICAgICAgICAgcmV0dXJuIHN0eWxlSW5SZWdp
b24ucmVsZWFzZSgpOworICAgICAgICB9CisgICAgfQorICAgIAorICAgIHN0eWxlSW5SZWdpb24g
PSBSZW5kZXJTdHlsZTo6Y3JlYXRlQW5vbnltb3VzU3R5bGVXaXRoRGlzcGxheShwYXJlbnRTdHls
ZSwgb2JqZWN0LT5zdHlsZSgpLT5kaXNwbGF5KCkpOworICAgIHJldHVybiBzdHlsZUluUmVnaW9u
LnJlbGVhc2UoKTsKK30KKwogdm9pZCBSZW5kZXJSZWdpb246OmNvbXB1dGVDaGlsZHJlblN0eWxl
SW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgZm9yIChSZW5kZXJP
YmplY3QqIGNoaWxkID0gb2JqZWN0LT5maXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxk
LT5uZXh0U2libGluZygpKSB7CkBAIC01NDIsNyArNTY0LDcgQEAgdm9pZCBSZW5kZXJSZWdpb246
OmNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0KiBvYmplY3Qp
CiAgICAgICAgICAgICBvYmplY3RSZWdpb25TdHlsZUNhY2hlZCA9IHRydWU7CiAgICAgICAgIH0g
ZWxzZSB7CiAgICAgICAgICAgICBpZiAoY2hpbGQtPmlzQW5vbnltb3VzKCkgfHwgY2hpbGQtPmlz
SW5GbG93UmVuZGVyRmxvd1RocmVhZCgpKQotICAgICAgICAgICAgICAgIGNoaWxkU3R5bGVJblJl
Z2lvbiA9IFJlbmRlclN0eWxlOjpjcmVhdGVBbm9ueW1vdXNTdHlsZVdpdGhEaXNwbGF5KG9iamVj
dC0+c3R5bGUoKSwgY2hpbGQtPnN0eWxlKCktPmRpc3BsYXkoKSk7CisgICAgICAgICAgICAgICAg
Y2hpbGRTdHlsZUluUmVnaW9uID0gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY2hpbGQp
OwogICAgICAgICAgICAgZWxzZSBpZiAoY2hpbGQtPmlzVGV4dCgpKQogICAgICAgICAgICAgICAg
IGNoaWxkU3R5bGVJblJlZ2lvbiA9IFJlbmRlclN0eWxlOjpjbG9uZShvYmplY3QtPnN0eWxlKCkp
OwogICAgICAgICAgICAgZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclJlZ2lvbi5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclJlZ2lvbi5o
CmluZGV4IGE2MzAxN2NlZjRjN2MwMDI5NTVlOWRjODJkNjM5YmY2YTAyNDEzMzEuLmQ5M2Y5MTRj
OTczMDFmZWRkN2MzZDI5YjBmMzU5OTJkMjQ1MmZlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJSZWdpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyUmVnaW9uLmgKQEAgLTE1NSw2ICsxNTUsOCBAQCBwcml2YXRlOgogICAgIHZpcnR1
YWwgdm9pZCBpbnN0YWxsRmxvd1RocmVhZCgpOwogCiAgICAgUGFzc1JlZlB0cjxSZW5kZXJTdHls
ZT4gY29tcHV0ZVN0eWxlSW5SZWdpb24oY29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAgUGFzc1Jl
ZlB0cjxSZW5kZXJTdHlsZT4gY29tcHV0ZUFub255bW91c1N0eWxlSW5SZWdpb24oY29uc3QgUmVu
ZGVyT2JqZWN0Kik7CisKICAgICB2b2lkIGNvbXB1dGVDaGlsZHJlblN0eWxlSW5SZWdpb24oY29u
c3QgUmVuZGVyT2JqZWN0Kik7CiAgICAgdm9pZCBzZXRPYmplY3RTdHlsZUluUmVnaW9uKFJlbmRl
ck9iamVjdCosIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+LCBib29sIG9iamVjdFJlZ2lvblN0eWxl
Q2FjaGVkKTsKICAgICB2b2lkIHByaW50UmVnaW9uT2JqZWN0c1N0eWxlcygpOwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDVh
Nzg0NTFjZDU1YjYzMDc5MWIxN2IyYzE2YTA5YTk0OGRmZmM4YTQuLjk2ZmRmNjRjNzk1M2YyZjBh
YmE2YjI0ODEzMzM3ODgyMmY0ZDM2YzAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMy0wMi0y
MCAgVGFrYXNoaSBTYWthbW90byAgPHRhc2FrQGdvb2dsZS5jb20+CisKKyAgICAgICAgW0NTUyBS
ZWdpb25zXSBSZWdpb24gc3R5bGluZyAoQHJlZ2lvbikgYnJlYWtzIGZvcm1hdHRpbmcgdmlhIDo6
Zmlyc3QtbGV0dGVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMTAxOTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFk
LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcmVnaW9ucy9wc2V1ZG8tZmly
c3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWw6IEFkZGVkLgorCiAyMDEzLTAzLTA2ICBS
b2dlciBGb25nICA8cm9nZXJfZm9uZ0BhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBn
YXJkZW5pbmcgQXBwbGVXaW4gcG9ydC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvcmVn
aW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLWV4cGVjdGVkLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L3JlZ2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxv
d3RocmVhZC1leHBlY3RlZC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJkMzE3Nzc2YjgxYTZlMWI1MTg0OTky
NzJkYTc2NWE4YTBhMjc4NTgKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Jl
Z2lvbnMvcHNldWRvLWZpcnN0LWxldHRlci1pbnNpZGUtZmxvd3RocmVhZC1leHBlY3RlZC5odG1s
CkBAIC0wLDAgKzEsMjIgQEAKKzwhZG9jdHlwZSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzdHls
ZT4KKyNjb250ZW50IHsKKyAgICBjb2xvcjogZ3JlZW47Cit9CisKKyNjb250ZW50OjpmaXJzdC1s
ZXR0ZXIgeworICAgIGZvbnQtc2l6ZTogMi41ZW07CisgICAgZm9udC1zdHlsZTogaXRhbGljOwor
ICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOworfQorPC9zdHlsZT4KKzwvaGVhZD4KKzxib2R5
PgorPGRpdiBpZD0iY29udGVudCI+Cis8c3Bhbj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwg
Y29uc2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4gQXNzdW1lbmRhIGlwc2FtIHJlbSBmdWdpdCBh
Y2N1c2FudGl1bSBmdWdpYXQgZWEuPC9zcGFuPgorPC9kaXY+Cis8ZGl2IGlkPSJyZWdpb24iPjwv
ZGl2PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9yZWdp
b25zL3BzZXVkby1maXJzdC1sZXR0ZXItaW5zaWRlLWZsb3d0aHJlYWQuaHRtbCBiL0xheW91dFRl
c3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3QtbGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uN2QwNTIwOGVjMWI1MjQ2MDIxYjg5MmY5Yzk2NDQwNDY1ZGVjODQxYgot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvcmVnaW9ucy9wc2V1ZG8tZmlyc3Qt
bGV0dGVyLWluc2lkZS1mbG93dGhyZWFkLmh0bWwKQEAgLTAsMCArMSwzMiBAQAorPCFkb2N0eXBl
IGh0bWw+Cis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2NvbnRlbnQgeworICAgIC13ZWJraXQt
Zmxvdy1pbnRvOiBmbG93OworfQorCisjY29udGVudDo6Zmlyc3QtbGV0dGVyIHsKKyAgICBmb250
LXNpemU6IDIuNWVtOworICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsKKyAgICBmb250LWZhbWlseTog
c2Fucy1zZXJpZjsKK30KKworI3JlZ2lvbiB7CisgICAgLXdlYmtpdC1mbG93LWZyb206IGZsb3c7
Cit9CisKK0Atd2Via2l0LXJlZ2lvbiAjcmVnaW9uIHsKKyAgICBzcGFuIHsKKyAgICAgICAgY29s
b3I6IGdyZWVuOworICAgIH0KK30KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxkaXYgaWQ9
ImNvbnRlbnQiPgorPHNwYW4+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVy
IGFkaXBpc2ljaW5nIGVsaXQuIEFzc3VtZW5kYSBpcHNhbSByZW0gZnVnaXQgYWNjdXNhbnRpdW0g
ZnVnaWF0IGVhLjwvc3Bhbj4KKzwvZGl2PgorPGRpdiBpZD0icmVnaW9uIj48L2Rpdj4KKzwvYm9k
eT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>