<?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>38805</bug_id>
          
          <creation_ts>2010-05-08 12:11:39 -0700</creation_ts>
          <short_desc>[Qt] Add PlainTextController to DRT</short_desc>
          <delta_ts>2010-09-30 14:22:45 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robert Hogan">robert</reporter>
          <assigned_to name="Robert Hogan">robert</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>hausmann</cc>
    
    <cc>jwieczorek</cc>
    
    <cc>kenneth</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>222923</commentid>
    <comment_count>0</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-05-08 12:11:39 -0700</bug_when>
    <thetext>and try to get it work correctly.

My current approach has two problems:

- I&apos;m only using the innerText from the range.StartContainer. I don&apos;t see a way of getting a reference to the WebCore::Range from the QVariant passed through the qt bridge.
- editing/text-iterator/basic-iteration.html still doesn&apos;t fully pass because innerText seems to have a problem with non-whitespace stuff like &lt;span&gt;&lt;div&gt; in one test.

So any thoughts welcome!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222925</commentid>
    <comment_count>1</comment_count>
      <attachid>55483</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-05-08 12:13:32 -0700</bug_when>
    <thetext>Created attachment 55483
Proposed Patch

OK, this isn&apos;t actually for review. It&apos;s to get the attention of a reviewer who can help me identify how to fix the two obvious problems with my work so far.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>222926</commentid>
    <comment_count>2</comment_count>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-05-08 12:16:00 -0700</bug_when>
    <thetext>Output of basic-iteration.html with current patch is:


ontent-Type: text/plain
Unit tests for WebCore text iterator

On success, you will see a series of &quot;PASS&quot; messages, followed by &quot;TEST COMPLETE&quot;.


PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;&quot;
PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;a&quot;
PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;a&quot;
PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;a\nb&quot;
PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;debugging this note&quot;
FAIL range.selectNodeContents(testDocument.body); plainText.plainText(range) should be Hello
. Was Hello

.
PASS range.selectNodeContents(testDocument.body); plainText.plainText(range) is &quot;hey&quot;
PASS range.setStartBefore(testDocument.body); range.setEndAfter(testDocument.body); plainText.plainText(range) is &quot;hey&quot;
PASS successfullyParsed is true

TEST COMPLETE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280317</commentid>
    <comment_count>3</comment_count>
      <attachid>67834</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-09-16 13:37:54 -0700</bug_when>
    <thetext>Created attachment 67834
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>280322</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-16 13:41:48 -0700</bug_when>
    <thetext>Attachment 67834 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKitTools/DumpRenderTree/qt/PlainTextControllerQt.h:36:  Alphabetical sorting problem.  [build/include_order] [4]
WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp:40:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 2 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>286989</commentid>
    <comment_count>5</comment_count>
      <attachid>67834</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2010-09-29 10:56:53 -0700</bug_when>
    <thetext>Comment on attachment 67834
Patch

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

&gt; WebKit/qt/WebCoreSupport/DumpRenderTreeSupportQt.cpp:758
&gt; +QString DumpRenderTreeSupportQt::plainText(const QVariant&amp; rng)

Variable naming, &quot;rng&quot; should be &quot;range&quot;

LGTM otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287636</commentid>
    <comment_count>6</comment_count>
      <attachid>69348</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-09-30 10:34:17 -0700</bug_when>
    <thetext>Created attachment 69348
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287662</commentid>
    <comment_count>7</comment_count>
      <attachid>69348</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-30 10:59:41 -0700</bug_when>
    <thetext>Comment on attachment 69348
Patch

Rejecting patch 69348 from commit-queue.

Failed to run &quot;[&apos;./WebKitTools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--ignore-builders&apos;, &apos;--quiet&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 69348]&quot; exit_code: 1
Last 500 characters of output:
69348&amp;action=edit
Fetching: https://bugs.webkit.org/show_bug.cgi?id=38805&amp;ctype=xml
Processing 1 patch from 1 bug.
Cleaning working directory
Updating working directory
Processing patch 69348 from bug 38805.
NOBODY (OOPS!) found in /Projects/CommitQueue/LayoutTests/ChangeLog does not appear to be a valid reviewer according to committers.py.
ERROR: /Projects/CommitQueue/LayoutTests/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://queues.webkit.org/results/4214028</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287744</commentid>
    <comment_count>8</comment_count>
      <attachid>69364</attachid>
    <who name="Robert Hogan">robert</who>
    <bug_when>2010-09-30 12:43:25 -0700</bug_when>
    <thetext>Created attachment 69364
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287820</commentid>
    <comment_count>9</comment_count>
      <attachid>69364</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-30 14:22:40 -0700</bug_when>
    <thetext>Comment on attachment 69364
Patch

Clearing flags on attachment: 69364

Committed r68825: &lt;http://trac.webkit.org/changeset/68825&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>287821</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-30 14:22:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>55483</attachid>
            <date>2010-05-08 12:13:32 -0700</date>
            <delta_ts>2010-09-16 13:37:35 -0700</delta_ts>
            <desc>Proposed Patch</desc>
            <filename>0001-wip-plaintextcontroller.patch</filename>
            <type>text/plain</type>
            <size>9937</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">RnJvbSA1Y2E0YWJhZWQ5Y2QwYzQ2ZWIxNGQ2NTMzMzY4ODc2MjdiZmUzNjI2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBSb2JlcnQgSG9nYW4gPHJvYmVydEB3ZWJraXQub3JnPgpEYXRl
