<?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>56350</bug_id>
          
          <creation_ts>2011-03-14 18:16:41 -0700</creation_ts>
          <short_desc>Fix crash caused by Invalid call to destroyActiveDOMObject during stopActiveDOMObjects</short_desc>
          <delta_ts>2011-03-15 15:17: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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="David Grogan">dgrogan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>hans</cc>
    
    <cc>jorlow</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>367405</commentid>
    <comment_count>0</comment_count>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-14 18:16:41 -0700</bug_when>
    <thetext>Fix crash caused by Invalid call to destroyActiveDOMObject during stopActiveDOMObjects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367410</commentid>
    <comment_count>1</comment_count>
      <attachid>85750</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-14 18:19:58 -0700</bug_when>
    <thetext>Created attachment 85750
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367418</commentid>
    <comment_count>2</comment_count>
      <attachid>85752</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-14 18:28:01 -0700</bug_when>
    <thetext>Created attachment 85752
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367419</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-14 18:35:07 -0700</bug_when>
    <thetext>Attachment 85750 did not build on chromium:
Build output: http://queues.webkit.org/results/8175439</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367422</commentid>
    <comment_count>4</comment_count>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-14 18:42:48 -0700</bug_when>
    <thetext>chrome bug and review:
http://crbug.com/75264
http://codereview.chromium.org/6677034/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367433</commentid>
    <comment_count>5</comment_count>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-14 18:48:57 -0700</bug_when>
    <thetext>This fixes the crash but I&apos;m not confident that memory isn&apos;t leaked and that I did the unregister thing right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367453</commentid>
    <comment_count>6</comment_count>
      <attachid>85752</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-03-14 19:27:52 -0700</bug_when>
    <thetext>Comment on attachment 85752
Patch

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

close

&gt; Source/WebCore/ChangeLog:7
&gt; +

Please add some more detail and explain why it only affects multi-process.

&gt; Source/WebCore/storage/IDBDatabase.h:118
&gt; +    RefPtr&lt;IDBDatabaseCallbacks&gt; m_databaseCallbacks;

Save the impl here.

&gt; Source/WebCore/storage/IDBDatabaseCallbacks.h:36
&gt; +class IDBDatabase;

don&apos;t add

&gt; Source/WebCore/storage/IDBDatabaseCallbacks.h:43
&gt; +    virtual void unRegisterDatabase(IDBDatabase*) { ASSERT_NOT_REACHED(); };

don&apos;t add

&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:42
&gt; +    virtual ~IDBDatabaseCallbacksImpl() { }

Don&apos;t inline.

&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:48
&gt; +    IDBDatabaseCallbacksImpl(IDBDatabase*);

newline after

explain why this needs to be weak in comment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367787</commentid>
    <comment_count>7</comment_count>
      <attachid>85827</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-15 11:02:42 -0700</bug_when>
    <thetext>Created attachment 85827
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367791</commentid>
    <comment_count>8</comment_count>
      <attachid>85752</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-15 11:04:54 -0700</bug_when>
    <thetext>Comment on attachment 85752
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:7
&gt;&gt; +
&gt; 
&gt; Please add some more detail and explain why it only affects multi-process.

done

&gt;&gt; Source/WebCore/storage/IDBDatabase.h:118
&gt;&gt; +    RefPtr&lt;IDBDatabaseCallbacks&gt; m_databaseCallbacks;
&gt; 
&gt; Save the impl here.

done

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacks.h:36
&gt;&gt; +class IDBDatabase;
&gt; 
&gt; don&apos;t add

done

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacks.h:43
&gt;&gt; +    virtual void unRegisterDatabase(IDBDatabase*) { ASSERT_NOT_REACHED(); };
&gt; 
&gt; don&apos;t add

done

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:42
&gt;&gt; +    virtual ~IDBDatabaseCallbacksImpl() { }
&gt; 
&gt; Don&apos;t inline.

done

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:48
&gt;&gt; +    IDBDatabaseCallbacksImpl(IDBDatabase*);
&gt; 
&gt; newline after
&gt; 
&gt; explain why this needs to be weak in comment?

done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367856</commentid>
    <comment_count>9</comment_count>
      <attachid>85827</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-03-15 12:32:27 -0700</bug_when>
    <thetext>Comment on attachment 85827
Patch

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

r=me

&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:45
&gt; +    void unRegisterDatabase(IDBDatabase*);

How do we camelCaseThis elsewhere?  I think usually unregister rather than unRegister?

&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:51
&gt; +    // If a RefPtr were used here, there&apos;d be a cycle and the ref counting

It seems like this could be more concise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367936</commentid>
    <comment_count>10</comment_count>
      <attachid>85859</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-15 14:10:00 -0700</bug_when>
    <thetext>Created attachment 85859
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367937</commentid>
    <comment_count>11</comment_count>
      <attachid>85827</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2011-03-15 14:10:30 -0700</bug_when>
    <thetext>Comment on attachment 85827
Patch

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

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:45
&gt;&gt; +    void unRegisterDatabase(IDBDatabase*);
&gt; 
&gt; How do we camelCaseThis elsewhere?  I think usually unregister rather than unRegister?

You&apos;re right, changed.

&gt;&gt; Source/WebCore/storage/IDBDatabaseCallbacksImpl.h:51
&gt;&gt; +    // If a RefPtr were used here, there&apos;d be a cycle and the ref counting
&gt; 
&gt; It seems like this could be more concise.

Shortened.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367941</commentid>
    <comment_count>12</comment_count>
      <attachid>85859</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-03-15 14:22:31 -0700</bug_when>
    <thetext>Comment on attachment 85859
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367979</commentid>
    <comment_count>13</comment_count>
      <attachid>85859</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-15 15:17:53 -0700</bug_when>
    <thetext>Comment on attachment 85859
Patch

Clearing flags on attachment: 85859

Committed r81181: &lt;http://trac.webkit.org/changeset/81181&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367980</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-15 15:17:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85750</attachid>
            <date>2011-03-14 18:19:58 -0700</date>
            <delta_ts>2011-03-14 18:27:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56350-20110314181957.patch</filename>
            <type>text/plain</type>
            <size>11155</size>
            <attacher name="David Grogan">dgrogan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA3OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZDllNWFlY2RlYzAyOWM2
