<?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>97307</bug_id>
          
          <creation_ts>2012-09-21 01:21:26 -0700</creation_ts>
          <short_desc>Default encoding should not be inherited to child frame.</short_desc>
          <delta_ts>2012-10-09 08:46:32 -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>Text</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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>97054</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kangil Han">kangil.han</reporter>
          <assigned_to name="Kangil Han">kangil.han</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>japhet</cc>
    
    <cc>mitz</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>725258</commentid>
    <comment_count>0</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-21 01:21:26 -0700</bug_when>
    <thetext>Only meta tag charset attribute should be inherited.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725269</commentid>
    <comment_count>1</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-21 01:35:35 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; Only meta tag charset attribute should be inherited.

Please ignore above comment.
Only default encoding shouldn&apos;t be inherited.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725281</commentid>
    <comment_count>2</comment_count>
      <attachid>165081</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-21 02:06:57 -0700</bug_when>
    <thetext>Created attachment 165081
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725401</commentid>
    <comment_count>3</comment_count>
      <attachid>165081</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-09-21 03:57:54 -0700</bug_when>
    <thetext>Comment on attachment 165081
patch

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

New failing tests:
http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level.html
http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url.html
http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level.html
http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725454</commentid>
    <comment_count>4</comment_count>
      <attachid>165081</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-21 05:59:38 -0700</bug_when>
    <thetext>Comment on attachment 165081
patch

Attachment 165081 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/13950616

New failing tests:
http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level.html
http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url.html
http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level.html
http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725528</commentid>
    <comment_count>5</comment_count>
      <attachid>165081</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-09-21 08:23:30 -0700</bug_when>
    <thetext>Comment on attachment 165081
patch

r- due to lack of rationale and to broken builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>725584</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-09-21 09:46:45 -0700</bug_when>
    <thetext>Yes, please explain in greater detail why we would want this change.  Does it match a spec?  Does it match FF/Opera/IE?  What information do we have to suggest this is the correct change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726355</commentid>
    <comment_count>7</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-23 20:28:56 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Yes, please explain in greater detail why we would want this change.  Does it match a spec?  Does it match FF/Opera/IE?  What information do we have to suggest this is the correct change?

First of all, thanks Eric for kind elaboration!

  1. I haven&apos;t found any description to specify about charset inheritance in w3c spec documentation.

  2. My IE8 / FF 15.0.1 nicely showed attached two test cases.

Regarding 4 newly failed test cases with this patch, I will do deeper investigation and get back with result. I hope I would get back with result in opera as the website doesn&apos;t work at this moment. :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726366</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-09-23 21:06:10 -0700</bug_when>
    <thetext>Does HTML5 cover this?  It appears to discuss charset at some length:
http://www.whatwg.org/specs/web-apps/current-work/#determining-the-character-encoding
http://www.whatwg.org/specs/web-apps/current-work/#attr-meta-charset</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726367</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-09-23 21:07:20 -0700</bug_when>
    <thetext>If you believe the spec to be incomplete in this regard, please file a bug with HTML5 (there is a link in the spec).  We can also CC ian@hixie.ch on this bug for clarification if needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726546</commentid>
    <comment_count>10</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-24 04:28:28 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Does HTML5 cover this?  It appears to discuss charset at some length:
&gt; http://www.whatwg.org/specs/web-apps/current-work/#determining-the-character-encoding

Thanks Eric for above url!

I think this patch can be landed because each of two newly added cases is:

  1. Parent has good charset definition, but child hasn&apos;t
    -&gt; No. 1 in above url.

  2. Parent hasn&apos;t charset definition, but child has
    -&gt; No. 6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>726602</commentid>
    <comment_count>11</comment_count>
      <attachid>165366</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-09-24 06:28:13 -0700</bug_when>
    <thetext>Created attachment 165366
patch

Fixed 4 layout test crash from 1st patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734365</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-10-03 22:30:18 -0700</bug_when>
    <thetext>ap is really your man here.  He&apos;s been the most active in the encoding code as of late.  The question here is if this matches other browsers and HTML5. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734387</commentid>
    <comment_count>13</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-10-03 23:09:11 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; ap is really your man here.  He&apos;s been the most active in the encoding code as of late.  

Oh, I see. I will ask @ap for further review.

&gt;The question here is if this matches other browsers and HTML5. :)

Sure, I would continuously improve this patch till all doubts being gone away.
Thanks! :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>734773</commentid>
    <comment_count>14</comment_count>
      <attachid>165366</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-10-04 09:48:24 -0700</bug_when>
    <thetext>Comment on attachment 165366
patch

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

&gt; LayoutTests/ChangeLog:19
&gt; +        * fast/encoding/resources/bad-euckr-encoding.html: Added.
&gt; +        * fast/encoding/resources/good-euckr-encoding.html: Added.

As far as I can see, both files are encoded in exactly the same way. Are these actually &quot;bad&quot; and &quot;good&quot;? If the only difference is that one has a charset declaration and another doesn&apos;t, please rename them appropriately.

&gt; LayoutTests/fast/encoding/parent-child-1-expected.txt:1
&gt; +ê¸ë¡ë²ì ì¤ì¬

It&apos;s better to have expected results that can be assessed by a human. You could just add a paragraph of text saying &quot;The below line should look like XXXX:&quot;. Or you could go further and programmatically check text content, printing &quot;PASS&quot;/&quot;FAIL&quot; fro result.

&gt; Source/WebCore/ChangeLog:12
&gt; +        No. 6 in http://www.whatwg.org/specs/web-apps/current-work/#determining-the-character-encoding describes
&gt; +        the behavior that the use of nested document&apos;s charset definition if no. 1 isn&apos;t affected to the case.
&gt; +
&gt; +        However, under current implementation, child frame always uses parent&apos;s default encoding.
&gt; +        Therefore, this patch implemented above no. 6 determination step for improvement of charset detection.

I do not understand this explanation.

What is the case you are trying to address? Is it that you want charset detector to work in subframes if parent frame doesn&apos;t have an encoding declaration?

&gt; Source/WebCore/loader/TextResourceDecoder.cpp:687
&gt; +bool TextResourceDecoder::matchEncodingSource(EncodingSource source)
&gt; +{
&gt; +    return m_source == source;
&gt; +}

This function has a poor name - it&apos;s names as if it had a side effect, but it does not.