OiBTYXQsIDggTWF5IDIwMTAgMjA6MDM6MDggKzAxMDAKU3ViamVjdDogW1BBVENIXSB3aXAtcGxh
aW50ZXh0Y29udHJvbGxlcgoKLS0tCiAuLi4vcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0UXQuY3BwICB8ICAgMTMgKysrKysKIFdlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9E
dW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIHwgICAgMSArCiBXZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8gICB8ICAgIDIgKwogV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAgfCAgICAzICsKIFdlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaCAgIHwgICAgMiArCiAuLi4vRHVtcFJl
bmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmNwcCAgICB8ICAgNDUgKysrKysrKysr
KysrKysrKysrKwogLi4uL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5o
ICAgICAgfCAgIDQ3ICsrKysrKysrKysrKysrKysrKysrCiA3IGZpbGVzIGNoYW5nZWQsIDExMyBp
bnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFdlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAKIGNyZWF0ZSBt
b2RlIDEwMDY0NCBXZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9s
bGVyUXQuaAoKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVy
VHJlZVN1cHBvcnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRy
ZWVTdXBwb3J0UXQuY3BwCmluZGV4IDkzNWJlODUuLjA4YjcxNTUgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKKysrIGIvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcApAQCAtNTIs
NiArNTIsOCBAQAogI2luY2x1ZGUgInF3ZWJwYWdlLmgiCiAjaW5jbHVkZSAicXdlYnBhZ2VfcC5o
IgogCisjaW5jbHVkZSA8UURlYnVnPgorCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogRHVt
cFJlbmRlclRyZWVTdXBwb3J0UXQ6OkR1bXBSZW5kZXJUcmVlU3VwcG9ydFF0KCkKQEAgLTQyMSw2
ICs0MjMsMTcgQEAgUVZhcmlhbnRMaXN0IER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpmaXJzdFJl
Y3RGb3JDaGFyYWN0ZXJSYW5nZShRV2ViUGFnZSogcGFnZSwKICAgICByZXR1cm4gcmVjdDsKIH0K
IAorUVN0cmluZyBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6cGxhaW5UZXh0KGNvbnN0IFFWYXJp
YW50JiBybmcpCit7CisgICAgLy8gRklYTUU6IFRoZSByYW5nZSdzIHBsYWludGV4dCB3b24ndCBh
bHdheXMgYmUgYXZhaWxhYmxlIGluIHRoZSBzdGFydENvbnRhaW5lcgorICAgIC8vIHNvIG5lZWQg
dG8gYmUgYWJsZSB0byByZWZlcmVuY2UgdGhlIGFjdHVhbCBXZWJDb3JlOjpSYW5nZSBwYXNzZWQg
YnkgdGhlIHRlc3QuCisgICAgUU1hcDxRU3RyaW5nLCBRVmFyaWFudD4gbWFwID0gcm5nLnRvTWFw
KCk7CisgICAgUVZhcmlhbnQgc3RhcnRDb250YWluZXIgID0gbWFwLnZhbHVlKCJzdGFydENvbnRh
aW5lciIpOworICAgIG1hcCA9IHN0YXJ0Q29udGFpbmVyLnRvTWFwKCk7CisKKyAgICByZXR1cm4g
bWFwLnZhbHVlKCJpbm5lclRleHQiKS50b1N0cmluZygpOworfQorCiAvLyBQcm92aWRlIGEgYmFj
a3dhcmQgY29tcGF0aWJpbGl0eSB3aXRoIHByZXZpb3VzbHkgZXhwb3J0ZWQgcHJpdmF0ZSBzeW1i
b2xzIGFzIG9mIFF0V2ViS2l0IDQuNiByZWxlYXNlCiAKIHZvaWQgUVdFQktJVF9FWFBPUlQgcXRf
cmVzdW1lQWN0aXZlRE9NT2JqZWN0cyhRV2ViRnJhbWUqIGZyYW1lKQpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmggYi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaAppbmRleCBjMDE4N2Rm
Li4xMzkwNTNkIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQuaAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQuaApAQCAtODUsNiArODUsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGlu
dCB3b3JrZXJUaHJlYWRDb3VudCgpOwogCiAgICAgc3RhdGljIFFTdHJpbmcgbWFya2VyVGV4dEZv
ckxpc3RJdGVtKGNvbnN0IFFXZWJFbGVtZW50JiBsaXN0SXRlbSk7CisgICAgc3RhdGljIFFTdHJp
bmcgcGxhaW5UZXh0KGNvbnN0IFFWYXJpYW50JiBybmcpOwogfTsKIAogI2VuZGlmCmRpZmYgLS1n
aXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8gYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KaW5kZXggYjY2
ZWI1ZC4uMzJkODEyZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQv
RHVtcFJlbmRlclRyZWUucHJvCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1
bXBSZW5kZXJUcmVlLnBybwpAQCAtMjgsMTIgKzI4LDE0IEBAIEhFQURFUlMgPSAkJEJBU0VESVIv
V29ya1F1ZXVlLmggXAogICAgIFdvcmtRdWV1ZUl0ZW1RdC5oIFwKICAgICBMYXlvdXRUZXN0Q29u
dHJvbGxlclF0LmggXAogICAgIEdDQ29udHJvbGxlclF0LmggXAorICAgIFBsYWluVGV4dENvbnRy
b2xsZXJRdC5oIFwKICAgICB0ZXN0cGx1Z2luLmgKIFNPVVJDRVMgPSAuLi8uLi8uLi9KYXZhU2Ny
aXB0Q29yZS93dGYvQXNzZXJ0aW9ucy5jcHAgXAogICAgICQkQkFTRURJUi9Xb3JrUXVldWUuY3Bw
IFwKICAgICBEdW1wUmVuZGVyVHJlZVF0LmNwcCBcCiAgICAgRXZlbnRTZW5kZXJRdC5jcHAgXAog
ICAgIFRleHRJbnB1dENvbnRyb2xsZXJRdC5jcHAgXAorICAgIFBsYWluVGV4dENvbnRyb2xsZXJR
dC5jcHAgXAogICAgIFdvcmtRdWV1ZUl0ZW1RdC5jcHAgXAogICAgIExheW91dFRlc3RDb250cm9s
bGVyUXQuY3BwIFwKICAgICBHQ0NvbnRyb2xsZXJRdC5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAgYi9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcAppbmRleCBhZjcyMTBjLi5h
OGVkNmZlIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZVF0LmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZVF0LmNwcApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUgIkdDQ29udHJvbGxlclF0
LmgiCiAjaW5jbHVkZSAiTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oIgogI2luY2x1ZGUgIlRleHRJ
bnB1dENvbnRyb2xsZXJRdC5oIgorI2luY2x1ZGUgIlBsYWluVGV4dENvbnRyb2xsZXJRdC5oIgog
I2luY2x1ZGUgInRlc3RwbHVnaW4uaCIKICNpbmNsdWRlICJXb3JrUXVldWUuaCIKIApAQCAtMzcx
LDYgKzM3Miw3IEBAIER1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSgpCiAgICAgY29ubmVj
dChtX2NvbnRyb2xsZXIsIFNJR05BTChkb25lKCkpLCB0aGlzLCBTTE9UKGR1bXAoKSkpOwogICAg
IG1fZXZlbnRTZW5kZXIgPSBuZXcgRXZlbnRTZW5kZXIobV9wYWdlKTsKICAgICBtX3RleHRJbnB1
dENvbnRyb2xsZXIgPSBuZXcgVGV4dElucHV0Q29udHJvbGxlcihtX3BhZ2UpOworICAgIG1fcGxh
aW5UZXh0Q29udHJvbGxlciA9IG5ldyBQbGFpblRleHRDb250cm9sbGVyKG1fcGFnZSk7CiAgICAg
bV9nY0NvbnRyb2xsZXIgPSBuZXcgR0NDb250cm9sbGVyKG1fcGFnZSk7CiAKICAgICAvLyBub3cg
Y29ubmVjdCBvdXIgZGlmZmVyZW50IHNpZ25hbHMKQEAgLTYwNSw2ICs2MDcsNyBAQCB2b2lkIER1
bXBSZW5kZXJUcmVlOjppbml0SlNPYmplY3RzKCkKICAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0
V2luZG93T2JqZWN0KFFMYXRpbjFTdHJpbmcoImV2ZW50U2VuZGVyIiksIG1fZXZlbnRTZW5kZXIp
OwogICAgIGZyYW1lLT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGluMVN0cmluZygi
dGV4dElucHV0Q29udHJvbGxlciIpLCBtX3RleHRJbnB1dENvbnRyb2xsZXIpOwogICAgIGZyYW1l
LT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGluMVN0cmluZygiR0NDb250cm9sbGVy
IiksIG1fZ2NDb250cm9sbGVyKTsKKyAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0V2luZG93T2Jq
ZWN0KFFMYXRpbjFTdHJpbmcoInBsYWluVGV4dCIpLCBtX3BsYWluVGV4dENvbnRyb2xsZXIpOwog
fQogCiB2b2lkIER1bXBSZW5kZXJUcmVlOjpzaG93UGFnZSgpCmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmggYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKaW5kZXggYjY3NzA1Ny4uYjc1MDdi
ZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRy
ZWVRdC5oCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVl
UXQuaApAQCAtNTcsNiArNTcsNyBAQCBjbGFzcyBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDsKIGNs
YXNzIEV2ZW50U2VuZGVyOwogY2xhc3MgVGV4dElucHV0Q29udHJvbGxlcjsKIGNsYXNzIEdDQ29u
dHJvbGxlcjsKK2NsYXNzIFBsYWluVGV4dENvbnRyb2xsZXI7CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApAQCAtMTM3LDYgKzEzOCw3IEBAIHByaXZhdGU6CiAgICAgRXZlbnRTZW5kZXIgKm1fZXZl
bnRTZW5kZXI7CiAgICAgVGV4dElucHV0Q29udHJvbGxlciAqbV90ZXh0SW5wdXRDb250cm9sbGVy
OwogICAgIEdDQ29udHJvbGxlciogbV9nY0NvbnRyb2xsZXI7CisgICAgUGxhaW5UZXh0Q29udHJv
bGxlciogbV9wbGFpblRleHRDb250cm9sbGVyOwogICAgIE5ldHdvcmtBY2Nlc3NNYW5hZ2VyKiBt
X25ldHdvcmtBY2Nlc3NNYW5hZ2VyOwogCiAgICAgUUZpbGUgKm1fc3RkaW47CmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuY3Bw
IGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lODY2ZjI4Ci0tLSAvZGV2L251
bGwKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxl
clF0LmNwcApAQCAtMCwwICsxLDQ1IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDA4IE5va2lh
IENvcnBvcmF0aW9uIGFuZC9vciBpdHMgc3Vic2lkaWFyeSgtaWVzKQorICogQ29weXJpZ2h0IChD
KSAyMDA5IFRvcmNoIE1vYmlsZSBJbmMuIGh0dHA6Ly93d3cudG9yY2htb2JpbGUuY29tLworICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgorICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgQ29tcHV0ZXIs
IEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKKyAqICAgICBpdHMgY29udHJpYnV0b3Jz
IG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAg
ICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElU
UyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwor
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisjaW5jbHVk
ZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiUGxhaW5UZXh0Q29udHJvbGxlclF0LmgiCisjaW5jbHVk
ZSAiLi4vLi4vLi4vV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9y
dFF0LmgiCisKKyNpbmNsdWRlIDxRQXBwbGljYXRpb24+CisjaW5jbHVkZSA8UUlucHV0TWV0aG9k
RXZlbnQ+CisjaW5jbHVkZSA8UUtleUV2ZW50PgorCitQbGFpblRleHRDb250cm9sbGVyOjpQbGFp
blRleHRDb250cm9sbGVyKFFXZWJQYWdlKiBwYXJlbnQpCisgICAgOiBRT2JqZWN0KHBhcmVudCkK
K3sKK30KKworUVN0cmluZyBQbGFpblRleHRDb250cm9sbGVyOjpwbGFpblRleHQoY29uc3QgUVZh
cmlhbnQmIHJhbmdlKQoreworICAgIHJldHVybiBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6cGxh
aW5UZXh0KHJhbmdlKTsKK30KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
cXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw
MDAwMC4uMTY1ZDc4NAotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMDggTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5
KC1pZXMpCisgKiBDb3B5cmlnaHQgKEMpIDIwMDkgVG9yY2ggTW9iaWxlIEluYy4gaHR0cDovL3d3
dy50b3JjaG1vYmlsZS5jb20vCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVy
aWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiAgTmVpdGhlciB0aGUg
bmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBvZgor
ICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3Rl
IHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVj
aWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
KyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKyNpZm5kZWYgUGxhaW5UZXh0Q29udHJvbGxlclF0X2gKKyNkZWZpbmUg
UGxhaW5UZXh0Q29udHJvbGxlclF0X2gKKworI2luY2x1ZGUgPFFMaXN0PgorI2luY2x1ZGUgPFFP
YmplY3Q+CisjaW5jbHVkZSA8UVZhcmlhbnQ+CisjaW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRl
ICJxd2VicGFnZS5oIgorCitjbGFzcyBQbGFpblRleHRDb250cm9sbGVyIDogcHVibGljIFFPYmpl
Y3QgeworICAgIFFfT0JKRUNUCitwdWJsaWM6CisgICAgUGxhaW5UZXh0Q29udHJvbGxlcihRV2Vi
UGFnZSogcGFyZW50KTsKKworcHVibGljIHNsb3RzOgorICAgIFFTdHJpbmcgcGxhaW5UZXh0KGNv
bnN0IFFWYXJpYW50JiByYW5nZSk7Cit9OworCisjZW5kaWYgLy8gUGxhaW5UZXh0Q29udHJvbGxl
clF0X2gKLS0gCjEuNi4zLjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67834</attachid>
            <date>2010-09-16 13:37:54 -0700</date>
            <delta_ts>2010-09-30 10:34:09 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38805-20100916213746.patch</filename>
            <type>text/plain</type>
            <size>12231</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhMTI0OWUzM2I5OWQyYzU2MTRmMTRjZDI4YjQ4OGUzNzgwNzZmZjQ2Li5lMjhlODRk