NDVlMDMxMjE2YzdkNmRlOTIyMWJiMThhLi5lMGVkNzI3MjcyZDIyN2UwYjY3YmYwNDU1YzViNjVj
MzQwMzJiNjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTEtMDMtMTQgIERhdmlk
IEdyb2dhbiAgPGRncm9nYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBjcmFzaCBjYXVzZWQgYnkgSW52YWxpZCBjYWxs
IHRvIGRlc3Ryb3lBY3RpdmVET01PYmplY3QgZHVyaW5nIHN0b3BBY3RpdmVET01PYmplY3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjM1MAorCisg
ICAgICAgIFRoaXMgb25seSBhZmZlY3RzIG11bHRpLXByb2Nlc3MgY2hyb21pdW0uICBDaHJvbWl1
bSBicm93c2VyIHRlc3RzCisgICAgICAgIGZvcnRoY29taW5nLgorCisgICAgICAgICogV2ViQ29y
ZS5neXBpOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2UuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SURCRGF0YWJhc2U6OklEQkRhdGFiYXNlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRh
dGFiYXNlOjp+SURCRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OnNl
dFZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OmNsb3NlKToKKyAgICAg
ICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlOjpvcGVuKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRh
dGFiYXNlLmg6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrcy5oOgorICAg
ICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VDYWxsYmFja3M6OnVuUmVnaXN0ZXJEYXRhYmFzZSk6
CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwOiBDb3BpZWQg
ZnJvbSBTb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmguCisgICAg
ICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OmNyZWF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OklEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6Om9uVmVy
c2lvbkNoYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6
OnVuUmVnaXN0ZXJEYXRhYmFzZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGwuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFz
ZUNhbGxiYWNrcy5oLgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBs
Ojp+SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKToKKwogMjAxMS0wMy0xMCAgR3l1eW91bmcgS2lt
ICA8Z3l1eW91bmcua2ltQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQg
Zml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGM4MzEzYjk5OTg5MWJiNjk5NWQ3MTAyN2M5ODAxODhm
NjQ5ZjYwODguLjc4MWRmYjM4YWMyMjQ4NTA2MzBhZWQzNGU4YjEwMjAzNmU1Y2YwZjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKQEAgLTQ1MjMsNiArNDUyMyw5IEBACiAgICAgICAgICAgICAnc3RvcmFnZS9J
REJDdXJzb3JXaXRoVmFsdWUuaCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZS5j
cHAnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2UuaCcsCisgICAgICAgICAgICAn
c3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrcy5oJywKKyAgICAgICAgICAgICdzdG9yYWdlL0lE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAnLAorICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0
YWJhc2VDYWxsYmFja3NJbXBsLmgnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VC
YWNrZW5kSW1wbC5jcHAnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5k
SW1wbC5oJywKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEludGVyZmFj
ZS5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAKaW5kZXggZmU4ZDM1MDhk
YTg2YmM5ODU3ODE1ZDRiZjU1OTZlNjA3NzQ3YzIwNy4uMTY4MDBiYzUyYTU2YWY2MGFjOTM0OWY3
MjVlMDhmNGRhMDNlYzgwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJE
YXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAK
QEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkV2ZW50
UXVldWUuaCIKICNpbmNsdWRlICJJREJBbnkuaCIKKyNpbmNsdWRlICJJREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGwuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUVycm9yLmgiCiAjaW5jbHVkZSAiSURC
RGF0YWJhc2VFeGNlcHRpb24uaCIKICNpbmNsdWRlICJJREJFdmVudERpc3BhdGNoZXIuaCIKQEAg
LTU4LDEwICs1OSwxMiBAQCBJREJEYXRhYmFzZTo6SURCRGF0YWJhc2UoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxJREJEYXRhYmFzZQogewogICAgIC8vIFdlIHBh
c3MgYSByZWZlcmVuY2Ugb2YgdGhpcyBvYmplY3QgYmVmb3JlIGl0IGNhbiBiZSBhZG9wdGVkLgog
ICAgIHJlbGF4QWRvcHRpb25SZXF1aXJlbWVudCgpOworICAgIG1fZGF0YWJhc2VDYWxsYmFja3Mg
PSBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OmNyZWF0ZSh0aGlzKTsKIH0KIAogSURCRGF0YWJh
c2U6On5JREJEYXRhYmFzZSgpCiB7CisgICAgbV9kYXRhYmFzZUNhbGxiYWNrcy0+dW5SZWdpc3Rl
ckRhdGFiYXNlKHRoaXMpOwogfQogCiB2b2lkIElEQkRhdGFiYXNlOjpzZXRTZXRWZXJzaW9uVHJh
bnNhY3Rpb24oSURCVHJhbnNhY3Rpb24qIHRyYW5zYWN0aW9uKQpAQCAtMTAzLDcgKzEwNiw3IEBA
IHZvaWQgSURCRGF0YWJhc2U6OmRlbGV0ZU9iamVjdFN0b3JlKGNvbnN0IFN0cmluZyYgbmFtZSwg
RXhjZXB0aW9uQ29kZSYgZWMpCiBQYXNzUmVmUHRyPElEQlZlcnNpb25DaGFuZ2VSZXF1ZXN0PiBJ
REJEYXRhYmFzZTo6c2V0VmVyc2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBj
b25zdCBTdHJpbmcmIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIFJlZlB0cjxJ
REJWZXJzaW9uQ2hhbmdlUmVxdWVzdD4gcmVxdWVzdCA9IElEQlZlcnNpb25DaGFuZ2VSZXF1ZXN0
OjpjcmVhdGUoY29udGV4dCwgSURCQW55OjpjcmVhdGUodGhpcyksIHZlcnNpb24pOwotICAgIG1f
YmFja2VuZC0+c2V0VmVyc2lvbih2ZXJzaW9uLCByZXF1ZXN0LCB0aGlzLCBlYyk7CisgICAgbV9i
YWNrZW5kLT5zZXRWZXJzaW9uKHZlcnNpb24sIHJlcXVlc3QsIG1fZGF0YWJhc2VDYWxsYmFja3Ms
IGVjKTsKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIApAQCAtMTU0LDcgKzE1Nyw3IEBAIHZvaWQg
SURCRGF0YWJhc2U6OmNsb3NlKCkKICAgICB9CiAKICAgICBtX25vTmV3VHJhbnNhY3Rpb25zID0g
dHJ1ZTsKLSAgICBtX2JhY2tlbmQtPmNsb3NlKHRoaXMpOworICAgIG1fYmFja2VuZC0+Y2xvc2Uo
bV9kYXRhYmFzZUNhbGxiYWNrcyk7CiB9CiAKIHZvaWQgSURCRGF0YWJhc2U6Om9uVmVyc2lvbkNo
YW5nZShjb25zdCBTdHJpbmcmIHZlcnNpb24pCkBAIC0xNzQsNyArMTc3LDcgQEAgYm9vbCBJREJE
YXRhYmFzZTo6aGFzUGVuZGluZ0FjdGl2aXR5KCkgY29uc3QKIAogdm9pZCBJREJEYXRhYmFzZTo6
b3BlbigpCiB7Ci0gICAgbV9iYWNrZW5kLT5vcGVuKHRoaXMpOworICAgIG1fYmFja2VuZC0+b3Bl
bihtX2RhdGFiYXNlQ2FsbGJhY2tzKTsKIH0KIAogdm9pZCBJREJEYXRhYmFzZTo6ZW5xdWV1ZUV2
ZW50KFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3RvcmFnZS9JREJEYXRhYmFzZS5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFz
ZS5oCmluZGV4IDUxZjFkMjMzNjVjYzg5Y2IxZGM5ODdmNGZmMjZlZTU2ZjczYmQyNDUuLjgzM2Yx
ZjMxYjg1NTkzZGY5Nzg4NGNmNTRiNDI1YTA3NTA3ZTQzYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L0lEQkRhdGFiYXNlLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgSURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0
OwogCi1jbGFzcyBJREJEYXRhYmFzZSA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcywgcHVi
bGljIEV2ZW50VGFyZ2V0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIElEQkRhdGFi
YXNlIDogcHVibGljIFJlZkNvdW50ZWQ8SURCRGF0YWJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQs
IHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRy
PElEQkRhdGFiYXNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8
SURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNlPik7CiAgICAgfklEQkRhdGFiYXNlKCk7CkBAIC05
MSw4ICs5MSw4IEBAIHB1YmxpYzoKICAgICBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxF
dmVudD4gZXZlbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVybiBFdmVudFRhcmdldDo6ZGlz
cGF0Y2hFdmVudChldmVudCwgZWMpOyB9CiAgICAgdmlydHVhbCBib29sIGRpc3BhdGNoRXZlbnQo
UGFzc1JlZlB0cjxFdmVudD4pOwogCi0gICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZUNh
bGxiYWNrcz46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlQ2FsbGJhY2tz
Pjo6ZGVyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZT46OnJlZjsKKyAgICB1
c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlPjo6ZGVyZWY7CiAKIHByaXZhdGU6CiAgICAgSURC
RGF0YWJhc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VC
YWNrZW5kSW50ZXJmYWNlPik7CkBAIC0xMTQsNiArMTE0LDggQEAgcHJpdmF0ZToKICAgICAvLyBL
ZWVwIHRyYWNrIG9mIHRoZSB2ZXJzaW9uY2hhbmdlIGV2ZW50cyB3YWl0aW5nIHRvIGJlIGZpcmVk
IG9uIHRoaXMKICAgICAvLyBkYXRhYmFzZSBzbyB0aGF0IHdlIGNhbiBjYW5jZWwgdGhlbSBpZiB0
aGUgZGF0YWJhc2UgY2xvc2VzLgogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9lbnF1ZXVl
ZEV2ZW50czsKKworICAgIFJlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrcz4gbV9kYXRhYmFzZUNh
bGxiYWNrczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaCBiL1NvdXJjZS9XZWJDb3Jl
L3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaAppbmRleCBiM2YyNDRmNTE2YjY5ODdlYTEx
OWNiZjcwMTliN2I1NDM3NWYxMmJmLi40OWVkYmM1MTNjNDA2NjU1YWQzODhmYzVhZmEwZGFhZjBl
YTQ3ODYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2Fs
bGJhY2tzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNr
cy5oCkBAIC0zMywxMSArMzMsMTQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBJ
REJEYXRhYmFzZTsKKwogY2xhc3MgSURCRGF0YWJhc2VDYWxsYmFja3MgOiBwdWJsaWMgUmVmQ291
bnRlZDxJREJEYXRhYmFzZUNhbGxiYWNrcz4gewogcHVibGljOgogICAgIHZpcnR1YWwgfklEQkRh
dGFiYXNlQ2FsbGJhY2tzKCkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgb25WZXJzaW9uQ2hhbmdl
KGNvbnN0IFN0cmluZyYgdmVyc2lvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCB1blJlZ2lzdGVy
RGF0YWJhc2UoSURCRGF0YWJhc2UqKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9OwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9J
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5MDMyNWIwMzNkNDFhYWM5
YTk0NGY4ZjhhOTkwZWMyM2Q4ZDY0ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAKQEAgLTAsMCArMSw1NCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
CisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJJREJEYXRhYmFzZUNhbGxiYWNr
c0ltcGwuaCIKKworI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworUGFzc1JlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw+IElEQkRhdGFiYXNlQ2Fs
bGJhY2tzSW1wbDo6Y3JlYXRlKElEQkRhdGFiYXNlKiBkYXRhYmFzZSkKK3sKKyAgICByZXR1cm4g
YWRvcHRSZWYobmV3IElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbChkYXRhYmFzZSkpOworfQorCitJ
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbChJREJEYXRh
YmFzZSogZGF0YWJhc2UpCisgICAgOiBtX2RhdGFiYXNlKGRhdGFiYXNlKQoreworfQorCit2b2lk
IElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6b25WZXJzaW9uQ2hhbmdlKGNvbnN0IFN0cmluZyYg
dmVyc2lvbikKK3sKKyAgICBpZiAobV9kYXRhYmFzZSkKKyAgICAgICAgbV9kYXRhYmFzZS0+b25W
ZXJzaW9uQ2hhbmdlKHZlcnNpb24pOworfQordm9pZCBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6
OnVuUmVnaXN0ZXJEYXRhYmFzZShJREJEYXRhYmFzZSogZGF0YWJhc2UpCit7CisgICAgQVNTRVJU
KGRhdGFiYXNlID09IG1fZGF0YWJhc2UpOworICAgIG1fZGF0YWJhc2UgPSAwOworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRh
YmFzZUNhbGxiYWNrc0ltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4zNThhMzRiYjJkNTUxZTYwM2Y3NDQzMjVm
NjZmZTU0ZTY4YTg5NjJkCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuaApAQCAtMCwwICsxLDU1IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQg
SVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGxfaAorI2RlZmluZSBJREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGxfaAorCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgorCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisKK25hbWVzcGFj
ZSBXZWJDb3JlIHsKKworY2xhc3MgSURCRGF0YWJhc2U7CisKK2NsYXNzIElEQkRhdGFiYXNlQ2Fs
bGJhY2tzSW1wbCA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcyB7CitwdWJsaWM6CisgICAg
c3RhdGljIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsPiBjcmVhdGUoSURCRGF0
YWJhc2UqKTsKKyAgICB2aXJ0dWFsIH5JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwoKSB7IH0KKwor
ICAgIHZpcnR1YWwgdm9pZCBvblZlcnNpb25DaGFuZ2UoY29uc3QgU3RyaW5nJiB2ZXJzaW9uKTsK
KyAgICB2b2lkIHVuUmVnaXN0ZXJEYXRhYmFzZShJREJEYXRhYmFzZSopOworCitwcml2YXRlOgor
ICAgIElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbChJREJEYXRhYmFzZSopOworICAgIElEQkRhdGFi
YXNlKiBtX2RhdGFiYXNlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYK
KworI2VuZGlmIC8vIElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbF9oCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85752</attachid>
            <date>2011-03-14 18:28:01 -0700</date>
            <delta_ts>2011-03-15 11:04:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56350-20110314182800.patch</filename>
            <type>text/plain</type>
            <size>11190</size>
            <attacher name="David Grogan">dgrogan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA3OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZDllNWFlY2RlYzAyOWM2