Since it&apos;s only used in one place, I suggest just getting rid of it. There is no need to abstract out &quot;==&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736349</commentid>
    <comment_count>15</comment_count>
      <attachid>167476</attachid>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-10-07 01:59:55 -0700</bug_when>
    <thetext>Created attachment 167476
patch

Done~</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736707</commentid>
    <comment_count>16</comment_count>
      <attachid>167476</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-10-08 08:59:53 -0700</bug_when>
    <thetext>Comment on attachment 167476
patch

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

&gt; LayoutTests/fast/encoding/parent-child-2-expected.txt:1
&gt; +The test result should look like this : ê¸ë¡ë²ì ì¤ì¬

This is not self-explanatory yet. When you are saying that test result should look like something, this explanation should be separate from test result itself. Here, there is no way to tell if output is correct.

The reason why we want self-explanatory tests is that sometimes, one would run them manually in a browser, outside run-webkit-tests. For example, folks may want to run the test in other browsers to compare behavior.

&gt; LayoutTests/fast/encoding/parent-child-2.html:13
&gt; +    if (window.testRunner) {
&gt; +        testRunner.dumpAsText();
&gt; +        var value = document.getElementById(&quot;test&quot;).contentDocument.documentElement.getElementsByTagName(&quot;p&quot;)[0].innerHTML;
&gt; +        document.getElementById(&quot;result&quot;).innerHTML = &quot;The test result should look like this : &quot; + value;
&gt; +    }

Why are the two bottom lines inside &quot;if (window.testRunner)&quot;? This makes the test dysfunctional inside browser.

&gt; Source/WebCore/ChangeLog:11
&gt; +        According to mentioned url, child frame can use its own specified encoding if there is &apos;no feasible (a.k.a. default)&apos; parent&apos;s one.

This still appears misleading. Child frame&apos;s specified encoding always takes precedence over what&apos;s inherited from parent frame. Inherited charset is only used when there is no encoding for child frame.

&gt; Source/WebCore/loader/TextResourceDecoder.cpp:687
&gt; +bool TextResourceDecoder::isDefaultEncoding()
&gt; +{
&gt; +    return m_source == DefaultEncoding;
&gt; +}

This could be inline in the header.

&gt; Source/WebCore/loader/TextResourceDecoder.h:68
&gt; +    bool isDefaultEncoding();

This function should be const.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737798</commentid>
    <comment_count>17</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-10-09 08:33:21 -0700</bug_when>
    <thetext>(In reply to comment #16)
&gt; This still appears misleading. Child frame&apos;s specified encoding always takes precedence over what&apos;s inherited from parent frame. Inherited charset is only used when there is no encoding for child frame.

You are correct. :-)
Child frame can override charset decoder and only inherit parent&apos;s one if it hasn&apos;t charset definition.

My idea on this patch has been twisted because of another bug.
I will explain more on following comment. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737813</commentid>
    <comment_count>18</comment_count>
    <who name="Kangil Han">kangil.han</who>
    <bug_when>2012-10-09 08:46:32 -0700</bug_when>
    <thetext>I started this patch to cover BUG 97054.

What I wanted to create test case in BUG 97054 was that test frame has iframe and both don&apos;t have charset definition. In iframe, I wanted to describe the failing case, however, in this circumstance, encoding detector didn&apos;t work on iframe because parent&apos;s default encoding ruled to it.

Then where I started to be twisted? :-)

parent-child-1.html was failed on 21 Sep, when exactly I started work on this bug.
Means encoding inheritance didn&apos;t work correctly at that stage so that child frame, without charset definition, couldn&apos;t use parent&apos;s one.

Interestingly, today I&apos;ve found that case is passed. But, no test case has been added in LayoutTests/fast/encoding.

Therefore, if you would think it would be okay, then I will just make two test cases in this bug and continue work what I intended in another patch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165081</attachid>
            <date>2012-09-21 02:06:57 -0700</date>
            <delta_ts>2012-09-24 06:28:13 -0700</delta_ts>
            <desc>patch</desc>
            <filename>parent_child_encoding_1.txt</filename>
            <type>text/plain</type>
            <size>7289</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA3ZTJiMmRlLi4zODA0MDE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTItMDkt
MjEgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIERlZmF1
bHQgZW5jb2Rpbmcgc2hvdWxkIG5vdCBiZSBpbmhlcml0ZWQgdG8gY2hpbGQgZnJhbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMwNworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHBhcmVudC1jaGlsZC0x
Lmh0bWwgaGFzIGNoYXJzZXQgZGVmaW5pdGlvbiBhbmQgY2hpbGQgc2hvdWxkIHVzZSB0aGlzLgor
ICAgICAgICBUaGVyZWZvcmUsIGJhZC1ldWNrci1lbmNvZGluZy5odG1sKGVuY29kZWQgYnkgZXVj
LWtyIGJ1dCBubyBjaGFyc2V0IGRlZmluaXRpb24pIGNvdWxkIGJlIHdlbGwgZGVjb2RlZC4KKwor
ICAgICAgICBwYXJlbnQtY2hpbGQtMi5odG1sIGhhc24ndCBjaGFyc2V0IGRlZmluaXRpb24gYW5k
IGNoaWxkIGNvdWxkIHVzZSBpdHMgb3duIGNoYXJzZXQgZGVmaW5pdGlvbi4KKyAgICAgICAgVGhl
cmVmb3JlLCBnb29kLWV1Y2tyLWVuY29kaW5nLmh0bWwoZW5jb2RlZCBieSBldWMta3IgYW5kIHJl
bGV2YW50IGNoYXJzZXQgZGVmaW5pdGlvbikgY291bGQgYmUgd2VsbCBkZWNvZGVkLgorCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTIuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvYmFkLWV1Y2tyLWVuY29kaW5nLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2dvb2QtZXVja3ItZW5jb2Rp
bmcuaHRtbDogQWRkZWQuCisKIDIwMTItMDktMTkgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3Rv
cGhlLmR1bWV6QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBVbnNraXAgSlMgdGVzdHMgdGhh
dCBhcmUgbm8gbG9uZ2VyIGNyYXNoaW5nIGFmdGVyIHIxMjkwNjUKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMS1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2Q2ZjhlNAotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMyBAQAor6riA66Gc67KM7J2YIOykkeyLrAorCisKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwLi4yM2Y3MWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNv
ZGluZy9wYXJlbnQtY2hpbGQtMS5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzxodG1sPgorPGhlYWQ+
Cis8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hh
cnNldD1ldWMta3IiPgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0icmVzdWx0Ij48L3A+Cis8aWZy
YW1lIGlkPSJ0ZXN0IiBzcmM9InJlc291cmNlcy9iYWQtZXVja3ItZW5jb2RpbmcuaHRtbCIgb25s
b2FkPSJydW5UZXN0KCkiPjwvaWZyYW1lPgorPHNjcmlwdD4KK2Z1bmN0aW9uIHJ1blRlc3QoKSB7
CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKKworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpLmNvbnRlbnREb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInAiKVswXS5pbm5lckhUTUw7Cit9Cis8L3Nj
cmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5j
b2RpbmcvcGFyZW50LWNoaWxkLTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNv
ZGluZy9wYXJlbnQtY2hpbGQtMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMC4uM2Q2ZjhlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3Qv
ZW5jb2RpbmcvcGFyZW50LWNoaWxkLTItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor6riA
66Gc67KM7J2YIOykkeyLrAorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2Rp
bmcvcGFyZW50LWNoaWxkLTIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50
LWNoaWxkLTIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNmFhZTZm
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hp
bGQtMi5odG1sCkBAIC0wLDAgKzEsMTYgQEAKKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxwIGlkPSJyZXN1bHQiPjwvcD4KKzxpZnJhbWUgaWQ9InRlc3QiIHNyYz0icmVzb3VyY2Vz
L2dvb2QtZXVja3ItZW5jb2RpbmcuaHRtbCIgb25sb2FkPSJydW5UZXN0KCkiPjwvaWZyYW1lPgor
PHNjcmlwdD4KK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVy
KQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dGVzdCIpLmNvbnRlbnREb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05h
bWUoInAiKVswXS5pbm5lckhUTUw7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2JhZC1ldWNrci1l
bmNvZGluZy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvYmFkLWV1
Y2tyLWVuY29kaW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYjk0
NDE4ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3Vy
Y2VzL2JhZC1ldWNrci1lbmNvZGluZy5odG1sCkBAIC0wLDAgKzEsNyBAQAorPGh0bWw+Cis8aGVh
ZD4KKzwvaGVhZD4KKzxib2R5PgorPHA+sdu3zrn6wMcgwd+9yTwvcD4KKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2dvb2Qt
ZXVja3ItZW5jb2RpbmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2Vz
L2dvb2QtZXVja3ItZW5jb2RpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAw
MDAwLi42ODMwNzcxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGlu
Zy9yZXNvdXJjZXMvZ29vZC1ldWNrci1lbmNvZGluZy5odG1sCkBAIC0wLDAgKzEsOCBAQAorPGh0
bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4
dC9odG1sOyBjaGFyc2V0PWV1Yy1rciI+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPrHbt865+sDHIMHf
vck8L3A+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTc2OTY2OS4uZjI2M2NlYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTA5LTIxICBLYW5naWwgSGFuICA8a2Fu
Z2lsLmhhbkBzYW1zdW5nLmNvbT4KKworICAgICAgICBEZWZhdWx0IGVuY29kaW5nIHNob3VsZCBu
b3QgYmUgaW5oZXJpdGVkIHRvIGNoaWxkIGZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTczMDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBVbmRlciBjdXJyZW50IGltcGxlbWVudGF0aW9uLCBjaGls
ZCBmcmFtZSBhbHdheXMgdXNlcyBwYXJlbnQncyBkZWZhdWx0IGVuY29kaW5nIGV2ZW4gdGhvdWdo
IG5vIGV4cGxpY3QgZGVmaW5pdGlvbiwgZS5nLiB1c2VyIHNldHRpbmcsIGNoYXJzZXQgZGVmaW5p
dGlvbiBhbmQgZXRjLgorICAgICAgICBUaGlzIHBhdGNoIGZyZWVkIGNoaWxkIGZyYW1lIGZyb20g
cGFyZW50J3MgZGVmYXVsdCBlbmNvZGluZy4KKworICAgICAgICBUZXN0czogZmFzdC9lbmNvZGlu
Zy9wYXJlbnQtY2hpbGQtMS5odG1sCisgICAgICAgICAgICAgICBmYXN0L2VuY29kaW5nL3BhcmVu
dC1jaGlsZC0yLmh0bWwKKworICAgICAgICAqIGxvYWRlci9Eb2N1bWVudFdyaXRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpjYW5SZWZlclRvUGFyZW50RnJhbWVFbmNvZGluZyk6CisgICAgICAg
ICogbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VGV4
dFJlc291cmNlRGVjb2Rlcjo6bWF0Y2hFbmNvZGluZ1NvdXJjZSk6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRSZXNvdXJjZURlY29kZXI6OmlzRGVmYXVsdEVuY29k
aW5nKToKKyAgICAgICAgKiBsb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5oOgorICAgICAgICAo
VGV4dFJlc291cmNlRGVjb2Rlcik6CisKIDIwMTItMDktMTkgIERhbiBCZXJuc3RlaW4gIDxtaXR6
QGFwcGxlLmNvbT4KIAogICAgICAgICBXZWJDb3JlIHBhcnQgb2YgYWRkaW5nIGEgc2V0dGluZyBh
bmQgQVBJIGZvciBkaXNhYmxpbmcgc2NyZWVuIGZvbnQgc3Vic3RpdHV0aW9uCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRXcml0ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50V3JpdGVyLmNwcAppbmRleCAxYTE2ZWVjLi4wMTU3M2FiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRXcml0ZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFdyaXRlci5jcHAKQEAgLTUxLDcgKzUxLDggQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBzdGF0aWMgaW5saW5lIGJvb2wgY2FuUmVmZXJUb1BhcmVu
dEZyYW1lRW5jb2RpbmcoY29uc3QgRnJhbWUqIGZyYW1lLCBjb25zdCBGcmFtZSogcGFyZW50RnJh
bWUpIAogewotICAgIHJldHVybiBwYXJlbnRGcmFtZSAmJiBwYXJlbnRGcmFtZS0+ZG9jdW1lbnQo
KS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzKGZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0
eU9yaWdpbigpKTsKKyAgICByZXR1cm4gcGFyZW50RnJhbWUgJiYgcGFyZW50RnJhbWUtPmRvY3Vt
ZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2VzcyhmcmFtZS0+ZG9jdW1lbnQoKS0+c2Vj
dXJpdHlPcmlnaW4oKSkKKyAgICAgICAgJiYgIXBhcmVudEZyYW1lLT5kb2N1bWVudCgpLT5kZWNv
ZGVyKCktPmlzRGVmYXVsdEVuY29kaW5nKCk7CiB9CiAgICAgCiBEb2N1bWVudFdyaXRlcjo6RG9j
dW1lbnRXcml0ZXIoRnJhbWUqIGZyYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRS
ZXNvdXJjZURlY29kZXIuY3BwCmluZGV4IDlmZTg2NGEuLmE2Y2RjZGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VEZWNvZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5jcHAKQEAgLTY4NCw0ICs2ODQsMTQg
QEAgU3RyaW5nIFRleHRSZXNvdXJjZURlY29kZXI6OmZsdXNoKCkKICAgICByZXR1cm4gcmVzdWx0
OwogfQogCitib29sIFRleHRSZXNvdXJjZURlY29kZXI6Om1hdGNoRW5jb2RpbmdTb3VyY2UoRW5j
b2RpbmdTb3VyY2Ugc291cmNlKQoreworICAgIHJldHVybiBtX3NvdXJjZSA9PSBzb3VyY2U7Cit9
CisKK2Jvb2wgVGV4dFJlc291cmNlRGVjb2Rlcjo6aXNEZWZhdWx0RW5jb2RpbmcoKQoreworICAg
IHJldHVybiBtYXRjaEVuY29kaW5nU291cmNlKERlZmF1bHRFbmNvZGluZyk7Cit9CisKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VEZWNvZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5oCmluZGV4IDc3MTE4NWYu
Ljg1NjA0NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VE
ZWNvZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIu
aApAQCAtNjUsNiArNjUsNyBAQCBwdWJsaWM6CiAgICAKICAgICB2b2lkIHVzZUxlbmllbnRYTUxE
ZWNvZGluZygpIHsgbV91c2VMZW5pZW50WE1MRGVjb2RpbmcgPSB0cnVlOyB9CiAgICAgYm9vbCBz
YXdFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fc2F3RXJyb3I7IH0KKyAgICBib29sIGlzRGVmYXVs
dEVuY29kaW5nKCk7CiAKIHByaXZhdGU6CiAgICAgVGV4dFJlc291cmNlRGVjb2Rlcihjb25zdCBT
dHJpbmcmIG1pbWVUeXBlLCBjb25zdCBUZXh0RW5jb2RpbmcmIGRlZmF1bHRFbmNvZGluZywKQEAg
LTgwLDYgKzgxLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGNoZWNrRm9yTWV0YUNoYXJzZXQoY29u
c3QgY2hhciosIHNpemVfdCk7CiAgICAgdm9pZCBkZXRlY3RKYXBhbmVzZUVuY29kaW5nKGNvbnN0
IGNoYXIqLCBzaXplX3QpOwogICAgIGJvb2wgc2hvdWxkQXV0b0RldGVjdCgpIGNvbnN0OworICAg
IGJvb2wgbWF0Y2hFbmNvZGluZ1NvdXJjZShFbmNvZGluZ1NvdXJjZSk7CiAKICAgICBDb250ZW50
VHlwZSBtX2NvbnRlbnRUeXBlOwogICAgIFRleHRFbmNvZGluZyBtX2VuY29kaW5nOwo=
</data>
<flag name="review"
          id="177021"
          type_id="1"
          status="-"
          setter="ap"
    />
    <flag name="commit-queue"
          id="177062"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165366</attachid>
            <date>2012-09-24 06:28:13 -0700</date>
            <delta_ts>2012-10-07 01:59:55 -0700</delta_ts>
            <desc>patch</desc>
            <filename>parent_child_encoding_2.txt</filename>
            <type>text/plain</type>
            <size>7515</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxM2I2ZTFlLi5iN2Q2MzhiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTItMDkt
MjQgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIERlZmF1
bHQgZW5jb2Rpbmcgc2hvdWxkIG5vdCBiZSBpbmhlcml0ZWQgdG8gY2hpbGQgZnJhbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMwNworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHBhcmVudC1jaGlsZC0x
Lmh0bWwgaGFzIGNoYXJzZXQgZGVmaW5pdGlvbiBhbmQgY2hpbGQgc2hvdWxkIHVzZSB0aGlzLgor
ICAgICAgICBUaGVyZWZvcmUsIGJhZC1ldWNrci1lbmNvZGluZy5odG1sKGVuY29kZWQgYnkgZXVj
LWtyIGJ1dCBubyBjaGFyc2V0IGRlZmluaXRpb24pIGNvdWxkIGJlIHdlbGwgZGVjb2RlZC4KKwor
ICAgICAgICBwYXJlbnQtY2hpbGQtMi5odG1sIGhhc24ndCBjaGFyc2V0IGRlZmluaXRpb24gYW5k
IGNoaWxkIGNvdWxkIHVzZSBpdHMgb3duIGNoYXJzZXQgZGVmaW5pdGlvbi4KKyAgICAgICAgVGhl
cmVmb3JlLCBnb29kLWV1Y2tyLWVuY29kaW5nLmh0bWwoZW5jb2RlZCBieSBldWMta3IgYW5kIHJl
bGV2YW50IGNoYXJzZXQgZGVmaW5pdGlvbikgY291bGQgYmUgd2VsbCBkZWNvZGVkLgorCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMS1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi1leHBlY3RlZC50eHQ6IEFkZGVkLgor
ICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTIuaHRtbDogQWRkZWQuCisgICAg
ICAgICogZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvYmFkLWV1Y2tyLWVuY29kaW5nLmh0bWw6IEFk
ZGVkLgorICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2dvb2QtZXVja3ItZW5jb2Rp
bmcuaHRtbDogQWRkZWQuCisKIDIwMTItMDktMjMgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFj
bG91Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFNvcnRpbmcgYSBub24tYXJyYXkgY3JlYXRlcyBw
cm9wcmV0aWVzIChzcGVjLXZpb2xhdGlvbikKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qv
ZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9l
bmNvZGluZy9wYXJlbnQtY2hpbGQtMS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMC4uM2Q2ZjhlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor
6riA66Gc67KM7J2YIOykkeyLrAorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5j
b2RpbmcvcGFyZW50LWNoaWxkLTEuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFy
ZW50LWNoaWxkLTEuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yM2Y3
MWMzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQt
Y2hpbGQtMS5odG1sCkBAIC0wLDAgKzEsMTcgQEAKKzxodG1sPgorPGhlYWQ+Cis8bWV0YSBodHRw
LWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1ldWMta3Ii
PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0icmVzdWx0Ij48L3A+Cis8aWZyYW1lIGlkPSJ0ZXN0
IiBzcmM9InJlc291cmNlcy9iYWQtZXVja3ItZW5jb2RpbmcuaHRtbCIgb25sb2FkPSJydW5UZXN0
KCkiPjwvaWZyYW1lPgorPHNjcmlwdD4KK2Z1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHdp
bmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAg
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQiKS5pbm5lckhUTUwgPSBkb2N1bWVudC5n
ZXRFbGVtZW50QnlJZCgidGVzdCIpLmNvbnRlbnREb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0
RWxlbWVudHNCeVRhZ05hbWUoInAiKVswXS5pbm5lckhUTUw7Cit9Cis8L3NjcmlwdD4KKzwvYm9k
eT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50
LWNoaWxkLTItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQt
Y2hpbGQtMi1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4u
M2Q2ZjhlNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFy
ZW50LWNoaWxkLTItZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMyBAQAor6riA66Gc67KM7J2YIOyk
keyLrAorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNo
aWxkLTIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTIuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNmFhZTZmCi0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi5odG1sCkBA
IC0wLDAgKzEsMTYgQEAKKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJy
ZXN1bHQiPjwvcD4KKzxpZnJhbWUgaWQ9InRlc3QiIHNyYz0icmVzb3VyY2VzL2dvb2QtZXVja3It
ZW5jb2RpbmcuaHRtbCIgb25sb2FkPSJydW5UZXN0KCkiPjwvaWZyYW1lPgorPHNjcmlwdD4KK2Z1
bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICB0
ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJy
ZXN1bHQiKS5pbm5lckhUTUwgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVzdCIpLmNvbnRl
bnREb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInAiKVswXS5p
bm5lckhUTUw7Cit9Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2JhZC1ldWNrci1lbmNvZGluZy5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvYmFkLWV1Y2tyLWVuY29kaW5n
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjk0NDE4ZAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2JhZC1ldWNr
ci1lbmNvZGluZy5odG1sCkBAIC0wLDAgKzEsNyBAQAorPGh0bWw+Cis8aGVhZD4KKzwvaGVhZD4K
Kzxib2R5PgorPHA+sdu3zrn6wMcgwd+9yTwvcD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdp
dCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2dvb2QtZXVja3ItZW5jb2Rp
bmcuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2dvb2QtZXVja3It
ZW5jb2RpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ODMwNzcx
Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMv
Z29vZC1ldWNrci1lbmNvZGluZy5odG1sCkBAIC0wLDAgKzEsOCBAQAorPGh0bWw+Cis8aGVhZD4K
KzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFy
c2V0PWV1Yy1rciI+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPrHbt865+sDHIMHfvck8L3A+Cis8L2Jv
ZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTgzYTViZS4uYjg5ZmQ0YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDI4IEBACisyMDEyLTA5LTI0ICBLYW5naWwgSGFuICA8a2FuZ2lsLmhhbkBzYW1z
dW5nLmNvbT4KKworICAgICAgICBEZWZhdWx0IGVuY29kaW5nIHNob3VsZCBub3QgYmUgaW5oZXJp
dGVkIHRvIGNoaWxkIGZyYW1lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTczMDcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBOby4gNiBpbiBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMv
Y3VycmVudC13b3JrLyNkZXRlcm1pbmluZy10aGUtY2hhcmFjdGVyLWVuY29kaW5nIGRlc2NyaWJl
cworICAgICAgICB0aGUgYmVoYXZpb3IgdGhhdCB0aGUgdXNlIG9mIG5lc3RlZCBkb2N1bWVudCdz
IGNoYXJzZXQgZGVmaW5pdGlvbiBpZiBuby4gMSBpc24ndCBhZmZlY3RlZCB0byB0aGUgY2FzZS4K
KworICAgICAgICBIb3dldmVyLCB1bmRlciBjdXJyZW50IGltcGxlbWVudGF0aW9uLCBjaGlsZCBm
cmFtZSBhbHdheXMgdXNlcyBwYXJlbnQncyBkZWZhdWx0IGVuY29kaW5nLgorICAgICAgICBUaGVy
ZWZvcmUsIHRoaXMgcGF0Y2ggaW1wbGVtZW50ZWQgYWJvdmUgbm8uIDYgZGV0ZXJtaW5hdGlvbiBz
dGVwIGZvciBpbXByb3ZlbWVudCBvZiBjaGFyc2V0IGRldGVjdGlvbi4KKworICAgICAgICBUZXN0
czogZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMS5odG1sCisgICAgICAgICAgICAgICBmYXN0
L2VuY29kaW5nL3BhcmVudC1jaGlsZC0yLmh0bWwKKworICAgICAgICAqIGxvYWRlci9Eb2N1bWVu
dFdyaXRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5SZWZlclRvUGFyZW50RnJhbWVFbmNv
ZGluZyk6CisgICAgICAgICogbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6VGV4dFJlc291cmNlRGVjb2Rlcjo6bWF0Y2hFbmNvZGluZ1NvdXJjZSk6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRleHRSZXNvdXJjZURlY29kZXI6
OmlzRGVmYXVsdEVuY29kaW5nKToKKyAgICAgICAgKiBsb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rl
ci5oOgorICAgICAgICAoVGV4dFJlc291cmNlRGVjb2Rlcik6CisKIDIwMTItMDktMjMgIEFuZHJl
YXMgS2xpbmcgIDxrbGluZ0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjEyODIz
OSk6IE11dGFibGUgRWxlbWVudEF0dHJpYnV0ZURhdGEgbGVhayB0aGVpciBBdHRyaWJ1dGUgdmVj
dG9ycy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFdyaXRlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRXcml0ZXIuY3BwCmluZGV4IDFhMTZl
ZWMuLjM5OTg2NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFdy
aXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50V3JpdGVyLmNwcApA
QCAtNTEsNyArNTEsOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHN0YXRpYyBpbmxpbmUgYm9v
bCBjYW5SZWZlclRvUGFyZW50RnJhbWVFbmNvZGluZyhjb25zdCBGcmFtZSogZnJhbWUsIGNvbnN0
IEZyYW1lKiBwYXJlbnRGcmFtZSkgCiB7Ci0gICAgcmV0dXJuIHBhcmVudEZyYW1lICYmIHBhcmVu
dEZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3MoZnJhbWUtPmRv
Y3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIHJldHVybiBwYXJlbnRGcmFtZSAmJiBw
YXJlbnRGcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzKGZyYW1l
LT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpKQorICAgICAgICAmJiBwYXJlbnRGcmFtZS0+
ZG9jdW1lbnQoKS0+ZGVjb2RlcigpICYmICFwYXJlbnRGcmFtZS0+ZG9jdW1lbnQoKS0+ZGVjb2Rl
cigpLT5pc0RlZmF1bHRFbmNvZGluZygpOwogfQogICAgIAogRG9jdW1lbnRXcml0ZXI6OkRvY3Vt
ZW50V3JpdGVyKEZyYW1lKiBmcmFtZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9UZXh0UmVzb3VyY2VEZWNvZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVz
b3VyY2VEZWNvZGVyLmNwcAppbmRleCA0ZjM2YTZlLi5kYzRjYWVjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwCkBAIC02ODEsNCArNjgxLDE0IEBA
IFN0cmluZyBUZXh0UmVzb3VyY2VEZWNvZGVyOjpmbHVzaCgpCiAgICAgcmV0dXJuIHJlc3VsdDsK
IH0KIAorYm9vbCBUZXh0UmVzb3VyY2VEZWNvZGVyOjptYXRjaEVuY29kaW5nU291cmNlKEVuY29k
aW5nU291cmNlIHNvdXJjZSkKK3sKKyAgICByZXR1cm4gbV9zb3VyY2UgPT0gc291cmNlOworfQor
Citib29sIFRleHRSZXNvdXJjZURlY29kZXI6OmlzRGVmYXVsdEVuY29kaW5nKCkKK3sKKyAgICBy
ZXR1cm4gbWF0Y2hFbmNvZGluZ1NvdXJjZShEZWZhdWx0RW5jb2RpbmcpOworfQorCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5oIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuaAppbmRleCA3NzExODVmLi44
NTYwNDc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVj
b2Rlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VEZWNvZGVyLmgK
QEAgLTY1LDYgKzY1LDcgQEAgcHVibGljOgogICAgCiAgICAgdm9pZCB1c2VMZW5pZW50WE1MRGVj
b2RpbmcoKSB7IG1fdXNlTGVuaWVudFhNTERlY29kaW5nID0gdHJ1ZTsgfQogICAgIGJvb2wgc2F3
RXJyb3IoKSBjb25zdCB7IHJldHVybiBtX3Nhd0Vycm9yOyB9CisgICAgYm9vbCBpc0RlZmF1bHRF
bmNvZGluZygpOwogCiBwcml2YXRlOgogICAgIFRleHRSZXNvdXJjZURlY29kZXIoY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSwgY29uc3QgVGV4dEVuY29kaW5nJiBkZWZhdWx0RW5jb2RpbmcsCkBAIC04
MCw2ICs4MSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBjaGVja0Zvck1ldGFDaGFyc2V0KGNvbnN0
IGNoYXIqLCBzaXplX3QpOwogICAgIHZvaWQgZGV0ZWN0SmFwYW5lc2VFbmNvZGluZyhjb25zdCBj
aGFyKiwgc2l6ZV90KTsKICAgICBib29sIHNob3VsZEF1dG9EZXRlY3QoKSBjb25zdDsKKyAgICBi
b29sIG1hdGNoRW5jb2RpbmdTb3VyY2UoRW5jb2RpbmdTb3VyY2UpOwogCiAgICAgQ29udGVudFR5
cGUgbV9jb250ZW50VHlwZTsKICAgICBUZXh0RW5jb2RpbmcgbV9lbmNvZGluZzsK
</data>
<flag name="review"
          id="177397"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167476</attachid>
            <date>2012-10-07 01:59:55 -0700</date>
            <delta_ts>2012-10-08 08:59:53 -0700</delta_ts>
            <desc>patch</desc>
            <filename>parent_child_encoding_3.txt</filename>
            <type>text/plain</type>
            <size>7581</size>
            <attacher name="Kangil Han">kangil.han</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyYTk5ODhlLi40M2ZmZDI1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTItMTAt
MDcgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisgICAgICAgIERlZmF1
bHQgZW5jb2Rpbmcgc2hvdWxkIG5vdCBiZSBpbmhlcml0ZWQgdG8gY2hpbGQgZnJhbWUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzMwNworCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHBhcmVudC1jaGlsZC0x
Lmh0bWwgaGFzIGNoYXJzZXQgZGVmaW5pdGlvbiBhbmQgY2hpbGQgc2hvdWxkIHVzZSB0aGlzLgor
ICAgICAgICBUaGVyZWZvcmUsIGV1Y2tyLWVuY29kaW5nLXdpdGhvdXQtY2hhcnNldC5odG1sKGVu
Y29kZWQgYnkgZXVjLWtyIHdpdGhvdXQgY2hhcnNldCBkZWZpbml0aW9uKSBjb3VsZCBiZSB3ZWxs
IGRlY29kZWQuCisKKyAgICAgICAgcGFyZW50LWNoaWxkLTIuaHRtbCBoYXNuJ3QgY2hhcnNldCBk
ZWZpbml0aW9uIGFuZCBjaGlsZCBjb3VsZCB1c2UgaXRzIG93biBjaGFyc2V0IGRlZmluaXRpb24u
CisgICAgICAgIFRoZXJlZm9yZSwgZXVja3ItZW5jb2Rpbmctd2l0aC1jaGFyc2V0Lmh0bWwoZW5j
b2RlZCBieSBldWMta3Igd2l0aCByZWxldmFudCBjaGFyc2V0IGRlZmluaXRpb24pIGNvdWxkIGJl
IHdlbGwgZGVjb2RlZC4KKworICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2VuY29kaW5nL3BhcmVudC1jaGls
ZC0xLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxkLTIt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2VuY29kaW5nL3BhcmVudC1jaGls
ZC0yLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2V1Y2ty
LWVuY29kaW5nLXdpdGgtY2hhcnNldC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2VuY29k
aW5nL3Jlc291cmNlcy9ldWNrci1lbmNvZGluZy13aXRob3V0LWNoYXJzZXQuaHRtbDogQWRkZWQu
CisKIDIwMTItMTAtMDYgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAg
ICAgIFVwZGF0ZSB0ZXN0IGV4cGVjdGF0aW9uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2VuY29kaW5nL3BhcmVudC1jaGlsZC0xLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qv
ZW5jb2RpbmcvcGFyZW50LWNoaWxkLTEtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjIzNWIxZjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2VuY29kaW5nL3BhcmVudC1jaGlsZC0xLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDMgQEAK
K1RoZSB0ZXN0IHJlc3VsdCBzaG91bGQgbG9vayBsaWtlIHRoaXMgOiDquIDroZzrsozsnZgg7KSR
7IusCisKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hp
bGQtMS5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMS5odG1s
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ3M2E5YWMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2VuY29kaW5nL3BhcmVudC1jaGlsZC0xLmh0bWwKQEAg
LTAsMCArMSwxOCBAQAorPGh0bWw+Cis8aGVhZD4KKzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQt
VHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PWV1Yy1rciI+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxwIGlkPSJyZXN1bHQiPjwvcD4KKzxpZnJhbWUgaWQ9InRlc3QiIHNyYz0icmVzb3VyY2Vz
L2V1Y2tyLWVuY29kaW5nLXdpdGhvdXQtY2hhcnNldC5odG1sIiBvbmxvYWQ9InJ1blRlc3QoKSI+
PC9pZnJhbWU+Cis8c2NyaXB0PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAg
IHZhciB2YWx1ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0IikuY29udGVudERvY3Vt
ZW50LmRvY3VtZW50RWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgicCIpWzBdLmlubmVySFRN
TDsKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVySFRNTCA9
ICJUaGUgdGVzdCByZXN1bHQgc2hvdWxkIGxvb2sgbGlrZSB0aGlzIDogIiArIHZhbHVlOworICAg
IH0KK30KKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2VuY29kaW5nL3BhcmVudC1jaGlsZC0yLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMzViMWY5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi1leHBlY3RlZC50eHQKQEAgLTAsMCAr
MSwzIEBACitUaGUgdGVzdCByZXN1bHQgc2hvdWxkIGxvb2sgbGlrZSB0aGlzIDog6riA66Gc67KM
7J2YIOykkeyLrAorCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFy
ZW50LWNoaWxkLTIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcGFyZW50LWNoaWxk
LTIuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZjAxZjI0Ci0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi5o
dG1sCkBAIC0wLDAgKzEsMTcgQEAKKzxodG1sPgorPGhlYWQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxw
IGlkPSJyZXN1bHQiPjwvcD4KKzxpZnJhbWUgaWQ9InRlc3QiIHNyYz0icmVzb3VyY2VzL2V1Y2ty
LWVuY29kaW5nLXdpdGgtY2hhcnNldC5odG1sIiBvbmxvYWQ9InJ1blRlc3QoKSI+PC9pZnJhbWU+
Cis8c2NyaXB0PgorZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBpZiAod2luZG93LnRlc3RSdW5u
ZXIpIHsKKyAgICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7CisgICAgICAgIHZhciB2YWx1
ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXN0IikuY29udGVudERvY3VtZW50LmRvY3Vt
ZW50RWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgicCIpWzBdLmlubmVySFRNTDsKKyAgICAg
ICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdCIpLmlubmVySFRNTCA9ICJUaGUgdGVz
dCByZXN1bHQgc2hvdWxkIGxvb2sgbGlrZSB0aGlzIDogIiArIHZhbHVlOworICAgIH0KK30KKzwv
c2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9l
bmNvZGluZy9yZXNvdXJjZXMvZXVja3ItZW5jb2Rpbmctd2l0aC1jaGFyc2V0Lmh0bWwgYi9MYXlv
dXRUZXN0cy9mYXN0L2VuY29kaW5nL3Jlc291cmNlcy9ldWNrci1lbmNvZGluZy13aXRoLWNoYXJz
ZXQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ODMwNzcxCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvZXVja3It
ZW5jb2Rpbmctd2l0aC1jaGFyc2V0Lmh0bWwKQEAgLTAsMCArMSw4IEBACis8aHRtbD4KKzxoZWFk
PgorPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNo
YXJzZXQ9ZXVjLWtyIj4KKzwvaGVhZD4KKzxib2R5PgorPHA+sdu3zrn6wMcgwd+9yTwvcD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVz
b3VyY2VzL2V1Y2tyLWVuY29kaW5nLXdpdGhvdXQtY2hhcnNldC5odG1sIGIvTGF5b3V0VGVzdHMv
ZmFzdC9lbmNvZGluZy9yZXNvdXJjZXMvZXVja3ItZW5jb2Rpbmctd2l0aG91dC1jaGFyc2V0Lmh0
bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjk0NDE4ZAotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZW5jb2RpbmcvcmVzb3VyY2VzL2V1Y2tyLWVuY29k
aW5nLXdpdGhvdXQtY2hhcnNldC5odG1sCkBAIC0wLDAgKzEsNyBAQAorPGh0bWw+Cis8aGVhZD4K
KzwvaGVhZD4KKzxib2R5PgorPHA+sdu3zrn6wMcgwd+9yTwvcD4KKzwvYm9keT4KKzwvaHRtbD4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1YzEzZWZiLi4wYjZiMjgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcg
QEAKKzIwMTItMTAtMDcgIEthbmdpbCBIYW4gIDxrYW5naWwuaGFuQHNhbXN1bmcuY29tPgorCisg
ICAgICAgIERlZmF1bHQgZW5jb2Rpbmcgc2hvdWxkIG5vdCBiZSBpbmhlcml0ZWQgdG8gY2hpbGQg
ZnJhbWUuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05
NzMwNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEl0
IHNlZW1zIHRoYXQgdGhlcmUgaXMgbm8gdzNjIHNwZWNpZmljYXRpb24gdG8gZGVzY3JpYmUgaG93
IHBhcmVudCBlbmNvZGluZyBydWxlcyB0byBjaGlsZC4KKyAgICAgICAgQWx0ZXJuYXRpdmVseSwg
d2hhdHdnIGh0bWwgbGl2aW5nIHN0YW5kYXJkIGhhcyBtYW5pcHVsYXRlZCB0aGUgZW5jb2Rpbmcg
ZGV0ZWN0aW9uIHNjZW5hcmlvIGluIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBw
cy9jdXJyZW50LXdvcmsvI2RldGVybWluaW5nLXRoZS1jaGFyYWN0ZXItZW5jb2RpbmcuCisKKyAg
ICAgICAgQWNjb3JkaW5nIHRvIG1lbnRpb25lZCB1cmwsIGNoaWxkIGZyYW1lIGNhbiB1c2UgaXRz
IG93biBzcGVjaWZpZWQgZW5jb2RpbmcgaWYgdGhlcmUgaXMgJ25vIGZlYXNpYmxlIChhLmsuYS4g
ZGVmYXVsdCknIHBhcmVudCdzIG9uZS4KKyAgICAgICAgVGhlcmVmb3JlLCB0aGlzIHBhdGNoIGlt
cGxlbWVudGVkIHRoaXMgYmVoYXZpb3IuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvZW5jb2Rpbmcv
cGFyZW50LWNoaWxkLTEuaHRtbCA6IFRoaXMgY2FzZSB2ZXJpZmllcyBpZiBjaGlsZCBmcmFtZSBz
dWNjZXNzZnVsbHkgYWRvcHRzIHBhcmVudCdzIGV4cGxpY2l0bHkgc3BlY2lmaWVkIGVuY29kaW5n
LgorICAgICAgICAgICAgICAgZmFzdC9lbmNvZGluZy9wYXJlbnQtY2hpbGQtMi5odG1sIDogVGhp
cyBjYXNlIHZlcmlmaWVzIGlmIGNoaWxkIGZyYW1lIHN1Y2Nlc3NmdWxseSB1c2VzIGl0cyBlbmNv
ZGluZyB3aGVuIG5vIGZlYXNpYmxlIHBhcmVudCdzIG9uZS4KKworICAgICAgICAqIGxvYWRlci9E
b2N1bWVudFdyaXRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjYW5SZWZlclRvUGFyZW50RnJh
bWVFbmNvZGluZyk6CisgICAgICAgICogbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6VGV4dFJlc291cmNlRGVjb2Rlcjo6aXNEZWZhdWx0RW5jb2Rpbmcp
OgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogbG9hZGVyL1RleHRSZXNvdXJjZURlY29k
ZXIuaDoKKyAgICAgICAgKFRleHRSZXNvdXJjZURlY29kZXIpOgorCiAyMDEyLTEwLTA2ICBSYXVs
IEh1ZGVhICA8cmh1ZGVhQGFkb2JlLmNvbT4KIAogICAgICAgICAtd2Via2l0LWNsaXAtcGF0aCBz
aG91bGQgcGFyc2UgSVJJcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0RvY3Vt
ZW50V3JpdGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFdyaXRlci5jcHAK
aW5kZXggMWExNmVlYy4uMzk5ODY2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0RvY3VtZW50V3JpdGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRX
cml0ZXIuY3BwCkBAIC01MSw3ICs1MSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogc3RhdGlj
IGlubGluZSBib29sIGNhblJlZmVyVG9QYXJlbnRGcmFtZUVuY29kaW5nKGNvbnN0IEZyYW1lKiBm
cmFtZSwgY29uc3QgRnJhbWUqIHBhcmVudEZyYW1lKSAKIHsKLSAgICByZXR1cm4gcGFyZW50RnJh
bWUgJiYgcGFyZW50RnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vz
cyhmcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSk7CisgICAgcmV0dXJuIHBhcmVu
dEZyYW1lICYmIHBhcmVudEZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5B
Y2Nlc3MoZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpCisgICAgICAgICYmIHBh
cmVudEZyYW1lLT5kb2N1bWVudCgpLT5kZWNvZGVyKCkgJiYgIXBhcmVudEZyYW1lLT5kb2N1bWVu
dCgpLT5kZWNvZGVyKCktPmlzRGVmYXVsdEVuY29kaW5nKCk7CiB9CiAgICAgCiBEb2N1bWVudFdy
aXRlcjo6RG9jdW1lbnRXcml0ZXIoRnJhbWUqIGZyYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL1RleHRSZXNvdXJjZURlY29kZXIuY3BwCmluZGV4IDRmMzZhNmUuLjEwZDllNGEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VEZWNvZGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5jcHAKQEAgLTY4MSw0
ICs2ODEsOSBAQCBTdHJpbmcgVGV4dFJlc291cmNlRGVjb2Rlcjo6Zmx1c2goKQogICAgIHJldHVy
biByZXN1bHQ7CiB9CiAKK2Jvb2wgVGV4dFJlc291cmNlRGVjb2Rlcjo6aXNEZWZhdWx0RW5jb2Rp
bmcoKQoreworICAgIHJldHVybiBtX3NvdXJjZSA9PSBEZWZhdWx0RW5jb2Rpbmc7Cit9CisKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3VyY2VEZWNvZGVyLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvVGV4dFJlc291cmNlRGVjb2Rlci5oCmluZGV4IDc3MTE4
NWYuLmViMDk0YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9UZXh0UmVzb3Vy
Y2VEZWNvZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1RleHRSZXNvdXJjZURlY29k
ZXIuaApAQCAtNjUsNiArNjUsNyBAQCBwdWJsaWM6CiAgICAKICAgICB2b2lkIHVzZUxlbmllbnRY
TUxEZWNvZGluZygpIHsgbV91c2VMZW5pZW50WE1MRGVjb2RpbmcgPSB0cnVlOyB9CiAgICAgYm9v
bCBzYXdFcnJvcigpIGNvbnN0IHsgcmV0dXJuIG1fc2F3RXJyb3I7IH0KKyAgICBib29sIGlzRGVm
YXVsdEVuY29kaW5nKCk7CiAKIHByaXZhdGU6CiAgICAgVGV4dFJlc291cmNlRGVjb2Rlcihjb25z
dCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBUZXh0RW5jb2RpbmcmIGRlZmF1bHRFbmNvZGluZywK
</data>
<flag name="review"
          id="180161"
          type_id="1"
          status="-"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>