ZTBmMDY1NzQ3OWFmMDQyNDg5MmM1NmJiZmNmOGI0MWFmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMDktMTYgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gU3VwcG9ydCBmb3Ig
UGxhaW5UZXh0Q29udHJvbGxlcgorCisgICAgICAgIFVuc2tpcCBlZGl0aW5nL3RleHQtaXRlcmF0
b3IvYmFzaWMtaXRlcmF0aW9uLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4MDUKKworICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6
CisKIDIwMTAtMDktMTQgIEVyaWsgQXJ2aWRzc29uICA8YXJ2QGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCmluZGV4
IDEwMmZmN2Q0MTkyMGIzODQ5NmZlNWFkNjE1MjI5YjJhZTQ2OTcwMjAuLjkyYzE3YTVhNDE3ZGVk
ZWViZjQwODliOTJlNTE0YmFkYzk4MmRjNzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZApAQCAt
NzQzLDEwICs3NDMsNiBAQCBqYXZhCiBmYXN0L2RvbS9XaW5kb3cvdGltZXItcmVzdW1lLW9uLW5h
dmlnYXRpb24tYmFjay5odG1sCiBsb2FkZXIvZ28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNp
emUuaHRtbAogCi0jIFBsYWluIHRleHQgY29udHJvbGxlciBjdXJyZW50bHkgaW4gTWFjIER1bXBS
ZW5kZXJUcmVlIG9ubHkuCi0jIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0zODgwNQotZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCi0KICMg
TWlzc2luZyBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoKQogZmFzdC9l
dmVudHMvcGFnZXNob3ctcGFnZWhpZGUtb24tYmFjay1jYWNoZWQuaHRtbAogZmFzdC9ldmVudHMv
cGFnZXNob3ctcGFnZWhpZGUtb24tYmFjay1jYWNoZWQtd2l0aC1mcmFtZXMuaHRtbApkaWZmIC0t
Z2l0IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggOWMz
ODQwYjUxNmUyODcwYTBhYjI5ZDVmMzhjYzBkZTc0NDE2ODIxNi4uZmZjN2FmZGVjZWJkN2ExYTE1
YWIyY2YzNGE2M2Q2MzgzOGVmYWJkYyAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZwor
KysgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTAtMDktMTYgIFJv
YmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gU3VwcG9ydCBmb3IgUGxhaW5UZXh0Q29udHJv
bGxlcgorCisgICAgICAgIFVuc2tpcCBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMtaXRlcmF0
aW9uLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Mzg4MDUKKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9y
dFF0LmNwcDoKKyAgICAgICAgKER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpwbGFpblRleHQpOgor
ICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Lmg6CisKIDIw
MTAtMDktMTUgIFNpbW9uIEhhdXNtYW5uICA8c2ltb24uaGF1c21hbm5Abm9raWEuY29tPgogCiAg
ICAgICAgIFtRdF0gVXBkYXRlIHRoZSBTeW1iaWFuIGRlZiBmaWxlcwpkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcCBiL1dlYktp
dC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAKaW5kZXggMTM1
Y2M5NDBiZTk2MDAxZDk0ODc5NTdhYTYyNWU2ZDkzODU5NDE1My4uMWExYjBkMjg3YmVjMDE3MWVh
YmQ4NjIyNmIzMzZkMjI0NWUzYWU4ZSAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBw
b3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1
cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCkBAIC03NTUsNiArNzU1LDE1IEBAIHZv
aWQgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnNpbXVsYXRlRGVza3RvcE5vdGlmaWNhdGlvbkNs
aWNrKGNvbnN0IFFTdHJpbmcmIHRpCiAjZW5kaWYKIH0KIAorUVN0cmluZyBEdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdDo6cGxhaW5UZXh0KGNvbnN0IFFWYXJpYW50JiBybmcpCit7CisgICAgUU1hcDxR
U3RyaW5nLCBRVmFyaWFudD4gbWFwID0gcm5nLnRvTWFwKCk7CisgICAgUVZhcmlhbnQgc3RhcnRD
b250YWluZXIgID0gbWFwLnZhbHVlKCJzdGFydENvbnRhaW5lciIpOworICAgIG1hcCA9IHN0YXJ0
Q29udGFpbmVyLnRvTWFwKCk7CisKKyAgICByZXR1cm4gbWFwLnZhbHVlKCJpbm5lclRleHQiKS50
b1N0cmluZygpOworfQorCiAvLyBQcm92aWRlIGEgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRo
IHByZXZpb3VzbHkgZXhwb3J0ZWQgcHJpdmF0ZSBzeW1ib2xzIGFzIG9mIFF0V2ViS2l0IDQuNiBy
ZWxlYXNlCiAKIHZvaWQgUVdFQktJVF9FWFBPUlQgcXRfcmVzdW1lQWN0aXZlRE9NT2JqZWN0cyhR
V2ViRnJhbWUqIGZyYW1lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmggYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJl
bmRlclRyZWVTdXBwb3J0UXQuaAppbmRleCBjNGVmYzU2MDQyOGE2MDk5MjBmOThmNzZjY2EyZjkz
YjJkNjBlNzg4Li4wYTM5NjEzZGFkMTUzMjRhMzRjYTk1ZmY4OWQyOTZhMTE2ODdhZmMxIDEwMDY0
NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
aAorKysgYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
aApAQCAtOTgsNiArOTgsNyBAQCBwdWJsaWM6CiAKICAgICBzdGF0aWMgUVN0cmluZyBtYXJrZXJU
ZXh0Rm9yTGlzdEl0ZW0oY29uc3QgUVdlYkVsZW1lbnQmIGxpc3RJdGVtKTsKICAgICBzdGF0aWMg
UVZhcmlhbnRNYXAgY29tcHV0ZWRTdHlsZUluY2x1ZGluZ1Zpc2l0ZWRJbmZvKGNvbnN0IFFXZWJF
bGVtZW50JiBlbGVtZW50KTsKKyAgICBzdGF0aWMgUVN0cmluZyBwbGFpblRleHQoY29uc3QgUVZh
cmlhbnQmIHJuZyk7CiAKICAgICBzdGF0aWMgdm9pZCBkdW1wRnJhbWVMb2FkZXIoYm9vbCBiKTsK
ICAgICBzdGF0aWMgdm9pZCBkdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKGJvb2wgYik7CmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5k
ZXggY2FjZDdhMzIwNmYyOTc1MTYyYjZmY2RiMTMxNzRhMTZlY2MzYjQ5OS4uMjBhYzJkMjE2NzI4
Yjg5ZjdiYzc5YWE5OWY1MzdlMDllMzY4MmNkMCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEw
LTA5LTE2ICBSb2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFN1cHBvcnQgZm9yIFBsYWlu
VGV4dENvbnRyb2xsZXIKKworICAgICAgICBVbnNraXAgZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jh
c2ljLWl0ZXJhdGlvbi5odG1sCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTM4ODA1CisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVu
ZGVyVHJlZS5wcm86CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6RHVtcFJlbmRlclRyZWUp
OgorICAgICAgICAoV2ViQ29yZTo6RHVtcFJlbmRlclRyZWU6OmluaXRKU09iamVjdHMpOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaDoKKyAgICAgICAgKiBE
dW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuY3BwOiBBZGRlZC4KKyAgICAg
ICAgKFBsYWluVGV4dENvbnRyb2xsZXI6OlBsYWluVGV4dENvbnRyb2xsZXIpOgorICAgICAgICAo
UGxhaW5UZXh0Q29udHJvbGxlcjo6cGxhaW5UZXh0KToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJl
ZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuaDogQWRkZWQuCisKIDIwMTAtMDktMTUgIE1paGFp
IFBhcnBhcml0YSAgPG1paGFpcEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
VG9ueSBDaGFuZy4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1
bXBSZW5kZXJUcmVlLnBybyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5k
ZXJUcmVlLnBybwppbmRleCA1YjgxOTAxZDhmOGE3YmE3ODAwYWQzNTczM2NkNDFkY2YwYTBhNGI4
Li40ZmYwNDFiMGY4Y2Y5OGM5YzE2NzFhZTkzOTJiZGE4OGIzMTdiNDYzIDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KKysrIGIvV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUucHJvCkBAIC0yNywxMiAr
MjcsMTQgQEAgSEVBREVSUyA9ICQkQkFTRURJUi9Xb3JrUXVldWUuaCBcCiAgICAgV29ya1F1ZXVl
SXRlbVF0LmggXAogICAgIExheW91dFRlc3RDb250cm9sbGVyUXQuaCBcCiAgICAgR0NDb250cm9s
bGVyUXQuaCBcCisgICAgUGxhaW5UZXh0Q29udHJvbGxlclF0LmggXAogICAgIHRlc3RwbHVnaW4u
aAogU09VUkNFUyA9IC4uLy4uLy4uL0phdmFTY3JpcHRDb3JlL3d0Zi9Bc3NlcnRpb25zLmNwcCBc
CiAgICAgJCRCQVNFRElSL1dvcmtRdWV1ZS5jcHAgXAogICAgIER1bXBSZW5kZXJUcmVlUXQuY3Bw
IFwKICAgICBFdmVudFNlbmRlclF0LmNwcCBcCiAgICAgVGV4dElucHV0Q29udHJvbGxlclF0LmNw
cCBcCisgICAgUGxhaW5UZXh0Q29udHJvbGxlclF0LmNwcCBcCiAgICAgV29ya1F1ZXVlSXRlbVF0
LmNwcCBcCiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5jcHAgXAogICAgIEdDQ29udHJvbGxl
clF0LmNwcCBcCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1w
UmVuZGVyVHJlZVF0LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5k
ZXJUcmVlUXQuY3BwCmluZGV4IGRjODFmNTZiYmE1NzQ0YmJkZGY3YzY3ODNlMDUyODNhMDQxNTQx
ZmMuLjVhMmQwN2U3YTVjZjNmZjk2MWY2MWEyNTRiYTJhMjE1MDNlYzY0ZDcgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCisrKyBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3BwCkBAIC0z
Nyw2ICszNyw3IEBACiAjaW5jbHVkZSAiR0NDb250cm9sbGVyUXQuaCIKICNpbmNsdWRlICJMYXlv
dXRUZXN0Q29udHJvbGxlclF0LmgiCiAjaW5jbHVkZSAiVGV4dElucHV0Q29udHJvbGxlclF0Lmgi
CisjaW5jbHVkZSAiUGxhaW5UZXh0Q29udHJvbGxlclF0LmgiCiAjaW5jbHVkZSAidGVzdHBsdWdp
bi5oIgogI2luY2x1ZGUgIldvcmtRdWV1ZS5oIgogCkBAIC00NzAsNiArNDcxLDcgQEAgRHVtcFJl
bmRlclRyZWU6OkR1bXBSZW5kZXJUcmVlKCkKICAgICBjb25uZWN0KG1fY29udHJvbGxlciwgU0lH
TkFMKGRvbmUoKSksIHRoaXMsIFNMT1QoZHVtcCgpKSk7CiAgICAgbV9ldmVudFNlbmRlciA9IG5l
dyBFdmVudFNlbmRlcihtX3BhZ2UpOwogICAgIG1fdGV4dElucHV0Q29udHJvbGxlciA9IG5ldyBU
ZXh0SW5wdXRDb250cm9sbGVyKG1fcGFnZSk7CisgICAgbV9wbGFpblRleHRDb250cm9sbGVyID0g
bmV3IFBsYWluVGV4dENvbnRyb2xsZXIobV9wYWdlKTsKICAgICBtX2djQ29udHJvbGxlciA9IG5l
dyBHQ0NvbnRyb2xsZXIobV9wYWdlKTsKIAogICAgIC8vIG5vdyBjb25uZWN0IG91ciBkaWZmZXJl
bnQgc2lnbmFscwpAQCAtNzM5LDYgKzc0MSw3IEBAIHZvaWQgRHVtcFJlbmRlclRyZWU6OmluaXRK
U09iamVjdHMoKQogICAgIGZyYW1lLT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGlu
MVN0cmluZygiZXZlbnRTZW5kZXIiKSwgbV9ldmVudFNlbmRlcik7CiAgICAgZnJhbWUtPmFkZFRv
SmF2YVNjcmlwdFdpbmRvd09iamVjdChRTGF0aW4xU3RyaW5nKCJ0ZXh0SW5wdXRDb250cm9sbGVy
IiksIG1fdGV4dElucHV0Q29udHJvbGxlcik7CiAgICAgZnJhbWUtPmFkZFRvSmF2YVNjcmlwdFdp
bmRvd09iamVjdChRTGF0aW4xU3RyaW5nKCJHQ0NvbnRyb2xsZXIiKSwgbV9nY0NvbnRyb2xsZXIp
OworICAgIGZyYW1lLT5hZGRUb0phdmFTY3JpcHRXaW5kb3dPYmplY3QoUUxhdGluMVN0cmluZygi
cGxhaW5UZXh0IiksIG1fcGxhaW5UZXh0Q29udHJvbGxlcik7CiB9CiAKIHZvaWQgRHVtcFJlbmRl
clRyZWU6OnNob3dQYWdlKCkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVl
L3F0L0R1bXBSZW5kZXJUcmVlUXQuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1
bXBSZW5kZXJUcmVlUXQuaAppbmRleCAzZDM0NDQzMWI1NDRlMzA5ZTE4YWQ1MmNjOTA3ZjA4YjE4
NDk0ZWJiLi5iM2U0ZTMyY2U3OTIwZTU4ZmYwYmNiYWM5NzBlNWVkNjYyOTk5M2U5IDEwMDY0NAot
LS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKKysr
IGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oCkBAIC02
MCw2ICs2MCw3IEBAIGNsYXNzIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OwogY2xhc3MgRXZlbnRT
ZW5kZXI7CiBjbGFzcyBUZXh0SW5wdXRDb250cm9sbGVyOwogY2xhc3MgR0NDb250cm9sbGVyOwor
Y2xhc3MgUGxhaW5UZXh0Q29udHJvbGxlcjsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0x
NDgsNiArMTQ5LDcgQEAgcHJpdmF0ZToKICAgICBFdmVudFNlbmRlciAqbV9ldmVudFNlbmRlcjsK
ICAgICBUZXh0SW5wdXRDb250cm9sbGVyICptX3RleHRJbnB1dENvbnRyb2xsZXI7CiAgICAgR0ND
b250cm9sbGVyKiBtX2djQ29udHJvbGxlcjsKKyAgICBQbGFpblRleHRDb250cm9sbGVyKiBtX3Bs
YWluVGV4dENvbnRyb2xsZXI7CiAgICAgTmV0d29ya0FjY2Vzc01hbmFnZXIqIG1fbmV0d29ya0Fj
Y2Vzc01hbmFnZXI7CiAKICAgICBRRmlsZSAqbV9zdGRpbjsKZGlmZiAtLWdpdCBhL1dlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAgYi9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuY3BwCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjQ0MWEzN2MzNmVmNjEwODg1YWNlOTY5OWFjNmJlNTkwYzkzN2VjMTIKLS0tIC9kZXYvbnVs
bAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVy
UXQuY3BwCkBAIC0wLDAgKzEsNDQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgUm9iZXJ0
IEhvZ2FuIDxyb2JlcnRAcm9iZXJ0aG9nYW4ubmV0PgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
ICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4g
IE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4gKCJBcHBsZSIpIG5vciB0
aGUgbmFtZXMgb2YKKyAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9y
c2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJl
IHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElT
IiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ
QUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiUGxhaW5UZXh0Q29udHJvbGxlclF0LmgiCisKKyNpbmNsdWRlICIuLi8uLi8uLi9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaCIKKyNpbmNsdWRlIDxR
QXBwbGljYXRpb24+CisjaW5jbHVkZSA8UUlucHV0TWV0aG9kRXZlbnQ+CisjaW5jbHVkZSA8UUtl
eUV2ZW50PgorCitQbGFpblRleHRDb250cm9sbGVyOjpQbGFpblRleHRDb250cm9sbGVyKFFXZWJQ
YWdlKiBwYXJlbnQpCisgICAgOiBRT2JqZWN0KHBhcmVudCkKK3sKK30KKworUVN0cmluZyBQbGFp
blRleHRDb250cm9sbGVyOjpwbGFpblRleHQoY29uc3QgUVZhcmlhbnQmIHJhbmdlKQoreworICAg
IHJldHVybiBEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6cGxhaW5UZXh0KHJhbmdlKTsKK30KZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xs
ZXJRdC5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxl
clF0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZTc4ZTExMDVhYTRkN2I5NzQ1YmU5NTVkZDMxYjQyNWVhNDBhYmUw
NQotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWlu
VGV4dENvbnRyb2xsZXJRdC5oCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMp
IDIwMTAgUm9iZXJ0IEhvZ2FuIDxyb2JlcnRAcm9iZXJ0aG9nYW4ubmV0PgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlv
bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICogMy4gIE5laXRoZXIgdGhlIG5hbWUgb2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4gKCJB
cHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKKyAqICAgICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1
c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0
aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklC
VVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Ug
QVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJ
QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RT
IE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisjaWZuZGVmIFBsYWluVGV4
dENvbnRyb2xsZXJRdF9oCisjZGVmaW5lIFBsYWluVGV4dENvbnRyb2xsZXJRdF9oCisKKyNpbmNs
dWRlIDxRTGlzdD4KKyNpbmNsdWRlIDxRT2JqZWN0PgorI2luY2x1ZGUgPFFTdHJpbmc+CisjaW5j
bHVkZSA8UVZhcmlhbnQ+CisKKyNpbmNsdWRlICJxd2VicGFnZS5oIgorCitjbGFzcyBQbGFpblRl
eHRDb250cm9sbGVyIDogcHVibGljIFFPYmplY3QgeworICAgIFFfT0JKRUNUCitwdWJsaWM6Cisg
ICAgUGxhaW5UZXh0Q29udHJvbGxlcihRV2ViUGFnZSogcGFyZW50KTsKKworcHVibGljIHNsb3Rz
OgorICAgIFFTdHJpbmcgcGxhaW5UZXh0KGNvbnN0IFFWYXJpYW50JiByYW5nZSk7Cit9OworCisj
ZW5kaWYgLy8gUGxhaW5UZXh0Q29udHJvbGxlclF0X2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69348</attachid>
            <date>2010-09-30 10:34:17 -0700</date>
            <delta_ts>2010-09-30 12:43:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38805-20100930183414.patch</filename>
            <type>text/plain</type>
            <size>12224</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2NWJiMzRhNzQzODUzMjFlN2QzZmQ3Njc2MGYyYmZmZmFkZjI3YjEzLi43MDYzNjM1