NDVlMDMxMjE2YzdkNmRlOTIyMWJiMThhLi5lMGVkNzI3MjcyZDIyN2UwYjY3YmYwNDU1YzViNjVj
MzQwMzJiNjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTEtMDMtMTQgIERhdmlk
IEdyb2dhbiAgPGRncm9nYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBjcmFzaCBjYXVzZWQgYnkgSW52YWxpZCBjYWxs
IHRvIGRlc3Ryb3lBY3RpdmVET01PYmplY3QgZHVyaW5nIHN0b3BBY3RpdmVET01PYmplY3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjM1MAorCisg
ICAgICAgIFRoaXMgb25seSBhZmZlY3RzIG11bHRpLXByb2Nlc3MgY2hyb21pdW0uICBDaHJvbWl1
bSBicm93c2VyIHRlc3RzCisgICAgICAgIGZvcnRoY29taW5nLgorCisgICAgICAgICogV2ViQ29y
ZS5neXBpOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2UuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SURCRGF0YWJhc2U6OklEQkRhdGFiYXNlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRh
dGFiYXNlOjp+SURCRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OnNl
dFZlcnNpb24pOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OmNsb3NlKToKKyAgICAg
ICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlOjpvcGVuKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRh
dGFiYXNlLmg6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrcy5oOgorICAg
ICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VDYWxsYmFja3M6OnVuUmVnaXN0ZXJEYXRhYmFzZSk6
CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwOiBDb3BpZWQg
ZnJvbSBTb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmguCisgICAg
ICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OmNyZWF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OklEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6Om9uVmVy
c2lvbkNoYW5nZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6
OnVuUmVnaXN0ZXJEYXRhYmFzZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGwuaDogQ29waWVkIGZyb20gU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFz
ZUNhbGxiYWNrcy5oLgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBs
Ojp+SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKToKKwogMjAxMS0wMy0xMCAgR3l1eW91bmcgS2lt
ICA8Z3l1eW91bmcua2ltQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQg
Zml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IGM4MzEzYjk5OTg5MWJiNjk5NWQ3MTAyN2M5ODAxODhm
NjQ5ZjYwODguLjc4MWRmYjM4YWMyMjQ4NTA2MzBhZWQzNGU4YjEwMjAzNmU1Y2YwZjYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmd5cGkKQEAgLTQ1MjMsNiArNDUyMyw5IEBACiAgICAgICAgICAgICAnc3RvcmFnZS9J
REJDdXJzb3JXaXRoVmFsdWUuaCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZS5j
cHAnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2UuaCcsCisgICAgICAgICAgICAn
c3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrcy5oJywKKyAgICAgICAgICAgICdzdG9yYWdlL0lE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAnLAorICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0
YWJhc2VDYWxsYmFja3NJbXBsLmgnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VC
YWNrZW5kSW1wbC5jcHAnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5k
SW1wbC5oJywKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkRhdGFiYXNlQmFja2VuZEludGVyZmFj
ZS5oJywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2UuY3Bw
IGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAKaW5kZXggZmU4ZDM1MDhk
YTg2YmM5ODU3ODE1ZDRiZjU1OTZlNjA3NzQ3YzIwNy4uMTY4MDBiYzUyYTU2YWY2MGFjOTM0OWY3
MjVlMDhmNGRhMDNlYzgwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJE
YXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAK
QEAgLTI5LDYgKzI5LDcgQEAKICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkV2ZW50
UXVldWUuaCIKICNpbmNsdWRlICJJREJBbnkuaCIKKyNpbmNsdWRlICJJREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGwuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUVycm9yLmgiCiAjaW5jbHVkZSAiSURC
RGF0YWJhc2VFeGNlcHRpb24uaCIKICNpbmNsdWRlICJJREJFdmVudERpc3BhdGNoZXIuaCIKQEAg
LTU4LDEwICs1OSwxMiBAQCBJREJEYXRhYmFzZTo6SURCRGF0YWJhc2UoU2NyaXB0RXhlY3V0aW9u
Q29udGV4dCogY29udGV4dCwgUGFzc1JlZlB0cjxJREJEYXRhYmFzZQogewogICAgIC8vIFdlIHBh
c3MgYSByZWZlcmVuY2Ugb2YgdGhpcyBvYmplY3QgYmVmb3JlIGl0IGNhbiBiZSBhZG9wdGVkLgog
ICAgIHJlbGF4QWRvcHRpb25SZXF1aXJlbWVudCgpOworICAgIG1fZGF0YWJhc2VDYWxsYmFja3Mg
PSBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OmNyZWF0ZSh0aGlzKTsKIH0KIAogSURCRGF0YWJh
c2U6On5JREJEYXRhYmFzZSgpCiB7CisgICAgbV9kYXRhYmFzZUNhbGxiYWNrcy0+dW5SZWdpc3Rl
ckRhdGFiYXNlKHRoaXMpOwogfQogCiB2b2lkIElEQkRhdGFiYXNlOjpzZXRTZXRWZXJzaW9uVHJh
bnNhY3Rpb24oSURCVHJhbnNhY3Rpb24qIHRyYW5zYWN0aW9uKQpAQCAtMTAzLDcgKzEwNiw3IEBA
IHZvaWQgSURCRGF0YWJhc2U6OmRlbGV0ZU9iamVjdFN0b3JlKGNvbnN0IFN0cmluZyYgbmFtZSwg
RXhjZXB0aW9uQ29kZSYgZWMpCiBQYXNzUmVmUHRyPElEQlZlcnNpb25DaGFuZ2VSZXF1ZXN0PiBJ
REJEYXRhYmFzZTo6c2V0VmVyc2lvbihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBj
b25zdCBTdHJpbmcmIHZlcnNpb24sIEV4Y2VwdGlvbkNvZGUmIGVjKQogewogICAgIFJlZlB0cjxJ
REJWZXJzaW9uQ2hhbmdlUmVxdWVzdD4gcmVxdWVzdCA9IElEQlZlcnNpb25DaGFuZ2VSZXF1ZXN0
OjpjcmVhdGUoY29udGV4dCwgSURCQW55OjpjcmVhdGUodGhpcyksIHZlcnNpb24pOwotICAgIG1f
YmFja2VuZC0+c2V0VmVyc2lvbih2ZXJzaW9uLCByZXF1ZXN0LCB0aGlzLCBlYyk7CisgICAgbV9i
YWNrZW5kLT5zZXRWZXJzaW9uKHZlcnNpb24sIHJlcXVlc3QsIG1fZGF0YWJhc2VDYWxsYmFja3Ms
IGVjKTsKICAgICByZXR1cm4gcmVxdWVzdDsKIH0KIApAQCAtMTU0LDcgKzE1Nyw3IEBAIHZvaWQg
SURCRGF0YWJhc2U6OmNsb3NlKCkKICAgICB9CiAKICAgICBtX25vTmV3VHJhbnNhY3Rpb25zID0g
dHJ1ZTsKLSAgICBtX2JhY2tlbmQtPmNsb3NlKHRoaXMpOworICAgIG1fYmFja2VuZC0+Y2xvc2Uo
bV9kYXRhYmFzZUNhbGxiYWNrcyk7CiB9CiAKIHZvaWQgSURCRGF0YWJhc2U6Om9uVmVyc2lvbkNo
YW5nZShjb25zdCBTdHJpbmcmIHZlcnNpb24pCkBAIC0xNzQsNyArMTc3LDcgQEAgYm9vbCBJREJE
YXRhYmFzZTo6aGFzUGVuZGluZ0FjdGl2aXR5KCkgY29uc3QKIAogdm9pZCBJREJEYXRhYmFzZTo6
b3BlbigpCiB7Ci0gICAgbV9iYWNrZW5kLT5vcGVuKHRoaXMpOworICAgIG1fYmFja2VuZC0+b3Bl
bihtX2RhdGFiYXNlQ2FsbGJhY2tzKTsKIH0KIAogdm9pZCBJREJEYXRhYmFzZTo6ZW5xdWV1ZUV2
ZW50KFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3RvcmFnZS9JREJEYXRhYmFzZS5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFz
ZS5oCmluZGV4IDUxZjFkMjMzNjVjYzg5Y2IxZGM5ODdmNGZmMjZlZTU2ZjczYmQyNDUuLjgzM2Yx
ZjMxYjg1NTkzZGY5Nzg4NGNmNTRiNDI1YTA3NTA3ZTQzYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L0lEQkRhdGFiYXNlLmgKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xh
c3MgSURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0
OwogCi1jbGFzcyBJREJEYXRhYmFzZSA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcywgcHVi
bGljIEV2ZW50VGFyZ2V0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIElEQkRhdGFi
YXNlIDogcHVibGljIFJlZkNvdW50ZWQ8SURCRGF0YWJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQs
IHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRy
PElEQkRhdGFiYXNlPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8
SURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNlPik7CiAgICAgfklEQkRhdGFiYXNlKCk7CkBAIC05
MSw4ICs5MSw4IEBAIHB1YmxpYzoKICAgICBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxF
dmVudD4gZXZlbnQsIEV4Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVybiBFdmVudFRhcmdldDo6ZGlz
cGF0Y2hFdmVudChldmVudCwgZWMpOyB9CiAgICAgdmlydHVhbCBib29sIGRpc3BhdGNoRXZlbnQo
UGFzc1JlZlB0cjxFdmVudD4pOwogCi0gICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZUNh
bGxiYWNrcz46OnJlZjsKLSAgICB1c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlQ2FsbGJhY2tz
Pjo6ZGVyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZT46OnJlZjsKKyAgICB1
c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlPjo6ZGVyZWY7CiAKIHByaXZhdGU6CiAgICAgSURC
RGF0YWJhc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VC
YWNrZW5kSW50ZXJmYWNlPik7CkBAIC0xMTQsNiArMTE0LDggQEAgcHJpdmF0ZToKICAgICAvLyBL
ZWVwIHRyYWNrIG9mIHRoZSB2ZXJzaW9uY2hhbmdlIGV2ZW50cyB3YWl0aW5nIHRvIGJlIGZpcmVk
IG9uIHRoaXMKICAgICAvLyBkYXRhYmFzZSBzbyB0aGF0IHdlIGNhbiBjYW5jZWwgdGhlbSBpZiB0
aGUgZGF0YWJhc2UgY2xvc2VzLgogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9lbnF1ZXVl
ZEV2ZW50czsKKworICAgIFJlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrcz4gbV9kYXRhYmFzZUNh
bGxiYWNrczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaCBiL1NvdXJjZS9XZWJDb3Jl
L3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaAppbmRleCBiM2YyNDRmNTE2YjY5ODdlYTEx
OWNiZjcwMTliN2I1NDM3NWYxMmJmLi40OWVkYmM1MTNjNDA2NjU1YWQzODhmYzVhZmEwZGFhZjBl
YTQ3ODYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2Fs
bGJhY2tzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNr
cy5oCkBAIC0zMywxMSArMzMsMTQgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBJ
REJEYXRhYmFzZTsKKwogY2xhc3MgSURCRGF0YWJhc2VDYWxsYmFja3MgOiBwdWJsaWMgUmVmQ291
bnRlZDxJREJEYXRhYmFzZUNhbGxiYWNrcz4gewogcHVibGljOgogICAgIHZpcnR1YWwgfklEQkRh
dGFiYXNlQ2FsbGJhY2tzKCkgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgb25WZXJzaW9uQ2hhbmdl
KGNvbnN0IFN0cmluZyYgdmVyc2lvbikgPSAwOworICAgIHZpcnR1YWwgdm9pZCB1blJlZ2lzdGVy
RGF0YWJhc2UoSURCRGF0YWJhc2UqKSB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyB9OwogfTsKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9J
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjI5MDMyNWIwMzNkNDFhYWM5
YTk0NGY4ZjhhOTkwZWMyM2Q4ZDY0ZmIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAKQEAgLTAsMCArMSw1NCBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3Zp
ZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEu
ICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
KyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJ
TVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEs
IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
CisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJJREJEYXRhYmFzZUNhbGxiYWNr
c0ltcGwuaCIKKworI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworUGFzc1JlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw+IElEQkRhdGFiYXNlQ2Fs
bGJhY2tzSW1wbDo6Y3JlYXRlKElEQkRhdGFiYXNlKiBkYXRhYmFzZSkKK3sKKyAgICByZXR1cm4g
YWRvcHRSZWYobmV3IElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbChkYXRhYmFzZSkpOworfQorCitJ
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbChJREJEYXRh
YmFzZSogZGF0YWJhc2UpCisgICAgOiBtX2RhdGFiYXNlKGRhdGFiYXNlKQoreworfQorCit2b2lk
IElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6b25WZXJzaW9uQ2hhbmdlKGNvbnN0IFN0cmluZyYg
dmVyc2lvbikKK3sKKyAgICBpZiAobV9kYXRhYmFzZSkKKyAgICAgICAgbV9kYXRhYmFzZS0+b25W
ZXJzaW9uQ2hhbmdlKHZlcnNpb24pOworfQordm9pZCBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6
OnVuUmVnaXN0ZXJEYXRhYmFzZShJREJEYXRhYmFzZSogZGF0YWJhc2UpCit7CisgICAgQVNTRVJU
KGRhdGFiYXNlID09IG1fZGF0YWJhc2UpOworICAgIG1fZGF0YWJhc2UgPSAwOworfQorCit9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRh
YmFzZUNhbGxiYWNrc0ltcGwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xYWY3MGFkOTE4NTIwYWIxMjc5NWUxNWIz
ZjE3YWYxNjU1ZjJlZWFiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuaApAQCAtMCwwICsxLDU2IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgorICogMS4gIFJlZGlzdHJp
YnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBBTkQg
SVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQKKyAq
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIE9S
IElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
CisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQKKyAqIE9OIEFO
WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lm
bmRlZiBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGxfaAorI2RlZmluZSBJREJEYXRhYmFzZUNhbGxi
YWNrc0ltcGxfaAorCisjaW5jbHVkZSAiSURCRGF0YWJhc2VDYWxsYmFja3MuaCIKKyNpbmNsdWRl
ICJQbGF0Zm9ybVN0cmluZy5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisKKyNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBJ
REJEYXRhYmFzZTsKKworY2xhc3MgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsIDogcHVibGljIElE
QkRhdGFiYXNlQ2FsbGJhY2tzIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJE
YXRhYmFzZUNhbGxiYWNrc0ltcGw+IGNyZWF0ZShJREJEYXRhYmFzZSopOworICAgIHZpcnR1YWwg
fklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbCgpIHsgfQorCisgICAgdmlydHVhbCB2b2lkIG9uVmVy
c2lvbkNoYW5nZShjb25zdCBTdHJpbmcmIHZlcnNpb24pOworICAgIHZvaWQgdW5SZWdpc3RlckRh
dGFiYXNlKElEQkRhdGFiYXNlKik7CisKK3ByaXZhdGU6CisgICAgSURCRGF0YWJhc2VDYWxsYmFj
a3NJbXBsKElEQkRhdGFiYXNlKik7CisgICAgSURCRGF0YWJhc2UqIG1fZGF0YWJhc2U7Cit9Owor
Cit9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisKKyNlbmRpZgorCisjZW5kaWYgLy8gSURCRGF0YWJh
c2VDYWxsYmFja3NJbXBsX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85827</attachid>
            <date>2011-03-15 11:02:42 -0700</date>
            <delta_ts>2011-03-15 14:10:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56350-20110315110241.patch</filename>
            <type>text/plain</type>
            <size>11894</size>
            <attacher name="David Grogan">dgrogan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA3OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZDllNWFlY2RlYzAyOWM2
