<?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>44086</bug_id>
          
          <creation_ts>2010-08-16 19:02:00 -0700</creation_ts>
          <short_desc>Back button after Google search result click broken</short_desc>
          <delta_ts>2010-08-24 10:24:47 -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>History</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mihai Parparita">mihaip</reporter>
          <assigned_to name="Mihai Parparita">mihaip</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>fishd</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>265339</commentid>
    <comment_count>0</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-16 19:02:00 -0700</bug_when>
    <thetext>To reproduce:

1. Go to http://www.google.com/
2. Search for [test]
3. URL changes to http://www.google.com/#hl=en&amp;source=hp&amp;q=test&amp;aq=f&amp;aqi=g10&amp;aql=&amp;oq=&amp;gs_rfai=CjppO1OtpTIzsAYmgjQOpw8H5CAAAAKoEBU_QuYKi&amp;fp=57531420c0ae60ee (this is Google search results page that doesn&apos;t load a new page)
4. Click on the first result (test.com)
5. Press back

Expected result:
1. Back at the search results for [test]

Actual result:
1. Nothing happens, the back button is disabled

I&apos;m fairly certain this is caused by r65340 (which was to fix bug 42861). I can reproduce in today&apos;s nightly WebKit build (r65398), but not with Thursday&apos;s (r65222).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265522</commentid>
    <comment_count>1</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 07:23:43 -0700</bug_when>
    <thetext>Test case:

http://persistent.info/webkit/test-cases/google-result-click/results.html
(click on the &quot;result&quot; link, the page will print PASS or FAIL)

Background:

For the search results pages that don&apos;t trigger a page reload, Google still wants to send a referrer with the query that was done. Therefore on result click, they create an iframe with a src of the form &quot;http://www.google.com/url?sa=t&amp;source=web&amp;cd=1&amp;ved=0CCMQFjAA&amp;url=http%3A%2F%2Fwww.test.com%2F&amp;rct=j&amp;q=test&amp;ei=YyJqTMbNNIOB8gaiqsmyBA&amp;usg=AFQjCNH21KLjC0CBkjon2DwD_CZ0HApLMw&amp;sig2=n3-oadI9v06M390S4tA7jw&quot;

(that&apos;s for a click on the first result of [test], which goes to www.test.com)

That serves a a small Javascript snippet:

&lt;script&gt;var a=parent,b=parent.google,c=location;
if(a!=window&amp;&amp;b){if(b.r){b.r=0;a.location.href=&quot;http://www.test.com/&quot;;c.replace(&quot;about:blank&quot;);}}else{c.replace(&quot;http://www.test.com/&quot;);};&lt;/script&gt;&lt;noscript&gt;&lt;META http-equiv=&quot;refresh&quot; content=&quot;0;URL=&apos;http://www.test.com/&apos;&quot;&gt;&lt;/noscript&gt;

parent.google.r is set to 1, so this boils down to parent.location.href = &quot;http://www.test.com/&quot;

The reason why r65340 causes by this bug is because the parent.location.href happens inline (before onload), and is not (directly) in response to a user gesture, therefore the back/forward list is locked. Though I&apos;m actually surprised that this is considered to be before onload, since we check targetFrame-&gt;loader()-&gt;documentLoader()-&gt;isLoadingInAPISense(), and the target frame should be the parent, which should have finished loading long ago.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265523</commentid>
    <comment_count>2</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 07:26:08 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Though I&apos;m actually surprised that this is considered to be before onload, since we check targetFrame-&gt;loader()-&gt;documentLoader()-&gt;isLoadingInAPISense(), and the target frame should be the parent, which should have finished loading long ago.

Ah, I should have looked at isLoadingInAPISense more carefully:

bool DocumentLoader::isLoadingInAPISense() const
{
    // Once a frame has loaded, we no longer need to consider subresources,
    // but we still need to consider subframes.
    if (frameLoader()-&gt;state() != FrameStateComplete) {
        ...
    }
    return frameLoader()-&gt;subframeIsLoading();
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265555</commentid>
    <comment_count>3</comment_count>
      <attachid>64595</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 08:11:25 -0700</bug_when>
    <thetext>Created attachment 64595
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265598</commentid>
    <comment_count>4</comment_count>
      <attachid>64595</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-08-17 09:21:01 -0700</bug_when>
    <thetext>Comment on attachment 64595
Patch

As discussed in person, I don&apos;t think this quite does what we want.  I think
we want to know if the &apos;load&apos; event fired, but isMainFrameLoading could return
true before that since it only inspects the state of the current frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265599</commentid>
    <comment_count>5</comment_count>
      <attachid>64595</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 09:22:17 -0700</bug_when>
    <thetext>Comment on attachment 64595
Patch

Nevermind about reviewing this, we discussed this in person and the isMainFrameLoading method isn&apos;t quite the right way to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265632</commentid>
    <comment_count>6</comment_count>
      <attachid>64607</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 10:39:05 -0700</bug_when>
    <thetext>Created attachment 64607
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265693</commentid>
    <comment_count>7</comment_count>
      <attachid>64607</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-17 12:25:20 -0700</bug_when>
    <thetext>Comment on attachment 64607
Patch

Rejecting patch 64607 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--exit-after-n-failures=1&apos;, &apos;--wait-for-httpd&apos;, &apos;--ignore-tests&apos;, &apos;compositing&apos;, &apos;--quiet&apos;]&quot; exit_code: 1
Running build-dumprendertree
Compiling Java tests
make: Nothing to be done for `default&apos;.
Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests
Testing 20854 test cases.
transitions/change-values-during-transition.html -&gt; failed

Exiting early after 1 failures. 19757 tests run.
599.78s total testing time

19756 test cases (99%) succeeded
1 test case (&lt;1%) had incorrect layout
281 test cases (1%) had stderr output

Full output: http://queues.webkit.org/results/3755295</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265703</commentid>
    <comment_count>8</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 12:40:15 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; transitions/change-values-during-transition.html -&gt; failed

I can&apos;t reproduce this locally (ran all the transitions tests 10 times), and per bug 28461, bug 27638 and bug 32946, that test is flaky.

Darin, do you mind giving this a cq+ again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265840</commentid>
    <comment_count>9</comment_count>
      <attachid>64607</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-17 16:40:29 -0700</bug_when>
    <thetext>Comment on attachment 64607
Patch

Clearing flags on attachment: 64607

Committed r65573: &lt;http://trac.webkit.org/changeset/65573&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265841</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-17 16:40:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265851</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-08-17 16:59:47 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/65573 might have broken Qt Windows 32-bit Release</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265859</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-08-17 17:13:21 -0700</bug_when>
    <thetext>Yes, it&apos;s a Leopard + CoreVideo problem.  I should just skip all media and composition tests for the commit-queue. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>265874</commentid>
    <comment_count>13</comment_count>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-17 17:36:58 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; http://trac.webkit.org/changeset/65573 might have broken Qt Windows 32-bit Release

Filed bug 44145 about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>268624</commentid>
    <comment_count>14</comment_count>
      <attachid>65291</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-24 10:23:50 -0700</bug_when>
    <thetext>Created attachment 65291
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>268626</commentid>
    <comment_count>15</comment_count>
      <attachid>65291</attachid>
    <who name="Mihai Parparita">mihaip</who>
    <bug_when>2010-08-24 10:24:47 -0700</bug_when>
    <thetext>Comment on attachment 65291
Patch

Oops, attached to the wrong bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64595</attachid>
            <date>2010-08-17 08:11:25 -0700</date>
            <delta_ts>2010-08-17 09:22:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-44086-20100817081123.patch</filename>
            <type>text/plain</type>
            <size>10671</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhY2I4ODcyY2QyOWVmZTFjNzQ5Y2M5OWM1ODg4MDVlMmU2MTY3Nzc2Li5kODI5MTM0
OTkyYWRkNmRmZTA2YmMwY2QzNTI4YTk4Njg0MTcyOTZlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAK
KzIwMTAtMDgtMTcgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmFjayBidXR0b24g
YWZ0ZXIgR29vZ2xlIHNlYXJjaCByZXN1bHQgY2xpY2sgYnJva2VuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NDA4NgorCisgICAgICAgIEFkZGVkIGEg
cmVkdWNlZCB0ZXN0IGNhc2Ugb2YgR29vZ2xlIHNlYXJjaCByZXN1bHQgY2xpY2sgYmVoYXZpb3Is
CisgICAgICAgIHJlbmFtZWQgZ2VzdHVyZS1iZWZvcmUtb25sb2FkLXRhcmdldC5odG1sIHRvIHJl
ZGlyZWN0LXRhcmdldC5odG1sCisgICAgICAgIHNpbmNlIGl0J3MgdXNlZnVsIGZvciB0aGlzIHRl
c3QgdG9vLgorCisgICAgICAgICogZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1m
b3JtLXN1Ym1pdC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9oaXN0b3J5L2dlc3R1cmUt
YmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC5odG1sOgorICAgICAgICAqIGZhc3QvaGlzdG9yeS9n
ZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJlZi1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1sb2NhdGlvbi1ocmVmLmh0bWw6
CisgICAgICAgICogZmFzdC9oaXN0b3J5L3JlZGlyZWN0LXZpYS1pZnJhbWUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2lmcmFtZS1yZWRpcmVj
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0
LXRhcmdldC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291
cmNlcy9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtdGFyZ2V0Lmh0bWwuCisKIDIwMTAtMDgtMTYgIEFk
ZW1hciBkZSBTb3V6YSBSZWlzIEpyICA8YWRlbWFyLnJlaXNAb3BlbmJvc3NhLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBBcml5YSBIaWRheWF0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
ZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWZvcm0t
c3VibWl0LWV4cGVjdGVkLnR4dAppbmRleCA5Zjk2OGRjZjAxZTI1MDU2YzJhMmJmNjE5NTczNmRm
M2FmNDNlNzdhLi42NjYzMmNhM2NjNWYyN2I0NDIwNGY1NGQzYWM4MGQzZWJjN2EwNjU3IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWZv
cm0tc3VibWl0LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2Vz
dHVyZS1iZWZvcmUtb25sb2FkLWZvcm0tc3VibWl0LWV4cGVjdGVkLnR4dApAQCAtNSw1ICs1LDUg
QEAgUEFTUzogSGlzdG9yeSBpdGVtIGNvdW50IHNob3VsZCBiZSAyIGFuZCBpcy4KIAogPT09PT09
PT09PT09PT0gQmFjayBGb3J3YXJkIExpc3QgPT09PT09PT09PT09PT0KICAgICAgICAgKGZpbGUg
dGVzdCk6ZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC5odG1s
ICAqKm5hdiB0YXJnZXQqKgotY3Vyci0+ICAoZmlsZSB0ZXN0KTpmYXN0L2hpc3RvcnkvcmVzb3Vy
Y2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9hZC10YXJnZXQuaHRtbD8jMiAgKipuYXYgdGFyZ2V0KioK
K2N1cnItPiAgKGZpbGUgdGVzdCk6ZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9yZWRpcmVjdC10YXJn
ZXQuaHRtbD8jMiAgKipuYXYgdGFyZ2V0KioKID09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3Rvcnkv
Z2VzdHVyZS1iZWZvcmUtb25sb2FkLWZvcm0tc3VibWl0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWZvcm0tc3VibWl0Lmh0bWwKaW5kZXggODVm
MjY4OGYzMzdiNDgzNTk4MTE5N2FkNmYyNGZhOGI4YTc5NWFlYy4uYTJkMWFlYzg1MDYyMGFkMDgy
ODdkZDZhMjY0MzcwZDQ0OWZmNDJhZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0
b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC5odG1sCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtZm9ybS1zdWJtaXQuaHRtbApA
QCAtMSw3ICsxLDcgQEAKIDxoZWFkPgogPC9oZWFkPgogPGJvZHkgb25sb2FkPSJvbmxvYWQoKSI+
Ci0gIDxmb3JtIGFjdGlvbj0icmVzb3VyY2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9hZC10YXJnZXQu
aHRtbCMyIj4KKyAgPGZvcm0gYWN0aW9uPSJyZXNvdXJjZXMvcmVkaXJlY3QtdGFyZ2V0Lmh0bWwj
MiI+CiAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgaWQ9Im5hdi1idXR0b24iIHZhbHVlPSJOYXZp
Z2F0ZSI+CiAgIDwvZm9ybT4KICAgPGRpdiBpZD0ibWFudWFsLWV4cGxhbmF0aW9uIiBzdHlsZT0i
ZGlzcGxheTogbm9uZTsgY29sb3I6IGJsdWUiPldoZW4gcnVubmluZyB0aGlzIHRlc3Qgb3V0c2lk
ZSBvZiBEUlQsIHBsZWFzZSBjbGljayBvbiB0aGUgIk5hdmlnYXRlIiBidXR0b24uPC9kaXY+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2Fk
LWxvY2F0aW9uLWhyZWYtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2dl
c3R1cmUtYmVmb3JlLW9ubG9hZC1sb2NhdGlvbi1ocmVmLWV4cGVjdGVkLnR4dAppbmRleCA5NGZl
YTExM2I0MzZlM2RjN2UzOWQxNDhjYzUxNDk5NmQ1NzUxMjVmLi42ZTM5ZDZlNzk2MDhmMGZmOWU1
ODM2YTQ3MzQwNjc4ZWQ2MmI2N2M1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3Rv
cnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWxvY2F0aW9uLWhyZWYtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24t
aHJlZi1leHBlY3RlZC50eHQKQEAgLTUsNSArNSw1IEBAIFBBU1M6IEhpc3RvcnkgaXRlbSBjb3Vu
dCBzaG91bGQgYmUgMiBhbmQgaXMuCiAKID09PT09PT09PT09PT09IEJhY2sgRm9yd2FyZCBMaXN0
ID09PT09PT09PT09PT09CiAgICAgICAgIChmaWxlIHRlc3QpOmZhc3QvaGlzdG9yeS9nZXN0dXJl
LWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJlZi5odG1sICAqKm5hdiB0YXJnZXQqKgotY3Vyci0+
ICAoZmlsZSB0ZXN0KTpmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9h
ZC10YXJnZXQuaHRtbCMyICAqKm5hdiB0YXJnZXQqKgorY3Vyci0+ICAoZmlsZSB0ZXN0KTpmYXN0
L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0LXRhcmdldC5odG1sIzIgICoqbmF2IHRhcmdldCoq
CiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1sb2Nh
dGlvbi1ocmVmLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUt
b25sb2FkLWxvY2F0aW9uLWhyZWYuaHRtbAppbmRleCA1NjBhZGNiNTc5Y2VhZWY1NWEyZGNhZDQy
MzlhMmI2MTg1MWI0YzdkLi40YzU3NTRhNGQ4ZDE0OGM5YjAxODQ1NzlhODA3N2Q4OGZmYzU3ZTJk
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25s
b2FkLWxvY2F0aW9uLWhyZWYuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2Vz
dHVyZS1iZWZvcmUtb25sb2FkLWxvY2F0aW9uLWhyZWYuaHRtbApAQCAtMjIsNyArMjIsNyBAQAog
ICB9CiAKICAgZnVuY3Rpb24gbmF2KCkgewotICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAn
cmVzb3VyY2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9hZC10YXJnZXQuaHRtbCMyJzsKKyAgICAgIHdp
bmRvdy5sb2NhdGlvbi5ocmVmID0gJ3Jlc291cmNlcy9yZWRpcmVjdC10YXJnZXQuaHRtbCMyJzsK
ICAgfQogCiAgIGZ1bmN0aW9uIG9ubG9hZCgpIHsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zh
c3QvaGlzdG9yeS9yZWRpcmVjdC12aWEtaWZyYW1lLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvaGlzdG9yeS9yZWRpcmVjdC12aWEtaWZyYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5mZjk3MDA4MWY0M2U2YjA1NGI3MzQ1ZDQ0NTIzZGVmZjVhYjU1M2ZkCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3JlZGlyZWN0LXZpYS1pZnJhbWUtZXhwZWN0
ZWQudHh0CkBAIC0wLDAgKzEsMTAgQEAKK1RoaXMgcGFnZSBpcyB0aGUgdGFyZ2V0IG9mIGEgcmVk
aXJlY3QuCisKK1BBU1M6IEhpc3RvcnkgaXRlbSBjb3VudCBzaG91bGQgYmUgMiBhbmQgaXMuCisK
KworPT09PT09PT09PT09PT0gQmFjayBGb3J3YXJkIExpc3QgPT09PT09PT09PT09PT0KKyAgICAg
ICAgKGZpbGUgdGVzdCk6ZmFzdC9oaXN0b3J5L3JlZGlyZWN0LXZpYS1pZnJhbWUuaHRtbCAgKipu
YXYgdGFyZ2V0KioKKyAgICAgICAgICAgIChmaWxlIHRlc3QpOmZhc3QvaGlzdG9yeS9yZXNvdXJj
ZXMvaWZyYW1lLXJlZGlyZWN0Lmh0bWwjMiAoaW4gZnJhbWUgIjwhLS1mcmFtZVBhdGggLy88IS0t
ZnJhbWUwLS0+LS0+IikKK2N1cnItPiAgKGZpbGUgdGVzdCk6ZmFzdC9oaXN0b3J5L3Jlc291cmNl
cy9yZWRpcmVjdC10YXJnZXQuaHRtbCMyICAqKm5hdiB0YXJnZXQqKgorPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2Zhc3QvaGlzdG9yeS9yZWRpcmVjdC12aWEtaWZyYW1lLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI1ODgxNjkxZmRk
OGQ0NDJiNWMwODlmMzhjMjZkMDgxOTRjNDIwYmUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1sCkBAIC0wLDAgKzEsMjYg
QEAKKzxoZWFkPgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJvbmxvYWQoKSI+Cis8L2JvZHk+Cis8
c2NyaXB0PgorICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICBsYXlv
dXRUZXN0Q29udHJvbGxlci5jbGVhckJhY2tGb3J3YXJkTGlzdCgpOworICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworICB9CisKKyAgZnVuY3Rpb24gb25sb2FkKCkg
eworICAgICAgLy8gTmF2aWdhdGUgdmlhIGFuIGlmcmFtZSByZWRpcmVjdCAodG8gY2hhbmdlIHRo
ZSByZWZlcnJlciwgdGhvdWdoIHdlJ3JlCisgICAgICAvLyBub3QgaW50ZXJlc3RlZCBpbiB0aGF0
IGluIHRoaXMgdGVzdCkgc2hvdWxkIHN0aWxsIGdlbmVyYXRlIGEgaGlzdG9yeQorICAgICAgLy8g
ZW50cnksIHNpbmNlIHdlJ3JlIGRvaW5nIGl0IGFmdGVyIG9ubG9hZC4KKyAgICAgIHdpbmRvdy5z
ZXRUaW1lb3V0KG5hdmlnYXRlLCAwKTsKKyAgfQorICAKKyAgZnVuY3Rpb24gbmF2aWdhdGUoKQor
ICB7CisgICAgICB2YXIgcmVkaXJlY3RJZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdp
ZnJhbWUnKTsKKyAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocmVkaXJlY3RJZnJhbWUp
OworICAgICAgcmVkaXJlY3RJZnJhbWUuc3JjID0gJ3Jlc291cmNlcy9pZnJhbWUtcmVkaXJlY3Qu
aHRtbCMyJzsKKyAgfQorCis8L3NjcmlwdD4KKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9oaXN0b3J5L3Jlc291cmNlcy9pZnJhbWUtcmVkaXJlY3QuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvaGlzdG9yeS9yZXNvdXJjZXMvaWZyYW1lLXJlZGlyZWN0Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjgz
NTcwNWNjZGI1NGZkNzU2NzQxZjg1ZTMyYzVhNzI2ODA1OGE0NQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZXNvdXJjZXMvaWZyYW1lLXJlZGlyZWN0Lmh0bWwK
QEAgLTAsMCArMSwzIEBACis8c2NyaXB0PgorcGFyZW50LmxvY2F0aW9uLmhyZWYgPSAncmVkaXJl
Y3QtdGFyZ2V0Lmh0bWwnICsgbG9jYXRpb24uaGFzaDsKKzwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9nZXN0dXJlLWJlZm9yZS1vbmxvYWQt
dGFyZ2V0Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0
LXRhcmdldC5odG1sCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBMYXlvdXRUZXN0
cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9hZC10YXJnZXQuaHRt
bApyZW5hbWUgdG8gTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9yZWRpcmVjdC10
YXJnZXQuaHRtbApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5n
ZUxvZwppbmRleCAwNjBiYmU1NzNmNzE2Nzk4NjAzZWFiOWI3OWYzYTY4YTE2N2RmZDQ3Li43N2My
OWU3NTczZjU1Mjc5NmNiMWNlZjMzYTNhYWZiZmYzOTg3MTg1IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEw
LTA4LTE3ICBNaWhhaSBQYXJwYXJpdGEgIDxtaWhhaXBAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEJhY2sgYnV0dG9uIGFmdGVy
IEdvb2dsZSBzZWFyY2ggcmVzdWx0IGNsaWNrIGJyb2tlbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDQwODYKKworICAgICAgICBUZXN0OiBmYXN0L2hp
c3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1sCisKKyAgICAgICAgRG9uJ3QgY29uc2lkZXIg
c3ViZnJhbWUgbG9hZGluZyBzdGF0ZSB3aGVuIGRldGVybWluaW5nCisgICAgICAgIHdoZXRoZXIg
YSBuYXZpZ2F0aW9uIG9jY3VycmVkIGJlZm9yZSBsb2FkLgorCisgICAgICAgICogbG9hZGVyL0Rv
Y3VtZW50TG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50TG9hZGVyOjppc0xv
YWRpbmdJbkFQSVNlbnNlKTogU3BsaXQgb3V0IGlzTWFpbkZyYW1lTG9hZGluZworICAgICAgICAo
V2ViQ29yZTo6RG9jdW1lbnRMb2FkZXI6OmlzTWFpbkZyYW1lTG9hZGluZyk6CisgICAgICAgICog
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1JlZGlyZWN0U2NoZWR1
bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlZGlyZWN0U2NoZWR1bGVyOjptdXN0TG9ja0Jh
Y2tGb3J3YXJkTGlzdCk6IFVzZSBpc01haW5GcmFtZUxvYWRpbmcgaW5zdGVhZCBvZiBpc0xvYWRp
bmdJbkFQSVNlbnNlCisKIDIwMTAtMDgtMTYgIEdhdmluIEJhcnJhY2xvdWdoICA8YmFycmFjbG91
Z2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJ1YmJlciBzdGFtcGVkIGJ5IFNhbSBXZWluaWcKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcCBiL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcAppbmRleCBmNzI0OTVjZTJjY2JjZDFkNzJlNmE3MDJlNzM5
M2JjYjUzN2ViYzUyLi45OGE4NGJlM2IyNmNiNTc5YzRiZTY4ZWQ3NGVkZDVhYjE0NGI2YzVmIDEw
MDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKKysrIGIvV2ViQ29y
ZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCkBAIC0zODUsNiArMzg1LDExIEBAIGJvb2wgRG9j
dW1lbnRMb2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogewogICAgIC8vIE9uY2Ug
YSBmcmFtZSBoYXMgbG9hZGVkLCB3ZSBubyBsb25nZXIgbmVlZCB0byBjb25zaWRlciBzdWJyZXNv
dXJjZXMsCiAgICAgLy8gYnV0IHdlIHN0aWxsIG5lZWQgdG8gY29uc2lkZXIgc3ViZnJhbWVzLgor
ICAgIHJldHVybiBpc01haW5GcmFtZUxvYWRpbmcoKSB8fCBmcmFtZUxvYWRlcigpLT5zdWJmcmFt
ZUlzTG9hZGluZygpOworfQorCitib29sIERvY3VtZW50TG9hZGVyOjppc01haW5GcmFtZUxvYWRp
bmcoKSBjb25zdAorewogICAgIGlmIChmcmFtZUxvYWRlcigpLT5zdGF0ZSgpICE9IEZyYW1lU3Rh
dGVDb21wbGV0ZSkgewogICAgICAgICBpZiAoIW1fcHJpbWFyeUxvYWRDb21wbGV0ZSAmJiBpc0xv
YWRpbmcoKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzk3LDcgKzQwMiw3IEBAIGJv
b2wgRG9jdW1lbnRMb2FkZXI6OmlzTG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdAogICAgICAgICAg
ICAgaWYgKHBhcnNlci0+cHJvY2Vzc2luZ0RhdGEoKSkKICAgICAgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICB9Ci0gICAgcmV0dXJuIGZyYW1lTG9hZGVyKCktPnN1YmZyYW1lSXNMb2FkaW5n
KCk7CisgICAgcmV0dXJuIGZhbHNlOwogfQogCiB2b2lkIERvY3VtZW50TG9hZGVyOjphZGRBbGxB
cmNoaXZlUmVzb3VyY2VzKEFyY2hpdmUqIGFyY2hpdmUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2xv
YWRlci9Eb2N1bWVudExvYWRlci5oIGIvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuaApp
bmRleCBhODNlMWEzNTk0MDUzM2FjZmVmMmJmZWY3OGE0ZDU2MWM4NWQ5ZGI0Li43OTc0YjgzY2Y2
MTA0NDczNjYwYjQyY2YzZTRlOWIyN2NlY2UxMDNhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRl
ci9Eb2N1bWVudExvYWRlci5oCisrKyBiL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmgK
QEAgLTEwOCw2ICsxMDgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIGJvb2wgaXND
bGllbnRSZWRpcmVjdCgpIGNvbnN0IHsgcmV0dXJuIG1faXNDbGllbnRSZWRpcmVjdDsgfQogICAg
ICAgICB2b2lkIHNldElzQ2xpZW50UmVkaXJlY3QoYm9vbCBpc0NsaWVudFJlZGlyZWN0KSB7IG1f
aXNDbGllbnRSZWRpcmVjdCA9IGlzQ2xpZW50UmVkaXJlY3Q7IH0KICAgICAgICAgYm9vbCBpc0xv
YWRpbmdJbkFQSVNlbnNlKCkgY29uc3Q7CisgICAgICAgIGJvb2wgaXNNYWluRnJhbWVMb2FkaW5n
KCkgY29uc3Q7CiAgICAgICAgIHZvaWQgc2V0UHJpbWFyeUxvYWRDb21wbGV0ZShib29sKTsKICAg
ICAgICAgdm9pZCBzZXRUaXRsZShjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdm9pZCBzZXRJY29u
VVJMKGNvbnN0IFN0cmluZyYpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvUmVkaXJlY3RT
Y2hlZHVsZXIuY3BwIGIvV2ViQ29yZS9sb2FkZXIvUmVkaXJlY3RTY2hlZHVsZXIuY3BwCmluZGV4
IGFhMDJjMzA3NjNiNzUzNThlNWY3OGFiMGI4YzFhNTFmNTM4ZDg5YzEuLmUwNDFjMDg3Yjg4NDA3
OTYxN2Y3MzBlZDY2MjdmYmQ1ZTc0OWM5MGUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL1Jl
ZGlyZWN0U2NoZWR1bGVyLmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9SZWRpcmVjdFNjaGVkdWxl
ci5jcHAKQEAgLTI1Nyw3ICsyNTcsNyBAQCBib29sIFJlZGlyZWN0U2NoZWR1bGVyOjptdXN0TG9j
a0JhY2tGb3J3YXJkTGlzdChGcmFtZSogdGFyZ2V0RnJhbWUsIGJvb2wgd2FzVXNlcgogewogICAg
IC8vIE5vbi11c2VyIG5hdmlnYXRpb24gYmVmb3JlIHRoZSBwYWdlIGhhcyBsb2FkZWQgc2hvdWxk
IG5vdCBjcmVhdGUgYSBuZXcgYmFjay9mb3J3YXJkIGl0ZW0uCiAgICAgLy8gU2VlIGh0dHBzOi8v
d2Via2l0Lm9yZy9iLzQyODYxIGZvciB0aGUgb3JpZ2luYWwgbW90aXZhdGlvbiBmb3IgdGhpcy4g
ICAgCi0gICAgaWYgKCF3YXNVc2VyR2VzdHVyZSAmJiB0YXJnZXRGcmFtZS0+bG9hZGVyKCktPmRv
Y3VtZW50TG9hZGVyKCkgJiYgdGFyZ2V0RnJhbWUtPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigp
LT5pc0xvYWRpbmdJbkFQSVNlbnNlKCkpCisgICAgaWYgKCF3YXNVc2VyR2VzdHVyZSAmJiB0YXJn
ZXRGcmFtZS0+bG9hZGVyKCktPmRvY3VtZW50TG9hZGVyKCkgJiYgdGFyZ2V0RnJhbWUtPmxvYWRl
cigpLT5kb2N1bWVudExvYWRlcigpLT5pc01haW5GcmFtZUxvYWRpbmcoKSkKICAgICAgICAgcmV0
dXJuIHRydWU7CiAgICAgCiAgICAgLy8gTmF2aWdhdGlvbiBvZiBhIHN1YmZyYW1lIGR1cmluZyBs
b2FkaW5nIG9mIGFuIGFuY2VzdG9yIGZyYW1lIGRvZXMgbm90IGNyZWF0ZSBhIG5ldyBiYWNrL2Zv
cndhcmQgaXRlbS4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64607</attachid>
            <date>2010-08-17 10:39:05 -0700</date>
            <delta_ts>2010-08-24 10:23:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-44086-20100817103904.patch</filename>
            <type>text/plain</type>
            <size>11719</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5M2IzZjBhZjRhZDdkNzk3ZDIzY2QyOGE4NDUyYTk1NGQ1ZmZmYjdkLi41N2M3ZDMx
N2Y0OGVhMmRmMWJmNzAwZWYwZDU4NGE2OWYzMTVkNTllIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAK
KzIwMTAtMDgtMTcgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQmFjayBidXR0b24g
YWZ0ZXIgR29vZ2xlIHNlYXJjaCByZXN1bHQgY2xpY2sgYnJva2VuCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NDA4NgorCisgICAgICAgIEFkZGVkIGEg
cmVkdWNlZCB0ZXN0IGNhc2Ugb2YgR29vZ2xlIHNlYXJjaCByZXN1bHQgY2xpY2sgYmVoYXZpb3Is
CisgICAgICAgIHJlbmFtZWQgZ2VzdHVyZS1iZWZvcmUtb25sb2FkLXRhcmdldC5odG1sIHRvIHJl
ZGlyZWN0LXRhcmdldC5odG1sCisgICAgICAgIHNpbmNlIGl0J3MgdXNlZnVsIGZvciB0aGlzIHRl
c3QgdG9vLgorCisgICAgICAgICogZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1m
b3JtLXN1Ym1pdC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9oaXN0b3J5L2dlc3R1cmUt
YmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC5odG1sOgorICAgICAgICAqIGZhc3QvaGlzdG9yeS9n
ZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJlZi1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1sb2NhdGlvbi1ocmVmLmh0bWw6
CisgICAgICAgICogZmFzdC9oaXN0b3J5L3JlZGlyZWN0LXZpYS1pZnJhbWUtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1s
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2lmcmFtZS1yZWRpcmVj
dC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0
LXRhcmdldC5odG1sOiBSZW5hbWVkIGZyb20gTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291
cmNlcy9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtdGFyZ2V0Lmh0bWwuCisKIDIwMTAtMDgtMDkgIEpl
cmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
U3RldmUgQmxvY2suCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVy
ZS1iZWZvcmUtb25sb2FkLWZvcm0tc3VibWl0LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zh
c3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtZm9ybS1zdWJtaXQtZXhwZWN0ZWQudHh0
CmluZGV4IDlmOTY4ZGNmMDFlMjUwNTZjMmEyYmY2MTk1NzM2ZGYzYWY0M2U3N2EuLjY2NjMyY2Ez
Y2M1ZjI3YjQ0MjA0ZjU0ZDNhYzgwZDNlYmM3YTA2NTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtZm9ybS1zdWJtaXQtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQt
Zm9ybS1zdWJtaXQtZXhwZWN0ZWQudHh0CkBAIC01LDUgKzUsNSBAQCBQQVNTOiBIaXN0b3J5IGl0
ZW0gY291bnQgc2hvdWxkIGJlIDIgYW5kIGlzLgogCiA9PT09PT09PT09PT09PSBCYWNrIEZvcndh
cmQgTGlzdCA9PT09PT09PT09PT09PQogICAgICAgICAoZmlsZSB0ZXN0KTpmYXN0L2hpc3Rvcnkv
Z2VzdHVyZS1iZWZvcmUtb25sb2FkLWZvcm0tc3VibWl0Lmh0bWwgICoqbmF2IHRhcmdldCoqCi1j
dXJyLT4gIChmaWxlIHRlc3QpOmZhc3QvaGlzdG9yeS9yZXNvdXJjZXMvZ2VzdHVyZS1iZWZvcmUt
b25sb2FkLXRhcmdldC5odG1sPyMyICAqKm5hdiB0YXJnZXQqKgorY3Vyci0+ICAoZmlsZSB0ZXN0
KTpmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0LXRhcmdldC5odG1sPyMyICAqKm5hdiB0
YXJnZXQqKgogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxv
YWQtZm9ybS1zdWJtaXQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJl
Zm9yZS1vbmxvYWQtZm9ybS1zdWJtaXQuaHRtbAppbmRleCA4NWYyNjg4ZjMzN2I0ODM1OTgxMTk3
YWQ2ZjI0ZmE4YjhhNzk1YWVjLi5hMmQxYWVjODUwNjIwYWQwODI4N2RkNmEyNjQzNzBkNDQ5ZmY0
MmFkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUt
b25sb2FkLWZvcm0tc3VibWl0Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2dl
c3R1cmUtYmVmb3JlLW9ubG9hZC1mb3JtLXN1Ym1pdC5odG1sCkBAIC0xLDcgKzEsNyBAQAogPGhl
YWQ+CiA8L2hlYWQ+CiA8Ym9keSBvbmxvYWQ9Im9ubG9hZCgpIj4KLSAgPGZvcm0gYWN0aW9uPSJy
ZXNvdXJjZXMvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLXRhcmdldC5odG1sIzIiPgorICA8Zm9ybSBh
Y3Rpb249InJlc291cmNlcy9yZWRpcmVjdC10YXJnZXQuaHRtbCMyIj4KICAgICA8aW5wdXQgdHlw
ZT0ic3VibWl0IiBpZD0ibmF2LWJ1dHRvbiIgdmFsdWU9Ik5hdmlnYXRlIj4KICAgPC9mb3JtPgog
ICA8ZGl2IGlkPSJtYW51YWwtZXhwbGFuYXRpb24iIHN0eWxlPSJkaXNwbGF5OiBub25lOyBjb2xv
cjogYmx1ZSI+V2hlbiBydW5uaW5nIHRoaXMgdGVzdCBvdXRzaWRlIG9mIERSVCwgcGxlYXNlIGNs
aWNrIG9uIHRoZSAiTmF2aWdhdGUiIGJ1dHRvbi48L2Rpdj4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJlZi1leHBl
Y3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2Fk
LWxvY2F0aW9uLWhyZWYtZXhwZWN0ZWQudHh0CmluZGV4IDk0ZmVhMTEzYjQzNmUzZGM3ZTM5ZDE0
OGNjNTE0OTk2ZDU3NTEyNWYuLjZlMzlkNmU3OTYwOGYwZmY5ZTU4MzZhNDczNDA2NzhlZDYyYjY3
YzUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1v
bmxvYWQtbG9jYXRpb24taHJlZi1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9o
aXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1sb2NhdGlvbi1ocmVmLWV4cGVjdGVkLnR4dApA
QCAtNSw1ICs1LDUgQEAgUEFTUzogSGlzdG9yeSBpdGVtIGNvdW50IHNob3VsZCBiZSAyIGFuZCBp
cy4KIAogPT09PT09PT09PT09PT0gQmFjayBGb3J3YXJkIExpc3QgPT09PT09PT09PT09PT0KICAg
ICAgICAgKGZpbGUgdGVzdCk6ZmFzdC9oaXN0b3J5L2dlc3R1cmUtYmVmb3JlLW9ubG9hZC1sb2Nh
dGlvbi1ocmVmLmh0bWwgICoqbmF2IHRhcmdldCoqCi1jdXJyLT4gIChmaWxlIHRlc3QpOmZhc3Qv
aGlzdG9yeS9yZXNvdXJjZXMvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLXRhcmdldC5odG1sIzIgICoq
bmF2IHRhcmdldCoqCitjdXJyLT4gIChmaWxlIHRlc3QpOmZhc3QvaGlzdG9yeS9yZXNvdXJjZXMv
cmVkaXJlY3QtdGFyZ2V0Lmh0bWwjMiAgKipuYXYgdGFyZ2V0KioKID09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L2hpc3RvcnkvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLWxvY2F0aW9uLWhyZWYuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJl
Zi5odG1sCmluZGV4IDU2MGFkY2I1NzljZWFlZjU1YTJkY2FkNDIzOWEyYjYxODUxYjRjN2QuLjRj
NTc1NGE0ZDhkMTQ4YzliMDE4NDU3OWE4MDc3ZDg4ZmZjNTdlMmQgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQtbG9jYXRpb24taHJlZi5o
dG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9nZXN0dXJlLWJlZm9yZS1vbmxvYWQt
bG9jYXRpb24taHJlZi5odG1sCkBAIC0yMiw3ICsyMiw3IEBACiAgIH0KIAogICBmdW5jdGlvbiBu
YXYoKSB7Ci0gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdyZXNvdXJjZXMvZ2VzdHVyZS1i
ZWZvcmUtb25sb2FkLXRhcmdldC5odG1sIzInOworICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYg
PSAncmVzb3VyY2VzL3JlZGlyZWN0LXRhcmdldC5odG1sIzInOwogICB9CiAKICAgZnVuY3Rpb24g
b25sb2FkKCkgewpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3JlZGlyZWN0
LXZpYS1pZnJhbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3JlZGly
ZWN0LXZpYS1pZnJhbWUtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZmOTcwMDgxZjQzZTZiMDU0
YjczNDVkNDQ1MjNkZWZmNWFiNTUzZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwx
MCBAQAorVGhpcyBwYWdlIGlzIHRoZSB0YXJnZXQgb2YgYSByZWRpcmVjdC4KKworUEFTUzogSGlz
dG9yeSBpdGVtIGNvdW50IHNob3VsZCBiZSAyIGFuZCBpcy4KKworCis9PT09PT09PT09PT09PSBC
YWNrIEZvcndhcmQgTGlzdCA9PT09PT09PT09PT09PQorICAgICAgICAoZmlsZSB0ZXN0KTpmYXN0
L2hpc3RvcnkvcmVkaXJlY3QtdmlhLWlmcmFtZS5odG1sICAqKm5hdiB0YXJnZXQqKgorICAgICAg
ICAgICAgKGZpbGUgdGVzdCk6ZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9pZnJhbWUtcmVkaXJlY3Qu
aHRtbCMyIChpbiBmcmFtZSAiPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4iKQorY3Vy
ci0+ICAoZmlsZSB0ZXN0KTpmYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0LXRhcmdldC5o
dG1sIzIgICoqbmF2IHRhcmdldCoqCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3JlZGly
ZWN0LXZpYS1pZnJhbWUuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZWRpcmVjdC12
aWEtaWZyYW1lLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjU4ODE2OTFmZGQ4ZDQ0MmI1YzA4OWYzOGMyNmQw
ODE5NGM0MjBiZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9y
ZWRpcmVjdC12aWEtaWZyYW1lLmh0bWwKQEAgLTAsMCArMSwyNiBAQAorPGhlYWQ+Cis8L2hlYWQ+
Cis8Ym9keSBvbmxvYWQ9Im9ubG9hZCgpIj4KKzwvYm9keT4KKzxzY3JpcHQ+CisgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmNs
ZWFyQmFja0ZvcndhcmRMaXN0KCk7CisgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50
aWxEb25lKCk7CisgIH0KKworICBmdW5jdGlvbiBvbmxvYWQoKSB7CisgICAgICAvLyBOYXZpZ2F0
ZSB2aWEgYW4gaWZyYW1lIHJlZGlyZWN0ICh0byBjaGFuZ2UgdGhlIHJlZmVycmVyLCB0aG91Z2gg
d2UncmUKKyAgICAgIC8vIG5vdCBpbnRlcmVzdGVkIGluIHRoYXQgaW4gdGhpcyB0ZXN0KSBzaG91
bGQgc3RpbGwgZ2VuZXJhdGUgYSBoaXN0b3J5CisgICAgICAvLyBlbnRyeSwgc2luY2Ugd2UncmUg
ZG9pbmcgaXQgYWZ0ZXIgb25sb2FkLgorICAgICAgd2luZG93LnNldFRpbWVvdXQobmF2aWdhdGUs
IDApOworICB9CisgIAorICBmdW5jdGlvbiBuYXZpZ2F0ZSgpCisgIHsKKyAgICAgIHZhciByZWRp
cmVjdElmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpOworICAgICAgZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChyZWRpcmVjdElmcmFtZSk7CisgICAgICByZWRpcmVjdElm
cmFtZS5zcmMgPSAncmVzb3VyY2VzL2lmcmFtZS1yZWRpcmVjdC5odG1sIzInOworICB9CisKKzwv
c2NyaXB0PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2Vz
L2lmcmFtZS1yZWRpcmVjdC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291cmNl
cy9pZnJhbWUtcmVkaXJlY3QuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iODM1NzA1Y2NkYjU0ZmQ3NTY3NDFm
ODVlMzJjNWE3MjY4MDU4YTQ1Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9o
aXN0b3J5L3Jlc291cmNlcy9pZnJhbWUtcmVkaXJlY3QuaHRtbApAQCAtMCwwICsxLDMgQEAKKzxz
Y3JpcHQ+CitwYXJlbnQubG9jYXRpb24uaHJlZiA9ICdyZWRpcmVjdC10YXJnZXQuaHRtbCcgKyBs
b2NhdGlvbi5oYXNoOworPC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hp
c3RvcnkvcmVzb3VyY2VzL2dlc3R1cmUtYmVmb3JlLW9ubG9hZC10YXJnZXQuaHRtbCBiL0xheW91
dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZXNvdXJjZXMvcmVkaXJlY3QtdGFyZ2V0Lmh0bWwKc2ltaWxh
cml0eSBpbmRleCAxMDAlCnJlbmFtZSBmcm9tIExheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZXNv
dXJjZXMvZ2VzdHVyZS1iZWZvcmUtb25sb2FkLXRhcmdldC5odG1sCnJlbmFtZSB0byBMYXlvdXRU
ZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL3JlZGlyZWN0LXRhcmdldC5odG1sCmRpZmYgLS1n
aXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDU4OTU4MGIy
ZjhkZTIzZjZhMWI3MjVkNTBlMTIzMTI2ZmY3ODhhMmQuLmU3NGNmMjgwNWU5NTFiZjMyYjJiZGIx
ODI2NzdmMWNkZmNiYTNjYTIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTAtMDgtMTcgIE1paGFpIFBhcnBh
cml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQmFjayBidXR0b24gYWZ0ZXIgR29vZ2xlIHNlYXJjaCByZXN1
bHQgY2xpY2sgYnJva2VuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD00NDA4NgorCisgICAgICAgIFRlc3Q6IGZhc3QvaGlzdG9yeS9yZWRpcmVjdC12aWEt
aWZyYW1lLmh0bWwKKyAgICAgICAgCisgICAgICAgIGlzTG9hZGluZ0luQVBJU2Vuc2UgZG9lc24n
dCBxdWl0ZSBtYXAgdG8gb25sb2FkIChpdCBhbHNvIHJldHVybnMgdHJ1ZQorICAgICAgICBpZiBm
cmFtZXMgYXJlIGxvYWRpbmcsIGV2ZW4gYWZ0ZXIgdGhlIHBhcmVudCBmcmFtZSBoYXMgZmlyZWQg
aXRzIG9ubG9hZAorICAgICAgICBoYW5kbGVyKS4gSW5zdGVhZCwgYWRkIGEgZmxhZyBmb3IgdGhl
IG9ubG9hZCBldmVudCBiZWluZyBmaXJlZCwgYW5kCisgICAgICAgIHVzZSB0aGF0LgorCisgICAg
ICAgICogbG9hZGVyL0RvY3VtZW50TG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50TG9hZGVyOjpEb2N1bWVudExvYWRlcik6CisgICAgICAgICogbG9hZGVyL0RvY3VtZW50TG9h
ZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6aGFuZGxlZE9ubG9hZEV2
ZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6d2FzT25sb2FkSGFuZGxl
ZCk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lTG9hZGVyOjpoYW5kbGVkT25sb2FkRXZlbnRzKToKKyAgICAgICAgKiBsb2FkZXIvUmVk
aXJlY3RTY2hlZHVsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVkaXJlY3RTY2hlZHVsZXI6
Om11c3RMb2NrQmFja0ZvcndhcmRMaXN0KToKKwogMjAxMC0wOC0xMSAgSmVyZW15IE9ybG93ICA8
am9ybG93QGNocm9taXVtLm9yZz4KIAogICAgICAgICBCZWdpbm5pbmdzIG9mIEluZGV4ZWREQiBw
ZXJzaXN0YW5jZSArIElEQkRhdGFiYXNlLmRlc2NyaXB0aW9uIGZsZXNoZWQgb3V0CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAgYi9XZWJDb3JlL2xvYWRlci9E
b2N1bWVudExvYWRlci5jcHAKaW5kZXggZjcyNDk1Y2UyY2NiY2QxZDcyZTZhNzAyZTczOTNiY2I1
MzdlYmM1Mi4uOTc5ODY0MmU1OWMwYmY2YjY1MjFlZTUyZWZhNjMwODNlODQ1NGEyNiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCisrKyBiL1dlYkNvcmUvbG9h
ZGVyL0RvY3VtZW50TG9hZGVyLmNwcApAQCAtODIsNiArODIsNyBAQCBEb2N1bWVudExvYWRlcjo6
RG9jdW1lbnRMb2FkZXIoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXEsIGNvbnN0IFN1YnN0aXR1
dGVEYXRhJgogICAgICwgbV9nb3RGaXJzdEJ5dGUoZmFsc2UpCiAgICAgLCBtX3ByaW1hcnlMb2Fk
Q29tcGxldGUoZmFsc2UpCiAgICAgLCBtX2lzQ2xpZW50UmVkaXJlY3QoZmFsc2UpCisgICAgLCBt
X3dhc09ubG9hZEhhbmRsZWQoZmFsc2UpCiAgICAgLCBtX3N0b3BSZWNvcmRpbmdSZXNwb25zZXMo
ZmFsc2UpCiAgICAgLCBtX3N1YnN0aXR1dGVSZXNvdXJjZURlbGl2ZXJ5VGltZXIodGhpcywgJkRv
Y3VtZW50TG9hZGVyOjpzdWJzdGl0dXRlUmVzb3VyY2VEZWxpdmVyeVRpbWVyRmlyZWQpCiAgICAg
LCBtX2RpZENyZWF0ZUdsb2JhbEhpc3RvcnlFbnRyeShmYWxzZSkKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvbG9hZGVyL0RvY3VtZW50TG9hZGVyLmggYi9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRl
ci5oCmluZGV4IGE4M2UxYTM1OTQwNTMzYWNmZWYyYmZlZjc4YTRkNTYxYzg1ZDlkYjQuLjhlYzNk
YWE3OTllYTQyZjVkMDU2MDA4NDdjNDExNmZmYjRlZjNmOGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
bG9hZGVyL0RvY3VtZW50TG9hZGVyLmgKKysrIGIvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2Fk
ZXIuaApAQCAtMTA3LDYgKzEwNyw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9p
ZCBwcmVwYXJlRm9yTG9hZFN0YXJ0KCk7CiAgICAgICAgIGJvb2wgaXNDbGllbnRSZWRpcmVjdCgp
IGNvbnN0IHsgcmV0dXJuIG1faXNDbGllbnRSZWRpcmVjdDsgfQogICAgICAgICB2b2lkIHNldElz
Q2xpZW50UmVkaXJlY3QoYm9vbCBpc0NsaWVudFJlZGlyZWN0KSB7IG1faXNDbGllbnRSZWRpcmVj
dCA9IGlzQ2xpZW50UmVkaXJlY3Q7IH0KKyAgICAgICAgdm9pZCBoYW5kbGVkT25sb2FkRXZlbnRz
KCkgeyBtX3dhc09ubG9hZEhhbmRsZWQgPSB0cnVlOyB9CisgICAgICAgIGJvb2wgd2FzT25sb2Fk
SGFuZGxlZCgpIHsgcmV0dXJuIG1fd2FzT25sb2FkSGFuZGxlZDsgfQogICAgICAgICBib29sIGlz
TG9hZGluZ0luQVBJU2Vuc2UoKSBjb25zdDsKICAgICAgICAgdm9pZCBzZXRQcmltYXJ5TG9hZENv
bXBsZXRlKGJvb2wpOwogICAgICAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFN0cmluZyYpOwpAQCAt
MjY1LDYgKzI2Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgYm9vbCBtX2dvdEZp
cnN0Qnl0ZTsKICAgICAgICAgYm9vbCBtX3ByaW1hcnlMb2FkQ29tcGxldGU7CiAgICAgICAgIGJv
b2wgbV9pc0NsaWVudFJlZGlyZWN0OworICAgICAgICBib29sIG1fd2FzT25sb2FkSGFuZGxlZDsK
IAogICAgICAgICBTdHJpbmcgbV9wYWdlVGl0bGU7CiAgICAgICAgIFN0cmluZyBtX3BhZ2VJY29u
VVJMOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCmluZGV4IDBlNWRlMWVhMDg4YTA1ZWMyMTU2ZmQ5Y2Vl
OTA4NjIzNTcwZGQ3NzAuLjI0ODg4ZjI3ZTllYTE5MDY3MmUyMDNlZjg1NjMwZDU5YTkzNWUyMDgg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTI1NTIsMTAgKzI1NTIsMTIgQEAgdm9pZCBGcmFt
ZUxvYWRlcjo6aGFuZGxlZE9ubG9hZEV2ZW50cygpCiB7CiAgICAgbV9jbGllbnQtPmRpc3BhdGNo
RGlkSGFuZGxlT25sb2FkRXZlbnRzKCk7CiAKKyAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKSkgewor
ICAgICAgICBkb2N1bWVudExvYWRlcigpLT5oYW5kbGVkT25sb2FkRXZlbnRzKCk7CiAjaWYgRU5B
QkxFKE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKLSAgICBpZiAoZG9jdW1lbnRMb2FkZXIoKSkK
ICAgICAgICAgZG9jdW1lbnRMb2FkZXIoKS0+YXBwbGljYXRpb25DYWNoZUhvc3QoKS0+c3RvcERl
ZmVycmluZ0V2ZW50cygpOwogI2VuZGlmCisgICAgfQogfQogCiB2b2lkIEZyYW1lTG9hZGVyOjpm
cmFtZURldGFjaGVkKCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL1JlZGlyZWN0U2NoZWR1
bGVyLmNwcCBiL1dlYkNvcmUvbG9hZGVyL1JlZGlyZWN0U2NoZWR1bGVyLmNwcAppbmRleCBhYTAy
YzMwNzYzYjc1MzU4ZTVmNzhhYjBiOGMxYTUxZjUzOGQ4OWMxLi5kOTY5ZjMwY2NmMmIyNjY0OTEz
ZDI5Yzc2ZTI3YmVmZTc3MTA2NGRkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9SZWRpcmVj
dFNjaGVkdWxlci5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvUmVkaXJlY3RTY2hlZHVsZXIuY3Bw
CkBAIC0yNTUsOSArMjU1LDkgQEAgdm9pZCBSZWRpcmVjdFNjaGVkdWxlcjo6c2NoZWR1bGVSZWRp
cmVjdChkb3VibGUgZGVsYXksIGNvbnN0IFN0cmluZyYgdXJsKQogCiBib29sIFJlZGlyZWN0U2No
ZWR1bGVyOjptdXN0TG9ja0JhY2tGb3J3YXJkTGlzdChGcmFtZSogdGFyZ2V0RnJhbWUsIGJvb2wg
d2FzVXNlckdlc3R1cmUpCiB7Ci0gICAgLy8gTm9uLXVzZXIgbmF2aWdhdGlvbiBiZWZvcmUgdGhl
IHBhZ2UgaGFzIGxvYWRlZCBzaG91bGQgbm90IGNyZWF0ZSBhIG5ldyBiYWNrL2ZvcndhcmQgaXRl
bS4KKyAgICAvLyBOb24tdXNlciBuYXZpZ2F0aW9uIGJlZm9yZSB0aGUgcGFnZSBoYXMgZmluaXNo
ZWQgZmlyaW5nIG9ubG9hZCBzaG91bGQgbm90IGNyZWF0ZSBhIG5ldyBiYWNrL2ZvcndhcmQgaXRl
bS4KICAgICAvLyBTZWUgaHR0cHM6Ly93ZWJraXQub3JnL2IvNDI4NjEgZm9yIHRoZSBvcmlnaW5h
bCBtb3RpdmF0aW9uIGZvciB0aGlzLiAgICAKLSAgICBpZiAoIXdhc1VzZXJHZXN0dXJlICYmIHRh
cmdldEZyYW1lLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIoKSAmJiB0YXJnZXRGcmFtZS0+bG9h
ZGVyKCktPmRvY3VtZW50TG9hZGVyKCktPmlzTG9hZGluZ0luQVBJU2Vuc2UoKSkKKyAgICBpZiAo
IXdhc1VzZXJHZXN0dXJlICYmIHRhcmdldEZyYW1lLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIo
KSAmJiAhdGFyZ2V0RnJhbWUtPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT53YXNPbmxvYWRI
YW5kbGVkKCkpCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIAogICAgIC8vIE5hdmlnYXRpb24g
b2YgYSBzdWJmcmFtZSBkdXJpbmcgbG9hZGluZyBvZiBhbiBhbmNlc3RvciBmcmFtZSBkb2VzIG5v
dCBjcmVhdGUgYSBuZXcgYmFjay9mb3J3YXJkIGl0ZW0uCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>65291</attachid>
            <date>2010-08-24 10:23:50 -0700</date>
            <delta_ts>2010-08-24 10:24:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-44086-20100824102348.patch</filename>
            <type>text/plain</type>
            <size>15724</size>
            <attacher name="Mihai Parparita">mihaip</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBiZjEyOWM5YjAyYTlkZmI5MTc0YzBkYWU0Mzk1MmRmOGEzNTlmN2E0Li4wNzM1MjIx
MWU1OTRmZWY2NDM1Yzg5NWI2ZjgxN2VjNjJmODY1ZmZjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMDgtMjQgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3Jhc2ggaW4gSGlz
dG9yeUNvbnRyb2xsZXI6OnJlY3Vyc2l2ZUdvVG9JdGVtIHdoZW4gbmF2aWdhdGluZyBpbiBhIGZy
YW1lCisgICAgICAgIHdoaWxlIGFub3RoZXIgZnJhbWUgaGFzIGEgY3VzdG9tIHdpbmRvdyBuYW1l
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NDE4Mwor
ICAgICAgICAKKyAgICAgICAgQWRkIGEgdGVzdCB0byBjaGVjayB0aGF0IHdlIGNhbiBoYW5kbGUg
bmF2aWdhdGlvbiBmcm9tIGEgdG9wLWxldmVsIGZyYW1lCisgICAgICAgIHdoZW4gb25lIG9mIHRo
ZSBjaGlsZCBmcmFtZXMgc2V0cyB3aW5kb3cubmFtZSBhZnRlciBsb2FkLgorCisgICAgICAgICog
ZmFzdC9oaXN0b3J5L2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9oaXN0b3J5L2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLmh0
bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvaGlzdG9yeS9yZXNvdXJjZXMvaGlzdG9yeS1zdWJm
cmFtZS13aXRoLW5hbWUtMi5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2hpc3RvcnkvcmVz
b3VyY2VzL2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLTMuaHRtbDogQWRkZWQuCisgICAgICAg
ICogZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9oaXN0b3J5LXN1YmZyYW1lLXdpdGgtbmFtZS1jb250
YWluZXIuaHRtbDogQWRkZWQuCisKIDIwMTAtMDgtMTkgIE1paGFpIFBhcnBhcml0YSAgPG1paGFp
cEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvaGlzdG9yeS1zdWJmcmFtZS13aXRo
LW5hbWUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2hpc3Rvcnktc3Vi
ZnJhbWUtd2l0aC1uYW1lLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yNmM0NGFiNzkyMDFkN2Ri
ODJiYWEzYWM5ZGM3YzQ1MDlhNTVkZWQxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9oaXN0b3J5L2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDE0IEBACittYWluIGZyYW1lIC0gaGFzIDEgb251bmxvYWQgaGFuZGxlcihzKQorbWFp
biBmcmFtZSAtIGhhcyAxIG9udW5sb2FkIGhhbmRsZXIocykKK21haW4gZnJhbWUgLSBoYXMgMSBv
bnVubG9hZCBoYW5kbGVyKHMpCitWZXJpZmllcyB0aGF0IHdlIGNhbiBnbyBiYWNrIGFuZCBmb3J3
YXJkIGZyb20gdGhlIHRvcCBsZXZlbCBvZiBhIGZyYW1lIHNldCB3aGVyZSBhIHdpbmRvdyBjaGFu
Z2VzIGl0cyBuYW1lIGFmdGVyIHRoZSBpbml0aWFsIGxvYWQuCisKK09uIHN1Y2Nlc3MsIHlvdSB3
aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENP
TVBMRVRFIi4KKworCitQQVNTIDIgaXMgY3VycmVudFBhZ2VJZAorUEFTUyAzIGlzIGN1cnJlbnRQ
YWdlSWQKK1BBU1MgMiBpcyBjdXJyZW50UGFnZUlkCitQQVNTIDMgaXMgY3VycmVudFBhZ2VJZAor
UEFTUyBDb21wbGV0ZTogbmF2aWdhdGVkIHRocm91Z2ggYWxsIHRoZSBzdGF0ZXMKKwpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1l
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvaGlzdG9yeS1zdWJmcmFtZS13aXRoLW5h
bWUuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi5mMTkyMDEwZmFhMzI4YmQzNTk4NzhlZmYwN2I3OWZjNWQxMTQ0
ODA0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L2hpc3Rvcnkt
c3ViZnJhbWUtd2l0aC1uYW1lLmh0bWwKQEAgLTAsMCArMSw3MSBAQAorPGhlYWQ+Cis8bGluayBy
ZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+
Cis8c2NyaXB0IHNyYz0iLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8cHJlIGlkPSJjb25z
b2xlIj48L3ByZT4KKzxzY3JpcHQ+CitkZXNjcmlwdGlvbignVmVyaWZpZXMgdGhhdCB3ZSBjYW4g
Z28gYmFjayBhbmQgZm9yd2FyZCBmcm9tIHRoZSB0b3AgbGV2ZWwgb2YgYSBmcmFtZSBzZXQgd2hl
cmUgYSB3aW5kb3cgY2hhbmdlcyBpdHMgbmFtZSBhZnRlciB0aGUgaW5pdGlhbCBsb2FkLicpOwor
Cit2YXIgdGVzdFdpbmRvdzsKKworb25sb2FkID0gZnVuY3Rpb24oKQoreworICAgIGlmICh3aW5k
b3cubGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIu
c2V0Q2FuT3BlbldpbmRvd3MoKTsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFz
VGV4dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7Cisg
ICAgfQorICAgIAorICAgIHRlc3RXaW5kb3cgPSB3aW5kb3cub3BlbigncmVzb3VyY2VzL2hpc3Rv
cnktc3ViZnJhbWUtd2l0aC1uYW1lLWNvbnRhaW5lci5odG1sJyk7CisgICAgaWYgKCF0ZXN0V2lu
ZG93KQorICAgICAgICB0ZXN0RmFpbGVkKCdDb3VsZCBub3Qgb3BlbiB0ZXN0IHdpbmRvdycpOyAg
ICAKK30KKwordmFyIFN0YXRlID0geworICAwOiAnSU5JVElBTCcsCisgIDE6ICdGUkFNRV9MT0FE
RURfSU5JVElBTCcsCisgIDI6ICdGUkFNRV9MT0FERURfTkFWJywKKyAgMzogJ0ZSQU1FX0xPQURF
RF9CQUNLJywKKyAgNDogJ0ZSQU1FX0xPQURFRF9GT1JXQVJEJworfTsKKwordmFyIGN1cnJlbnRT
dGF0ZSA9IDA7Cit2YXIgY3VycmVudFBhZ2VJZDsKKworZnVuY3Rpb24gb25GcmFtZUxvYWRlZChw
YWdlSWQpCit7CisgICAgLy8gVGhlIHBhZ2UgSUQgaXMgcHV0IGluIGEgZ2xvYmFsIHNvIHRoYXQg
dGhlIGV2YWwoKSBpbnNpZGUgb2Ygc2hvdWxkQmUgY2FuCisgICAgLy8gc2VlIGl0CisgICAgY3Vy
cmVudFBhZ2VJZCA9IHBhZ2VJZDsgICAgCisgICAgY3VycmVudFN0YXRlKys7CisgICAgCisgICAg
c3dpdGNoIChjdXJyZW50U3RhdGUpIHsKKyAgICAgIGNhc2UgMToKKyAgICAgICAgICBzaG91bGRC
ZSgnMicsICdjdXJyZW50UGFnZUlkJyk7CisgICAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIDI6
CisgICAgICAgICAgc2hvdWxkQmUoJzMnLCAnY3VycmVudFBhZ2VJZCcpOworICAgICAgICAgIHRl
c3RXaW5kb3cuaGlzdG9yeS5iYWNrKCk7CisgICAgICAgICAgYnJlYWs7CisgICAgICBjYXNlIDM6
CisgICAgICAgICAgc2hvdWxkQmUoJzInLCAnY3VycmVudFBhZ2VJZCcpOworICAgICAgICAgIHRl
c3RXaW5kb3cuaGlzdG9yeS5mb3J3YXJkKCk7CisgICAgICAgICAgYnJlYWs7CisgICAgICBjYXNl
IDQ6CisgICAgICAgICAgc2hvdWxkQmUoJzMnLCAnY3VycmVudFBhZ2VJZCcpOworICAgICAgICAg
IGJyZWFrOworICAgICAgZGVmYXVsdDoKKyAgICAgICAgICB0ZXN0RmFpbGVkKCdTaG91bGQgbm90
IGJlIGluIHN0YXRlICcgKyBjdXJyZW50U3RhdGUpOworICAgICAgICAgIGJyZWFrOworICAgIH0K
KyAgICAKKyAgICBpZiAoY3VycmVudFN0YXRlID09IDQpIHsKKyAgICAgICAgdGVzdFBhc3NlZCgn
Q29tcGxldGU6IG5hdmlnYXRlZCB0aHJvdWdoIGFsbCB0aGUgc3RhdGVzJyk7CisgICAgICAgIGlm
ICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfQorfQorPC9zY3JpcHQ+Cis8L2JvZHk+CmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2hpc3Rvcnktc3ViZnJh
bWUtd2l0aC1uYW1lLTIuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZXNvdXJjZXMv
aGlzdG9yeS1zdWJmcmFtZS13aXRoLW5hbWUtMi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRjZDY1ODc5YjQ5
MGVlYzNhOTYyMzU2ZGUyNDUyMDRmYjZlMzIyZTIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLTIu
aHRtbApAQCAtMCwwICsxLDExIEBACis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8c2NyaXB0
PiAKKyAgZnVuY3Rpb24gcnVuVGVzdCgpCisgIHsKKyAgICAgIHBhcmVudC5vcGVuZXIub25GcmFt
ZUxvYWRlZCgyKTsKKyAgICAgIC8vIE1ha2Ugc3VyZSB3ZSBnZW5lcmF0ZSBhIGhpc3RvcnkgZW50
cnkKKyAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7bG9jYXRpb24uaHJlZiA9ICdoaXN0b3J5
LXN1YmZyYW1lLXdpdGgtbmFtZS0zLmh0bWwnO30sIDApOworICB9Cis8L3NjcmlwdD4KK0ZBSUw6
IGZyYW1lIDIKKzwvYm9keT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2hpc3Rvcnktc3ViZnJhbWUtd2l0
aC1uYW1lLTMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvaGlzdG9yeS9yZXNvdXJjZXMvaGlzdG9y
eS1zdWJmcmFtZS13aXRoLW5hbWUtMy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjdmM2EyODVmNTI4NzI3YTc3
NzllN2FkMDdiYTU1M2RlNTA0NDhjMDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2hpc3RvcnkvcmVzb3VyY2VzL2hpc3Rvcnktc3ViZnJhbWUtd2l0aC1uYW1lLTMuaHRtbApA
QCAtMCwwICsxLDMgQEAKKzxib2R5IG9ubG9hZD0icGFyZW50Lm9wZW5lci5vbkZyYW1lTG9hZGVk
KDMpIj4KK1BBU1M6IGZyYW1lIDMKKzwvYm9keT4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2hpc3RvcnkvcmVzb3VyY2VzL2hpc3Rvcnkt
c3ViZnJhbWUtd2l0aC1uYW1lLWNvbnRhaW5lci5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0
b3J5L3Jlc291cmNlcy9oaXN0b3J5LXN1YmZyYW1lLXdpdGgtbmFtZS1jb250YWluZXIuaHRtbApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zYWI4ZGI4ZGFhZjRkMTllYWM2NDVjMDhkMGUyZGMyMTgxNDdmMzBkCi0tLSAv
ZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9oaXN0b3J5L3Jlc291cmNlcy9oaXN0b3J5
LXN1YmZyYW1lLXdpdGgtbmFtZS1jb250YWluZXIuaHRtbApAQCAtMCwwICsxLDYgQEAKKzxzY3Jp
cHQ+CisvLyBEaXNhYmxlIHRoZSBwYWdlIGNhY2hlIHdoZW4gcnVubmluZyBpbnNpZGUgb2YgU2Fm
YXJpCitvbnVubG9hZCA9IGZ1bmN0aW9uKCkge307Cis8L3NjcmlwdD4KKzxpZnJhbWUgc3JjPSJo
aXN0b3J5LXN1YmZyYW1lLXdpdGgtbmFtZS0yLmh0bWwiPjwvaWZyYW1lPgorPGlmcmFtZSBzcmM9
ImRhdGE6dGV4dC9odG1sLDxzY3JpcHQ+d2luZG93Lm5hbWU9J2Zvbyc7PC9zY3JpcHQ+d2luZG93
IHRoYXQgY2hhbmdlcyBpdHMgbmFtZSI+PC9pZnJhbWU+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0No
YW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGU0MWViMDI5MjhmOTE5MTlmMWIwNmRj
NWQ5ZDRhOGI0Yjk3NmE0NzYuLjE2ZmVmNWU5NmI4Mjk1ZGU1ZGRhMmE0YTczYTUwZjc2ZWQyNjFm
YWMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMzkgQEAKKzIwMTAtMDgtMjQgIE1paGFpIFBhcnBhcml0YSAgPG1paGFpcEBj
aHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQ3Jhc2ggaW4gSGlzdG9yeUNvbnRyb2xsZXI6OnJlY3Vyc2l2ZUdvVG9JdGVtIHdoZW4g
bmF2aWdhdGluZyBpbiBhIGZyYW1lCisgICAgICAgIHdoaWxlIGFub3RoZXIgZnJhbWUgaGFzIGEg
Y3VzdG9tIHdpbmRvdyBuYW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD00NDE4MworICAgICAgICAKKyAgICAgICAgRml4IHVwIEhpc3RvcnlDb250cm9s
bGVyOjpyZWN1cnNpdmVHb1RvSXRlbSB0byBiZXR0ZXIgY2hlY2sgd2hldGhlciB0aGUKKyAgICAg
ICAgY3VycmVudCBkb2N1bWVudCBmcmFtZXMsIHRoZSBjdXJlbnQgaGlzdG9yeSBpdGVtIGZyYW1l
cywgYW5kIHRoZQorICAgICAgICBkZXN0aW5hdGlvbiBoaXN0b3J5IGZyYW1lcyBtYXRjaCB1cC4K
KyAgICAgICAgCisgICAgICAgIFRlc3Q6IGZhc3QvaGlzdG9yeS9oaXN0b3J5LXN1YmZyYW1lLXdp
dGgtbmFtZS5odG1sCisKKyAgICAgICAgKiBoaXN0b3J5L0hpc3RvcnlJdGVtLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6Okhpc3RvcnlJdGVtOjpjaGlsZEl0ZW1XaXRoRG9jdW1lbnRTZXF1ZW5jZU51
bWJlcik6IEFkZCBsaW5lYXIKKyAgICAgICAgbG9va3VwIG9mIGNoaWxkIGJ5IGRvY3VtZW50IHNl
cXVlbmNlIG51bWJlcgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUl0ZW06Omhhc1NhbWVEb2N1
bWVudHMpOiBSZW1vdmUgYXNzdW1wdGlvbiB0aGF0IHRoZQorICAgICAgICBvdGhlciBpdGVtIGhh
cyB0aGUgY2hpbGRyZW4gaW4gdGhlIHNhbWUgb3JkZXIgKGl0IGRvZXNuJ3Qgc2VlbSB0byBiZQor
ICAgICAgICB0cnVlKQorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUl0ZW06Omhhc1NhbWVGcmFt
ZXMpOiBBZGQgcmVjdXJzaXZlIGNvbXBhcmlzb24gb2YgY2hpbGQKKyAgICAgICAgZnJhbWVzLgor
ICAgICAgICAqIGhpc3RvcnkvSGlzdG9yeUl0ZW0uaDoKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmxvYWRJdGVtKTogQ29t
cGFyZSBmdWxsIHNldCBvZiBkb2N1bWVudHMgaW4gCisgICAgICAgIGhpc3RvcnkgaXRlbXMsIG5v
dCBqdXN0IHRoZSB0b3Btb3N0IG9uZXMuIE90aGVyd2lzZSB3aGVuIGdvaW5nIGJldHdlZW4KKyAg
ICAgICAgZnJhbWVzZXRzIHdoZXJlIG9ubHkgb25lIG9mIHRoZSBzdWJmcmFtZXMgY2hhbmdlZCB3
ZSB3b3VsZG4ndCB0cmlnZ2VyIGEKKyAgICAgICAgbG9hZC4KKyAgICAgICAgKiBsb2FkZXIvSGlz
dG9yeUNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SGlzdG9yeUNvbnRyb2xsZXI6
OnJlY3Vyc2l2ZUdvVG9JdGVtKTogQWxzbyBjaGVjayB0aGF0IHRoZQorICAgICAgICB0d28gaGlz
dG9yeSBpdGVtcyBoYXZlIHRoZSBzYW1lIGZyYW1lcworICAgICAgICAoV2ViQ29yZTo6SGlzdG9y
eUNvbnRyb2xsZXI6OmN1cnJlbnRGcmFtZXNNYXRjaEl0ZW0pOiBSZWZhY3RvciAKKyAgICAgICAg
Y2hpbGRGcmFtZXNNYXRjaEl0ZW0gdG8gYWxzbyBjaGVjayB0aGUgdG9wLW1vc3QgZnJhbWUsIHRv
IG1ha2UgCisgICAgICAgIHJlY3Vyc2l2ZUdvVG9JdGVtIGVhc2llciB0byByZWFkLgorICAgICAg
ICAqIGxvYWRlci9IaXN0b3J5Q29udHJvbGxlci5oOgorCiAyMDEwLTA4LTE5ICBNaWhhaSBQYXJw
YXJpdGEgIDxtaWhhaXBAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9oaXN0b3J5L0hpc3RvcnlJdGVtLmNwcCBi
L1dlYkNvcmUvaGlzdG9yeS9IaXN0b3J5SXRlbS5jcHAKaW5kZXggMzQwOWY4MWRkNGE5ZTk4ODU0
ZDNkYTE0YTVjYWY4NjIzYzUzOWE1OC4uNzg2MWQ4MWUzNTBhNGE2OTZiNzdiYTE3OGFhZThhOTFm
ZGVmMmU5ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9oaXN0b3J5L0hpc3RvcnlJdGVtLmNwcAorKysg
Yi9XZWJDb3JlL2hpc3RvcnkvSGlzdG9yeUl0ZW0uY3BwCkBAIC00NDYsNiArNDQ2LDE3IEBAIEhp
c3RvcnlJdGVtKiBIaXN0b3J5SXRlbTo6Y2hpbGRJdGVtV2l0aFRhcmdldChjb25zdCBTdHJpbmcm
IHRhcmdldCkgY29uc3QKICAgICByZXR1cm4gMDsKIH0KIAorSGlzdG9yeUl0ZW0qIEhpc3RvcnlJ
dGVtOjpjaGlsZEl0ZW1XaXRoRG9jdW1lbnRTZXF1ZW5jZU51bWJlcihsb25nIGxvbmcgbnVtYmVy
KSBjb25zdAoreworICAgIHVuc2lnbmVkIHNpemUgPSBtX2NoaWxkcmVuLnNpemUoKTsKKyAgICBm
b3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7CisgICAgICAgIGlmIChtX2NoaWxk
cmVuW2ldLT5kb2N1bWVudFNlcXVlbmNlTnVtYmVyKCkgPT0gbnVtYmVyKQorICAgICAgICAgICAg
cmV0dXJuIG1fY2hpbGRyZW5baV0uZ2V0KCk7CisgICAgfQorICAgIHJldHVybiAwOworfQorCisK
IC8vIDxyZGFyOi8vcHJvYmxlbS80ODk1ODQ5PiBIaXN0b3J5SXRlbTo6ZmluZFRhcmdldEl0ZW0o
KSBzaG91bGQgYmUgcmVwbGFjZWQgd2l0aCBhIG5vbi1yZWN1cnNpdmUgbWV0aG9kLgogSGlzdG9y
eUl0ZW0qIEhpc3RvcnlJdGVtOjpmaW5kVGFyZ2V0SXRlbSgpCiB7CkBAIC00ODAsNiArNDkxLDgg
QEAgdm9pZCBIaXN0b3J5SXRlbTo6Y2xlYXJDaGlsZHJlbigpCiAgICAgbV9jaGlsZHJlbi5jbGVh
cigpOwogfQogCisvLyBEb2VzIGEgcmVjdXJzaXZlIGNoZWNrIHRoYXQgdGhpcyBpdGVtIGFuZCBp
dHMgZGVzY2VuZGFudHMgaGF2ZSB0aGUgc2FtZQorLy8gZG9jdW1lbnQgc2VxdWVuY2UgbnVtYmVy
cyBhcyB0aGUgb3RoZXIgaXRlbS4KIGJvb2wgSGlzdG9yeUl0ZW06Omhhc1NhbWVEb2N1bWVudHMo
SGlzdG9yeUl0ZW0qIG90aGVySXRlbSkKIHsKICAgICBpZiAoZG9jdW1lbnRTZXF1ZW5jZU51bWJl
cigpICE9IG90aGVySXRlbS0+ZG9jdW1lbnRTZXF1ZW5jZU51bWJlcigpKQpAQCAtNDg3LDEyICs1
MDAsMzIgQEAgYm9vbCBIaXN0b3J5SXRlbTo6aGFzU2FtZURvY3VtZW50cyhIaXN0b3J5SXRlbSog
b3RoZXJJdGVtKQogICAgICAgICAKICAgICBpZiAoY2hpbGRyZW4oKS5zaXplKCkgIT0gb3RoZXJJ
dGVtLT5jaGlsZHJlbigpLnNpemUoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIAorCiAg
ICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjaGlsZHJlbigpLnNpemUoKTsgaSsrKSB7Ci0gICAg
ICAgIGlmICghY2hpbGRyZW4oKVtpXS0+aGFzU2FtZURvY3VtZW50cyhvdGhlckl0ZW0tPmNoaWxk
cmVuKClbaV0uZ2V0KCkpKQorICAgICAgICBIaXN0b3J5SXRlbSogY2hpbGQgPSBjaGlsZHJlbigp
W2ldLmdldCgpOworICAgICAgICBIaXN0b3J5SXRlbSogb3RoZXJDaGlsZCA9IG90aGVySXRlbS0+
Y2hpbGRJdGVtV2l0aERvY3VtZW50U2VxdWVuY2VOdW1iZXIoY2hpbGQtPmRvY3VtZW50U2VxdWVu
Y2VOdW1iZXIoKSk7CisgICAgICAgIGlmICghb3RoZXJDaGlsZCB8fCAhY2hpbGQtPmhhc1NhbWVE
b2N1bWVudHMob3RoZXJDaGlsZCkpCiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQot
ICAgIAorCisgICAgcmV0dXJuIHRydWU7Cit9CisKKy8vIERvZXMgYSBub24tcmVjdXJzaXZlIGNo
ZWNrIHRoYXQgdGhpcyBpdGVtIGFuZCBpdHMgaW1tZWRpYXRlIGNoaWxkcmVuIGhhdmUgdGhlCisv
LyBzYW1lIGZyYW1lcyBhcyB0aGUgb3RoZXIgaXRlbS4KK2Jvb2wgSGlzdG9yeUl0ZW06Omhhc1Nh
bWVGcmFtZXMoSGlzdG9yeUl0ZW0qIG90aGVySXRlbSkKK3sKKyAgICBpZiAodGFyZ2V0KCkgIT0g
b3RoZXJJdGVtLT50YXJnZXQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAKKyAg
ICBpZiAoY2hpbGRyZW4oKS5zaXplKCkgIT0gb3RoZXJJdGVtLT5jaGlsZHJlbigpLnNpemUoKSkK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBjaGls
ZHJlbigpLnNpemUoKTsgaSsrKSB7CisgICAgICAgIGlmICghb3RoZXJJdGVtLT5jaGlsZEl0ZW1X
aXRoVGFyZ2V0KGNoaWxkcmVuKClbaV0tPnRhcmdldCgpKSkKKyAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICB9CisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9oaXN0b3J5L0hpc3RvcnlJdGVtLmggYi9XZWJDb3JlL2hpc3RvcnkvSGlzdG9yeUl0ZW0uaApp
bmRleCBkZmRiYzQzM2M3OWI0ZjU5MWRkOTRkZjIwMGU0MjBjZGI3ZmI1OGY5Li5iMTFhOTJlYjQy
MWFhZjZkNDJmODg3NmNlMjdhMjAyN2NkYjQwOTJmIDEwMDY0NAotLS0gYS9XZWJDb3JlL2hpc3Rv
cnkvSGlzdG9yeUl0ZW0uaAorKysgYi9XZWJDb3JlL2hpc3RvcnkvSGlzdG9yeUl0ZW0uaApAQCAt
MTU1LDEyICsxNTUsMTQgQEAgcHVibGljOgogICAgIHZvaWQgYWRkQ2hpbGRJdGVtKFBhc3NSZWZQ
dHI8SGlzdG9yeUl0ZW0+KTsKICAgICB2b2lkIHNldENoaWxkSXRlbShQYXNzUmVmUHRyPEhpc3Rv
cnlJdGVtPik7CiAgICAgSGlzdG9yeUl0ZW0qIGNoaWxkSXRlbVdpdGhUYXJnZXQoY29uc3QgU3Ry
aW5nJikgY29uc3Q7CisgICAgSGlzdG9yeUl0ZW0qIGNoaWxkSXRlbVdpdGhEb2N1bWVudFNlcXVl
bmNlTnVtYmVyKGxvbmcgbG9uZyBudW1iZXIpIGNvbnN0OwogICAgIEhpc3RvcnlJdGVtKiB0YXJn
ZXRJdGVtKCk7CiAgICAgY29uc3QgSGlzdG9yeUl0ZW1WZWN0b3ImIGNoaWxkcmVuKCkgY29uc3Q7
CiAgICAgYm9vbCBoYXNDaGlsZHJlbigpIGNvbnN0OwogICAgIHZvaWQgY2xlYXJDaGlsZHJlbigp
OwogICAgIAogICAgIGJvb2wgaGFzU2FtZURvY3VtZW50cyhIaXN0b3J5SXRlbSogb3RoZXJJdGVt
KTsKKyAgICBib29sIGhhc1NhbWVGcmFtZXMoSGlzdG9yeUl0ZW0qIG90aGVySXRlbSk7CiAKICAg
ICAvLyBUaGlzIHNob3VsZCBub3QgYmUgY2FsbGVkIGRpcmVjdGx5IGZvciBIaXN0b3J5SXRlbXMg
dGhhdCBhcmUgYWxyZWFkeSBpbmNsdWRlZAogICAgIC8vIGluIEdsb2JhbEhpc3RvcnkuIFRoZSBX
ZWJLaXQgYXBpIGZvciB0aGlzIGlzIHRvIHVzZSAtW1dlYkhpc3Rvcnkgc2V0TGFzdFZpc2l0ZWRU
aW1lSW50ZXJ2YWw6Zm9ySXRlbTpdIGluc3RlYWQuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRl
ci9GcmFtZUxvYWRlci5jcHAgYi9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXgg
MjQ4ODhmMjdlOWVhMTkwNjcyZTIwM2VmODU2MzBkNTlhOTM1ZTIwOC4uYzQ4NDFjZmI4MzlkNzA0
OGQ2NzZmOGRhZDhkYjYzNWJlZGRmMmUyZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvRnJh
bWVMb2FkZXIuY3BwCisrKyBiL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcApAQCAtMzIy
OCwxMSArMzIyOCwxMSBAQCB2b2lkIEZyYW1lTG9hZGVyOjpuYXZpZ2F0ZVRvRGlmZmVyZW50RG9j
dW1lbnQoSGlzdG9yeUl0ZW0qIGl0ZW0sIEZyYW1lTG9hZFR5cGUgbAogdm9pZCBGcmFtZUxvYWRl
cjo6bG9hZEl0ZW0oSGlzdG9yeUl0ZW0qIGl0ZW0sIEZyYW1lTG9hZFR5cGUgbG9hZFR5cGUpCiB7
CiAgICAgLy8gV2UgZG8gc2FtZS1kb2N1bWVudCBuYXZpZ2F0aW9uIGluIHRoZSBmb2xsb3dpbmcg
Y2FzZXM6Ci0gICAgLy8gLSBUaGUgSGlzdG9yeUl0ZW0gY29ycmVzcG9uZHMgdG8gdGhlIHNhbWUg
ZG9jdW1lbnQuCisgICAgLy8gLSBUaGUgSGlzdG9yeUl0ZW0gY29ycmVzcG9uZHMgdG8gdGhlIHNh
bWUgZG9jdW1lbnQgKG9yIGRvY3VtZW50cyBpbiB0aGUgY2FzZSBvZiBmcmFtZXMpLgogICAgIC8v
IC0gVGhlIEhpc3RvcnlJdGVtIGlzIG5vdCB0aGUgc2FtZSBhcyB0aGUgY3VycmVudCBpdGVtLgog
ICAgIEhpc3RvcnlJdGVtKiBjdXJyZW50SXRlbSA9IGhpc3RvcnkoKS0+Y3VycmVudEl0ZW0oKTsK
ICAgICBib29sIHNhbWVEb2N1bWVudE5hdmlnYXRpb24gPSBjdXJyZW50SXRlbSAmJiBpdGVtICE9
IGN1cnJlbnRJdGVtCi0gICAgICAgICYmIGl0ZW0tPmRvY3VtZW50U2VxdWVuY2VOdW1iZXIoKSA9
PSBjdXJyZW50SXRlbS0+ZG9jdW1lbnRTZXF1ZW5jZU51bWJlcigpOworICAgICAgICAmJiBpdGVt
LT5oYXNTYW1lRG9jdW1lbnRzKGN1cnJlbnRJdGVtKTsKIAogI2lmIEVOQUJMRShXTUwpCiAgICAg
Ly8gQWxsIFdNTCBkZWNrcyBzaG91bGQgZ28gdGhyb3VnaCB0aGUgcmVhbCBsb2FkIG1lY2hhbmlz
bSwgbm90IHRoZSBzY3JvbGwtdG8tYW5jaG9yIGNvZGUKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9h
ZGVyL0hpc3RvcnlDb250cm9sbGVyLmNwcCBiL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250cm9s
bGVyLmNwcAppbmRleCAxNDRmYWE1YTI4MzA0NDYxYTIyMjQzNjQ5MDQxOTQxMDYwYzcwOTdmLi4x
MWEwMjc3NmQzNDQ0NjUzZTMxZmQwYmM5NzJhYmUwNzNiOTI4ZDQ1IDEwMDY0NAotLS0gYS9XZWJD
b3JlL2xvYWRlci9IaXN0b3J5Q29udHJvbGxlci5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvSGlz
dG9yeUNvbnRyb2xsZXIuY3BwCkBAIC01NTgsOSArNTU4LDEwIEBAIHZvaWQgSGlzdG9yeUNvbnRy
b2xsZXI6OnJlY3Vyc2l2ZUdvVG9JdGVtKEhpc3RvcnlJdGVtKiBpdGVtLCBIaXN0b3J5SXRlbSog
ZnJvbUl0CiAgICAgLy8gdG8gbWF0Y2guCiAgICAgLy8gTm90ZTogSWYgaXRlbSBhbmQgZnJvbUl0
ZW0gYXJlIHRoZSBzYW1lLCB0aGVuIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3CiAgICAgLy8gZG9j
dW1lbnQuCi0gICAgaWYgKGl0ZW0gIT0gZnJvbUl0ZW0gJiYgaXRlbS0+aXRlbVNlcXVlbmNlTnVt
YmVyKCkgPT0gZnJvbUl0ZW0tPml0ZW1TZXF1ZW5jZU51bWJlcigpCi0gICAgICAgICYmICgobV9m
cmFtZS0+dHJlZSgpLT5uYW1lKCkuaXNFbXB0eSgpICYmIGl0ZW0tPnRhcmdldCgpLmlzRW1wdHko
KSkgfHwgbV9mcmFtZS0+dHJlZSgpLT5uYW1lKCkgPT0gaXRlbS0+dGFyZ2V0KCkpCi0gICAgICAg
ICYmIGNoaWxkRnJhbWVzTWF0Y2hJdGVtKGl0ZW0pKQorICAgIGlmIChpdGVtICE9IGZyb21JdGVt
IAorICAgICAgICAmJiBpdGVtLT5pdGVtU2VxdWVuY2VOdW1iZXIoKSA9PSBmcm9tSXRlbS0+aXRl
bVNlcXVlbmNlTnVtYmVyKCkKKyAgICAgICAgJiYgY3VycmVudEZyYW1lc01hdGNoSXRlbShpdGVt
KQorICAgICAgICAmJiBmcm9tSXRlbS0+aGFzU2FtZUZyYW1lcyhpdGVtKSkKICAgICB7CiAgICAg
ICAgIC8vIFRoaXMgY29udGVudCBpcyBnb29kLCBzbyBsZWF2ZSBpdCBhbG9uZSBhbmQgbG9vayBm
b3IgY2hpbGRyZW4gdGhhdCBuZWVkIHJlbG9hZGluZwogICAgICAgICAvLyBTYXZlIGZvcm0gc3Rh
dGUgKHdvcmtzIGZyb20gY3VycmVudEl0ZW0sIHNpbmNlIHByZXZJdGVtIGlzIG5pbCkKQEAgLTU4
NSw3ICs1ODYsNyBAQCB2b2lkIEhpc3RvcnlDb250cm9sbGVyOjpyZWN1cnNpdmVHb1RvSXRlbShI
aXN0b3J5SXRlbSogaXRlbSwgSGlzdG9yeUl0ZW0qIGZyb21JdAogICAgICAgICBmb3IgKGludCBp
ID0gMDsgaSA8IHNpemU7ICsraSkgewogICAgICAgICAgICAgU3RyaW5nIGNoaWxkRnJhbWVOYW1l
ID0gY2hpbGRJdGVtc1tpXS0+dGFyZ2V0KCk7CiAgICAgICAgICAgICBIaXN0b3J5SXRlbSogZnJv
bUNoaWxkSXRlbSA9IGZyb21JdGVtLT5jaGlsZEl0ZW1XaXRoVGFyZ2V0KGNoaWxkRnJhbWVOYW1l
KTsKLSAgICAgICAgICAgIEFTU0VSVChmcm9tQ2hpbGRJdGVtIHx8IGZyb21JdGVtLT5pc1Rhcmdl
dEl0ZW0oKSk7CisgICAgICAgICAgICBBU1NFUlQoZnJvbUNoaWxkSXRlbSk7CiAgICAgICAgICAg
ICBGcmFtZSogY2hpbGRGcmFtZSA9IG1fZnJhbWUtPnRyZWUoKS0+Y2hpbGQoY2hpbGRGcmFtZU5h
bWUpOwogICAgICAgICAgICAgQVNTRVJUKGNoaWxkRnJhbWUpOwogICAgICAgICAgICAgY2hpbGRG
cmFtZS0+bG9hZGVyKCktPmhpc3RvcnkoKS0+cmVjdXJzaXZlR29Ub0l0ZW0oY2hpbGRJdGVtc1tp
XS5nZXQoKSwgZnJvbUNoaWxkSXRlbSwgdHlwZSk7CkBAIC01OTUsMTAgKzU5NiwxMiBAQCB2b2lk
IEhpc3RvcnlDb250cm9sbGVyOjpyZWN1cnNpdmVHb1RvSXRlbShIaXN0b3J5SXRlbSogaXRlbSwg
SGlzdG9yeUl0ZW0qIGZyb21JdAogICAgIH0KIH0KIAotLy8gaGVscGVyIG1ldGhvZCB0aGF0IGRl
dGVybWluZXMgd2hldGhlciB0aGUgc3ViZnJhbWVzIGRlc2NyaWJlZCBieSB0aGUgaXRlbSdzIHN1
Yml0ZW1zCi0vLyBtYXRjaCBvdXIgb3duIGN1cnJlbnQgZnJhbWVzZXQKLWJvb2wgSGlzdG9yeUNv
bnRyb2xsZXI6OmNoaWxkRnJhbWVzTWF0Y2hJdGVtKEhpc3RvcnlJdGVtKiBpdGVtKSBjb25zdAor
Ly8gSGVscGVyIG1ldGhvZCB0aGF0IGRldGVybWluZXMgd2hldGhlciB0aGUgY3VycmVudCBmcmFt
ZSB0cmVlIG1hdGNoZXMgZ2l2ZW4gaGlzdG9yeSBpdGVtJ3MuCitib29sIEhpc3RvcnlDb250cm9s
bGVyOjpjdXJyZW50RnJhbWVzTWF0Y2hJdGVtKEhpc3RvcnlJdGVtKiBpdGVtKSBjb25zdAogewor
ICAgIGlmICgoIW1fZnJhbWUtPnRyZWUoKS0+bmFtZSgpLmlzRW1wdHkoKSB8fCAhaXRlbS0+dGFy
Z2V0KCkuaXNFbXB0eSgpKSAmJiBtX2ZyYW1lLT50cmVlKCktPm5hbWUoKSAhPSBpdGVtLT50YXJn
ZXQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAKICAgICBjb25zdCBIaXN0b3J5
SXRlbVZlY3RvciYgY2hpbGRJdGVtcyA9IGl0ZW0tPmNoaWxkcmVuKCk7CiAgICAgaWYgKGNoaWxk
SXRlbXMuc2l6ZSgpICE9IG1fZnJhbWUtPnRyZWUoKS0+Y2hpbGRDb3VudCgpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CkBAIC02MDksNyArNjEyLDYgQEAgYm9vbCBIaXN0b3J5Q29udHJvbGxlcjo6
Y2hpbGRGcmFtZXNNYXRjaEl0ZW0oSGlzdG9yeUl0ZW0qIGl0ZW0pIGNvbnN0CiAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQogICAgIAotICAgIC8vIEZvdW5kIG1hdGNoZXMgZm9yIGFs
bCBpdGVtIHRhcmdldHMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaCBiL1dlYkNvcmUvbG9hZGVyL0hpc3RvcnlDb250
cm9sbGVyLmgKaW5kZXggMTk5MDJmOGY4NzZjYTg3MDYwY2M2ZmU0YjA4ZDNmMTRmNzZiNmJmOS4u
NDg3ZmRjOWY3NDIxZmVlNDhhMGJmMmM4ZjNiOWUwZDcwMThiNmYyYyAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9sb2FkZXIvSGlzdG9yeUNvbnRyb2xsZXIuaAorKysgYi9XZWJDb3JlL2xvYWRlci9IaXN0
b3J5Q29udHJvbGxlci5oCkBAIC04Niw3ICs4Niw3IEBAIHByaXZhdGU6CiAgICAgUGFzc1JlZlB0
cjxIaXN0b3J5SXRlbT4gY3JlYXRlSXRlbVRyZWUoRnJhbWUqIHRhcmdldEZyYW1lLCBib29sIGNs
aXBBdFRhcmdldCk7CiAKICAgICB2b2lkIHJlY3Vyc2l2ZUdvVG9JdGVtKEhpc3RvcnlJdGVtKiwg
SGlzdG9yeUl0ZW0qLCBGcmFtZUxvYWRUeXBlKTsKLSAgICBib29sIGNoaWxkRnJhbWVzTWF0Y2hJ
dGVtKEhpc3RvcnlJdGVtKikgY29uc3Q7CisgICAgYm9vbCBjdXJyZW50RnJhbWVzTWF0Y2hJdGVt
KEhpc3RvcnlJdGVtKikgY29uc3Q7CiAgICAgdm9pZCB1cGRhdGVCYWNrRm9yd2FyZExpc3RDbGlw
cGVkQXRUYXJnZXQoYm9vbCBkb0NsaXApOwogCiAgICAgRnJhbWUqIG1fZnJhbWU7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>