<?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>64794</bug_id>
          
          <creation_ts>2011-07-19 06:18:33 -0700</creation_ts>
          <short_desc>MediaStream API: Merging MediaStreamContainer and MediaStreamList</short_desc>
          <delta_ts>2011-07-21 03:05:59 -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>DOM</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>
          
          <blocked>56459</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tommy Widenflycht">tommyw</reporter>
          <assigned_to name="Tommy Widenflycht">tommyw</assigned_to>
          <cc>leandrogracia</cc>
    
    <cc>tonyg</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>439115</commentid>
    <comment_count>0</comment_count>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-07-19 06:18:33 -0700</bug_when>
    <thetext>Having a separate container class doesn&apos;t make any sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439118</commentid>
    <comment_count>1</comment_count>
      <attachid>101308</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-07-19 06:27:37 -0700</bug_when>
    <thetext>Created attachment 101308
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439774</commentid>
    <comment_count>2</comment_count>
      <attachid>101308</attachid>
    <who name="Tony Gentilcore">tonyg</who>
    <bug_when>2011-07-20 06:35:24 -0700</bug_when>
    <thetext>Comment on attachment 101308
Patch

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

Thanks for the cleanup. Just a nit about includes to address before submission.

&gt; Source/WebCore/dom/MediaStreamList.h:30
&gt; +#include &quot;MediaStream.h&quot;

Is this really necessary here? At first glance it seems like the forward declaration should suffice. If it is necessary, please remove the forward declaration, otherwise please add this in the cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439793</commentid>
    <comment_count>3</comment_count>
      <attachid>101308</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-07-20 07:15:39 -0700</bug_when>
    <thetext>Comment on attachment 101308
Patch

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

&gt;&gt; Source/WebCore/dom/MediaStreamList.h:30
&gt;&gt; +#include &quot;MediaStream.h&quot;
&gt; 
&gt; Is this really necessary here? At first glance it seems like the forward declaration should suffice. If it is necessary, please remove the forward declaration, otherwise please add this in the cpp.

It seems to be, the hashmap goes nuts without a real implementation.

Have removed the forward definition of MediaStream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439794</commentid>
    <comment_count>4</comment_count>
      <attachid>101466</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-07-20 07:17:44 -0700</bug_when>
    <thetext>Created attachment 101466
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>439808</commentid>
    <comment_count>5</comment_count>
      <attachid>101466</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-20 07:57:40 -0700</bug_when>
    <thetext>Comment on attachment 101466
Patch

Rejecting attachment 101466 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=ec2-cq-01&apos;, &apos;--port...&quot; exit_code: 2

Last 500 characters of output:
-14 lines).
Hunk #4 succeeded at 22238 (offset -18 lines).
2 out of 4 hunks FAILED -- saving rejects to file Source/WebCore/WebCore.xcodeproj/project.pbxproj.rej
patching file Source/WebCore/dom/MediaStreamContainer.h
rm &apos;Source/WebCore/dom/MediaStreamContainer.h&apos;
patching file Source/WebCore/dom/MediaStreamList.cpp
patching file Source/WebCore/dom/MediaStreamList.h

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Tony Gentilcore&apos;, u&apos;--...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/9209261</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440308</commentid>
    <comment_count>6</comment_count>
      <attachid>101561</attachid>
    <who name="Tommy Widenflycht">tommyw</who>
    <bug_when>2011-07-21 01:41:02 -0700</bug_when>
    <thetext>Created attachment 101561
Patch

Rebase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440327</commentid>
    <comment_count>7</comment_count>
      <attachid>101561</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-21 03:05:54 -0700</bug_when>
    <thetext>Comment on attachment 101561
Patch

Clearing flags on attachment: 101561

Committed r91455: &lt;http://trac.webkit.org/changeset/91455&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>440328</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-07-21 03:05:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101308</attachid>
            <date>2011-07-19 06:27:37 -0700</date>
            <delta_ts>2011-07-20 07:17:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64794-20110719152735.patch</filename>
            <type>text/plain</type>
            <size>14255</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTEyNDgKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA0N2Q0NWU1NWZkYzU1OWZh