NDVlMDMxMjE2YzdkNmRlOTIyMWJiMThhLi5iY2M0ZDY2MmI5NjA1YWFlOGJkYzVlZDMxMGJjNGIw
NWNmOWVjMmE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDcgQEAKKzIwMTEtMDMtMTQgIERhdmlk
IEdyb2dhbiAgPGRncm9nYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBjcmFzaCBjYXVzZWQgYnkgSW52YWxpZCBjYWxs
IHRvIGRlc3Ryb3lBY3RpdmVET01PYmplY3QgZHVyaW5nIHN0b3BBY3RpdmVET01PYmplY3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjM1MAorCisg
ICAgICAgIFdoZW4gYSBmcmFtZSBpcyB1bmxvYWRlZCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6
c3RvcEFjdGl2ZURPTU9iamVjdHMKKyAgICAgICAgY2FsbHMgc3RvcCgpIG9uIGVhY2ggQWN0aXZl
RE9NT2JqZWN0LgorCisgICAgICAgIENhbGxpbmcgSURCRGF0YWJhc2U6OnN0b3AoKSBjYW4gY2F1
c2UgSURCRGF0YWJhc2UgdG8gYmUgZGVzdHJveWVkOgorICAgICAgICAqIElEQkRhdGFiYXNlOjpz
dG9wKCkgY2F1c2VzIHRoZSBjaHJvbWUgbWVzc2FnZSBkaXNwYXRjaGVyIHRvIHJlbW92ZQorICAg
ICAgICBpdHMgcmVmZXJlbmNlIHRvIElEQkRhdGFiYXNlLCB3aGljaCBpdCBoYXMgYXMgdHlwZQor
ICAgICAgICBJREJEYXRhYmFzZUNhbGxiYWNrcy4KKyAgICAgICAgKiBJZiB0aGF0IHJlZmVyZW5j
ZSBpcyB0aGUgbGFzdCBvbmUsIHRoZSBJREJEYXRhYmFzZSBpcyBkZXN0cm95ZWQuCisgICAgICAg
ICogRGVzdHJveWluZyBhbiBBY3RpdmVET01PYmplY3Qgd2hpbGUgdGhleSBhcmUgYmVpbmcgaXRl
cmF0ZWQgb3ZlciBjYXVzZXMKKyAgICAgICAgYSBkZWZlbnNpdmUgY3Jhc2guCisgICAgICAgIAor
ICAgICAgICBUaGlzIGNoYW5nZSBjcmVhdGVzIGEgc2VwYXJhdGUgSURCRGF0YWJhc2VDYWxsYmFj
a3Mgb2JqZWN0IHRoYXQgaXMgbm90CisgICAgICAgIGFuIEFjdGl2ZURPTU9iamVjdCwgc28gaXQg
Y2FuIGJlIGRlc3Ryb3llZCBieQorICAgICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpzdG9w
QWN0aXZlRE9NT2JqZWN0cy4KKyAgICAgICAgCisgICAgICAgIEJlY2F1c2UgdGhlIGNocm9tZSBt
ZXNzYWdlIGRpc3BhdGNoZXIgaXMgb25seSB1c2VkIGluIG11bHRpLXByb2Nlc3MKKyAgICAgICAg
Y2hyb21pdW0sIHRoYXQncyB0aGUgb25seSBwbGF0Zm9ybSBhZmZlY3RlZC4gIENocm9taXVtIGJy
b3dzZXIgdGVzdHMKKyAgICAgICAgZm9ydGhjb21pbmcuCisKKyAgICAgICAgKiBXZWJDb3JlLmd5
cGk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJREJEYXRhYmFzZTo6SURCRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJh
c2U6On5JREJEYXRhYmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZTo6c2V0VmVy
c2lvbik6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZTo6Y2xvc2UpOgorICAgICAgICAo
V2ViQ29yZTo6SURCRGF0YWJhc2U6Om9wZW4pOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJh
c2UuaDoKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmg6CisgICAgICAg
IChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrczo6dW5SZWdpc3RlckRhdGFiYXNlKToKKyAg
ICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHA6IENvcGllZCBmcm9t
IFNvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaC4KKyAgICAgICAg
KFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6b25WZXJzaW9u
Q2hhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6dW5S
ZWdpc3RlckRhdGFiYXNlKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbC5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2Fs
bGJhY2tzLmguCisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6On5J
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGwpOgorCiAyMDExLTAzLTEwICBHeXV5b3VuZyBLaW0gIDxn
eXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXgu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmd5cGkKaW5kZXggYzgzMTNiOTk5ODkxYmI2OTk1ZDcxMDI3Yzk4MDE4OGY2NDlm
NjA4OC4uNzgxZGZiMzhhYzIyNDg1MDYzMGFlZDM0ZThiMTAyMDM2ZTVjZjBmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQpAQCAtNDUyMyw2ICs0NTIzLDkgQEAKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkN1
cnNvcldpdGhWYWx1ZS5oJywKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkRhdGFiYXNlLmNwcCcs
CiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZS5oJywKKyAgICAgICAgICAgICdzdG9y
YWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmgnLAorICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0
YWJhc2VDYWxsYmFja3NJbXBsLmNwcCcsCisgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFz
ZUNhbGxiYWNrc0ltcGwuaCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tl
bmRJbXBsLmNwcCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJbXBs
LmgnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNlLmgn
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmNwcAppbmRleCBmZThkMzUwOGRhODZi
Yzk4NTc4MTVkNGJmNTU5NmU2MDc3NDdjMjA3Li4xNjgwMGJjNTJhNTZhZjYwYWM5MzQ5ZjcyNWUw
OGY0ZGEwM2VjODA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmNwcApAQCAt
MjksNiArMjksNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRXZlbnRRdWV1
ZS5oIgogI2luY2x1ZGUgIklEQkFueS5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbC5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlRXJyb3IuaCIKICNpbmNsdWRlICJJREJEYXRh
YmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIklEQkV2ZW50RGlzcGF0Y2hlci5oIgpAQCAtNTgs
MTAgKzU5LDEyIEBAIElEQkRhdGFiYXNlOjpJREJEYXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPElEQkRhdGFiYXNlCiB7CiAgICAgLy8gV2UgcGFzcyBh
IHJlZmVyZW5jZSBvZiB0aGlzIG9iamVjdCBiZWZvcmUgaXQgY2FuIGJlIGFkb3B0ZWQuCiAgICAg
cmVsYXhBZG9wdGlvblJlcXVpcmVtZW50KCk7CisgICAgbV9kYXRhYmFzZUNhbGxiYWNrcyA9IElE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6Y3JlYXRlKHRoaXMpOwogfQogCiBJREJEYXRhYmFzZTo6
fklEQkRhdGFiYXNlKCkKIHsKKyAgICBtX2RhdGFiYXNlQ2FsbGJhY2tzLT51blJlZ2lzdGVyRGF0
YWJhc2UodGhpcyk7CiB9CiAKIHZvaWQgSURCRGF0YWJhc2U6OnNldFNldFZlcnNpb25UcmFuc2Fj
dGlvbihJREJUcmFuc2FjdGlvbiogdHJhbnNhY3Rpb24pCkBAIC0xMDMsNyArMTA2LDcgQEAgdm9p
ZCBJREJEYXRhYmFzZTo6ZGVsZXRlT2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNl
cHRpb25Db2RlJiBlYykKIFBhc3NSZWZQdHI8SURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q+IElEQkRh
dGFiYXNlOjpzZXRWZXJzaW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0
IFN0cmluZyYgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgUmVmUHRyPElEQlZl
cnNpb25DaGFuZ2VSZXF1ZXN0PiByZXF1ZXN0ID0gSURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q6OmNy
ZWF0ZShjb250ZXh0LCBJREJBbnk6OmNyZWF0ZSh0aGlzKSwgdmVyc2lvbik7Ci0gICAgbV9iYWNr
ZW5kLT5zZXRWZXJzaW9uKHZlcnNpb24sIHJlcXVlc3QsIHRoaXMsIGVjKTsKKyAgICBtX2JhY2tl
bmQtPnNldFZlcnNpb24odmVyc2lvbiwgcmVxdWVzdCwgbV9kYXRhYmFzZUNhbGxiYWNrcywgZWMp
OwogICAgIHJldHVybiByZXF1ZXN0OwogfQogCkBAIC0xNTQsNyArMTU3LDcgQEAgdm9pZCBJREJE
YXRhYmFzZTo6Y2xvc2UoKQogICAgIH0KIAogICAgIG1fbm9OZXdUcmFuc2FjdGlvbnMgPSB0cnVl
OwotICAgIG1fYmFja2VuZC0+Y2xvc2UodGhpcyk7CisgICAgbV9iYWNrZW5kLT5jbG9zZShtX2Rh
dGFiYXNlQ2FsbGJhY2tzKTsKIH0KIAogdm9pZCBJREJEYXRhYmFzZTo6b25WZXJzaW9uQ2hhbmdl
KGNvbnN0IFN0cmluZyYgdmVyc2lvbikKQEAgLTE3NCw3ICsxNzcsNyBAQCBib29sIElEQkRhdGFi
YXNlOjpoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdAogCiB2b2lkIElEQkRhdGFiYXNlOjpvcGVu
KCkKIHsKLSAgICBtX2JhY2tlbmQtPm9wZW4odGhpcyk7CisgICAgbV9iYWNrZW5kLT5vcGVuKG1f
ZGF0YWJhc2VDYWxsYmFja3MpOwogfQogCiB2b2lkIElEQkRhdGFiYXNlOjplbnF1ZXVlRXZlbnQo
UGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmgK
aW5kZXggNTFmMWQyMzM2NWNjODljYjFkYzk4N2Y0ZmYyNmVlNTZmNzNiZDI0NS4uOWQ0ODgzZTA3
NDJhN2I1YWIyNTI0MDEzZmUxZWJkOTU1ZjQ5MTlmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURC
RGF0YWJhc2UuaApAQCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAj
aW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlQmFja2VuZElu
dGVyZmFjZS5oIgotI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tzLmgiCisjaW5jbHVkZSAi
SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0U3RvcmUuaCIK
ICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIk9wdGlvbnNPYmplY3QuaCIK
QEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSURCVmVyc2lvbkNo
YW5nZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCi1jbGFzcyBJREJE
YXRhYmFzZSA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcywgcHVibGljIEV2ZW50VGFyZ2V0
LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIElEQkRhdGFiYXNlIDogcHVibGljIFJl
ZkNvdW50ZWQ8SURCRGF0YWJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQsIHB1YmxpYyBBY3RpdmVE
T01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQkRhdGFiYXNlPiBj
cmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNr
ZW5kSW50ZXJmYWNlPik7CiAgICAgfklEQkRhdGFiYXNlKCk7CkBAIC05MSw4ICs5MSw4IEBAIHB1
YmxpYzoKICAgICBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQsIEV4
Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVybiBFdmVudFRhcmdldDo6ZGlzcGF0Y2hFdmVudChldmVu
dCwgZWMpOyB9CiAgICAgdmlydHVhbCBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4pOwogCi0gICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZUNhbGxiYWNrcz46OnJlZjsK
LSAgICB1c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlQ2FsbGJhY2tzPjo6ZGVyZWY7CisgICAg
dXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZT46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVk
PElEQkRhdGFiYXNlPjo6ZGVyZWY7CiAKIHByaXZhdGU6CiAgICAgSURCRGF0YWJhc2UoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNl
Pik7CkBAIC0xMTQsNiArMTE0LDggQEAgcHJpdmF0ZToKICAgICAvLyBLZWVwIHRyYWNrIG9mIHRo
ZSB2ZXJzaW9uY2hhbmdlIGV2ZW50cyB3YWl0aW5nIHRvIGJlIGZpcmVkIG9uIHRoaXMKICAgICAv
LyBkYXRhYmFzZSBzbyB0aGF0IHdlIGNhbiBjYW5jZWwgdGhlbSBpZiB0aGUgZGF0YWJhc2UgY2xv
c2VzLgogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9lbnF1ZXVlZEV2ZW50czsKKworICAg
IFJlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw+IG1fZGF0YWJhc2VDYWxsYmFja3M7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODIyYmY1MzQyNzQx
MjZhNzRkNmU5ZWY3NjY4OWE2MTkyODU5MTM5NwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmNwcApAQCAtMCwwICsxLDU5
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgor
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2Fs
bGJhY2tzSW1wbC5oIgorCisjaW5jbHVkZSAiSURCRGF0YWJhc2UuaCIKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitQYXNzUmVmUHRyPElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbD4gSURCRGF0YWJh
c2VDYWxsYmFja3NJbXBsOjpjcmVhdGUoSURCRGF0YWJhc2UqIGRhdGFiYXNlKQoreworICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKGRhdGFiYXNlKSk7Cit9
CisKK0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKElE
QkRhdGFiYXNlKiBkYXRhYmFzZSkKKyAgICA6IG1fZGF0YWJhc2UoZGF0YWJhc2UpCit7Cit9CisK
K0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6fklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbCgpCit7
Cit9CisKK3ZvaWQgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsOjpvblZlcnNpb25DaGFuZ2UoY29u
c3QgU3RyaW5nJiB2ZXJzaW9uKQoreworICAgIGlmIChtX2RhdGFiYXNlKQorICAgICAgICBtX2Rh
dGFiYXNlLT5vblZlcnNpb25DaGFuZ2UodmVyc2lvbik7Cit9CisKK3ZvaWQgSURCRGF0YWJhc2VD
YWxsYmFja3NJbXBsOjp1blJlZ2lzdGVyRGF0YWJhc2UoSURCRGF0YWJhc2UqIGRhdGFiYXNlKQor
eworICAgIEFTU0VSVChkYXRhYmFzZSA9PSBtX2RhdGFiYXNlKTsKKyAgICBtX2RhdGFiYXNlID0g
MDsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWE5NDdmYzNhOWU4
ZjVjYjI3NDU2M2M3YzAyZjg2ZDAwZDRmMTRjMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgKQEAgLTAsMCArMSw2MCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsX2gKKyNkZWZpbmUgSURC
RGF0YWJhc2VDYWxsYmFja3NJbXBsX2gKKworI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tz
LmgiCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgorCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgSURCRGF0YWJhc2U7CisKK2NsYXNzIElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1w
bCA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcyB7CitwdWJsaWM6CisgICAgc3RhdGljIFBh
c3NSZWZQdHI8SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsPiBjcmVhdGUoSURCRGF0YWJhc2UqKTsK
KyAgICB2aXJ0dWFsIH5JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwoKTsKKworICAgIHZpcnR1YWwg
dm9pZCBvblZlcnNpb25DaGFuZ2UoY29uc3QgU3RyaW5nJiB2ZXJzaW9uKTsKKyAgICB2b2lkIHVu
UmVnaXN0ZXJEYXRhYmFzZShJREJEYXRhYmFzZSopOworCitwcml2YXRlOgorICAgIElEQkRhdGFi
YXNlQ2FsbGJhY2tzSW1wbChJREJEYXRhYmFzZSopOworCisgICAgLy8gVGhpcyBpcyBhIHdlYWsg
cG9pbnRlciBiZWNhdXNlIG1fZGF0YWJhc2UgaGFzIGEgUmVmUHRyIHRvIHRoaXMuCisgICAgLy8g
SWYgYSBSZWZQdHIgd2VyZSB1c2VkIGhlcmUsIHRoZXJlJ2QgYmUgYSBjeWNsZSBhbmQgdGhlIHJl
ZiBjb3VudGluZworICAgIC8vIHdvdWxkbid0IGJlIGVmZmVjdGl2ZS4KKyAgICBJREJEYXRhYmFz
ZSogbV9kYXRhYmFzZTsKK307CisKK30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmCisK
KyNlbmRpZiAvLyBJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGxfaAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85859</attachid>
            <date>2011-03-15 14:10:00 -0700</date>
            <delta_ts>2011-03-15 15:17:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56350-20110315140959.patch</filename>
            <type>text/plain</type>
            <size>11796</size>
            <attacher name="David Grogan">dgrogan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA3OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlZDllNWFlY2RlYzAyOWM2