MmFmZWY2MTk2ODVlODVkOWNiMDFlMmNkYWI0NDM2YTMzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMDktMjkgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gU3VwcG9ydCBmb3Ig
UGxhaW5UZXh0Q29udHJvbGxlcgorCisgICAgICAgIFVuc2tpcCBlZGl0aW5nL3RleHQtaXRlcmF0
b3IvYmFzaWMtaXRlcmF0aW9uLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9Mzg4MDUKKworICAgICAgICAqIHBsYXRmb3JtL3F0L1NraXBwZWQ6
CisKIDIwMTAtMDktMjkgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9xdC9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAppbmRleCBl
YWM0MjExZmU5ZmE2ZWM0OGMxZjBhMGEzYTI1YzRmOGVkMDBhNDc3Li5mMDcyNDU3Y2IxMjZhMDg5
NDdhNzliYTkxOTQ0YmYxM2M0NjQ4MzkxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9xdC9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKQEAgLTcz
OCwxMCArNzM4LDYgQEAgamF2YQogZmFzdC9kb20vV2luZG93L3RpbWVyLXJlc3VtZS1vbi1uYXZp
Z2F0aW9uLWJhY2suaHRtbAogbG9hZGVyL2dvLWJhY2stdG8tZGlmZmVyZW50LXdpbmRvdy1zaXpl
Lmh0bWwKIAotIyBQbGFpbiB0ZXh0IGNvbnRyb2xsZXIgY3VycmVudGx5IGluIE1hYyBEdW1wUmVu
ZGVyVHJlZSBvbmx5LgotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mzg4MDUKLWVkaXRpbmcvdGV4dC1pdGVyYXRvci9iYXNpYy1pdGVyYXRpb24uaHRtbAotCiAjIE1p
c3NpbmcgbGF5b3V0VGVzdENvbnRyb2xsZXIub3ZlcnJpZGVQcmVmZXJlbmNlKCkKIGZhc3QvZXZl
bnRzL3BhZ2VzaG93LXBhZ2VoaWRlLW9uLWJhY2stY2FjaGVkLmh0bWwKIGZhc3QvZXZlbnRzL3Bh
Z2VzaG93LXBhZ2VoaWRlLW9uLWJhY2stY2FjaGVkLXdpdGgtZnJhbWVzLmh0bWwKZGlmZiAtLWdp
dCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDdlNzBh
OWUxMjE0Mzk3NTgxMzU4OTUxMTRlOWZmYWUzZTQ4MDdkN2IuLjIwMGM0ZmRkNTcxODhhNDI4Zjhm
NTAxODUxOThlZmI2YmE0M2MwMTkgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9DaGFuZ2VMb2cKKysr
IGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEwLTA5LTI5ICBSb2Jl
cnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBbUXRdIFN1cHBvcnQgZm9yIFBsYWluVGV4dENvbnRyb2xs
ZXIKKworICAgICAgICBVbnNraXAgZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlv
bi5odG1sCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTM4ODA1CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRR
dC5jcHA6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZVN1cHBvcnRRdDo6cGxhaW5UZXh0KToKKyAg
ICAgICAgKiBXZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oOgorCiAyMDEw
LTA5LTI5ICBBbmRyZWFzIEtsaW5nICA8YW5kcmVhcy5rbGluZ0Bub2tpYS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQXJpeWEgSGlkYXlhdC4KZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5jcHAgYi9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwCmluZGV4IDgzNmRmNDkzOWE5OTUx
ZDVkM2QwOTQ1ZjljN2UzYTYwM2ZkMGFhZmMuLjQ0ZjNmYzUxMjcwMzQ0OGJlYjU3ODBjY2M1MGZi
Mjk0OWUxMDBjNjggMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdC5jcHAKKysrIGIvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBS
ZW5kZXJUcmVlU3VwcG9ydFF0LmNwcApAQCAtNzY0LDYgKzc2NCwxNSBAQCB2b2lkIER1bXBSZW5k
ZXJUcmVlU3VwcG9ydFF0OjpzaW11bGF0ZURlc2t0b3BOb3RpZmljYXRpb25DbGljayhjb25zdCBR
U3RyaW5nJiB0aQogI2VuZGlmCiB9CiAKK1FTdHJpbmcgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6
OnBsYWluVGV4dChjb25zdCBRVmFyaWFudCYgcmFuZ2UpCit7CisgICAgUU1hcDxRU3RyaW5nLCBR
VmFyaWFudD4gbWFwID0gcmFuZ2UudG9NYXAoKTsKKyAgICBRVmFyaWFudCBzdGFydENvbnRhaW5l
ciAgPSBtYXAudmFsdWUoInN0YXJ0Q29udGFpbmVyIik7CisgICAgbWFwID0gc3RhcnRDb250YWlu
ZXIudG9NYXAoKTsKKworICAgIHJldHVybiBtYXAudmFsdWUoImlubmVyVGV4dCIpLnRvU3RyaW5n
KCk7Cit9CisKIC8vIFByb3ZpZGUgYSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpdGggcHJldmlv
dXNseSBleHBvcnRlZCBwcml2YXRlIHN5bWJvbHMgYXMgb2YgUXRXZWJLaXQgNC42IHJlbGVhc2UK
IAogdm9pZCBRV0VCS0lUX0VYUE9SVCBxdF9yZXN1bWVBY3RpdmVET01PYmplY3RzKFFXZWJGcmFt
ZSogZnJhbWUpCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQuaCBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJl
ZVN1cHBvcnRRdC5oCmluZGV4IDVhNTk0NzVhN2ZjMWIzYWI4YTJjYjg2M2YxNWJjYzkyNWQ1Yzcz
NjcuLjBlNzZmMDQwNmNhNDhkYWVmYjc4ZjE5MzNjMjg4MDhlOWY1ZDZjZmUgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCisrKyBi
L1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oCkBAIC05
OCw2ICs5OCw3IEBAIHB1YmxpYzoKIAogICAgIHN0YXRpYyBRU3RyaW5nIG1hcmtlclRleHRGb3JM
aXN0SXRlbShjb25zdCBRV2ViRWxlbWVudCYgbGlzdEl0ZW0pOwogICAgIHN0YXRpYyBRVmFyaWFu
dE1hcCBjb21wdXRlZFN0eWxlSW5jbHVkaW5nVmlzaXRlZEluZm8oY29uc3QgUVdlYkVsZW1lbnQm
IGVsZW1lbnQpOworICAgIHN0YXRpYyBRU3RyaW5nIHBsYWluVGV4dChjb25zdCBRVmFyaWFudCYg
cm5nKTsKIAogICAgIHN0YXRpYyB2b2lkIGR1bXBGcmFtZUxvYWRlcihib29sIGIpOwogICAgIHN0
YXRpYyB2b2lkIGR1bXBSZXNvdXJjZUxvYWRDYWxsYmFja3MoYm9vbCBiKTsKZGlmZiAtLWdpdCBh
L1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBmYjZk
YzczMDBmMWQ4NzY1MjcwMjgyNDVmOTYyMzE3ZmE2YjIwNTI0Li43OTY0OTJhOWUyM2MzZjEwODhh
N2IwMmU4MzljZjk4MTJmYWZhODAzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTAtMDktMjkg
IFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gU3VwcG9ydCBmb3IgUGxhaW5UZXh0Q29u
dHJvbGxlcgorCisgICAgICAgIFVuc2tpcCBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMtaXRl
cmF0aW9uLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9Mzg4MDUKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVl
LnBybzoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSk6CisgICAg
ICAgIChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6aW5pdEpTT2JqZWN0cyk6CisgICAgICAgICog
RHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oOgorICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHA6IEFkZGVkLgorICAgICAgICAoUGxh
aW5UZXh0Q29udHJvbGxlcjo6UGxhaW5UZXh0Q29udHJvbGxlcik6CisgICAgICAgIChQbGFpblRl
eHRDb250cm9sbGVyOjpwbGFpblRleHQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L1Bs
YWluVGV4dENvbnRyb2xsZXJRdC5oOiBBZGRlZC4KKwogMjAxMC0wOS0yOSAgQ2hyaXMgRmxlaXph
Y2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFk
bGVyLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRl
clRyZWUucHJvIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUu
cHJvCmluZGV4IDgwMTI1MWQ3YzM4NzZhN2FjNTFlOTRkZjc3NzQzNmNjNjk3MjdjODEuLjU0ZDVh
ZjcwMzdjYjIxZDJiNGMzNDdjNDY2NmVkOTJiY2I1OGQ1MjkgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLnBybworKysgYi9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KQEAgLTI3LDEyICsyNywxNCBA
QCBIRUFERVJTID0gJCRCQVNFRElSL1dvcmtRdWV1ZS5oIFwKICAgICBXb3JrUXVldWVJdGVtUXQu
aCBcCiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oIFwKICAgICBHQ0NvbnRyb2xsZXJRdC5o
IFwKKyAgICBQbGFpblRleHRDb250cm9sbGVyUXQuaCBcCiAgICAgdGVzdHBsdWdpbi5oCiBTT1VS
Q0VTID0gLi4vLi4vLi4vSmF2YVNjcmlwdENvcmUvd3RmL0Fzc2VydGlvbnMuY3BwIFwKICAgICAk
JEJBU0VESVIvV29ya1F1ZXVlLmNwcCBcCiAgICAgRHVtcFJlbmRlclRyZWVRdC5jcHAgXAogICAg
IEV2ZW50U2VuZGVyUXQuY3BwIFwKICAgICBUZXh0SW5wdXRDb250cm9sbGVyUXQuY3BwIFwKKyAg
ICBQbGFpblRleHRDb250cm9sbGVyUXQuY3BwIFwKICAgICBXb3JrUXVldWVJdGVtUXQuY3BwIFwK
ICAgICBMYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcCBcCiAgICAgR0NDb250cm9sbGVyUXQuY3Bw
IFwKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJU
cmVlUXQuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVR
dC5jcHAKaW5kZXggODBmYTQ0MWUzZTk5MWUwODU0ZTU2YTY2YjdhMmY3ZGE4YTM5MDI1My4uNTJj
ZmU0NmNhOTFhYWQ4ZmU0YzRiYjkxYzA0NmYyN2RhYTJlZmNhMCAxMDA2NDQKLS0tIGEvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKKysrIGIvV2ViS2l0
VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKQEAgLTM3LDYgKzM3
LDcgQEAKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXJRdC5oIgogI2luY2x1ZGUgIkxheW91dFRlc3RD
b250cm9sbGVyUXQuaCIKICNpbmNsdWRlICJUZXh0SW5wdXRDb250cm9sbGVyUXQuaCIKKyNpbmNs
dWRlICJQbGFpblRleHRDb250cm9sbGVyUXQuaCIKICNpbmNsdWRlICJ0ZXN0cGx1Z2luLmgiCiAj
aW5jbHVkZSAiV29ya1F1ZXVlLmgiCiAKQEAgLTQ3MCw2ICs0NzEsNyBAQCBEdW1wUmVuZGVyVHJl
ZTo6RHVtcFJlbmRlclRyZWUoKQogICAgIGNvbm5lY3QobV9jb250cm9sbGVyLCBTSUdOQUwoZG9u
ZSgpKSwgdGhpcywgU0xPVChkdW1wKCkpKTsKICAgICBtX2V2ZW50U2VuZGVyID0gbmV3IEV2ZW50
U2VuZGVyKG1fcGFnZSk7CiAgICAgbV90ZXh0SW5wdXRDb250cm9sbGVyID0gbmV3IFRleHRJbnB1
dENvbnRyb2xsZXIobV9wYWdlKTsKKyAgICBtX3BsYWluVGV4dENvbnRyb2xsZXIgPSBuZXcgUGxh
aW5UZXh0Q29udHJvbGxlcihtX3BhZ2UpOwogICAgIG1fZ2NDb250cm9sbGVyID0gbmV3IEdDQ29u
dHJvbGxlcihtX3BhZ2UpOwogCiAgICAgLy8gbm93IGNvbm5lY3Qgb3VyIGRpZmZlcmVudCBzaWdu
YWxzCkBAIC03NTIsNiArNzU0LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6aW5pdEpTT2JqZWN0
cygpCiAgICAgZnJhbWUtPmFkZFRvSmF2YVNjcmlwdFdpbmRvd09iamVjdChRTGF0aW4xU3RyaW5n
KCJldmVudFNlbmRlciIpLCBtX2V2ZW50U2VuZGVyKTsKICAgICBmcmFtZS0+YWRkVG9KYXZhU2Ny
aXB0V2luZG93T2JqZWN0KFFMYXRpbjFTdHJpbmcoInRleHRJbnB1dENvbnRyb2xsZXIiKSwgbV90
ZXh0SW5wdXRDb250cm9sbGVyKTsKICAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0V2luZG93T2Jq
ZWN0KFFMYXRpbjFTdHJpbmcoIkdDQ29udHJvbGxlciIpLCBtX2djQ29udHJvbGxlcik7CisgICAg
ZnJhbWUtPmFkZFRvSmF2YVNjcmlwdFdpbmRvd09iamVjdChRTGF0aW4xU3RyaW5nKCJwbGFpblRl
eHQiKSwgbV9wbGFpblRleHRDb250cm9sbGVyKTsKIH0KIAogdm9pZCBEdW1wUmVuZGVyVHJlZTo6
c2hvd1BhZ2UoKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVt
cFJlbmRlclRyZWVRdC5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRl
clRyZWVRdC5oCmluZGV4IDNkMzQ0NDMxYjU0NGUzMDllMThhZDUyY2M5MDdmMDhiMTg0OTRlYmIu
LmIzZTRlMzJjZTc5MjBlNThmZjBiY2JhYzk3MGU1ZWQ2NjI5OTkzZTkgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaAorKysgYi9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKQEAgLTYwLDYgKzYw
LDcgQEAgY2xhc3MgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ7CiBjbGFzcyBFdmVudFNlbmRlcjsK
IGNsYXNzIFRleHRJbnB1dENvbnRyb2xsZXI7CiBjbGFzcyBHQ0NvbnRyb2xsZXI7CitjbGFzcyBQ
bGFpblRleHRDb250cm9sbGVyOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTE0OCw2ICsx
NDksNyBAQCBwcml2YXRlOgogICAgIEV2ZW50U2VuZGVyICptX2V2ZW50U2VuZGVyOwogICAgIFRl
eHRJbnB1dENvbnRyb2xsZXIgKm1fdGV4dElucHV0Q29udHJvbGxlcjsKICAgICBHQ0NvbnRyb2xs
ZXIqIG1fZ2NDb250cm9sbGVyOworICAgIFBsYWluVGV4dENvbnRyb2xsZXIqIG1fcGxhaW5UZXh0
Q29udHJvbGxlcjsKICAgICBOZXR3b3JrQWNjZXNzTWFuYWdlciogbV9uZXR3b3JrQWNjZXNzTWFu
YWdlcjsKIAogICAgIFFGaWxlICptX3N0ZGluOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmNwcCBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDQx
YTM3YzM2ZWY2MTA4ODVhY2U5Njk5YWM2YmU1OTBjOTM3ZWMxMgotLS0gL2Rldi9udWxsCisrKyBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAK
QEAgLTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBSb2JlcnQgSG9nYW4g
PHJvYmVydEByb2JlcnRob2dhbi5uZXQ+CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiAgTmVpdGhl
ciB0aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1l
cyBvZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91
dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FS
RSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBM
T1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQbGFp
blRleHRDb250cm9sbGVyUXQuaCIKKworI2luY2x1ZGUgIi4uLy4uLy4uL1dlYktpdC9xdC9XZWJD
b3JlU3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIgorI2luY2x1ZGUgPFFBcHBsaWNh
dGlvbj4KKyNpbmNsdWRlIDxRSW5wdXRNZXRob2RFdmVudD4KKyNpbmNsdWRlIDxRS2V5RXZlbnQ+
CisKK1BsYWluVGV4dENvbnRyb2xsZXI6OlBsYWluVGV4dENvbnRyb2xsZXIoUVdlYlBhZ2UqIHBh
cmVudCkKKyAgICA6IFFPYmplY3QocGFyZW50KQoreworfQorCitRU3RyaW5nIFBsYWluVGV4dENv
bnRyb2xsZXI6OnBsYWluVGV4dChjb25zdCBRVmFyaWFudCYgcmFuZ2UpCit7CisgICAgcmV0dXJu
IER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpwbGFpblRleHQocmFuZ2UpOworfQpkaWZmIC0tZ2l0
IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0Lmgg
Yi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi5lNzhlMTEwNWFhNGQ3Yjk3NDViZTk1NWRkMzFiNDI1ZWE0MGFiZTA1Ci0tLSAv
ZGV2L251bGwKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29u
dHJvbGxlclF0LmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBS
b2JlcnQgSG9nYW4gPHJvYmVydEByb2JlcnRob2dhbi5uZXQ+CisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisg
KiAzLiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikg
bm9yIHRoZSBuYW1lcyBvZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAi
QVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAq
IERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpZm5kZWYgUGxhaW5UZXh0Q29udHJv
bGxlclF0X2gKKyNkZWZpbmUgUGxhaW5UZXh0Q29udHJvbGxlclF0X2gKKworI2luY2x1ZGUgPFFM
aXN0PgorI2luY2x1ZGUgPFFPYmplY3Q+CisjaW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRlIDxR
VmFyaWFudD4KKworI2luY2x1ZGUgInF3ZWJwYWdlLmgiCisKK2NsYXNzIFBsYWluVGV4dENvbnRy
b2xsZXIgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1YmxpYzoKKyAgICBQbGFp
blRleHRDb250cm9sbGVyKFFXZWJQYWdlKiBwYXJlbnQpOworCitwdWJsaWMgc2xvdHM6CisgICAg
UVN0cmluZyBwbGFpblRleHQoY29uc3QgUVZhcmlhbnQmIHJhbmdlKTsKK307CisKKyNlbmRpZiAv
LyBQbGFpblRleHRDb250cm9sbGVyUXRfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69364</attachid>
            <date>2010-09-30 12:43:25 -0700</date>
            <delta_ts>2010-09-30 14:22:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-38805-20100930204324.patch</filename>
            <type>text/plain</type>
            <size>12221</size>
            <attacher name="Robert Hogan">robert</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA2NWJiMzRhNzQzODUzMjFlN2QzZmQ3Njc2MGYyYmZmZmFkZjI3YjEzLi5kYjNlNjZh