MWUwMGNiZTA5NDQ5MjM0ZDVkOWM0NjExLi4zMmQzMzljMDU2N2FlMWVmN2FlNDIwMzg5ZjY2Nzc2
NTBhODdjZmU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMDctMTkgIFRvbW15
IFdpZGVuZmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CisKKyAgICAgICAgTWVkaWFTdHJlYW0g
QVBJOiBNZXJnaW5nIE1lZGlhU3RyZWFtQ29udGFpbmVyIGFuZCBNZWRpYVN0cmVhbUxpc3QKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0Nzk0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmls
ZS5saXN0LmFtOgorICAgICAgICAqIFdlYkNvcmUuZ3lwaToKKyAgICAgICAgKiBXZWJDb3JlLnBy
bzoKKyAgICAgICAgKiBXZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvajoKKyAgICAgICAgKiBX
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogZG9tL01lZGlhU3Ry
ZWFtQ29udGFpbmVyLmg6IFJlbW92ZWQuCisgICAgICAgICogZG9tL01lZGlhU3RyZWFtTGlzdC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVN0cmVhbUxpc3Q6OmNyZWF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYVN0cmVhbUxpc3Q6Ok1lZGlhU3RyZWFtTGlzdCk6CisgICAgICAgIChX
ZWJDb3JlOjpNZWRpYVN0cmVhbUxpc3Q6Omxlbmd0aCk6CisgICAgICAgIChXZWJDb3JlOjpNZWRp
YVN0cmVhbUxpc3Q6Oml0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0Ojph
ZGQpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0OjpyZW1vdmUpOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0Ojpjb250YWlucyk6CisgICAgICAgIChXZWJDb3Jl
OjpNZWRpYVN0cmVhbUxpc3Q6OmdldCk6CisgICAgICAgICogZG9tL01lZGlhU3RyZWFtTGlzdC5o
OgorCiAyMDExLTA3LTE5ICBSYXBoYWVsIEt1Ym8gZGEgQ29zdGEgIDxrdWJvQHByb2Z1c2lvbi5t
b2JpPgogCiAgICAgICAgIFtFRkxdIEFjY291bnQgZm9yIHRoZSBpbnZhbGlkIHBvaW50ZXIgY2Fz
ZSBpbiBXZWJDb3JlOjpzY3JlZW5SZWN0KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0dO
VW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCmlu
ZGV4IDQzMzFhZGE1MDNhMzdkZDUwMDI3Njc5MWJiNjAyOWI2YjY5Y2ZmODguLjUyMTdlN2YzODRh
ZWYyNTE2NGEwZTZjODIzZjNmMWIzZTZiMGQwOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlz
dC5hbQpAQCAtMTE5MSw3ICsxMTkxLDYgQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2Uv
V2ViQ29yZS9kb20vTWFwcGVkQXR0cmlidXRlRW50cnkuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9t
L01lZGlhU3RyZWFtLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtLmggXAot
CVNvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUNvbnRhaW5lci5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmNwcCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL01lZGlh
U3RyZWFtTGlzdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZUNoYW5uZWwuY3BwIFwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZ3lwaQppbmRleCA2NjQ5NjRiZTRhZTM4OWI4YjMyYjllOGQ5OGY5YzhlMzAzYTE3
NDljLi4wYjg3Y2I2MmExNTU1OTUyZGQ1NWRiNWUxNTAyMjZmOGMzZDMwMjY5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5neXBpCkBAIC0yNTE3LDcgKzI1MTcsNiBAQAogICAgICAgICAgICAgJ2RvbS9Mb2NhbE1lZGlh
U3RyZWFtLmgnLAogICAgICAgICAgICAgJ2RvbS9NZWRpYVN0cmVhbS5jcHAnLAogICAgICAgICAg
ICAgJ2RvbS9NZWRpYVN0cmVhbS5oJywKLSAgICAgICAgICAgICdkb20vTWVkaWFTdHJlYW1Db250
YWluZXIuaCcsCiAgICAgICAgICAgICAnZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAnLAogICAgICAg
ICAgICAgJ2RvbS9NZWRpYVN0cmVhbUxpc3QuaCcsCiAgICAgICAgICAgICAnZG9tL01lc3NhZ2VD
aGFubmVsLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IGVhNjY2ODM3OGE1NjljODZjY2E3ZmI4MDM1
NmM4ZmI3MjFkOTFkMmQuLmM2OTM2ZWJiMDMwNGY2N2Y1NTIxOGZhMTliYTQ3ZjJjYjdiNmM1MjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUucHJvCkBAIC0zMjIzLDcgKzMyMjMsNiBAQCBjb250YWlucyhERUZJTkVTLCBF
TkFCTEVfTUVESUFfU1RSRUFNPTEpIHsKICAgICBIRUFERVJTICs9IFwKICAgICAgICAgZG9tL0xv
Y2FsTWVkaWFTdHJlYW0uaCBcCiAgICAgICAgIGRvbS9NZWRpYVN0cmVhbS5oIFwKLSAgICAgICAg
ZG9tL01lZGlhU3RyZWFtQ29udGFpbmVyLmggXAogICAgICAgICBkb20vTWVkaWFTdHJlYW1MaXN0
LmggXAogICAgICAgICBkb20vU3RyZWFtRXZlbnQuaCBcCiAgICAgICAgIHBhZ2UvQ2FsbGJhY2tU
YXNrLmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29y
ZS52Y3Byb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpp
bmRleCBjNTQ1YjlmZDczNmNiYTJlNDI0ZDdlMzU5YTEzMTJmNGIxMDM3NmVkLi5jYWZmNWYyNGFi
YjYzNDMwZTNmNThiNTU4ZDc0MWUwNmE4N2ZmMDRhIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtNDU5MTAsMTAgKzQ1OTEwLDYgQEAKIAkJCQk+
CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXE1lZGlhU3Ry
ZWFtQ29udGFpbmVyLmgiCi0JCQkJPgotCQkJPC9GaWxlPgotCQkJPEZpbGUKIAkJCQlSZWxhdGl2
ZVBhdGg9Ii4uXGRvbVxNZWRpYVN0cmVhbUxpc3QuY3BwIgogCQkJCT4KIAkJCQk8RmlsZUNvbmZp
Z3VyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCAwOTUyNzU4MzVmMjIzMTFhZjhiYTRmYTIzOTgyYzVmYWY1YTNhZmY4Li5j
MmIwY2VkMTcyZGE5ZjFhMDk3YWRlM2UzMmRlZDcxNWU3ODk0ZGM4IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00MDI5LDcgKzQw
MjksNiBAQAogCQlCMTJEMjM2QTEzNTYwMzNGMDAyQTI4RDQgLyogSlNFeGNsdXNpdmVUcmFja0xp
c3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIxMkQy
MzY4MTM1NjAzM0YwMDJBMjhENCAvKiBKU0V4Y2x1c2l2ZVRyYWNrTGlzdC5oICovOyB9OwogCQlC
MTJEMjM2RDEzNTYwMzREMDAyQTI4RDQgLyogSlNNdWx0aXBsZVRyYWNrTGlzdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTJEMjM2QjEzNTYwMzRE
MDAyQTI4RDQgLyogSlNNdWx0aXBsZVRyYWNrTGlzdC5jcHAgKi87IH07CiAJCUIxMkQyMzZFMTM1
NjAzNEQwMDJBMjhENCAvKiBKU011bHRpcGxlVHJhY2tMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTJEMjM2QzEzNTYwMzREMDAyQTI4RDQgLyog
SlNNdWx0aXBsZVRyYWNrTGlzdC5oICovOyB9OwotCQlCMTQzNTNENDEzOEVBOEVEMDBENTMyNzYg
LyogTWVkaWFTdHJlYW1Db250YWluZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIxNDM1M0QwMTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUNv
bnRhaW5lci5oICovOyB9OwogCQlCMTQzNTNENTEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJl
YW1MaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEIxNDM1M0QxMTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUxpc3QuY3BwICovOyB9Owog
CQlCMTQzNTNENjEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTQzNTNEMjEzOEVBOEVEMDBE
NTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggKi87IH07CiAJCUIxNDM1M0Y4MTM4RUE5NUIwMEQ1
MzI3NiAvKiBKU01lZGlhU3RyZWFtTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCMTQzNTNGNjEzOEVBOTVCMDBENTMyNzYgLyogSlNNZWRpYVN0
cmVhbUxpc3QuY3BwICovOyB9OwpAQCAtMTA0NzYsNyArMTA0NzUsNiBAQAogCQlCMTJEMjM2ODEz
NTYwMzNGMDAyQTI4RDQgLyogSlNFeGNsdXNpdmVUcmFja0xpc3QuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNFeGNsdXNpdmVUcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQjEyRDIzNkIxMzU2MDM0RDAwMkEyOEQ0IC8qIEpTTXVsdGlwbGVUcmFj
a0xpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNdWx0aXBs
ZVRyYWNrTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIxMkQyMzZDMTM1
NjAzNEQwMDJBMjhENCAvKiBKU011bHRpcGxlVHJhY2tMaXN0LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTTXVsdGlwbGVUcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKLQkJQjE0MzUzRDAxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtQ29udGFp
bmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU3RyZWFtQ29udGFp
bmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUIxNDM1M0QxMTM4RUE4RUQwMEQ1
MzI3NiAvKiBNZWRpYVN0cmVhbUxpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWVkaWFTdHJlYW1MaXN0LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJQjE0MzUzRDIxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbUxpc3QuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQjE0MzUzRDMxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFt
TGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVkaWFTdHJlYW1MaXN0LmlkbDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5NjY3LDcgKzE5NjY1LDYgQEAKIAkJCQlCMUU1
NDU3NDEzNDYyOTFGMDA5MkE1NDUgLyogTWVkaWFTdHJlYW0uY3BwICovLAogCQkJCUIxRTU0NTc1
MTM0NjI5MUYwMDkyQTU0NSAvKiBNZWRpYVN0cmVhbS5oICovLAogCQkJCUIxRTU0NTc2MTM0NjI5
MUYwMDkyQTU0NSAvKiBNZWRpYVN0cmVhbS5pZGwgKi8sCi0JCQkJQjE0MzUzRDAxMzhFQThFRDAw
RDUzMjc2IC8qIE1lZGlhU3RyZWFtQ29udGFpbmVyLmggKi8sCiAJCQkJQjE0MzUzRDExMzhFQThF
RDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5jcHAgKi8sCiAJCQkJQjE0MzUzRDIxMzhFQThF
RDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5oICovLAogCQkJCUIxNDM1M0QzMTM4RUE4RUQw
MEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUxpc3QuaWRsICovLApAQCAtMjIxMzIsNyArMjIxMjksNiBA
QAogCQkJCUQzQUExMEY0MTIzQTk4QUEwMDkyMTUyQiAvKiBNZWRpYVF1ZXJ5TWF0Y2hlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQjFFNTQ1N0UxMzQ2MjkxRjAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFt
LmggaW4gSGVhZGVycyAqLywKIAkJCQlCMUU1NDU5NDEzNDYyOUMxMDA5MkE1NDUgLyogTWVkaWFT
dHJlYW1DbGllbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCUIxNDM1M0Q0MTM4RUE4RUQwMEQ1MzI3
NiAvKiBNZWRpYVN0cmVhbUNvbnRhaW5lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjFFNTQ1OTgx
MzQ2MjlDMTAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFtQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJQjFFNTQ1OTYxMzQ2MjlDMTAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFtRnJhbWVDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMTQzNTNENjEzOEVBOEVEMDBENTMyNzYgLyogTWVk
aWFTdHJlYW1MaXN0LmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9NZWRpYVN0cmVhbUNvbnRhaW5lci5oIGIvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3Ry
ZWFtQ29udGFpbmVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk2ZmJiNTA1MjU5
MmNiN2FiNGZhYmQ4NzEzZTJhYmY5MTlkNzE1ZWMuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtQ29udGFp
bmVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw5MSArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChD
KSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0g
KiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAq
Ci0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05U
UklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
LSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTgotICogQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCi0gKiBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZu
ZGVmIE1lZGlhU3RyZWFtQ29udGFpbmVyX2gKLSNkZWZpbmUgTWVkaWFTdHJlYW1Db250YWluZXJf
aAotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgi
Ci0jaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KLSNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgot
I2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNp
bmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0KLWNsYXNz
IE1lZGlhU3RyZWFtQ29udGFpbmVyIDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW1Db250
YWluZXI+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUNvbnRh
aW5lcj4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtQ29udGFpbmVy
KTsgfQotICAgIHZpcnR1YWwgfk1lZGlhU3RyZWFtQ29udGFpbmVyKCkgeyB9Ci0KLSAgICB1bnNp
Z25lZCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiBtX3N0cmVhbXMuc2l6ZSgpOyB9Ci0KLSAgICBQ
YXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBpdGVtKHVuc2lnbmVkIGluZGV4KSBjb25zdAotICAgIHsK
LSAgICAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxNZWRpYVN0cmVhbT4gPjo6Y29uc3RfaXRl
cmF0b3IgaSA9IG1fc3RyZWFtcy5iZWdpbigpOwotICAgICAgICBmb3IgKHVuc2lnbmVkIGogPSAw
OyBpICE9IG1fc3RyZWFtcy5lbmQoKTsgKytpLCArK2opIHsKLSAgICAgICAgICAgIGlmIChqID09
IGluZGV4KQotICAgICAgICAgICAgICAgIHJldHVybiBpLT5zZWNvbmQ7Ci0gICAgICAgIH0KLSAg
ICAgICAgcmV0dXJuIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+KCk7Ci0gICAgfQotCi0gICAgdm9p
ZCBhZGQoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gc3RyZWFtKQotICAgIHsKLSAgICAgICAgUmVm
UHRyPE1lZGlhU3RyZWFtPiBzID0gc3RyZWFtOwotICAgICAgICBBU1NFUlQoIWNvbnRhaW5zKHMp
KTsKLSAgICAgICAgbV9zdHJlYW1zLmFkZChzLT5sYWJlbCgpLCBzKTsKLSAgICB9Ci0KLSAgICB2
b2lkIHJlbW92ZShQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0pCi0gICAgewotICAgICAg
ICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07Ci0gICAgICAgIEFTU0VSVChjb250YWlu
cyhzKSk7Ci0gICAgICAgIG1fc3RyZWFtcy5yZW1vdmUocy0+bGFiZWwoKSk7Ci0gICAgfQotCi0g
ICAgYm9vbCBjb250YWlucyhQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0pIGNvbnN0Ci0g
ICAgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07Ci0gICAgICAgIHJl
dHVybiBtX3N0cmVhbXMuY29udGFpbnMocy0+bGFiZWwoKSk7Ci0gICAgfQotCi0gICAgUGFzc1Jl
ZlB0cjxNZWRpYVN0cmVhbT4gZ2V0KGNvbnN0IFN0cmluZyYga2V5KSBjb25zdAotICAgIHsKLSAg
ICAgICAgcmV0dXJuIG1fc3RyZWFtcy5nZXQoa2V5KTsKLSAgICB9Ci0KLXByaXZhdGU6Ci0gICAg
TWVkaWFTdHJlYW1Db250YWluZXIoKSB7IH0KLQotICAgIEhhc2hNYXA8U3RyaW5nLCBSZWZQdHI8
TWVkaWFTdHJlYW0+ID4gbV9zdHJlYW1zOwotfTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2VuZGlmIC8vIE1lZGlhU3RyZWFt
Q29udGFpbmVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUxp
c3QuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAKaW5kZXggM2U0
ZjYwMDk0NDg0ODg1MDNmZDNmYTliOWY5ZTY1MjA4N2FjOGQyYy4uZDNhZDk0NjAyMmZlZmNhNDY3
Nzk1YjAwN2NiMTBmMTk2YTI3YjliMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL01l
ZGlhU3RyZWFtTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlz
dC5jcHAKQEAgLTI3LDE3ICsyNywxNCBAQAogCiAjaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKIAot
I2luY2x1ZGUgIk1lZGlhU3RyZWFtQ29udGFpbmVyLmgiCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAotUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUxpc3Q+IE1lZGlhU3RyZWFtTGlzdDo6Y3JlYXRlKFBh
c3NSZWZQdHI8TWVkaWFTdHJlYW1Db250YWluZXI+IHN0cmVhbXMpCitQYXNzUmVmUHRyPE1lZGlh
U3RyZWFtTGlzdD4gTWVkaWFTdHJlYW1MaXN0OjpjcmVhdGUoKQogewotICAgIHJldHVybiBhZG9w
dFJlZihuZXcgTWVkaWFTdHJlYW1MaXN0KHN0cmVhbXMpKTsKKyAgICByZXR1cm4gYWRvcHRSZWYo
bmV3IE1lZGlhU3RyZWFtTGlzdCgpKTsKIH0KIAotTWVkaWFTdHJlYW1MaXN0OjpNZWRpYVN0cmVh
bUxpc3QoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUNvbnRhaW5lcj4gc3RyZWFtcykKLSAgICA6IG1f
c3RyZWFtcyhzdHJlYW1zKQorTWVkaWFTdHJlYW1MaXN0OjpNZWRpYVN0cmVhbUxpc3QoKQogewog
fQogCkBAIC00NywxNiArNDQsNTAgQEAgTWVkaWFTdHJlYW1MaXN0Ojp+TWVkaWFTdHJlYW1MaXN0
KCkKIAogdW5zaWduZWQgTWVkaWFTdHJlYW1MaXN0OjpsZW5ndGgoKSBjb25zdAogewotICAgIHJl
dHVybiBtX3N0cmVhbXMtPmxlbmd0aCgpOworICAgIHJldHVybiBtX3N0cmVhbXMuc2l6ZSgpOwog
fQogCiBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBNZWRpYVN0cmVhbUxpc3Q6Oml0ZW0odW5zaWdu
ZWQgaW5kZXgpIGNvbnN0CiB7Ci0gICAgaWYgKGluZGV4IDwgbV9zdHJlYW1zLT5sZW5ndGgoKSkK
LSAgICAgICAgcmV0dXJuIG1fc3RyZWFtcy0+aXRlbShpbmRleCk7CisgICAgSGFzaE1hcDxTdHJp
bmcsIFJlZlB0cjxNZWRpYVN0cmVhbT4gPjo6Y29uc3RfaXRlcmF0b3IgaSA9IG1fc3RyZWFtcy5i
ZWdpbigpOworICAgIGZvciAodW5zaWduZWQgaiA9IDA7IGkgIT0gbV9zdHJlYW1zLmVuZCgpOyAr
K2ksICsraikgeworICAgICAgICBpZiAoaiA9PSBpbmRleCkKKyAgICAgICAgICAgIHJldHVybiBp
LT5zZWNvbmQ7CisgICAgfQogICAgIHJldHVybiBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPigpOwog
fQogCit2b2lkIE1lZGlhU3RyZWFtTGlzdDo6YWRkKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IHN0
cmVhbSkKK3sKKyAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07CisgICAgQVNTRVJU
KCFjb250YWlucyhzKSk7CisgICAgbV9zdHJlYW1zLmFkZChzLT5sYWJlbCgpLCBzKTsKK30KKwor
dm9pZCBNZWRpYVN0cmVhbUxpc3Q6OnJlbW92ZShQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJl
YW0pCit7CisgICAgUmVmUHRyPE1lZGlhU3RyZWFtPiBzID0gc3RyZWFtOworICAgIEFTU0VSVChj
b250YWlucyhzKSk7CisgICAgbV9zdHJlYW1zLnJlbW92ZShzLT5sYWJlbCgpKTsKK30KKworYm9v
bCBNZWRpYVN0cmVhbUxpc3Q6OmNvbnRhaW5zKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IHN0cmVh
bSkgY29uc3QKK3sKKyAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07CisgICAgcmV0
dXJuIG1fc3RyZWFtcy5jb250YWlucyhzLT5sYWJlbCgpKTsKK30KKworYm9vbCBNZWRpYVN0cmVh
bUxpc3Q6OmNvbnRhaW5zKGNvbnN0IFN0cmluZyYgbGFiZWwpIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fc3RyZWFtcy5jb250YWlucyhsYWJlbCk7Cit9CisKK1Bhc3NSZWZQdHI8TWVkaWFTdHJlYW0+
IE1lZGlhU3RyZWFtTGlzdDo6Z2V0KGNvbnN0IFN0cmluZyYgbGFiZWwpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fc3RyZWFtcy5nZXQobGFiZWwpOworfQorCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKIAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0pCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFT
dHJlYW1MaXN0LmgKaW5kZXggNWI0ZGE2ODFhZTliMzY3ZmYyMTkzZDZiOTJmMzEyYTkxNGZiMDZj
MS4uMmJhNzg4YWJiNTlmNTZkNWM0YjBkMWNhYTdkNzkwNzJlZmM1ODkzYSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlzdC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2RvbS9NZWRpYVN0cmVhbUxpc3QuaApAQCAtMjcsNyArMjcsOSBAQAogCiAjaWYgRU5BQkxFKE1F
RElBX1NUUkVBTSkKIAorI2luY2x1ZGUgIk1lZGlhU3RyZWFtLmgiCiAjaW5jbHVkZSA8d3RmL0Zv
cndhcmQuaD4KKyNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9QYXNzUmVm
UHRyLmg+CiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNpbmNsdWRlIDx3dGYvUmVmUHRy
Lmg+CkBAIC0zNSwyMSArMzcsMjcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgTWVk
aWFTdHJlYW07Ci1jbGFzcyBNZWRpYVN0cmVhbUNvbnRhaW5lcjsKIAogY2xhc3MgTWVkaWFTdHJl
YW1MaXN0IDogcHVibGljIFJlZkNvdW50ZWQ8TWVkaWFTdHJlYW1MaXN0PiB7CiBwdWJsaWM6Ci0g
ICAgc3RhdGljIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1MaXN0PiBjcmVhdGUoUGFzc1JlZlB0cjxN
ZWRpYVN0cmVhbUNvbnRhaW5lcj4gc3RyZWFtcyk7CisgICAgc3RhdGljIFBhc3NSZWZQdHI8TWVk
aWFTdHJlYW1MaXN0PiBjcmVhdGUoKTsKICAgICB2aXJ0dWFsIH5NZWRpYVN0cmVhbUxpc3QoKTsK
IAogICAgIC8vIERPTSBtZXRob2RzICYgYXR0cmlidXRlcyBmb3IgTWVkaWFTdHJlYW1MaXN0Ci0g
ICAgdmlydHVhbCB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsKLSAgICB2aXJ0dWFsIFBhc3NSZWZQ
dHI8TWVkaWFTdHJlYW0+IGl0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0OworICAgIHVuc2lnbmVk
IGxlbmd0aCgpIGNvbnN0OworICAgIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IGl0ZW0odW5zaWdu
ZWQgaW5kZXgpIGNvbnN0OworCisgICAgLy8gTGlzdCBtYW5pcHVsYXRpb24KKyAgICB2b2lkIGFk
ZChQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPik7CisgICAgdm9pZCByZW1vdmUoUGFzc1JlZlB0cjxN
ZWRpYVN0cmVhbT4pOworICAgIGJvb2wgY29udGFpbnMoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4p
IGNvbnN0OworICAgIGJvb2wgY29udGFpbnMoY29uc3QgU3RyaW5nJiBsYWJlbCkgY29uc3Q7Cisg
ICAgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gZ2V0KGNvbnN0IFN0cmluZyYgbGFiZWwpIGNvbnN0
OwogCiBwcml2YXRlOgotICAgIE1lZGlhU3RyZWFtTGlzdChQYXNzUmVmUHRyPE1lZGlhU3RyZWFt
Q29udGFpbmVyPiBzdHJlYW1zKTsKKyAgICBNZWRpYVN0cmVhbUxpc3QoKTsKIAotICAgIFJlZlB0
cjxNZWRpYVN0cmVhbUNvbnRhaW5lcj4gbV9zdHJlYW1zOworICAgIEhhc2hNYXA8U3RyaW5nLCBS
ZWZQdHI8TWVkaWFTdHJlYW0+ID4gbV9zdHJlYW1zOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101466</attachid>
            <date>2011-07-20 07:17:44 -0700</date>
            <delta_ts>2011-07-21 01:40:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64794-20110720161743.patch</filename>
            <type>text/plain</type>
            <size>14089</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTEzNDYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyNjQyYTBjNWZhNmQ1Y2U4