NDVlMDMxMjE2YzdkNmRlOTIyMWJiMThhLi5iY2M0ZDY2MmI5NjA1YWFlOGJkYzVlZDMxMGJjNGIw
NWNmOWVjMmE3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDcgQEAKKzIwMTEtMDMtMTQgIERhdmlk
IEdyb2dhbiAgPGRncm9nYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBjcmFzaCBjYXVzZWQgYnkgSW52YWxpZCBjYWxs
IHRvIGRlc3Ryb3lBY3RpdmVET01PYmplY3QgZHVyaW5nIHN0b3BBY3RpdmVET01PYmplY3RzCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjM1MAorCisg
ICAgICAgIFdoZW4gYSBmcmFtZSBpcyB1bmxvYWRlZCwgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6
c3RvcEFjdGl2ZURPTU9iamVjdHMKKyAgICAgICAgY2FsbHMgc3RvcCgpIG9uIGVhY2ggQWN0aXZl
RE9NT2JqZWN0LgorCisgICAgICAgIENhbGxpbmcgSURCRGF0YWJhc2U6OnN0b3AoKSBjYW4gY2F1
c2UgSURCRGF0YWJhc2UgdG8gYmUgZGVzdHJveWVkOgorICAgICAgICAqIElEQkRhdGFiYXNlOjpz
dG9wKCkgY2F1c2VzIHRoZSBjaHJvbWUgbWVzc2FnZSBkaXNwYXRjaGVyIHRvIHJlbW92ZQorICAg
ICAgICBpdHMgcmVmZXJlbmNlIHRvIElEQkRhdGFiYXNlLCB3aGljaCBpdCBoYXMgYXMgdHlwZQor
ICAgICAgICBJREJEYXRhYmFzZUNhbGxiYWNrcy4KKyAgICAgICAgKiBJZiB0aGF0IHJlZmVyZW5j
ZSBpcyB0aGUgbGFzdCBvbmUsIHRoZSBJREJEYXRhYmFzZSBpcyBkZXN0cm95ZWQuCisgICAgICAg
ICogRGVzdHJveWluZyBhbiBBY3RpdmVET01PYmplY3Qgd2hpbGUgdGhleSBhcmUgYmVpbmcgaXRl
cmF0ZWQgb3ZlciBjYXVzZXMKKyAgICAgICAgYSBkZWZlbnNpdmUgY3Jhc2guCisgICAgICAgIAor
ICAgICAgICBUaGlzIGNoYW5nZSBjcmVhdGVzIGEgc2VwYXJhdGUgSURCRGF0YWJhc2VDYWxsYmFj
a3Mgb2JqZWN0IHRoYXQgaXMgbm90CisgICAgICAgIGFuIEFjdGl2ZURPTU9iamVjdCwgc28gaXQg
Y2FuIGJlIGRlc3Ryb3llZCBieQorICAgICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0OjpzdG9w
QWN0aXZlRE9NT2JqZWN0cy4KKyAgICAgICAgCisgICAgICAgIEJlY2F1c2UgdGhlIGNocm9tZSBt
ZXNzYWdlIGRpc3BhdGNoZXIgaXMgb25seSB1c2VkIGluIG11bHRpLXByb2Nlc3MKKyAgICAgICAg
Y2hyb21pdW0sIHRoYXQncyB0aGUgb25seSBwbGF0Zm9ybSBhZmZlY3RlZC4gIENocm9taXVtIGJy
b3dzZXIgdGVzdHMKKyAgICAgICAgZm9ydGhjb21pbmcuCisKKyAgICAgICAgKiBXZWJDb3JlLmd5
cGk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJREJEYXRhYmFzZTo6SURCRGF0YWJhc2UpOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJh
c2U6On5JREJEYXRhYmFzZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZTo6c2V0VmVy
c2lvbik6CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZTo6Y2xvc2UpOgorICAgICAgICAo
V2ViQ29yZTo6SURCRGF0YWJhc2U6Om9wZW4pOgorICAgICAgICAqIHN0b3JhZ2UvSURCRGF0YWJh
c2UuaDoKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmg6CisgICAgICAg
IChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrczo6dW5SZWdpc3RlckRhdGFiYXNlKToKKyAg
ICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHA6IENvcGllZCBmcm9t
IFNvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3MuaC4KKyAgICAgICAg
KFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6Y3JlYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBs
KToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6b25WZXJzaW9u
Q2hhbmdlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6dW5S
ZWdpc3RlckRhdGFiYXNlKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbC5oOiBDb3BpZWQgZnJvbSBTb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlQ2Fs
bGJhY2tzLmguCisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw6On5J
REJEYXRhYmFzZUNhbGxiYWNrc0ltcGwpOgorCiAyMDExLTAzLTEwICBHeXV5b3VuZyBLaW0gIDxn
eXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXgu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmd5cGkKaW5kZXggYzgzMTNiOTk5ODkxYmI2OTk1ZDcxMDI3Yzk4MDE4OGY2NDlm
NjA4OC4uNzgxZGZiMzhhYzIyNDg1MDYzMGFlZDM0ZThiMTAyMDM2ZTVjZjBmNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQpAQCAtNDUyMyw2ICs0NTIzLDkgQEAKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkN1
cnNvcldpdGhWYWx1ZS5oJywKICAgICAgICAgICAgICdzdG9yYWdlL0lEQkRhdGFiYXNlLmNwcCcs
CiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZS5oJywKKyAgICAgICAgICAgICdzdG9y
YWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzLmgnLAorICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0
YWJhc2VDYWxsYmFja3NJbXBsLmNwcCcsCisgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFz
ZUNhbGxiYWNrc0ltcGwuaCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tl
bmRJbXBsLmNwcCcsCiAgICAgICAgICAgICAnc3RvcmFnZS9JREJEYXRhYmFzZUJhY2tlbmRJbXBs
LmgnLAogICAgICAgICAgICAgJ3N0b3JhZ2UvSURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNlLmgn
LApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmNwcAppbmRleCBmZThkMzUwOGRhODZi
Yzk4NTc4MTVkNGJmNTU5NmU2MDc3NDdjMjA3Li5kNTRiOTY5YTFjZjZlZTYxYTQ2YjcwNDNjY2Nk
MWMwYzJjMTFjNjYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFi
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmNwcApAQCAt
MjksNiArMjksNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiRXZlbnRRdWV1
ZS5oIgogI2luY2x1ZGUgIklEQkFueS5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tz
SW1wbC5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlRXJyb3IuaCIKICNpbmNsdWRlICJJREJEYXRh
YmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIklEQkV2ZW50RGlzcGF0Y2hlci5oIgpAQCAtNTgs
MTAgKzU5LDEyIEBAIElEQkRhdGFiYXNlOjpJREJEYXRhYmFzZShTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBQYXNzUmVmUHRyPElEQkRhdGFiYXNlCiB7CiAgICAgLy8gV2UgcGFzcyBh
IHJlZmVyZW5jZSBvZiB0aGlzIG9iamVjdCBiZWZvcmUgaXQgY2FuIGJlIGFkb3B0ZWQuCiAgICAg
cmVsYXhBZG9wdGlvblJlcXVpcmVtZW50KCk7CisgICAgbV9kYXRhYmFzZUNhbGxiYWNrcyA9IElE
QkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6Y3JlYXRlKHRoaXMpOwogfQogCiBJREJEYXRhYmFzZTo6
fklEQkRhdGFiYXNlKCkKIHsKKyAgICBtX2RhdGFiYXNlQ2FsbGJhY2tzLT51bnJlZ2lzdGVyRGF0
YWJhc2UodGhpcyk7CiB9CiAKIHZvaWQgSURCRGF0YWJhc2U6OnNldFNldFZlcnNpb25UcmFuc2Fj
dGlvbihJREJUcmFuc2FjdGlvbiogdHJhbnNhY3Rpb24pCkBAIC0xMDMsNyArMTA2LDcgQEAgdm9p
ZCBJREJEYXRhYmFzZTo6ZGVsZXRlT2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBuYW1lLCBFeGNl
cHRpb25Db2RlJiBlYykKIFBhc3NSZWZQdHI8SURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q+IElEQkRh
dGFiYXNlOjpzZXRWZXJzaW9uKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIGNvbnN0
IFN0cmluZyYgdmVyc2lvbiwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CiAgICAgUmVmUHRyPElEQlZl
cnNpb25DaGFuZ2VSZXF1ZXN0PiByZXF1ZXN0ID0gSURCVmVyc2lvbkNoYW5nZVJlcXVlc3Q6OmNy
ZWF0ZShjb250ZXh0LCBJREJBbnk6OmNyZWF0ZSh0aGlzKSwgdmVyc2lvbik7Ci0gICAgbV9iYWNr
ZW5kLT5zZXRWZXJzaW9uKHZlcnNpb24sIHJlcXVlc3QsIHRoaXMsIGVjKTsKKyAgICBtX2JhY2tl
bmQtPnNldFZlcnNpb24odmVyc2lvbiwgcmVxdWVzdCwgbV9kYXRhYmFzZUNhbGxiYWNrcywgZWMp
OwogICAgIHJldHVybiByZXF1ZXN0OwogfQogCkBAIC0xNTQsNyArMTU3LDcgQEAgdm9pZCBJREJE
YXRhYmFzZTo6Y2xvc2UoKQogICAgIH0KIAogICAgIG1fbm9OZXdUcmFuc2FjdGlvbnMgPSB0cnVl
OwotICAgIG1fYmFja2VuZC0+Y2xvc2UodGhpcyk7CisgICAgbV9iYWNrZW5kLT5jbG9zZShtX2Rh
dGFiYXNlQ2FsbGJhY2tzKTsKIH0KIAogdm9pZCBJREJEYXRhYmFzZTo6b25WZXJzaW9uQ2hhbmdl
KGNvbnN0IFN0cmluZyYgdmVyc2lvbikKQEAgLTE3NCw3ICsxNzcsNyBAQCBib29sIElEQkRhdGFi
YXNlOjpoYXNQZW5kaW5nQWN0aXZpdHkoKSBjb25zdAogCiB2b2lkIElEQkRhdGFiYXNlOjpvcGVu
KCkKIHsKLSAgICBtX2JhY2tlbmQtPm9wZW4odGhpcyk7CisgICAgbV9iYWNrZW5kLT5vcGVuKG1f
ZGF0YWJhc2VDYWxsYmFja3MpOwogfQogCiB2b2lkIElEQkRhdGFiYXNlOjplbnF1ZXVlRXZlbnQo
UGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlLmgK
aW5kZXggNTFmMWQyMzM2NWNjODljYjFkYzk4N2Y0ZmYyNmVlNTZmNzNiZDI0NS4uOWQ0ODgzZTA3
NDJhN2I1YWIyNTI0MDEzZmUxZWJkOTU1ZjQ5MTlmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURC
RGF0YWJhc2UuaApAQCAtMzIsNyArMzIsNyBAQAogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAj
aW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlQmFja2VuZElu
dGVyZmFjZS5oIgotI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tzLmgiCisjaW5jbHVkZSAi
SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0U3RvcmUuaCIK
ICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIk9wdGlvbnNPYmplY3QuaCIK
QEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgSURCVmVyc2lvbkNo
YW5nZVJlcXVlc3Q7CiBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwogCi1jbGFzcyBJREJE
YXRhYmFzZSA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcywgcHVibGljIEV2ZW50VGFyZ2V0
LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKK2NsYXNzIElEQkRhdGFiYXNlIDogcHVibGljIFJl
ZkNvdW50ZWQ8SURCRGF0YWJhc2U+LCBwdWJsaWMgRXZlbnRUYXJnZXQsIHB1YmxpYyBBY3RpdmVE
T01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBQYXNzUmVmUHRyPElEQkRhdGFiYXNlPiBj
cmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNr
ZW5kSW50ZXJmYWNlPik7CiAgICAgfklEQkRhdGFiYXNlKCk7CkBAIC05MSw4ICs5MSw4IEBAIHB1
YmxpYzoKICAgICBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4gZXZlbnQsIEV4
Y2VwdGlvbkNvZGUmIGVjKSB7IHJldHVybiBFdmVudFRhcmdldDo6ZGlzcGF0Y2hFdmVudChldmVu
dCwgZWMpOyB9CiAgICAgdmlydHVhbCBib29sIGRpc3BhdGNoRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4pOwogCi0gICAgdXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZUNhbGxiYWNrcz46OnJlZjsK
LSAgICB1c2luZyBSZWZDb3VudGVkPElEQkRhdGFiYXNlQ2FsbGJhY2tzPjo6ZGVyZWY7CisgICAg
dXNpbmcgUmVmQ291bnRlZDxJREJEYXRhYmFzZT46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVk
PElEQkRhdGFiYXNlPjo6ZGVyZWY7CiAKIHByaXZhdGU6CiAgICAgSURCRGF0YWJhc2UoU2NyaXB0
RXhlY3V0aW9uQ29udGV4dCosIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VCYWNrZW5kSW50ZXJmYWNl
Pik7CkBAIC0xMTQsNiArMTE0LDggQEAgcHJpdmF0ZToKICAgICAvLyBLZWVwIHRyYWNrIG9mIHRo
ZSB2ZXJzaW9uY2hhbmdlIGV2ZW50cyB3YWl0aW5nIHRvIGJlIGZpcmVkIG9uIHRoaXMKICAgICAv
LyBkYXRhYmFzZSBzbyB0aGF0IHdlIGNhbiBjYW5jZWwgdGhlbSBpZiB0aGUgZGF0YWJhc2UgY2xv
c2VzLgogICAgIFZlY3RvcjxSZWZQdHI8RXZlbnQ+ID4gbV9lbnF1ZXVlZEV2ZW50czsKKworICAg
IFJlZlB0cjxJREJEYXRhYmFzZUNhbGxiYWNrc0ltcGw+IG1fZGF0YWJhc2VDYWxsYmFja3M7CiB9
OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbC5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMzA5OTRhZDNiODA1
YTZkMzQ1NTBiMzA5NmFlYzIyMTI3MGZiOGIzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmNwcApAQCAtMCwwICsxLDU5
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDExIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKgor
ICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURF
RCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVYUFJF
U1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg
VEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNT
IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwg
REFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2Fs
bGJhY2tzSW1wbC5oIgorCisjaW5jbHVkZSAiSURCRGF0YWJhc2UuaCIKKworbmFtZXNwYWNlIFdl
YkNvcmUgeworCitQYXNzUmVmUHRyPElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbD4gSURCRGF0YWJh
c2VDYWxsYmFja3NJbXBsOjpjcmVhdGUoSURCRGF0YWJhc2UqIGRhdGFiYXNlKQoreworICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKGRhdGFiYXNlKSk7Cit9
CisKK0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsKElE
QkRhdGFiYXNlKiBkYXRhYmFzZSkKKyAgICA6IG1fZGF0YWJhc2UoZGF0YWJhc2UpCit7Cit9CisK
K0lEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbDo6fklEQkRhdGFiYXNlQ2FsbGJhY2tzSW1wbCgpCit7
Cit9CisKK3ZvaWQgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsOjpvblZlcnNpb25DaGFuZ2UoY29u
c3QgU3RyaW5nJiB2ZXJzaW9uKQoreworICAgIGlmIChtX2RhdGFiYXNlKQorICAgICAgICBtX2Rh
dGFiYXNlLT5vblZlcnNpb25DaGFuZ2UodmVyc2lvbik7Cit9CisKK3ZvaWQgSURCRGF0YWJhc2VD
YWxsYmFja3NJbXBsOjp1bnJlZ2lzdGVyRGF0YWJhc2UoSURCRGF0YWJhc2UqIGRhdGFiYXNlKQor
eworICAgIEFTU0VSVChkYXRhYmFzZSA9PSBtX2RhdGFiYXNlKTsKKyAgICBtX2RhdGFiYXNlID0g
MDsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvc3RvcmFnZS9JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwuaCBiL1NvdXJjZS9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZThiMWY5OWI4Mzhh
ZjdiOTM3ZDk0YjdhZjhmN2Y3ZGZiODJiZTdmYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsLmgKQEAgLTAsMCArMSw1OCBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAq
IDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0
aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJF
Q1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKKyNpZm5kZWYgSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsX2gKKyNkZWZpbmUgSURC
RGF0YWJhc2VDYWxsYmFja3NJbXBsX2gKKworI2luY2x1ZGUgIklEQkRhdGFiYXNlQ2FsbGJhY2tz
LmgiCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRl
ZC5oPgorCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisKK25hbWVzcGFjZSBXZWJDb3Jl
IHsKKworY2xhc3MgSURCRGF0YWJhc2U7CisKK2NsYXNzIElEQkRhdGFiYXNlQ2FsbGJhY2tzSW1w
bCA6IHB1YmxpYyBJREJEYXRhYmFzZUNhbGxiYWNrcyB7CitwdWJsaWM6CisgICAgc3RhdGljIFBh
c3NSZWZQdHI8SURCRGF0YWJhc2VDYWxsYmFja3NJbXBsPiBjcmVhdGUoSURCRGF0YWJhc2UqKTsK
KyAgICB2aXJ0dWFsIH5JREJEYXRhYmFzZUNhbGxiYWNrc0ltcGwoKTsKKworICAgIHZpcnR1YWwg
dm9pZCBvblZlcnNpb25DaGFuZ2UoY29uc3QgU3RyaW5nJiB2ZXJzaW9uKTsKKyAgICB2b2lkIHVu
cmVnaXN0ZXJEYXRhYmFzZShJREJEYXRhYmFzZSopOworCitwcml2YXRlOgorICAgIElEQkRhdGFi
YXNlQ2FsbGJhY2tzSW1wbChJREJEYXRhYmFzZSopOworCisgICAgLy8gbV9kYXRhYmFzZSBoYXMg
YSBSZWZQdHIgdG8gdGhpcywgc28gdXNlIGEgd2VhayBwb2ludGVyIHRvIGF2b2lkIGEgY3ljbGUu
CisgICAgSURCRGF0YWJhc2UqIG1fZGF0YWJhc2U7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisKKyNlbmRpZgorCisjZW5kaWYgLy8gSURCRGF0YWJhc2VDYWxsYmFja3NJbXBsX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>