NGNiYTI1NmI5MjdkOWFlZDU3M2NlYTBhZTY3M2VjMmIwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMDktMjkgIFJvYmVydCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IEFuZHJlYXMgS2xpbmcuCisKKyAgICAgICAgW1F0XSBTdXBwb3J0IGZvciBQ
bGFpblRleHRDb250cm9sbGVyCisKKyAgICAgICAgVW5za2lwIGVkaXRpbmcvdGV4dC1pdGVyYXRv
ci9iYXNpYy1pdGVyYXRpb24uaHRtbAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zODgwNQorCisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoK
KwogMjAxMC0wOS0yOSAgRGF2aWQgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRm
b3JtL3F0L1NraXBwZWQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCmluZGV4IGVh
YzQyMTFmZTlmYTZlYzQ4YzFmMGEwYTNhMjVjNGY4ZWQwMGE0NzcuLmYwNzI0NTdjYjEyNmEwODk0
N2E3OWJhOTE5NDRiZjEzYzQ2NDgzOTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L3F0L1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZApAQCAtNzM4
LDEwICs3MzgsNiBAQCBqYXZhCiBmYXN0L2RvbS9XaW5kb3cvdGltZXItcmVzdW1lLW9uLW5hdmln
YXRpb24tYmFjay5odG1sCiBsb2FkZXIvZ28tYmFjay10by1kaWZmZXJlbnQtd2luZG93LXNpemUu
aHRtbAogCi0jIFBsYWluIHRleHQgY29udHJvbGxlciBjdXJyZW50bHkgaW4gTWFjIER1bXBSZW5k
ZXJUcmVlIG9ubHkuCi0jIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
ODgwNQotZWRpdGluZy90ZXh0LWl0ZXJhdG9yL2Jhc2ljLWl0ZXJhdGlvbi5odG1sCi0KICMgTWlz
c2luZyBsYXlvdXRUZXN0Q29udHJvbGxlci5vdmVycmlkZVByZWZlcmVuY2UoKQogZmFzdC9ldmVu
dHMvcGFnZXNob3ctcGFnZWhpZGUtb24tYmFjay1jYWNoZWQuaHRtbAogZmFzdC9ldmVudHMvcGFn
ZXNob3ctcGFnZWhpZGUtb24tYmFjay1jYWNoZWQtd2l0aC1mcmFtZXMuaHRtbApkaWZmIC0tZ2l0
IGEvV2ViS2l0L3F0L0NoYW5nZUxvZyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKaW5kZXggN2U3MGE5
ZTEyMTQzOTc1ODEzNTg5NTExNGU5ZmZhZTNlNDgwN2Q3Yi4uODJkYmUwOWRjYWYzZjhhZDljMmVi
YjdmNjgwMmFkYmYyNWQyZGFmNCAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0NoYW5nZUxvZworKysg
Yi9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTAtMDktMjkgIFJvYmVy
dCBIb2dhbiAgPHJvYmVydEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFuZHJl
YXMgS2xpbmcuCisKKyAgICAgICAgW1F0XSBTdXBwb3J0IGZvciBQbGFpblRleHRDb250cm9sbGVy
CisKKyAgICAgICAgVW5za2lwIGVkaXRpbmcvdGV4dC1pdGVyYXRvci9iYXNpYy1pdGVyYXRpb24u
aHRtbAorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0z
ODgwNQorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQu
Y3BwOgorICAgICAgICAoRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ6OnBsYWluVGV4dCk6CisgICAg
ICAgICogV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaDoKKwogMjAxMC0w
OS0yOSAgQW5kcmVhcyBLbGluZyAgPGFuZHJlYXMua2xpbmdAbm9raWEuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEFyaXlhIEhpZGF5YXQuCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvV2ViQ29y
ZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuY3BwIGIvV2ViS2l0L3F0L1dlYkNvcmVT
dXBwb3J0L0R1bXBSZW5kZXJUcmVlU3VwcG9ydFF0LmNwcAppbmRleCA4MzZkZjQ5MzlhOTk1MWQ1
ZDNkMDk0NWY5YzdlM2E2MDNmZDBhYWZjLi40NGYzZmM1MTI3MDM0NDhiZWI1NzgwY2NjNTBmYjI5
NDllMTAwYzY4IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQuY3BwCisrKyBiL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9EdW1wUmVu
ZGVyVHJlZVN1cHBvcnRRdC5jcHAKQEAgLTc2NCw2ICs3NjQsMTUgQEAgdm9pZCBEdW1wUmVuZGVy
VHJlZVN1cHBvcnRRdDo6c2ltdWxhdGVEZXNrdG9wTm90aWZpY2F0aW9uQ2xpY2soY29uc3QgUVN0
cmluZyYgdGkKICNlbmRpZgogfQogCitRU3RyaW5nIER1bXBSZW5kZXJUcmVlU3VwcG9ydFF0Ojpw
bGFpblRleHQoY29uc3QgUVZhcmlhbnQmIHJhbmdlKQoreworICAgIFFNYXA8UVN0cmluZywgUVZh
cmlhbnQ+IG1hcCA9IHJhbmdlLnRvTWFwKCk7CisgICAgUVZhcmlhbnQgc3RhcnRDb250YWluZXIg
ID0gbWFwLnZhbHVlKCJzdGFydENvbnRhaW5lciIpOworICAgIG1hcCA9IHN0YXJ0Q29udGFpbmVy
LnRvTWFwKCk7CisKKyAgICByZXR1cm4gbWFwLnZhbHVlKCJpbm5lclRleHQiKS50b1N0cmluZygp
OworfQorCiAvLyBQcm92aWRlIGEgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRoIHByZXZpb3Vz
bHkgZXhwb3J0ZWQgcHJpdmF0ZSBzeW1ib2xzIGFzIG9mIFF0V2ViS2l0IDQuNiByZWxlYXNlCiAK
IHZvaWQgUVdFQktJVF9FWFBPUlQgcXRfcmVzdW1lQWN0aXZlRE9NT2JqZWN0cyhRV2ViRnJhbWUq
IGZyYW1lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L0R1bXBSZW5kZXJU
cmVlU3VwcG9ydFF0LmggYi9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVT
dXBwb3J0UXQuaAppbmRleCA1YTU5NDc1YTdmYzFiM2FiOGEyY2I4NjNmMTViY2M5MjVkNWM3MzY3
Li4wZTc2ZjA0MDZjYTQ4ZGFlZmI3OGYxOTMzYzI4ODA4ZTlmNWQ2Y2ZlIDEwMDY0NAotLS0gYS9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaAorKysgYi9X
ZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQuaApAQCAtOTgs
NiArOTgsNyBAQCBwdWJsaWM6CiAKICAgICBzdGF0aWMgUVN0cmluZyBtYXJrZXJUZXh0Rm9yTGlz
dEl0ZW0oY29uc3QgUVdlYkVsZW1lbnQmIGxpc3RJdGVtKTsKICAgICBzdGF0aWMgUVZhcmlhbnRN
YXAgY29tcHV0ZWRTdHlsZUluY2x1ZGluZ1Zpc2l0ZWRJbmZvKGNvbnN0IFFXZWJFbGVtZW50JiBl
bGVtZW50KTsKKyAgICBzdGF0aWMgUVN0cmluZyBwbGFpblRleHQoY29uc3QgUVZhcmlhbnQmIHJu
Zyk7CiAKICAgICBzdGF0aWMgdm9pZCBkdW1wRnJhbWVMb2FkZXIoYm9vbCBiKTsKICAgICBzdGF0
aWMgdm9pZCBkdW1wUmVzb3VyY2VMb2FkQ2FsbGJhY2tzKGJvb2wgYik7CmRpZmYgLS1naXQgYS9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggZmI2ZGM3
MzAwZjFkODc2NTI3MDI4MjQ1Zjk2MjMxN2ZhNmIyMDUyNC4uNDU1MTMyMmJmODEyZWNhOGM2NTNh
YTI4YjhmZjk1NTFlYTY1ZTk0NSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisr
KyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEwLTA5LTI5ICBS
b2JlcnQgSG9nYW4gIDxyb2JlcnRAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBB
bmRyZWFzIEtsaW5nLgorCisgICAgICAgIFtRdF0gU3VwcG9ydCBmb3IgUGxhaW5UZXh0Q29udHJv
bGxlcgorCisgICAgICAgIFVuc2tpcCBlZGl0aW5nL3RleHQtaXRlcmF0b3IvYmFzaWMtaXRlcmF0
aW9uLmh0bWwKKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9Mzg4MDUKKworICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLnBy
bzoKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkR1bXBSZW5kZXJUcmVlOjpEdW1wUmVuZGVyVHJlZSk6CisgICAgICAg
IChXZWJDb3JlOjpEdW1wUmVuZGVyVHJlZTo6aW5pdEpTT2JqZWN0cyk6CisgICAgICAgICogRHVt
cFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5oOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHA6IEFkZGVkLgorICAgICAgICAoUGxhaW5U
ZXh0Q29udHJvbGxlcjo6UGxhaW5UZXh0Q29udHJvbGxlcik6CisgICAgICAgIChQbGFpblRleHRD
b250cm9sbGVyOjpwbGFpblRleHQpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL3F0L1BsYWlu
VGV4dENvbnRyb2xsZXJRdC5oOiBBZGRlZC4KKwogMjAxMC0wOS0yOSAgQ2hyaXMgRmxlaXphY2gg
IDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVy
LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRy
ZWUucHJvIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWUucHJv
CmluZGV4IDgwMTI1MWQ3YzM4NzZhN2FjNTFlOTRkZjc3NzQzNmNjNjk3MjdjODEuLjU0ZDVhZjcw
MzdjYjIxZDJiNGMzNDdjNDY2NmVkOTJiY2I1OGQ1MjkgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlLnBybworKysgYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZS5wcm8KQEAgLTI3LDEyICsyNywxNCBAQCBI
RUFERVJTID0gJCRCQVNFRElSL1dvcmtRdWV1ZS5oIFwKICAgICBXb3JrUXVldWVJdGVtUXQuaCBc
CiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXJRdC5oIFwKICAgICBHQ0NvbnRyb2xsZXJRdC5oIFwK
KyAgICBQbGFpblRleHRDb250cm9sbGVyUXQuaCBcCiAgICAgdGVzdHBsdWdpbi5oCiBTT1VSQ0VT
ID0gLi4vLi4vLi4vSmF2YVNjcmlwdENvcmUvd3RmL0Fzc2VydGlvbnMuY3BwIFwKICAgICAkJEJB
U0VESVIvV29ya1F1ZXVlLmNwcCBcCiAgICAgRHVtcFJlbmRlclRyZWVRdC5jcHAgXAogICAgIEV2
ZW50U2VuZGVyUXQuY3BwIFwKICAgICBUZXh0SW5wdXRDb250cm9sbGVyUXQuY3BwIFwKKyAgICBQ
bGFpblRleHRDb250cm9sbGVyUXQuY3BwIFwKICAgICBXb3JrUXVldWVJdGVtUXQuY3BwIFwKICAg
ICBMYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcCBcCiAgICAgR0NDb250cm9sbGVyUXQuY3BwIFwK
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVl
UXQuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5j
cHAKaW5kZXggODBmYTQ0MWUzZTk5MWUwODU0ZTU2YTY2YjdhMmY3ZGE4YTM5MDI1My4uNTJjZmU0
NmNhOTFhYWQ4ZmU0YzRiYjkxYzA0NmYyN2RhYTJlZmNhMCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKKysrIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKQEAgLTM3LDYgKzM3LDcg
QEAKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXJRdC5oIgogI2luY2x1ZGUgIkxheW91dFRlc3RDb250
cm9sbGVyUXQuaCIKICNpbmNsdWRlICJUZXh0SW5wdXRDb250cm9sbGVyUXQuaCIKKyNpbmNsdWRl
ICJQbGFpblRleHRDb250cm9sbGVyUXQuaCIKICNpbmNsdWRlICJ0ZXN0cGx1Z2luLmgiCiAjaW5j
bHVkZSAiV29ya1F1ZXVlLmgiCiAKQEAgLTQ3MCw2ICs0NzEsNyBAQCBEdW1wUmVuZGVyVHJlZTo6
RHVtcFJlbmRlclRyZWUoKQogICAgIGNvbm5lY3QobV9jb250cm9sbGVyLCBTSUdOQUwoZG9uZSgp
KSwgdGhpcywgU0xPVChkdW1wKCkpKTsKICAgICBtX2V2ZW50U2VuZGVyID0gbmV3IEV2ZW50U2Vu
ZGVyKG1fcGFnZSk7CiAgICAgbV90ZXh0SW5wdXRDb250cm9sbGVyID0gbmV3IFRleHRJbnB1dENv
bnRyb2xsZXIobV9wYWdlKTsKKyAgICBtX3BsYWluVGV4dENvbnRyb2xsZXIgPSBuZXcgUGxhaW5U
ZXh0Q29udHJvbGxlcihtX3BhZ2UpOwogICAgIG1fZ2NDb250cm9sbGVyID0gbmV3IEdDQ29udHJv
bGxlcihtX3BhZ2UpOwogCiAgICAgLy8gbm93IGNvbm5lY3Qgb3VyIGRpZmZlcmVudCBzaWduYWxz
CkBAIC03NTIsNiArNzU0LDcgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6aW5pdEpTT2JqZWN0cygp
CiAgICAgZnJhbWUtPmFkZFRvSmF2YVNjcmlwdFdpbmRvd09iamVjdChRTGF0aW4xU3RyaW5nKCJl
dmVudFNlbmRlciIpLCBtX2V2ZW50U2VuZGVyKTsKICAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0
V2luZG93T2JqZWN0KFFMYXRpbjFTdHJpbmcoInRleHRJbnB1dENvbnRyb2xsZXIiKSwgbV90ZXh0
SW5wdXRDb250cm9sbGVyKTsKICAgICBmcmFtZS0+YWRkVG9KYXZhU2NyaXB0V2luZG93T2JqZWN0
KFFMYXRpbjFTdHJpbmcoIkdDQ29udHJvbGxlciIpLCBtX2djQ29udHJvbGxlcik7CisgICAgZnJh
bWUtPmFkZFRvSmF2YVNjcmlwdFdpbmRvd09iamVjdChRTGF0aW4xU3RyaW5nKCJwbGFpblRleHQi
KSwgbV9wbGFpblRleHRDb250cm9sbGVyKTsKIH0KIAogdm9pZCBEdW1wUmVuZGVyVHJlZTo6c2hv
d1BhZ2UoKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJl
bmRlclRyZWVRdC5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRy
ZWVRdC5oCmluZGV4IDNkMzQ0NDMxYjU0NGUzMDllMThhZDUyY2M5MDdmMDhiMTg0OTRlYmIuLmIz
ZTRlMzJjZTc5MjBlNThmZjBiY2JhYzk3MGU1ZWQ2NjI5OTkzZTkgMTAwNjQ0Ci0tLSBhL1dlYktp
dFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuaAorKysgYi9XZWJLaXRU
b29scy9EdW1wUmVuZGVyVHJlZS9xdC9EdW1wUmVuZGVyVHJlZVF0LmgKQEAgLTYwLDYgKzYwLDcg
QEAgY2xhc3MgRHVtcFJlbmRlclRyZWVTdXBwb3J0UXQ7CiBjbGFzcyBFdmVudFNlbmRlcjsKIGNs
YXNzIFRleHRJbnB1dENvbnRyb2xsZXI7CiBjbGFzcyBHQ0NvbnRyb2xsZXI7CitjbGFzcyBQbGFp
blRleHRDb250cm9sbGVyOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTE0OCw2ICsxNDks
NyBAQCBwcml2YXRlOgogICAgIEV2ZW50U2VuZGVyICptX2V2ZW50U2VuZGVyOwogICAgIFRleHRJ
bnB1dENvbnRyb2xsZXIgKm1fdGV4dElucHV0Q29udHJvbGxlcjsKICAgICBHQ0NvbnRyb2xsZXIq
IG1fZ2NDb250cm9sbGVyOworICAgIFBsYWluVGV4dENvbnRyb2xsZXIqIG1fcGxhaW5UZXh0Q29u
dHJvbGxlcjsKICAgICBOZXR3b3JrQWNjZXNzTWFuYWdlciogbV9uZXR3b3JrQWNjZXNzTWFuYWdl
cjsKIAogICAgIFFGaWxlICptX3N0ZGluOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmNwcCBiL1dlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDQxYTM3
YzM2ZWY2MTA4ODVhY2U5Njk5YWM2YmU1OTBjOTM3ZWMxMgotLS0gL2Rldi9udWxsCisrKyBiL1dl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L1BsYWluVGV4dENvbnRyb2xsZXJRdC5jcHAKQEAg
LTAsMCArMSw0NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBSb2JlcnQgSG9nYW4gPHJv
YmVydEByb2JlcnRob2dhbi5uZXQ+CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAq
IGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0
IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAzLiAgTmVpdGhlciB0
aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9yIHRoZSBuYW1lcyBv
ZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9t
b3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dCBz
cGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YK
KyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJQbGFpblRl
eHRDb250cm9sbGVyUXQuaCIKKworI2luY2x1ZGUgIi4uLy4uLy4uL1dlYktpdC9xdC9XZWJDb3Jl
U3VwcG9ydC9EdW1wUmVuZGVyVHJlZVN1cHBvcnRRdC5oIgorI2luY2x1ZGUgPFFBcHBsaWNhdGlv
bj4KKyNpbmNsdWRlIDxRSW5wdXRNZXRob2RFdmVudD4KKyNpbmNsdWRlIDxRS2V5RXZlbnQ+CisK
K1BsYWluVGV4dENvbnRyb2xsZXI6OlBsYWluVGV4dENvbnRyb2xsZXIoUVdlYlBhZ2UqIHBhcmVu
dCkKKyAgICA6IFFPYmplY3QocGFyZW50KQoreworfQorCitRU3RyaW5nIFBsYWluVGV4dENvbnRy
b2xsZXI6OnBsYWluVGV4dChjb25zdCBRVmFyaWFudCYgcmFuZ2UpCit7CisgICAgcmV0dXJuIER1
bXBSZW5kZXJUcmVlU3VwcG9ydFF0OjpwbGFpblRleHQocmFuZ2UpOworfQpkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJvbGxlclF0LmggYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9QbGFpblRleHRDb250cm9sbGVyUXQuaApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi5lNzhlMTEwNWFhNGQ3Yjk3NDViZTk1NWRkMzFiNDI1ZWE0MGFiZTA1Ci0tLSAvZGV2
L251bGwKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvUGxhaW5UZXh0Q29udHJv
bGxlclF0LmgKQEAgLTAsMCArMSw0NyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBSb2Jl
cnQgSG9nYW4gPHJvYmVydEByb2JlcnRob2dhbi5uZXQ+CisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKiAz
LiAgTmVpdGhlciB0aGUgbmFtZSBvZiBBcHBsZSBDb21wdXRlciwgSW5jLiAoIkFwcGxlIikgbm9y
IHRoZSBuYW1lcyBvZgorICogICAgIGl0cyBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5k
b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQKKyAqICAgICBmcm9tIHRoaXMgc29mdHdh
cmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMg
SVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hB
TlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJ
U0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKyNpZm5kZWYgUGxhaW5UZXh0Q29udHJvbGxl
clF0X2gKKyNkZWZpbmUgUGxhaW5UZXh0Q29udHJvbGxlclF0X2gKKworI2luY2x1ZGUgPFFMaXN0
PgorI2luY2x1ZGUgPFFPYmplY3Q+CisjaW5jbHVkZSA8UVN0cmluZz4KKyNpbmNsdWRlIDxRVmFy
aWFudD4KKworI2luY2x1ZGUgInF3ZWJwYWdlLmgiCisKK2NsYXNzIFBsYWluVGV4dENvbnRyb2xs
ZXIgOiBwdWJsaWMgUU9iamVjdCB7CisgICAgUV9PQkpFQ1QKK3B1YmxpYzoKKyAgICBQbGFpblRl
eHRDb250cm9sbGVyKFFXZWJQYWdlKiBwYXJlbnQpOworCitwdWJsaWMgc2xvdHM6CisgICAgUVN0
cmluZyBwbGFpblRleHQoY29uc3QgUVZhcmlhbnQmIHJhbmdlKTsKK307CisKKyNlbmRpZiAvLyBQ
bGFpblRleHRDb250cm9sbGVyUXRfaAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>