NmVhNTY4Y2Q3ZjM0YTVhNTRjODY2NTk5Li42MDJhMGI4NmRjNGFhYWFjZmM2YWNjNGQzNzNmOTlm
MjhjZWYzMGRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDctMTkgIFRvbW15
IFdpZGVuZmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CisKKyAgICAgICAgTWVkaWFTdHJlYW0g
QVBJOiBNZXJnaW5nIE1lZGlhU3RyZWFtQ29udGFpbmVyIGFuZCBNZWRpYVN0cmVhbUxpc3QKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0Nzk0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmls
ZS5saXN0LmFtOgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUNvbnRhaW5lci5oOiBSZW1vdmVk
LgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFTdHJlYW1MaXN0OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1M
aXN0OjpNZWRpYVN0cmVhbUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0
OjpsZW5ndGgpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0OjppdGVtKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtTGlzdDo6YWRkKToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhU3RyZWFtTGlzdDo6cmVtb3ZlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFt
TGlzdDo6Y29udGFpbnMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0OjpnZXQp
OgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUxpc3QuaDoKKwogMjAxMS0wNy0yMCAgQm9yaXMg
U211cyAgPHNtdXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEFkZCBhIHJlc291cmNlTGluayBh
dWRpdCBmb3JtYXR0ZXIgdG8gbWFrZSBpdCBwb3NzaWJsZSBmb3IgZGV2dG9vbHMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0gYi9Tb3VyY2UvV2ViQ29yZS9H
TlVtYWtlZmlsZS5saXN0LmFtCmluZGV4IDg5ODVhN2FiOWVkNmYwZTU0MjU5NTdiODU1YTAyMjlm
ZDQ2YzNlMmYuLmIxZDM0Y2EyYTU4MTg1NWMyYjkyNDhiYzAyZTRlMjVlYmM0YWM4MjkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KKysrIGIvU291cmNlL1dl
YkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQpAQCAtMTE5MSw3ICsxMTkxLDYgQEAgd2ViY29yZV9z
b3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vTWFwcGVkQXR0cmlidXRlRW50cnkuaCBc
CiAJU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtLmNwcCBcCiAJU291cmNlL1dlYkNvcmUv
ZG9tL01lZGlhU3RyZWFtLmggXAotCVNvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUNvbnRh
aW5lci5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmNwcCBcCiAJU291
cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlzdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9kb20v
TWVzc2FnZUNoYW5uZWwuY3BwIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA1NmY0ZTE0NTVmODM0YTcx
ODBiYTA1MDMxYWZlYWM1OWViOTBhMjIzLi45MDI1YzJjOGQ1ODgwMmI5ODRiNGY3MWVlZGU4MGY1
MGI5ZjJjZjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0yNTIxLDcgKzI1MjEsNiBAQAogICAgICAg
ICAgICAgJ2RvbS9Mb2NhbE1lZGlhU3RyZWFtLmgnLAogICAgICAgICAgICAgJ2RvbS9NZWRpYVN0
cmVhbS5jcHAnLAogICAgICAgICAgICAgJ2RvbS9NZWRpYVN0cmVhbS5oJywKLSAgICAgICAgICAg
ICdkb20vTWVkaWFTdHJlYW1Db250YWluZXIuaCcsCiAgICAgICAgICAgICAnZG9tL01lZGlhU3Ry
ZWFtTGlzdC5jcHAnLAogICAgICAgICAgICAgJ2RvbS9NZWRpYVN0cmVhbUxpc3QuaCcsCiAgICAg
ICAgICAgICAnZG9tL01lc3NhZ2VDaGFubmVsLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnBybyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IDczYThl
NzBkNmE0N2M3YWUyNWNhZjI2ZjJiYjFhNDk1YTQ4MmVkNjYuLmVkMWQ0ZjRkZjIzMDM1Y2FmNTJh
ZGUyNjVhZWEwNGNmNjYwMTFhNzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
cHJvCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0zMjI4LDcgKzMyMjgsNiBA
QCBjb250YWlucyhERUZJTkVTLCBFTkFCTEVfTUVESUFfU1RSRUFNPTEpIHsKICAgICBIRUFERVJT
ICs9IFwKICAgICAgICAgZG9tL0xvY2FsTWVkaWFTdHJlYW0uaCBcCiAgICAgICAgIGRvbS9NZWRp
YVN0cmVhbS5oIFwKLSAgICAgICAgZG9tL01lZGlhU3RyZWFtQ29udGFpbmVyLmggXAogICAgICAg
ICBkb20vTWVkaWFTdHJlYW1MaXN0LmggXAogICAgICAgICBkb20vU3RyZWFtRXZlbnQuaCBcCiAg
ICAgICAgIHBhZ2UvQ2FsbGJhY2tUYXNrLmggXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvagppbmRleCAwODM2M2IyMDFlMjRiMzI4YjYyN2NkNDZkZDQ4NTk1
MTk1ZTlkNmVhLi5kNWFjOTdmN2ZiNjU0NjkzODZiZjM5YzNjYjdhYjAyYWUxMjhkODg4IDEwMDc1
NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagpAQCAtNDYwNzgs
MTAgKzQ2MDc4LDYgQEAKIAkJCQk+CiAJCQk8L0ZpbGU+CiAJCQk8RmlsZQotCQkJCVJlbGF0aXZl
UGF0aD0iLi5cZG9tXE1lZGlhU3RyZWFtQ29udGFpbmVyLmgiCi0JCQkJPgotCQkJPC9GaWxlPgot
CQkJPEZpbGUKIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxNZWRpYVN0cmVhbUxpc3QuY3BwIgog
CQkJCT4KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCA4N2I3NWFiNGZjOGM5OTUyNDAxOWJl
OWMxOGQ5NzdjYTUyNmVkODRlLi5lMWEzMDIyZDQwMTc3YjZlOGY4ZmJhNmMxNWIxYzM0YTkwYTkz
ODVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCkBAIC00MDU4LDcgKzQwNTgsNiBAQAogCQlCMTJEMjM2QTEzNTYwMzNGMDAyQTI4RDQg
LyogSlNFeGNsdXNpdmVUcmFja0xpc3QuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IEIxMkQyMzY4MTM1NjAzM0YwMDJBMjhENCAvKiBKU0V4Y2x1c2l2ZVRy
YWNrTGlzdC5oICovOyB9OwogCQlCMTJEMjM2RDEzNTYwMzREMDAyQTI4RDQgLyogSlNNdWx0aXBs
ZVRyYWNrTGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCMTJEMjM2QjEzNTYwMzREMDAyQTI4RDQgLyogSlNNdWx0aXBsZVRyYWNrTGlzdC5jcHAg
Ki87IH07CiAJCUIxMkQyMzZFMTM1NjAzNEQwMDJBMjhENCAvKiBKU011bHRpcGxlVHJhY2tMaXN0
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTJEMjM2
QzEzNTYwMzREMDAyQTI4RDQgLyogSlNNdWx0aXBsZVRyYWNrTGlzdC5oICovOyB9OwotCQlCMTQz
NTNENDEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1Db250YWluZXIuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIxNDM1M0QwMTM4RUE4RUQwMEQ1
MzI3NiAvKiBNZWRpYVN0cmVhbUNvbnRhaW5lci5oICovOyB9OwogCQlCMTQzNTNENTEzOEVBOEVE
MDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIxNDM1M0QxMTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0
cmVhbUxpc3QuY3BwICovOyB9OwogCQlCMTQzNTNENjEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFT
dHJlYW1MaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCMTQzNTNEMjEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggKi87IH07CiAJ
CUIxNDM1M0Y4MTM4RUE5NUIwMEQ1MzI3NiAvKiBKU01lZGlhU3RyZWFtTGlzdC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTQzNTNGNjEzOEVBOTVC
MDBENTMyNzYgLyogSlNNZWRpYVN0cmVhbUxpc3QuY3BwICovOyB9OwpAQCAtMTA1NDYsNyArMTA1
NDUsNiBAQAogCQlCMTJEMjM2ODEzNTYwMzNGMDAyQTI4RDQgLyogSlNFeGNsdXNpdmVUcmFja0xp
c3QuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFeGNsdXNpdmVUcmFja0xp
c3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjEyRDIzNkIxMzU2MDM0RDAwMkEy
OEQ0IC8qIEpTTXVsdGlwbGVUcmFja0xpc3QuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNNdWx0aXBsZVRyYWNrTGlzdC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUIxMkQyMzZDMTM1NjAzNEQwMDJBMjhENCAvKiBKU011bHRpcGxlVHJhY2tMaXN0
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTTXVsdGlwbGVUcmFja0xpc3Qu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQjE0MzUzRDAxMzhFQThFRDAwRDUzMjc2
IC8qIE1lZGlhU3RyZWFtQ29udGFpbmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1lZGlhU3RyZWFtQ29udGFpbmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUIxNDM1M0QxMTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUxpc3QuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFTdHJlYW1MaXN0LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjE0MzUzRDIxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlh
U3RyZWFtTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVh
bUxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjE0MzUzRDMxMzhFQThFRDAw
RDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gTWVk
aWFTdHJlYW1MaXN0LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5Nzc0LDcg
KzE5NzcyLDYgQEAKIAkJCQlCMUU1NDU3NDEzNDYyOTFGMDA5MkE1NDUgLyogTWVkaWFTdHJlYW0u
Y3BwICovLAogCQkJCUIxRTU0NTc1MTM0NjI5MUYwMDkyQTU0NSAvKiBNZWRpYVN0cmVhbS5oICov
LAogCQkJCUIxRTU0NTc2MTM0NjI5MUYwMDkyQTU0NSAvKiBNZWRpYVN0cmVhbS5pZGwgKi8sCi0J
CQkJQjE0MzUzRDAxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtQ29udGFpbmVyLmggKi8s
CiAJCQkJQjE0MzUzRDExMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5jcHAgKi8s
CiAJCQkJQjE0MzUzRDIxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5oICovLAog
CQkJCUIxNDM1M0QzMTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUxpc3QuaWRsICovLApA
QCAtMjIyNTcsNyArMjIyNTQsNiBAQAogCQkJCUQzQUExMEY0MTIzQTk4QUEwMDkyMTUyQiAvKiBN
ZWRpYVF1ZXJ5TWF0Y2hlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjFFNTQ1N0UxMzQ2MjkxRjAw
OTJBNTQ1IC8qIE1lZGlhU3RyZWFtLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMUU1NDU5NDEzNDYy
OUMxMDA5MkE1NDUgLyogTWVkaWFTdHJlYW1DbGllbnQuaCBpbiBIZWFkZXJzICovLAotCQkJCUIx
NDM1M0Q0MTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRpYVN0cmVhbUNvbnRhaW5lci5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQjFFNTQ1OTgxMzQ2MjlDMTAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFtQ29udHJv
bGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjFFNTQ1OTYxMzQ2MjlDMTAwOTJBNTQ1IC8qIE1l
ZGlhU3RyZWFtRnJhbWVDb250cm9sbGVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMTQzNTNENjEz
OEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggaW4gSGVhZGVycyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUNvbnRhaW5lci5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtQ29udGFpbmVyLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDk2ZmJiNTA1MjU5MmNiN2FiNGZhYmQ4NzEzZTJhYmY5MTlkNzE1ZWMuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUv
ZG9tL01lZGlhU3RyZWFtQ29udGFpbmVyLmgKKysrIC9kZXYvbnVsbApAQCAtMSw5MSArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQot
ICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0Yg
VVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTgotICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
Ci0gKiBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIE1lZGlhU3RyZWFtQ29udGFpbmVyX2gKLSNkZWZpbmUg
TWVkaWFTdHJlYW1Db250YWluZXJfaAotCi0jaWYgRU5BQkxFKE1FRElBX1NUUkVBTSkKLQotI2lu
Y2x1ZGUgIk1lZGlhU3RyZWFtLmgiCi0jaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KLSNpbmNs
dWRlIDx3dGYvRm9yd2FyZC5oPgotI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+Ci0jaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCi1uYW1lc3Bh
Y2UgV2ViQ29yZSB7Ci0KLWNsYXNzIE1lZGlhU3RyZWFtQ29udGFpbmVyIDogcHVibGljIFJlZkNv
dW50ZWQ8TWVkaWFTdHJlYW1Db250YWluZXI+IHsKLXB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxNZWRpYVN0cmVhbUNvbnRhaW5lcj4gY3JlYXRlKCkgeyByZXR1cm4gYWRvcHRSZWYobmV3
IE1lZGlhU3RyZWFtQ29udGFpbmVyKTsgfQotICAgIHZpcnR1YWwgfk1lZGlhU3RyZWFtQ29udGFp
bmVyKCkgeyB9Ci0KLSAgICB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdCB7IHJldHVybiBtX3N0cmVh
bXMuc2l6ZSgpOyB9Ci0KLSAgICBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBpdGVtKHVuc2lnbmVk
IGluZGV4KSBjb25zdAotICAgIHsKLSAgICAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxNZWRp
YVN0cmVhbT4gPjo6Y29uc3RfaXRlcmF0b3IgaSA9IG1fc3RyZWFtcy5iZWdpbigpOwotICAgICAg
ICBmb3IgKHVuc2lnbmVkIGogPSAwOyBpICE9IG1fc3RyZWFtcy5lbmQoKTsgKytpLCArK2opIHsK
LSAgICAgICAgICAgIGlmIChqID09IGluZGV4KQotICAgICAgICAgICAgICAgIHJldHVybiBpLT5z
ZWNvbmQ7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+
KCk7Ci0gICAgfQotCi0gICAgdm9pZCBhZGQoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gc3RyZWFt
KQotICAgIHsKLSAgICAgICAgUmVmUHRyPE1lZGlhU3RyZWFtPiBzID0gc3RyZWFtOwotICAgICAg
ICBBU1NFUlQoIWNvbnRhaW5zKHMpKTsKLSAgICAgICAgbV9zdHJlYW1zLmFkZChzLT5sYWJlbCgp
LCBzKTsKLSAgICB9Ci0KLSAgICB2b2lkIHJlbW92ZShQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBz
dHJlYW0pCi0gICAgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07Ci0g
ICAgICAgIEFTU0VSVChjb250YWlucyhzKSk7Ci0gICAgICAgIG1fc3RyZWFtcy5yZW1vdmUocy0+
bGFiZWwoKSk7Ci0gICAgfQotCi0gICAgYm9vbCBjb250YWlucyhQYXNzUmVmUHRyPE1lZGlhU3Ry
ZWFtPiBzdHJlYW0pIGNvbnN0Ci0gICAgewotICAgICAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMg
PSBzdHJlYW07Ci0gICAgICAgIHJldHVybiBtX3N0cmVhbXMuY29udGFpbnMocy0+bGFiZWwoKSk7
Ci0gICAgfQotCi0gICAgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gZ2V0KGNvbnN0IFN0cmluZyYg
a2V5KSBjb25zdAotICAgIHsKLSAgICAgICAgcmV0dXJuIG1fc3RyZWFtcy5nZXQoa2V5KTsKLSAg
ICB9Ci0KLXByaXZhdGU6Ci0gICAgTWVkaWFTdHJlYW1Db250YWluZXIoKSB7IH0KLQotICAgIEhh
c2hNYXA8U3RyaW5nLCBSZWZQdHI8TWVkaWFTdHJlYW0+ID4gbV9zdHJlYW1zOwotfTsKLQotfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKLQot
I2VuZGlmIC8vIE1lZGlhU3RyZWFtQ29udGFpbmVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9NZWRpYVN0cmVhbUxpc3QuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3Ry
ZWFtTGlzdC5jcHAKaW5kZXggM2U0ZjYwMDk0NDg0ODg1MDNmZDNmYTliOWY5ZTY1MjA4N2FjOGQy
Yy4uZDNhZDk0NjAyMmZlZmNhNDY3Nzk1YjAwN2NiMTBmMTk2YTI3YjliMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAKQEAgLTI3LDE3ICsyNywxNCBAQAogCiAjaWYgRU5B
QkxFKE1FRElBX1NUUkVBTSkKIAotI2luY2x1ZGUgIk1lZGlhU3RyZWFtQ29udGFpbmVyLmgiCi0K
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUxpc3Q+IE1lZGlh
U3RyZWFtTGlzdDo6Y3JlYXRlKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1Db250YWluZXI+IHN0cmVh
bXMpCitQYXNzUmVmUHRyPE1lZGlhU3RyZWFtTGlzdD4gTWVkaWFTdHJlYW1MaXN0OjpjcmVhdGUo
KQogewotICAgIHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW1MaXN0KHN0cmVhbXMpKTsK
KyAgICByZXR1cm4gYWRvcHRSZWYobmV3IE1lZGlhU3RyZWFtTGlzdCgpKTsKIH0KIAotTWVkaWFT
dHJlYW1MaXN0OjpNZWRpYVN0cmVhbUxpc3QoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUNvbnRhaW5l
cj4gc3RyZWFtcykKLSAgICA6IG1fc3RyZWFtcyhzdHJlYW1zKQorTWVkaWFTdHJlYW1MaXN0OjpN
ZWRpYVN0cmVhbUxpc3QoKQogewogfQogCkBAIC00NywxNiArNDQsNTAgQEAgTWVkaWFTdHJlYW1M
aXN0Ojp+TWVkaWFTdHJlYW1MaXN0KCkKIAogdW5zaWduZWQgTWVkaWFTdHJlYW1MaXN0OjpsZW5n
dGgoKSBjb25zdAogewotICAgIHJldHVybiBtX3N0cmVhbXMtPmxlbmd0aCgpOworICAgIHJldHVy
biBtX3N0cmVhbXMuc2l6ZSgpOwogfQogCiBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBNZWRpYVN0
cmVhbUxpc3Q6Oml0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0CiB7Ci0gICAgaWYgKGluZGV4IDwg
bV9zdHJlYW1zLT5sZW5ndGgoKSkKLSAgICAgICAgcmV0dXJuIG1fc3RyZWFtcy0+aXRlbShpbmRl
eCk7CisgICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxNZWRpYVN0cmVhbT4gPjo6Y29uc3RfaXRl
cmF0b3IgaSA9IG1fc3RyZWFtcy5iZWdpbigpOworICAgIGZvciAodW5zaWduZWQgaiA9IDA7IGkg
IT0gbV9zdHJlYW1zLmVuZCgpOyArK2ksICsraikgeworICAgICAgICBpZiAoaiA9PSBpbmRleCkK
KyAgICAgICAgICAgIHJldHVybiBpLT5zZWNvbmQ7CisgICAgfQogICAgIHJldHVybiBQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtPigpOwogfQogCit2b2lkIE1lZGlhU3RyZWFtTGlzdDo6YWRkKFBhc3NS
ZWZQdHI8TWVkaWFTdHJlYW0+IHN0cmVhbSkKK3sKKyAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMg
PSBzdHJlYW07CisgICAgQVNTRVJUKCFjb250YWlucyhzKSk7CisgICAgbV9zdHJlYW1zLmFkZChz
LT5sYWJlbCgpLCBzKTsKK30KKwordm9pZCBNZWRpYVN0cmVhbUxpc3Q6OnJlbW92ZShQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0pCit7CisgICAgUmVmUHRyPE1lZGlhU3RyZWFtPiBzID0g
c3RyZWFtOworICAgIEFTU0VSVChjb250YWlucyhzKSk7CisgICAgbV9zdHJlYW1zLnJlbW92ZShz
LT5sYWJlbCgpKTsKK30KKworYm9vbCBNZWRpYVN0cmVhbUxpc3Q6OmNvbnRhaW5zKFBhc3NSZWZQ
dHI8TWVkaWFTdHJlYW0+IHN0cmVhbSkgY29uc3QKK3sKKyAgICBSZWZQdHI8TWVkaWFTdHJlYW0+
IHMgPSBzdHJlYW07CisgICAgcmV0dXJuIG1fc3RyZWFtcy5jb250YWlucyhzLT5sYWJlbCgpKTsK
K30KKworYm9vbCBNZWRpYVN0cmVhbUxpc3Q6OmNvbnRhaW5zKGNvbnN0IFN0cmluZyYgbGFiZWwp
IGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3RyZWFtcy5jb250YWlucyhsYWJlbCk7Cit9CisKK1Bh
c3NSZWZQdHI8TWVkaWFTdHJlYW0+IE1lZGlhU3RyZWFtTGlzdDo6Z2V0KGNvbnN0IFN0cmluZyYg
bGFiZWwpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fc3RyZWFtcy5nZXQobGFiZWwpOworfQorCisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVOQUJMRShNRURJQV9TVFJFQU0p
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmgKaW5kZXggNWI0ZGE2ODFhZTliMzY3ZmYy
MTkzZDZiOTJmMzEyYTkxNGZiMDZjMS4uNzMyMGZkZDI5MDJkNmE2OTM4NjhhZTMwYWQyMzEyYjVj
ZWFjYjIxNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUxpc3QuaApAQCAtMjcsMjkgKzI3
LDM0IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogCi0jaW5jbHVkZSA8d3RmL0Zvcndh
cmQuaD4KKyNpbmNsdWRlICJNZWRpYVN0cmVhbS5oIgorI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+
CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFz
cyBNZWRpYVN0cmVhbTsKLWNsYXNzIE1lZGlhU3RyZWFtQ29udGFpbmVyOwotCiBjbGFzcyBNZWRp
YVN0cmVhbUxpc3QgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVN0cmVhbUxpc3Q+IHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUxpc3Q+IGNyZWF0ZShQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtQ29udGFpbmVyPiBzdHJlYW1zKTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0
cjxNZWRpYVN0cmVhbUxpc3Q+IGNyZWF0ZSgpOwogICAgIHZpcnR1YWwgfk1lZGlhU3RyZWFtTGlz
dCgpOwogCiAgICAgLy8gRE9NIG1ldGhvZHMgJiBhdHRyaWJ1dGVzIGZvciBNZWRpYVN0cmVhbUxp
c3QKLSAgICB2aXJ0dWFsIHVuc2lnbmVkIGxlbmd0aCgpIGNvbnN0OwotICAgIHZpcnR1YWwgUGFz
c1JlZlB0cjxNZWRpYVN0cmVhbT4gaXRlbSh1bnNpZ25lZCBpbmRleCkgY29uc3Q7CisgICAgdW5z
aWduZWQgbGVuZ3RoKCkgY29uc3Q7CisgICAgUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gaXRlbSh1
bnNpZ25lZCBpbmRleCkgY29uc3Q7CisKKyAgICAvLyBMaXN0IG1hbmlwdWxhdGlvbgorICAgIHZv
aWQgYWRkKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+KTsKKyAgICB2b2lkIHJlbW92ZShQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtPik7CisgICAgYm9vbCBjb250YWlucyhQYXNzUmVmUHRyPE1lZGlhU3Ry
ZWFtPikgY29uc3Q7CisgICAgYm9vbCBjb250YWlucyhjb25zdCBTdHJpbmcmIGxhYmVsKSBjb25z
dDsKKyAgICBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBnZXQoY29uc3QgU3RyaW5nJiBsYWJlbCkg
Y29uc3Q7CiAKIHByaXZhdGU6Ci0gICAgTWVkaWFTdHJlYW1MaXN0KFBhc3NSZWZQdHI8TWVkaWFT
dHJlYW1Db250YWluZXI+IHN0cmVhbXMpOworICAgIE1lZGlhU3RyZWFtTGlzdCgpOwogCi0gICAg
UmVmUHRyPE1lZGlhU3RyZWFtQ29udGFpbmVyPiBtX3N0cmVhbXM7CisgICAgSGFzaE1hcDxTdHJp
bmcsIFJlZlB0cjxNZWRpYVN0cmVhbT4gPiBtX3N0cmVhbXM7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>101561</attachid>
            <date>2011-07-21 01:41:02 -0700</date>
            <delta_ts>2011-07-21 03:05:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-64794-20110721104100.patch</filename>
            <type>text/plain</type>
            <size>14010</size>
            <attacher name="Tommy Widenflycht">tommyw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTE0NTAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3MWFlMGVlNTUxYzQ4ODZh
NWFjNDY4ZGIzODg2ZmQ1NmIwMGQyMTJmLi4zMzMwN2I4N2VkMTkyNmE0NWE4N2NlMWFlYWY5YmRk
YWM0YTQxNmQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTEtMDctMTkgIFRvbW15
IFdpZGVuZmx5Y2h0ICA8dG9tbXl3QGdvb2dsZS5jb20+CisKKyAgICAgICAgTWVkaWFTdHJlYW0g
QVBJOiBNZXJnaW5nIE1lZGlhU3RyZWFtQ29udGFpbmVyIGFuZCBNZWRpYVN0cmVhbUxpc3QKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0Nzk0CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBHTlVtYWtlZmls
ZS5saXN0LmFtOgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUNvbnRhaW5lci5oOiBSZW1vdmVk
LgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUxpc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFTdHJlYW1MaXN0OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1M
aXN0OjpNZWRpYVN0cmVhbUxpc3QpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0
OjpsZW5ndGgpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0OjppdGVtKToKKyAg
ICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFtTGlzdDo6YWRkKToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lZGlhU3RyZWFtTGlzdDo6cmVtb3ZlKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhU3RyZWFt
TGlzdDo6Y29udGFpbnMpOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFTdHJlYW1MaXN0OjpnZXQp
OgorICAgICAgICAqIGRvbS9NZWRpYVN0cmVhbUxpc3QuaDoKKwogMjAxMS0wNy0yMCAgUnlvc3Vr
ZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBGaXggYSBWYWxncmluZCBmYWls
dXJlIGNhdXNlZCBieSByOTE0MzUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5saXN0LmFtIGIvU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQppbmRleCBk
YjZjYmNhY2Q5Y2FkYmQ2YzY1MzIxZDg0OGYwYzhlNDljMzBhODY2Li42ZDRjNjRmZjZlMzFkOGE0
MjIwZGIzN2VkYjk1ZWQyOTYwYmJiZDRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVt
YWtlZmlsZS5saXN0LmFtCisrKyBiL1NvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0K
QEAgLTExODcsNyArMTE4Nyw2IEBAIHdlYmNvcmVfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNv
cmUvZG9tL01hcHBlZEF0dHJpYnV0ZUVudHJ5LmggXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9NZWRp
YVN0cmVhbS5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVhbS5oIFwKLQlTb3Vy
Y2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1Db250YWluZXIuaCBcCiAJU291cmNlL1dlYkNvcmUv
ZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0cmVh
bUxpc3QuaCBcCiAJU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtVHJhY2suY3BwIFwKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZ3lwaQppbmRleCA0YmM0ZmUwOTJjYWJhN2M5NDhjNTJhYWQ1MGE0Yzk2ZWQ2NTVmZGNh
Li41YTgzMDM1Njg2NDdiODE3MGNiYThjOTU3Y2NhZTE4NzEzNWFhNjY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5n
eXBpCkBAIC0yNTE5LDcgKzI1MTksNiBAQAogICAgICAgICAgICAgJ2RvbS9Mb2NhbE1lZGlhU3Ry
ZWFtLmgnLAogICAgICAgICAgICAgJ2RvbS9NZWRpYVN0cmVhbS5jcHAnLAogICAgICAgICAgICAg
J2RvbS9NZWRpYVN0cmVhbS5oJywKLSAgICAgICAgICAgICdkb20vTWVkaWFTdHJlYW1Db250YWlu
ZXIuaCcsCiAgICAgICAgICAgICAnZG9tL01lZGlhU3RyZWFtTGlzdC5jcHAnLAogICAgICAgICAg
ICAgJ2RvbS9NZWRpYVN0cmVhbUxpc3QuaCcsCiAgICAgICAgICAgICAnZG9tL01lZGlhU3RyZWFt
VHJhY2suY3BwJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggYTkyNzg3ODNlOWEwZTY3MWY0ZjRmM2Q3YWEz
NTkwZWJhNTNiYWE2OS4uZDVjNzM1ZGJjNDIwZjNlNDNjZDk2YzEzZDllMzEwMDhjZjAwZjYzMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvU291cmNlL1dlYkNv
cmUvV2ViQ29yZS5wcm8KQEAgLTMyMjYsNyArMzIyNiw2IEBAIGNvbnRhaW5zKERFRklORVMsIEVO
QUJMRV9NRURJQV9TVFJFQU09MSkgewogICAgIEhFQURFUlMgKz0gXAogICAgICAgICBkb20vTG9j
YWxNZWRpYVN0cmVhbS5oIFwKICAgICAgICAgZG9tL01lZGlhU3RyZWFtLmggXAotICAgICAgICBk
b20vTWVkaWFTdHJlYW1Db250YWluZXIuaCBcCiAgICAgICAgIGRvbS9NZWRpYVN0cmVhbUxpc3Qu
aCBcCiAgICAgICAgIGRvbS9NZWRpYVN0cmVhbVRyYWNrLmggXAogICAgICAgICBkb20vTWVkaWFT
dHJlYW1UcmFja0xpc3QuaCBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNv
cmUudmNwcm9qCmluZGV4IDhlYjA3ODBlZTJiZWIxNjRlYzU0MTQ0YTI2NjRhYjc1MTIzYWY1YzUu
LmE0OGUwZjQxMjNiZTI4ZDUzYjJhY2UwN2JkNWI3Njc1NDFiYjVhMDkgMTAwNzU1Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCkBAIC00NTk3NCwxMCArNDU5NzQs
NiBAQAogCQkJCT4KIAkJCTwvRmlsZT4KIAkJCTxGaWxlCi0JCQkJUmVsYXRpdmVQYXRoPSIuLlxk
b21cTWVkaWFTdHJlYW1Db250YWluZXIuaCIKLQkJCQk+Ci0JCQk8L0ZpbGU+Ci0JCQk8RmlsZQog
CQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXE1lZGlhU3RyZWFtTGlzdC5jcHAiCiAJCQkJPgogCQkJ
CTxGaWxlQ29uZmlndXJhdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDhhODFhMzFmYWFlYTc1NWEzY2IyY2M3M2ViYzUzMDFj
MzAyNWRlZmYuLmM4MjA0MzEwNjFmM2UyMzJlMzkwZTMzZjIwNTkyN2ViM2NlMzU4NzQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAg
LTQwNTksNyArNDA1OSw2IEBACiAJCUFCRERGRTc5MEE1QzZFNzAwMEEzRTExRCAvKiBSZW5kZXJN
ZW51TGlzdC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBQkRERkU3MzBBNUM2RTZGMDBBM0UxMUQgLyogUmVuZGVyTWVudUxpc3QuY3BwICovOyB9Owog
CQlBQkRERkU3QTBBNUM2RTcwMDBBM0UxMUQgLyogUmVuZGVyTWVudUxpc3QuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCRERGRTc0MEE1QzZFNzAwMEEz
RTExRCAvKiBSZW5kZXJNZW51TGlzdC5oICovOyB9OwogCQlBRERGMUFENzEyNTdDRDlBMDAwM0E3
NTkgLyogUmVuZGVyU1ZHUGF0aC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQURERjFBRDUxMjU3Q0Q5QTAwMDNBNzU5IC8qIFJlbmRlclNWR1BhdGguaCAq
LzsgfTsKLQkJQjE0MzUzRDQxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtQ29udGFpbmVy
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTQzNTNE
MDEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1Db250YWluZXIuaCAqLzsgfTsKIAkJQjE0
MzUzRDUxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMTQzNTNEMTEzOEVBOEVEMDBENTMy
NzYgLyogTWVkaWFTdHJlYW1MaXN0LmNwcCAqLzsgfTsKIAkJQjE0MzUzRDYxMzhFQThFRDAwRDUz
Mjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQjE0MzUzRDIxMzhFQThFRDAwRDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlz
dC5oICovOyB9OwogCQlCMTQzNTNGODEzOEVBOTVCMDBENTMyNzYgLyogSlNNZWRpYVN0cmVhbUxp
c3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjE0
MzUzRjYxMzhFQTk1QjAwRDUzMjc2IC8qIEpTTWVkaWFTdHJlYW1MaXN0LmNwcCAqLzsgfTsKQEAg
LTEwNTQ3LDcgKzEwNTQ2LDYgQEAKIAkJQUJEREZFNzQwQTVDNkU3MDAwQTNFMTFEIC8qIFJlbmRl
ck1lbnVMaXN0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
MzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBSZW5kZXJNZW51
TGlzdC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBRERGMUFENDEyNTdDRDlBMDAw
M0E3NTkgLyogUmVuZGVyU1ZHUGF0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBSZW5kZXJTVkdQYXRoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QURERjFBRDUxMjU3Q0Q5QTAwMDNBNzU5IC8qIFJlbmRlclNWR1BhdGguaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyU1ZHUGF0aC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQlCMTQzNTNEMDEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1Db250YWlu
ZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1Db250YWlu
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQjE0MzUzRDExMzhFQThFRDAwRDUz
Mjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBNZWRpYVN0cmVhbUxpc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCMTQzNTNEMjEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU3RyZWFtTGlzdC5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCMTQzNTNEMzEzOEVBOEVEMDBENTMyNzYgLyogTWVkaWFTdHJlYW1M
aXN0LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBNZWRpYVN0cmVhbUxpc3QuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTk3NzUsNyArMTk3NzMsNiBAQAogCQkJCUIxRTU0
NTc0MTM0NjI5MUYwMDkyQTU0NSAvKiBNZWRpYVN0cmVhbS5jcHAgKi8sCiAJCQkJQjFFNTQ1NzUx
MzQ2MjkxRjAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFtLmggKi8sCiAJCQkJQjFFNTQ1NzYxMzQ2Mjkx
RjAwOTJBNTQ1IC8qIE1lZGlhU3RyZWFtLmlkbCAqLywKLQkJCQlCMTQzNTNEMDEzOEVBOEVEMDBE
NTMyNzYgLyogTWVkaWFTdHJlYW1Db250YWluZXIuaCAqLywKIAkJCQlCMTQzNTNEMTEzOEVBOEVE
MDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmNwcCAqLywKIAkJCQlCMTQzNTNEMjEzOEVBOEVE
MDBENTMyNzYgLyogTWVkaWFTdHJlYW1MaXN0LmggKi8sCiAJCQkJQjE0MzUzRDMxMzhFQThFRDAw
RDUzMjc2IC8qIE1lZGlhU3RyZWFtTGlzdC5pZGwgKi8sCkBAIC0yMjI1Niw3ICsyMjI1Myw2IEBA
CiAJCQkJRDNBQTEwRjQxMjNBOThBQTAwOTIxNTJCIC8qIE1lZGlhUXVlcnlNYXRjaGVyLmggaW4g
SGVhZGVycyAqLywKIAkJCQlCMUU1NDU3RTEzNDYyOTFGMDA5MkE1NDUgLyogTWVkaWFTdHJlYW0u
aCBpbiBIZWFkZXJzICovLAogCQkJCUIxRTU0NTk0MTM0NjI5QzEwMDkyQTU0NSAvKiBNZWRpYVN0
cmVhbUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJQjE0MzUzRDQxMzhFQThFRDAwRDUzMjc2
IC8qIE1lZGlhU3RyZWFtQ29udGFpbmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMUU1NDU5ODEz
NDYyOUMxMDA5MkE1NDUgLyogTWVkaWFTdHJlYW1Db250cm9sbGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCMUU1NDU5NjEzNDYyOUMxMDA5MkE1NDUgLyogTWVkaWFTdHJlYW1GcmFtZUNvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUIxNDM1M0Q2MTM4RUE4RUQwMEQ1MzI3NiAvKiBNZWRp
YVN0cmVhbUxpc3QuaCBpbiBIZWFkZXJzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
ZG9tL01lZGlhU3RyZWFtQ29udGFpbmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJl
YW1Db250YWluZXIuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTZmYmI1MDUyNTky
Y2I3YWI0ZmFiZDg3MTNlMmFiZjkxOWQ3MTVlYy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1Db250YWlu
ZXIuaAorKysgL2Rldi9udWxsCkBAIC0xLDkxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTEgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAq
IDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAotICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoK
LSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRS
SUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJ
VFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCi0gKiBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUwot
ICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCi0gKiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKLSAqIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5k
ZWYgTWVkaWFTdHJlYW1Db250YWluZXJfaAotI2RlZmluZSBNZWRpYVN0cmVhbUNvbnRhaW5lcl9o
Ci0KLSNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jaW5jbHVkZSAiTWVkaWFTdHJlYW0uaCIK
LSNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgotI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+Ci0j
aW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgotI2lu
Y2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3Mg
TWVkaWFTdHJlYW1Db250YWluZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxNZWRpYVN0cmVhbUNvbnRh
aW5lcj4gewotcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtQ29udGFp
bmVyPiBjcmVhdGUoKSB7IHJldHVybiBhZG9wdFJlZihuZXcgTWVkaWFTdHJlYW1Db250YWluZXIp
OyB9Ci0gICAgdmlydHVhbCB+TWVkaWFTdHJlYW1Db250YWluZXIoKSB7IH0KLQotICAgIHVuc2ln
bmVkIGxlbmd0aCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RyZWFtcy5zaXplKCk7IH0KLQotICAgIFBh
c3NSZWZQdHI8TWVkaWFTdHJlYW0+IGl0ZW0odW5zaWduZWQgaW5kZXgpIGNvbnN0Ci0gICAgewot
ICAgICAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPE1lZGlhU3RyZWFtPiA+Ojpjb25zdF9pdGVy
YXRvciBpID0gbV9zdHJlYW1zLmJlZ2luKCk7Ci0gICAgICAgIGZvciAodW5zaWduZWQgaiA9IDA7
IGkgIT0gbV9zdHJlYW1zLmVuZCgpOyArK2ksICsraikgewotICAgICAgICAgICAgaWYgKGogPT0g
aW5kZXgpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGktPnNlY29uZDsKLSAgICAgICAgfQotICAg
ICAgICByZXR1cm4gUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4oKTsKLSAgICB9Ci0KLSAgICB2b2lk
IGFkZChQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBzdHJlYW0pCi0gICAgewotICAgICAgICBSZWZQ
dHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07Ci0gICAgICAgIEFTU0VSVCghY29udGFpbnMocykp
OwotICAgICAgICBtX3N0cmVhbXMuYWRkKHMtPmxhYmVsKCksIHMpOwotICAgIH0KLQotICAgIHZv
aWQgcmVtb3ZlKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IHN0cmVhbSkKLSAgICB7Ci0gICAgICAg
IFJlZlB0cjxNZWRpYVN0cmVhbT4gcyA9IHN0cmVhbTsKLSAgICAgICAgQVNTRVJUKGNvbnRhaW5z
KHMpKTsKLSAgICAgICAgbV9zdHJlYW1zLnJlbW92ZShzLT5sYWJlbCgpKTsKLSAgICB9Ci0KLSAg
ICBib29sIGNvbnRhaW5zKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IHN0cmVhbSkgY29uc3QKLSAg
ICB7Ci0gICAgICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gcyA9IHN0cmVhbTsKLSAgICAgICAgcmV0
dXJuIG1fc3RyZWFtcy5jb250YWlucyhzLT5sYWJlbCgpKTsKLSAgICB9Ci0KLSAgICBQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtPiBnZXQoY29uc3QgU3RyaW5nJiBrZXkpIGNvbnN0Ci0gICAgewotICAg
ICAgICByZXR1cm4gbV9zdHJlYW1zLmdldChrZXkpOwotICAgIH0KLQotcHJpdmF0ZToKLSAgICBN
ZWRpYVN0cmVhbUNvbnRhaW5lcigpIHsgfQotCi0gICAgSGFzaE1hcDxTdHJpbmcsIFJlZlB0cjxN
ZWRpYVN0cmVhbT4gPiBtX3N0cmVhbXM7Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoTUVESUFfU1RSRUFNKQotCi0jZW5kaWYgLy8gTWVkaWFTdHJlYW1D
b250YWluZXJfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL01lZGlhU3RyZWFtTGlz
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmNwcAppbmRleCAzZTRm
NjAwOTQ0ODQ4ODUwM2ZkM2ZhOWI5ZjllNjUyMDg3YWM4ZDJjLi5kM2FkOTQ2MDIyZmVmY2E0Njc3
OTViMDA3Y2IxMGYxOTZhMjdiOWIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVk
aWFTdHJlYW1MaXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0
LmNwcApAQCAtMjcsMTcgKzI3LDE0IEBACiAKICNpZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogCi0j
aW5jbHVkZSAiTWVkaWFTdHJlYW1Db250YWluZXIuaCIKLQogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1QYXNzUmVmUHRyPE1lZGlhU3RyZWFtTGlzdD4gTWVkaWFTdHJlYW1MaXN0OjpjcmVhdGUoUGFz
c1JlZlB0cjxNZWRpYVN0cmVhbUNvbnRhaW5lcj4gc3RyZWFtcykKK1Bhc3NSZWZQdHI8TWVkaWFT
dHJlYW1MaXN0PiBNZWRpYVN0cmVhbUxpc3Q6OmNyZWF0ZSgpCiB7Ci0gICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBNZWRpYVN0cmVhbUxpc3Qoc3RyZWFtcykpOworICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgTWVkaWFTdHJlYW1MaXN0KCkpOwogfQogCi1NZWRpYVN0cmVhbUxpc3Q6Ok1lZGlhU3RyZWFt
TGlzdChQYXNzUmVmUHRyPE1lZGlhU3RyZWFtQ29udGFpbmVyPiBzdHJlYW1zKQotICAgIDogbV9z
dHJlYW1zKHN0cmVhbXMpCitNZWRpYVN0cmVhbUxpc3Q6Ok1lZGlhU3RyZWFtTGlzdCgpCiB7CiB9
CiAKQEAgLTQ3LDE2ICs0NCw1MCBAQCBNZWRpYVN0cmVhbUxpc3Q6On5NZWRpYVN0cmVhbUxpc3Qo
KQogCiB1bnNpZ25lZCBNZWRpYVN0cmVhbUxpc3Q6Omxlbmd0aCgpIGNvbnN0CiB7Ci0gICAgcmV0
dXJuIG1fc3RyZWFtcy0+bGVuZ3RoKCk7CisgICAgcmV0dXJuIG1fc3RyZWFtcy5zaXplKCk7CiB9
CiAKIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IE1lZGlhU3RyZWFtTGlzdDo6aXRlbSh1bnNpZ25l
ZCBpbmRleCkgY29uc3QKIHsKLSAgICBpZiAoaW5kZXggPCBtX3N0cmVhbXMtPmxlbmd0aCgpKQot
ICAgICAgICByZXR1cm4gbV9zdHJlYW1zLT5pdGVtKGluZGV4KTsKKyAgICBIYXNoTWFwPFN0cmlu
ZywgUmVmUHRyPE1lZGlhU3RyZWFtPiA+Ojpjb25zdF9pdGVyYXRvciBpID0gbV9zdHJlYW1zLmJl
Z2luKCk7CisgICAgZm9yICh1bnNpZ25lZCBqID0gMDsgaSAhPSBtX3N0cmVhbXMuZW5kKCk7ICsr
aSwgKytqKSB7CisgICAgICAgIGlmIChqID09IGluZGV4KQorICAgICAgICAgICAgcmV0dXJuIGkt
PnNlY29uZDsKKyAgICB9CiAgICAgcmV0dXJuIFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+KCk7CiB9
CiAKK3ZvaWQgTWVkaWFTdHJlYW1MaXN0OjphZGQoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gc3Ry
ZWFtKQoreworICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gcyA9IHN0cmVhbTsKKyAgICBBU1NFUlQo
IWNvbnRhaW5zKHMpKTsKKyAgICBtX3N0cmVhbXMuYWRkKHMtPmxhYmVsKCksIHMpOworfQorCit2
b2lkIE1lZGlhU3RyZWFtTGlzdDo6cmVtb3ZlKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+IHN0cmVh
bSkKK3sKKyAgICBSZWZQdHI8TWVkaWFTdHJlYW0+IHMgPSBzdHJlYW07CisgICAgQVNTRVJUKGNv
bnRhaW5zKHMpKTsKKyAgICBtX3N0cmVhbXMucmVtb3ZlKHMtPmxhYmVsKCkpOworfQorCitib29s
IE1lZGlhU3RyZWFtTGlzdDo6Y29udGFpbnMoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4gc3RyZWFt
KSBjb25zdAoreworICAgIFJlZlB0cjxNZWRpYVN0cmVhbT4gcyA9IHN0cmVhbTsKKyAgICByZXR1
cm4gbV9zdHJlYW1zLmNvbnRhaW5zKHMtPmxhYmVsKCkpOworfQorCitib29sIE1lZGlhU3RyZWFt
TGlzdDo6Y29udGFpbnMoY29uc3QgU3RyaW5nJiBsYWJlbCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9zdHJlYW1zLmNvbnRhaW5zKGxhYmVsKTsKK30KKworUGFzc1JlZlB0cjxNZWRpYVN0cmVhbT4g
TWVkaWFTdHJlYW1MaXN0OjpnZXQoY29uc3QgU3RyaW5nJiBsYWJlbCkgY29uc3QKK3sKKyAgICBy
ZXR1cm4gbV9zdHJlYW1zLmdldChsYWJlbCk7Cit9CisKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gRU5BQkxFKE1FRElBX1NUUkVBTSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9NZWRpYVN0cmVhbUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZWRpYVN0
cmVhbUxpc3QuaAppbmRleCA1YjRkYTY4MWFlOWIzNjdmZjIxOTNkNmI5MmYzMTJhOTE0ZmIwNmMx
Li43MzIwZmRkMjkwMmQ2YTY5Mzg2OGFlMzBhZDIzMTJiNWNlYWNiMjE0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vTWVkaWFTdHJlYW1MaXN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
ZG9tL01lZGlhU3RyZWFtTGlzdC5oCkBAIC0yNywyOSArMjcsMzQgQEAKIAogI2lmIEVOQUJMRShN
RURJQV9TVFJFQU0pCiAKLSNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgorI2luY2x1ZGUgIk1lZGlh
U3RyZWFtLmgiCisjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0
ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIE1lZGlhU3RyZWFtOwotY2xhc3Mg
TWVkaWFTdHJlYW1Db250YWluZXI7Ci0KIGNsYXNzIE1lZGlhU3RyZWFtTGlzdCA6IHB1YmxpYyBS
ZWZDb3VudGVkPE1lZGlhU3RyZWFtTGlzdD4gewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzUmVm
UHRyPE1lZGlhU3RyZWFtTGlzdD4gY3JlYXRlKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW1Db250YWlu
ZXI+IHN0cmVhbXMpOworICAgIHN0YXRpYyBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtTGlzdD4gY3Jl
YXRlKCk7CiAgICAgdmlydHVhbCB+TWVkaWFTdHJlYW1MaXN0KCk7CiAKICAgICAvLyBET00gbWV0
aG9kcyAmIGF0dHJpYnV0ZXMgZm9yIE1lZGlhU3RyZWFtTGlzdAotICAgIHZpcnR1YWwgdW5zaWdu
ZWQgbGVuZ3RoKCkgY29uc3Q7Ci0gICAgdmlydHVhbCBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBp
dGVtKHVuc2lnbmVkIGluZGV4KSBjb25zdDsKKyAgICB1bnNpZ25lZCBsZW5ndGgoKSBjb25zdDsK
KyAgICBQYXNzUmVmUHRyPE1lZGlhU3RyZWFtPiBpdGVtKHVuc2lnbmVkIGluZGV4KSBjb25zdDsK
KworICAgIC8vIExpc3QgbWFuaXB1bGF0aW9uCisgICAgdm9pZCBhZGQoUGFzc1JlZlB0cjxNZWRp
YVN0cmVhbT4pOworICAgIHZvaWQgcmVtb3ZlKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+KTsKKyAg
ICBib29sIGNvbnRhaW5zKFBhc3NSZWZQdHI8TWVkaWFTdHJlYW0+KSBjb25zdDsKKyAgICBib29s
IGNvbnRhaW5zKGNvbnN0IFN0cmluZyYgbGFiZWwpIGNvbnN0OworICAgIFBhc3NSZWZQdHI8TWVk
aWFTdHJlYW0+IGdldChjb25zdCBTdHJpbmcmIGxhYmVsKSBjb25zdDsKIAogcHJpdmF0ZToKLSAg
ICBNZWRpYVN0cmVhbUxpc3QoUGFzc1JlZlB0cjxNZWRpYVN0cmVhbUNvbnRhaW5lcj4gc3RyZWFt
cyk7CisgICAgTWVkaWFTdHJlYW1MaXN0KCk7CiAKLSAgICBSZWZQdHI8TWVkaWFTdHJlYW1Db250
YWluZXI+IG1fc3RyZWFtczsKKyAgICBIYXNoTWFwPFN0cmluZywgUmVmUHRyPE1lZGlhU3RyZWFt
PiA+IG1fc3RyZWFtczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
      

    </bug>

</bugzilla>