<?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>50632</bug_id>
          
          <creation_ts>2010-12-07 08:58:22 -0800</creation_ts>
          <short_desc>IndexedDB returns the wrong exceptions</short_desc>
          <delta_ts>2010-12-09 04:30:17 -0800</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>1</everconfirmed>
          <reporter name="Jeremy Orlow">jorlow</reporter>
          <assigned_to name="Jeremy Orlow">jorlow</assigned_to>
          <cc>andreip</cc>
    
    <cc>hans</cc>
    
    <cc>steveblock</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>318224</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-07 08:58:22 -0800</bug_when>
    <thetext>IndexedDB returns the wrong exceptions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318227</commentid>
    <comment_count>1</comment_count>
      <attachid>75820</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-07 09:04:25 -0800</bug_when>
    <thetext>Created attachment 75820
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318233</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-07 09:12:41 -0800</bug_when>
    <thetext>Attachment 75820 did not pass style-queue:

Failed to run &quot;[u&apos;git&apos;, u&apos;reset&apos;, u&apos;--hard&apos;, u&apos;refs/remotes/trunk&apos;]&quot; exit_code: 128
error: Could not write new index file.
fatal: Could not reset index file to revision &apos;refs/remotes/trunk&apos;.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318242</commentid>
    <comment_count>3</comment_count>
      <attachid>75820</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-12-07 09:19:07 -0800</bug_when>
    <thetext>Comment on attachment 75820
Patch

Looks fine as far as I can tell. A few comments about the messages:


&gt; WebCore/dom/ExceptionCode.cpp:231
&gt; +    &quot;A record/index/objectStore by the name you requested does not exist.&quot;,

I think we should avoid personal pronouns in these messages. Perhaps &quot;... the requested name does not exist.&quot;?

&gt; WebCore/dom/ExceptionCode.cpp:232
&gt; +    &quot;Your request cannot be completed due to a failed constraint.&quot;,

Ditto.

&gt; WebCore/dom/ExceptionCode.cpp:233
&gt; +    &quot;The data you provided does not meet the requirements of the function.&quot;,

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318287</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-07 10:13:29 -0800</bug_when>
    <thetext>Attachment 75820 did not pass style-queue:

Failed to run &quot;[u&apos;git&apos;, u&apos;reset&apos;, u&apos;--hard&apos;, u&apos;refs/remotes/trunk&apos;]&quot; exit_code: 128
error: Could not write new index file.
fatal: Could not reset index file to revision &apos;refs/remotes/trunk&apos;.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318335</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-07 11:14:39 -0800</bug_when>
    <thetext>Attachment 75820 did not pass style-queue:

Failed to run &quot;[u&apos;git&apos;, u&apos;reset&apos;, u&apos;--hard&apos;, u&apos;refs/remotes/trunk&apos;]&quot; exit_code: 128
error: Could not write new index file.
fatal: Could not reset index file to revision &apos;refs/remotes/trunk&apos;.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318385</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-07 12:15:59 -0800</bug_when>
    <thetext>Attachment 75820 did not pass style-queue:

Failed to run &quot;[u&apos;git&apos;, u&apos;reset&apos;, u&apos;--hard&apos;, u&apos;refs/remotes/trunk&apos;]&quot; exit_code: 128
error: Could not write new index file.
fatal: Could not reset index file to revision &apos;refs/remotes/trunk&apos;.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318607</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-12-07 21:40:16 -0800</bug_when>
    <thetext>Attachment 75820 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/update-webkit&apos;]&quot; exit_code: 2
Updating OpenSource
Incomplete data: Delta source ended unexpectedly at /usr/lib/git-core/git-svn line 5061

Died at WebKitTools/Scripts/update-webkit line 132.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318755</commentid>
    <comment_count>8</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-08 06:50:08 -0800</bug_when>
    <thetext>Another shot at the names.  Steve, can you please review?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318756</commentid>
    <comment_count>9</comment_count>
      <attachid>75898</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-08 06:50:28 -0800</bug_when>
    <thetext>Created attachment 75898
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318767</commentid>
    <comment_count>10</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2010-12-08 07:21:03 -0800</bug_when>
    <thetext>LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318770</commentid>
    <comment_count>11</comment_count>
      <attachid>75898</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-12-08 07:26:10 -0800</bug_when>
    <thetext>Comment on attachment 75898
Patch

LGTM

&gt; WebCore/dom/ExceptionCode.cpp:234
&gt; +    &quot;This function is not allowed to be called in such a context&quot;,

ultra nit: period.

&gt; WebCore/dom/ExceptionCode.cpp:235
&gt; +    &quot;The data supplied cannot be serialized according to the structured cloning algorithm&quot;,

ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318781</commentid>
    <comment_count>12</comment_count>
      <attachid>75898</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-12-08 07:39:09 -0800</bug_when>
    <thetext>Comment on attachment 75898
Patch

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

Are the new values set in the spec? Do you have a link?

&gt; WebCore/bindings/js/JSDOMBinding.cpp:90
&gt; +#include &quot;IDBDatabaseExceptionException.h&quot;

ExceptionException?

&gt; WebCore/bindings/v8/V8Proxy.cpp:40
&gt; +#include &quot;IDBDatabaseException.h&quot;

Should this be guarded? If not, why is it for JSC?

&gt; WebCore/storage/IDBDatabaseException.idl:35
&gt; +        readonly attribute DOMString        message;

Why the odd spacing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318802</commentid>
    <comment_count>13</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-08 08:40:12 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 75898 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=75898&amp;action=review
&gt; 
&gt; Are the new values set in the spec? Do you have a link?

The new numerical values are not yet in the spec, but I intend to change the spec in the next day or two.  There&apos;s been a bug to do so for a while.
 
&gt; &gt; WebCore/bindings/js/JSDOMBinding.cpp:90
&gt; &gt; +#include &quot;IDBDatabaseExceptionException.h&quot;
&gt; 
&gt; ExceptionException?

Bah.  Good catch!
 
&gt; &gt; WebCore/bindings/v8/V8Proxy.cpp:40
&gt; &gt; +#include &quot;IDBDatabaseException.h&quot;
&gt; 
&gt; Should this be guarded? If not, why is it for JSC?

Just following conventions in the various files.

&gt; &gt; WebCore/storage/IDBDatabaseException.idl:35
&gt; &gt; +        readonly attribute DOMString        message;
&gt; 
&gt; Why the odd spacing?

Just copying from the other Exception files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318848</commentid>
    <comment_count>14</comment_count>
      <attachid>75918</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-08 10:02:54 -0800</bug_when>
    <thetext>Created attachment 75918
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>318857</commentid>
    <comment_count>15</comment_count>
      <attachid>75918</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-12-08 10:10:02 -0800</bug_when>
    <thetext>Comment on attachment 75918
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319397</commentid>
    <comment_count>16</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-12-09 04:30:17 -0800</bug_when>
    <thetext>Committed r73605: &lt;http://trac.webkit.org/changeset/73605&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75820</attachid>
            <date>2010-12-07 09:04:25 -0800</date>
            <delta_ts>2010-12-08 06:50:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50632-20101207170423.patch</filename>
            <type>text/plain</type>
            <size>17756</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZGY5NjM0YmE0MDhhZmViOGMyNTQ2MDgyZDI0ZjgxNTEzMGVkNTlmLi43YTczZTk5
NTY3NDk0ODM4ODM1Mzg3ODYwZjI2OWU3NDAxMDY2YTdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERCIHJldHVy
bnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jb25z
dGFudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50
cy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9i
amVjdHN0b3JlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmpl
Y3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5odG1sOgorCiAyMDEwLTEyLTAzICBBYmhpc2hlayBB
cnlhICA8aW5mZXJub0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jb25zdGFudHMtZXhwZWN0ZWQudHh0
CmluZGV4IGVhZDA5MzdlYzYyYWMzZWY0MzFjMjUwYzgwYzQyNmVlODA2YWU2ZTAuLjExMGE2OGQ4
MzQ1ZmJmNDg3ZTI4MTU1MGE3MmFkMDQzYWY2OGQyOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwx
NiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiAKIFBBU1Mgd2Via2l0SURCRGF0YWJhc2VF
eGNlcHRpb24uVU5LTk9XTl9FUlIgaXMgMQotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5OT05fVFJBTlNJRU5UX0VSUiBpcyAxCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9u
Lk5PVF9GT1VORF9FUlIgaXMgMgotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5DT05T
VFJBSU5UX0VSUiBpcyAzCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkRBVEFfRVJS
IGlzIDQKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0FMTE9XRURfRVJSIGlz
IDUKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uU0VSSUFMX0VSUiBpcyAxMQotUEFT
UyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMgMjEKLVBBU1Mg
d2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVFJBTlNJRU5UX0VSUiBpcyAzMQotUEFTUyB3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5USU1FT1VUX0VSUiBpcyAzMgotUEFTUyB3ZWJraXRJREJE
YXRhYmFzZUV4Y2VwdGlvbi5ERUFETE9DS19FUlIgaXMgMzMKK1BBU1Mgd2Via2l0SURCRGF0YWJh
c2VFeGNlcHRpb24uTk9OX1RSQU5TSUVOVF9FUlIgaXMgMgorUEFTUyB3ZWJraXRJREJEYXRhYmFz
ZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIGlzIDMKK1BBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uQ09OU1RSQUlOVF9FUlIgaXMgNAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5EQVRBX0VSUiBpcyA1CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExP
V0VEX0VSUiBpcyA2CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIg
aXMgNworUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMg
OAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5UUkFOU0lFTlRfRVJSIGlzIDkKK1BB
U1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVElNRU9VVF9FUlIgaXMgMTAKK1BBU1Mgd2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREVBRExPQ0tfRVJSIGlzIDExCiBQQVNTIHdlYmtpdElE
QlJlcXVlc3QuTE9BRElORyBpcyAxCiBQQVNTIHdlYmtpdElEQlJlcXVlc3QuRE9ORSBpcyAyCiBQ
QVNTIHdlYmtpdElEQkN1cnNvci5ORVhUIGlzIDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvY29uc3RhbnRzLmh0bWwKaW5kZXggNzkwOWUyNDc5ODNlM2ViYzY2NTIwMmM3M2Q0MGU2
ZDc4ZmU5OWZiNC4uMDNhZjYxYmM5ZDJiNWYwNmI5NzcyNGZhYzRhYzAxMWZlMDc3ODNhMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKQEAgLTE3LDE2
ICsxNywxNiBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogZnVuY3Rpb24gdGVz
dCgpCiB7CiAgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlVOS05PV05f
RVJSIiwgIjEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9O
X1RSQU5TSUVOVF9FUlIiLCAiMSIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4
Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIiwgIjIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0
YWJhc2VFeGNlcHRpb24uQ09OU1RSQUlOVF9FUlIiLCAiMyIpOwotICAgIHNob3VsZEJlKCJ3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5EQVRBX0VSUiIsICI0Iik7Ci0gICAgc2hvdWxkQmUoIndl
YmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExPV0VEX0VSUiIsICI1Iik7Ci0gICAgc2hv
dWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIiLCAiMTEiKTsKLSAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVDT1ZFUkFCTEVfRVJSIiwg
IjIxIik7Ci0gICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlRSQU5TSUVO
VF9FUlIiLCAiMzEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24u
VElNRU9VVF9FUlIiLCAiMzIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uREVBRExPQ0tfRVJSIiwgIjMzIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLk5PTl9UUkFOU0lFTlRfRVJSIiwgIjIiKTsKKyAgICBzaG91bGRCZSgid2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIsICIzIik7CisgICAgc2hvdWxk
QmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkNPTlNUUkFJTlRfRVJSIiwgIjQiKTsKKyAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIiLCAiNSIpOwor
ICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfQUxMT1dFRF9FUlIi
LCAiNiIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5TRVJJQUxf
RVJSIiwgIjciKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVD
T1ZFUkFCTEVfRVJSIiwgIjgiKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uVFJBTlNJRU5UX0VSUiIsICI5Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLlRJTUVPVVRfRVJSIiwgIjEwIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElE
QkRhdGFiYXNlRXhjZXB0aW9uLkRFQURMT0NLX0VSUiIsICIxMSIpOwogCiAgICAgc2hvdWxkQmUo
IndlYmtpdElEQlJlcXVlc3QuTE9BRElORyIsICIxIik7CiAgICAgc2hvdWxkQmUoIndlYmtpdElE
QlJlcXVlc3QuRE9ORSIsICIyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1l
eHBlY3RlZC50eHQKaW5kZXggNGU1ZTU2MjQwOGU4Njg2NDIzNzEzMGNkOWQ1YzRlMTczY2JmMTNi
ZC4uZTQ1ZmY3M2U4ZjlhYjRlMzhiZGY1N2FjZGI0YzA4MDg3Y2E3YWUwZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2JqZWN0c3Rv
cmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLWV4cGVjdGVkLnR4dApAQCAtMTIxLDcgKzEyMSw3IEBA
IFBBU1MgJ29uZXJyb3InIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTICdyZWFkeVN0YXRl
JyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBp
cyBldmVudC50YXJnZXQuRE9ORQogCi1QQVNTIGV2ZW50LmNvZGUgaXMgMgorUEFTUyBldmVudC5j
b2RlIGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9GT1VORF9FUlIKIFBBU1MgZXZl
bnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFtZScpIGlzIGZhbHNlCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5o
dG1sCmluZGV4IDVmNjE3Y2E0NDY1NDI3Y2EyN2QwMmFjNjE0OGIyYzcwNjFkODM2NjUuLmM1MzFk
Y2Y3YTQzZDY2Mzk3NmYyMGViYjBmNDdhOTAxNzgzYzI2YjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2Jq
ZWN0c3RvcmUuaHRtbApAQCAtMTEyLDcgKzExMiw3IEBAIGZ1bmN0aW9uIGdldFZhbHVlQWdhaW4o
KQogZnVuY3Rpb24gdmVyaWZ5RXJyb3IoKQogewogICAgIHZlcmlmeUVycm9yRXZlbnQoZXZlbnQp
OwotICAgIHNob3VsZEJlKCJldmVudC5jb2RlIiwgIjIiKTsKKyAgICBzaG91bGRCZSgiZXZlbnQu
Y29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIik7CiAgICAg
c2hvdWxkQmVGYWxzZSgiZXZlbnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFt
ZScpIik7CiAKICAgICBkb25lKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEyMzJjM2NjOGE0MjE4OTNlMjA0ZDZmYWY0ZDg3MGJkODg1
NGMwZWUuLjA0NTE0ZGZhOWFkNGQ0YmM5MTdiYWFiYTRjMTYzYTc5ZjEyY2ZmMWEgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MzAgQEAKKzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERC
IHJldHVybnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgSW5kZXhlZERCIGV4Y2VwdGlv
bnMgbmVlZCB0byBoYXZlIGFuIG9mZnNldCBzbyB0aGV5IGNhbgorICAgICAgICBiZSBkaXN0aW5n
dWlzaGVkIGZyb20gRE9NIGV4Y2VwdGlvbnMuICBXZSBhbHNvIG5lZWQgdG8KKyAgICAgICAgYWRk
IHN0cmluZ3MgZm9yIHRoZSB2YXJpb3VzIGV4Y2VwdGlvbnMuICBMYXN0bHksIG1ha2UKKyAgICAg
ICAgSURCRGF0YWJhc2VFeGNlcHRpb24gdXNlIHRoZSBjb21tb24gZXhjZXB0aW9uIGJhc2UgY2xh
c3MuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6c2V0RE9NRXhjZXB0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OnNldERPTUV4Y2VwdGlvbik6CisgICAg
ICAgICogZG9tL0V4Y2VwdGlvbkNvZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RXhjZXB0
aW9uQ29kZURlc2NyaXB0aW9uKToKKyAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29kZS5oOgorICAg
ICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oOgorICAgICAgICAoV2ViQ29yZTo6SURC
RGF0YWJhc2VFcnJvcjo6Y29kZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2Vw
dGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VFeGNlcHRpb246OmNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUV4Y2VwdGlvbjo6RXJyb3JDb2RlVG9FeGNl
cHRpb25Db2RlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlRXhjZXB0aW9uOjpJREJE
YXRhYmFzZUV4Y2VwdGlvbik6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlv
bi5pZGw6CisKIDIwMTAtMTItMDMgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUBpbmYudS1zemVnZWQu
aHU+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjczMjU0LgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCmluZGV4IDBkOTRiNDQxOGNkMWNjZmFhMmRiMzU4NTZi
ZGIwNGNlMmQ3MDgzMWUuLjI0ODdiNTA4YTg4M2M4NjZiM2ZiODM5NDc2MjAwZjMxN2Y0NGI0OTcg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKQEAgLTg2LDYgKzg2LDExIEBACiAj
aW5jbHVkZSAiSlNGaWxlRXhjZXB0aW9uLmgiCiAjZW5kaWYKIAorI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uRXhjZXB0aW9uLmgiCisj
aW5jbHVkZSAiSlNJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVz
cGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTY1MCw2ICs2NTUsMTEgQEAgdm9p
ZCBzZXRET01FeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25Db2RlIGVjKQogICAg
ICAgICAgICAgZXJyb3JPYmplY3QgPSB0b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgRmlsZUV4Y2Vw
dGlvbjo6Y3JlYXRlKGRlc2NyaXB0aW9uKSk7CiAgICAgICAgICAgICBicmVhazsKICNlbmRpZgor
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorICAgICAgICBjYXNlIElEQkRhdGFiYXNlRXhj
ZXB0aW9uVHlwZToKKyAgICAgICAgICAgIGVycm9yT2JqZWN0ID0gdG9KUyhleGVjLCBnbG9iYWxP
YmplY3QsIElEQkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAgICAg
ICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgfQogCiAgICAgQVNTRVJUKGVycm9yT2JqZWN0KTsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDM1ZGEwMDhhNzY3MGJhYzEwNTVmMzk5ZjcwODZl
ZDg0NmEyNDVhM2MuLjFjMWY2NDIwMDQ3MDg5ODlmZjk0MGM3MjMyMDhmNjAwZjA1OWJlNDcgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUgIkRvY3Vt
ZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlckNs
aWVudC5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAiSURC
RmFjdG9yeUJhY2tlbmRJbnRlcmZhY2UuaCIKICNpbmNsdWRlICJJREJQZW5kaW5nVHJhbnNhY3Rp
b25Nb25pdG9yLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC02
NCw2ICs2NSwxMCBAQAogI2luY2x1ZGUgIldvcmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJXb3Jr
ZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuaCIKIAorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQorI2luY2x1ZGUgIlY4SURCRGF0YWJhc2VFeGNlcHRpb24uaCIKKyNlbmRpZgorCiAjaWYgRU5B
QkxFKFNWRykKICNpbmNsdWRlICJWOFNWR0V4Y2VwdGlvbi5oIgogI2VuZGlmCkBAIC02NzMsNiAr
Njc4LDExIEBAIHZvaWQgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGludCBleGNlcHRpb25Db2Rl
KQogICAgICAgICBleGNlcHRpb24gPSB0b1Y4KEZpbGVFeGNlcHRpb246OmNyZWF0ZShkZXNjcmlw
dGlvbikpOwogICAgICAgICBicmVhazsKICNlbmRpZgorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQorICAgIGNhc2UgSURCRGF0YWJhc2VFeGNlcHRpb25UeXBlOgorICAgICAgICBleGNlcHRp
b24gPSB0b1Y4KElEQkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAg
ICAgICAgYnJlYWs7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmNw
cCBiL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCmluZGV4IGFkNGZiNmY0MWYwNmNmYTll
MmVmMTBjNmY1ODRjOWE3ZDhkZDNmY2YuLjkxZDJiOGFkOTMwNDVkMjk5OWY5NmU3NTEwMmQwNTEw
OTAxZDNiNmQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCisrKyBi
L1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVk
ZSAiRXhjZXB0aW9uQ29kZS5oIgogCiAjaW5jbHVkZSAiRXZlbnRFeGNlcHRpb24uaCIKKyNpbmNs
dWRlICJJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIlJhbmdlRXhjZXB0aW9uLmgi
CiAjaW5jbHVkZSAiWE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaCIKIApAQCAtMjA5LDYgKzIxMCwz
NiBAQCBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZmlsZUV4Y2VwdGlvbkRlc2NyaXB0aW9uc1td
ID0gewogfTsKICNlbmRpZgogCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCitzdGF0aWMg
Y29uc3QgY2hhciogY29uc3QgaWRiRGF0YWJhc2VFeGNlcHRpb25OYW1lc1tdID0geworICAgICJV
TktOT1dOX0VSUiIsCisgICAgIk5PTl9UUkFOU0lFTlRfRVJSIiwKKyAgICAiTk9UX0ZPVU5EX0VS
UiIsCisgICAgIkNPTlNUUkFJTlRfRVJSIiwKKyAgICAiREFUQV9FUlIiLAorICAgICJOT1RfQUxM
T1dFRF9FUlIiLAorICAgICJTRVJJQUxfRVJSIiwKKyAgICAiUkVDT1ZFUkFCTEVfRVJSIiwKKyAg
ICAiVFJBTlNJRU5UX0VSUiIsCisgICAgIlRJTUVPVVRfRVJSIiwKKyAgICAiREVBRExPQ0tfRVJS
IgorfTsKKworc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGlkYkRhdGFiYXNlRXhjZXB0aW9uRGVz
Y3JpcHRpb25zW10gPSB7CisgICAgIkFuIHVua25vd24gZXJyb3Igb2NjdXJyZWQgd2l0aGluIElu
ZGV4ZWQgRGF0YWJhc2UuIiwKKyAgICAiTk9OX1RSQU5TSUVOVF9FUlIiLCAvLyBGSVhNRTogV3Jp
dGUgYSBiZXR0ZXIgbWVzc2FnZSBpZiBpdCdzIGV2ZXIgcG9zc2libGUgdGhpcyBpcyB0aHJvd24u
CisgICAgIkEgcmVjb3JkL2luZGV4L29iamVjdFN0b3JlIGJ5IHRoZSBuYW1lIHlvdSByZXF1ZXN0
ZWQgZG9lcyBub3QgZXhpc3QuIiwKKyAgICAiWW91ciByZXF1ZXN0IGNhbm5vdCBiZSBjb21wbGV0
ZWQgZHVlIHRvIGEgZmFpbGVkIGNvbnN0cmFpbnQuIiwKKyAgICAiVGhlIGRhdGEgeW91IHByb3Zp
ZGVkIGRvZXMgbm90IG1lZXQgdGhlIHJlcXVpcmVtZW50cyBvZiB0aGUgZnVuY3Rpb24uIiwKKyAg
ICAiVGhpcyBmdW5jdGlvbiBpcyBub3QgYWxsb3dlZCB0byBiZSBjYWxsZWQgaW4gdGhpcyBjb250
ZXh0IiwKKyAgICAiVGhlIGRhdGEgc3VwcGxpZWQgY2Fubm90IGJlIHNlcmlhbGl6ZWQgYWNjb3Jk
aW5nIHRvIHRoZSBzdHJ1Y3R1cmVkIGNsb25pbmcgYWxnb3JpdGhtIiwKKyAgICAiUkVDT1ZFUkFC
TEVfRVJSIiwgLy8gRklYTUU6IFRoaXMgaXNuJ3QgZXZlbiB1c2VkLgorICAgICJUUkFOU0lFTlRf
RVJSIiwgLy8gRklYTUU6IFRoaXMgaXNuJ3QgZXZlbiB1c2VkLgorICAgICJUSU1FT1VUX0VSUiIs
IC8vIFRoaXMgY2FuJ3QgYmUgdGhyb3duLgorICAgICJERUFETE9DS19FUlIiIC8vIFRoaXMgY2Fu
J3QgYmUgdGhyb3duLgorfTsKKyNlbmRpZgorCiB2b2lkIGdldEV4Y2VwdGlvbkNvZGVEZXNjcmlw
dGlvbihFeGNlcHRpb25Db2RlIGVjLCBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24mIGRlc2NyaXB0
aW9uKQogewogICAgIEFTU0VSVChlYyk7CkBAIC0yODcsNiArMzE4LDE2IEBAIHZvaWQgZ2V0RXhj
ZXB0aW9uQ29kZURlc2NyaXB0aW9uKEV4Y2VwdGlvbkNvZGUgZWMsIEV4Y2VwdGlvbkNvZGVEZXNj
cmlwdGlvbiYgZGVzCiAgICAgICAgIG5hbWVUYWJsZVNpemUgPSBXVEZfQVJSQVlfTEVOR1RIKGZp
bGVFeGNlcHRpb25OYW1lcyk7CiAgICAgICAgIG5hbWVUYWJsZU9mZnNldCA9IEZpbGVFeGNlcHRp
b246Ok5PVF9GT1VORF9FUlI7CiAjZW5kaWYKKyNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
KyAgICB9IGVsc2UgaWYgKGNvZGUgPj0gSURCRGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFiYXNl
RXhjZXB0aW9uT2Zmc2V0ICYmIGNvZGUgPD0gSURCRGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFi
YXNlRXhjZXB0aW9uTWF4KSB7CisgICAgICAgIHR5cGUgPSBJREJEYXRhYmFzZUV4Y2VwdGlvblR5
cGU7CisgICAgICAgIHR5cGVOYW1lID0gIkRPTSBJREJEYXRhYmFzZSI7CisgICAgICAgIGNvZGUg
LT0gSURCRGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0OworICAg
ICAgICBuYW1lVGFibGUgPSBpZGJEYXRhYmFzZUV4Y2VwdGlvbk5hbWVzOworICAgICAgICBkZXNj
cmlwdGlvblRhYmxlID0gaWRiRGF0YWJhc2VFeGNlcHRpb25EZXNjcmlwdGlvbnM7CisgICAgICAg
IG5hbWVUYWJsZVNpemUgPSBXVEZfQVJSQVlfTEVOR1RIKGlkYkRhdGFiYXNlRXhjZXB0aW9uTmFt
ZXMpOworICAgICAgICBuYW1lVGFibGVPZmZzZXQgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbjo6VU5L
Tk9XTl9FUlI7CisjZW5kaWYKICAgICB9IGVsc2UgewogICAgICAgICB0eXBlID0gRE9NRXhjZXB0
aW9uVHlwZTsKICAgICAgICAgdHlwZU5hbWUgPSAiRE9NIjsKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
ZG9tL0V4Y2VwdGlvbkNvZGUuaCBiL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaAppbmRleCA2
ZWE5ZjdkMDA0YmFkNGRhZjFhYmE1NjJmNWVmZmUwMmQzN2NmOTUzLi5kZDk3NmM3YzkxOTVjM2Ri
NjI2MmQ4Zjg3ZTFhNjBlZjYyN2U3MmM1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9FeGNlcHRp
b25Db2RlLmgKKysrIGIvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oCkBAIC04NCw2ICs4NCw5
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBFTkFCTEUoQkxPQikgfHwgRU5BQkxFKEZJTEVf
U1lTVEVNKQogICAgICAgICAsIEZpbGVFeGNlcHRpb25UeXBlCiAjZW5kaWYKKyNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKKyAgICAgICAgLCBJREJEYXRhYmFzZUV4Y2VwdGlvblR5cGUKKyNl
bmRpZgogICAgIH07CiAKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNl
RXJyb3IuaCBiL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUVycm9yLmgKaW5kZXggYzM0NWZm
OWJhM2YzM2ZjYzk1MmEzYjM3YmM3MTEzYzRkZGRjZGI2YS4uNjhlODIzMWYxYzc3ODI3M2JmYzM4
YjBhODFjNGJkMzY4MWI3ODA4YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFi
YXNlRXJyb3IuaAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oCkBAIC0y
Niw2ICsyNiw3IEBACiAjaWZuZGVmIElEQkRhdGFiYXNlRXJyb3JfaAogI2RlZmluZSBJREJEYXRh
YmFzZUVycm9yX2gKIAorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uLmgiCiAjaW5jbHVk
ZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNpbmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1
ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00Miw3ICs0Myw3IEBAIHB1YmxpYzoKICAgICB9CiAg
ICAgfklEQkRhdGFiYXNlRXJyb3IoKSB7IH0KIAotICAgIHVuc2lnbmVkIHNob3J0IGNvZGUoKSBj
b25zdCB7IHJldHVybiBtX2NvZGU7IH0KKyAgICB1bnNpZ25lZCBzaG9ydCBjb2RlKCkgY29uc3Qg
eyByZXR1cm4gbV9jb2RlIC0gSURCRGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFiYXNlRXhjZXB0
aW9uT2Zmc2V0OyB9CiAgICAgdm9pZCBzZXRDb2RlKHVuc2lnbmVkIHNob3J0IHZhbHVlKSB7IG1f
Y29kZSA9IHZhbHVlOyB9CiAgICAgY29uc3QgU3RyaW5nJiBtZXNzYWdlKCkgY29uc3QgeyByZXR1
cm4gbV9tZXNzYWdlOyB9CiAgICAgdm9pZCBzZXRNZXNzYWdlKGNvbnN0IFN0cmluZyYgdmFsdWUp
IHsgbV9tZXNzYWdlID0gdmFsdWU7IH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJE
YXRhYmFzZUV4Y2VwdGlvbi5oIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9u
LmgKaW5kZXggOTQ1NzczYzVlNmMyZGE1NGY3MDk0NDJiY2NiYWFjZjdiNjNmOTJiMi4uOTM2YjA1
YTA0YjMzNGQ0MjA4MGViZmQ0NDVkYmZlOGU4MzlmZWRhMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmgKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRh
dGFiYXNlRXhjZXB0aW9uLmgKQEAgLTI2LDQ2ICsyNiw0OCBAQAogI2lmbmRlZiBJREJEYXRhYmFz
ZUV4Y2VwdGlvbl9oCiAjZGVmaW5lIElEQkRhdGFiYXNlRXhjZXB0aW9uX2gKIAotI2luY2x1ZGUg
IlBsYXRmb3JtU3RyaW5nLmgiCi0jaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRl
IDx3dGYvUmVmQ291bnRlZC5oPgotCiAjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAKKyNp
bmNsdWRlICJFeGNlcHRpb25CYXNlLmgiCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3Mg
SURCRGF0YWJhc2VFeGNlcHRpb24gOiBwdWJsaWMgUmVmQ291bnRlZDxJREJEYXRhYmFzZUV4Y2Vw
dGlvbj4geworY2xhc3MgSURCRGF0YWJhc2VFeGNlcHRpb24gOiBwdWJsaWMgRXhjZXB0aW9uQmFz
ZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VFeGNlcHRpb24+
IGNyZWF0ZSgpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8SURCRGF0YWJhc2VFeGNlcHRpb24+IGNy
ZWF0ZShjb25zdCBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uKQogICAgIHsK
LSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJREJEYXRhYmFzZUV4Y2VwdGlvbigpKTsKKyAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJREJEYXRhYmFzZUV4Y2VwdGlvbihkZXNjcmlwdGlv
bikpOwogICAgIH0KLSAgICB+SURCRGF0YWJhc2VFeGNlcHRpb24oKSB7IH0KIAotICAgIGVudW0g
RXJyb3JDb2RlIHsKLSAgICAgICAgVU5LTk9XTl9FUlIgPSAxLAotICAgICAgICBOT05fVFJBTlNJ
RU5UX0VSUiA9IDEsCi0gICAgICAgIE5PVF9GT1VORF9FUlIgPSAyLAotICAgICAgICBDT05TVFJB
SU5UX0VSUiA9IDMsCi0gICAgICAgIERBVEFfRVJSID0gNCwKLSAgICAgICAgTk9UX0FMTE9XRURf
RVJSID0gNSwKLSAgICAgICAgU0VSSUFMX0VSUiA9IDExLAotICAgICAgICBSRUNPVkVSQUJMRV9F
UlIgPSAyMSwKLSAgICAgICAgVFJBTlNJRU5UX0VSUiA9IDMxLAotICAgICAgICBUSU1FT1VUX0VS
UiA9IDMyLAotICAgICAgICBERUFETE9DS19FUlIgPSAzMworICAgIHN0YXRpYyBjb25zdCBpbnQg
SURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgPSAxMjAwOworICAgIHN0YXRpYyBjb25zdCBpbnQg
SURCRGF0YWJhc2VFeGNlcHRpb25NYXggPSAxMjk5OworCisgICAgZW51bSBJREJEYXRhYmFzZUV4
Y2VwdGlvbkNvZGUgeworICAgICAgICBVTktOT1dOX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9u
T2Zmc2V0ICsgMSwKKyAgICAgICAgTk9OX1RSQU5TSUVOVF9FUlIgPSBJREJEYXRhYmFzZUV4Y2Vw
dGlvbk9mZnNldCArIDIsCisgICAgICAgIE5PVF9GT1VORF9FUlIgPSBJREJEYXRhYmFzZUV4Y2Vw
dGlvbk9mZnNldCArIDMsCisgICAgICAgIENPTlNUUkFJTlRfRVJSID0gSURCRGF0YWJhc2VFeGNl
cHRpb25PZmZzZXQgKyA0LAorICAgICAgICBEQVRBX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9u
T2Zmc2V0ICsgNSwKKyAgICAgICAgTk9UX0FMTE9XRURfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRp
b25PZmZzZXQgKyA2LAorICAgICAgICBTRVJJQUxfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25P
ZmZzZXQgKyA3LAorICAgICAgICBSRUNPVkVSQUJMRV9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlv
bk9mZnNldCArIDgsCisgICAgICAgIFRSQU5TSUVOVF9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlv
bk9mZnNldCArIDksCisgICAgICAgIFRJTUVPVVRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25P
ZmZzZXQgKyAxMCwKKyAgICAgICAgREVBRExPQ0tfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25P
ZmZzZXQgKyAxMQogICAgIH07Ci0gICAKLSAgICB1bnNpZ25lZCBzaG9ydCBjb2RlKCkgY29uc3Qg
eyByZXR1cm4gbV9jb2RlOyB9Ci0gICAgdm9pZCBzZXRDb2RlKHVuc2lnbmVkIHNob3J0IHZhbHVl
KSB7IG1fY29kZSA9IHZhbHVlOyB9Ci0gICAgU3RyaW5nIG1lc3NhZ2UoKSBjb25zdCB7IHJldHVy
biBtX21lc3NhZ2U7IH0KLSAgICB2b2lkIHNldE1lc3NhZ2UoY29uc3QgU3RyaW5nJiB2YWx1ZSkg
eyBtX21lc3NhZ2UgPSB2YWx1ZTsgfQogCi1wcml2YXRlOgotICAgIElEQkRhdGFiYXNlRXhjZXB0
aW9uKCkgeyB9CisgICAgc3RhdGljIGludCBFcnJvckNvZGVUb0V4Y2VwdGlvbkNvZGUoaW50IGVy
cm9yQ29kZSkKKyAgICB7CisgICAgICAgIGlmICghZXJyb3JDb2RlKQorICAgICAgICAgICAgcmV0
dXJuIDA7CisgICAgICAgIHJldHVybiBlcnJvckNvZGUgKyBJREJEYXRhYmFzZUV4Y2VwdGlvbk9m
ZnNldDsKKyAgICB9CiAKLSAgICB1bnNpZ25lZCBzaG9ydCBtX2NvZGU7Ci0gICAgU3RyaW5nIG1f
bWVzc2FnZTsKK3ByaXZhdGU6CisgICAgSURCRGF0YWJhc2VFeGNlcHRpb24oY29uc3QgRXhjZXB0
aW9uQ29kZURlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbikKKyAgICAgICAgOiBFeGNlcHRpb25CYXNl
KGRlc2NyaXB0aW9uKQorICAgIHsKKyAgICB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VFeGNlcHRpb24uaWRsIGIv
V2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmlkbAppbmRleCAxZjE1ZmMwNjQ3
ZDBjYjNlNTJmMGJjNjcwYzMyMjEyM2Y5MGFiNzA4Li5hNTZmNGM3ZjE3YWI3MDg0ZjdkYjgwMTZl
ZGNkMzJmODFlZDAxMTkwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VF
eGNlcHRpb24uaWRsCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlvbi5p
ZGwKQEAgLTI2LDIzICsyNiwzMCBAQAogbW9kdWxlIHN0b3JhZ2UgewogCiAgICAgaW50ZXJmYWNl
IFsKLSAgICAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRQorICAgICAgICBDb25kaXRp
b25hbD1JTkRFWEVEX0RBVEFCQVNFLAorICAgICAgICBEb250Q2hlY2tFbnVtcwogICAgIF0gSURC
RGF0YWJhc2VFeGNlcHRpb24gewotICAgICAgICAvLyBGSVhNRTogVGhlc2UgZXJyb3IgY29kZXMg
Y29uZmxpY3Qgd2l0aCBvdGhlcnMuCi0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFVOS05P
V05fRVJSID0gMTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9OX1RSQU5TSUVOVF9F
UlIgPSAxOwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBOT1RfRk9VTkRfRVJSID0gMjsK
LSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ09OU1RSQUlOVF9FUlIgPSAzOwotICAgICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCBEQVRBX0VSUiA9IDQ7Ci0gICAgICAgIGNvbnN0IHVuc2ln
bmVkIHNob3J0IE5PVF9BTExPV0VEX0VSUiA9IDU7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNo
b3J0IFNFUklBTF9FUlIgPSAxMTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgUkVDT1ZF
UkFCTEVfRVJSID0gMjE7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFRSQU5TSUVOVF9F
UlIgPSAzMTsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgVElNRU9VVF9FUlIgPSAzMjsK
LSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgREVBRExPQ0tfRVJSID0gMzM7CiAKLSAgICAg
ICAgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0IGNvZGU7Ci0gICAgICAgIGF0dHJpYnV0ZSBET01T
dHJpbmcgbWVzc2FnZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0
ICAgY29kZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgbmFt
ZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgbWVzc2FnZTsK
KworI2lmIGRlZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQ
VAorICAgICAgICAvLyBPdmVycmlkZSBpbiBhIE1vemlsbGEgY29tcGF0aWJsZSBmb3JtYXQKKyAg
ICAgICAgW0RvbnRFbnVtXSBET01TdHJpbmcgdG9TdHJpbmcoKTsKKyNlbmRpZgorCisgICAgICAg
IGNvbnN0IHVuc2lnbmVkIHNob3J0IFVOS05PV05fRVJSID0gMTsKKyAgICAgICAgY29uc3QgdW5z
aWduZWQgc2hvcnQgTk9OX1RSQU5TSUVOVF9FUlIgPSAyOworICAgICAgICBjb25zdCB1bnNpZ25l
ZCBzaG9ydCBOT1RfRk9VTkRfRVJSID0gMzsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQg
Q09OU1RSQUlOVF9FUlIgPSA0OworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBEQVRBX0VS
UiA9IDU7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE5PVF9BTExPV0VEX0VSUiA9IDY7
CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNFUklBTF9FUlIgPSA3OworICAgICAgICBj
b25zdCB1bnNpZ25lZCBzaG9ydCBSRUNPVkVSQUJMRV9FUlIgPSA4OworICAgICAgICBjb25zdCB1
bnNpZ25lZCBzaG9ydCBUUkFOU0lFTlRfRVJSID0gOTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQg
c2hvcnQgVElNRU9VVF9FUlIgPSAxMDsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgREVB
RExPQ0tfRVJSID0gMTE7CiAgICAgfTsKIAogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75898</attachid>
            <date>2010-12-08 06:50:28 -0800</date>
            <delta_ts>2010-12-08 10:02:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50632-20101208145025.patch</filename>
            <type>text/plain</type>
            <size>17736</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZGY5NjM0YmE0MDhhZmViOGMyNTQ2MDgyZDI0ZjgxNTEzMGVkNTlmLi43YTczZTk5
NTY3NDk0ODM4ODM1Mzg3ODYwZjI2OWU3NDAxMDY2YTdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERCIHJldHVy
bnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jb25z
dGFudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50
cy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9i
amVjdHN0b3JlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmpl
Y3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5odG1sOgorCiAyMDEwLTEyLTAzICBBYmhpc2hlayBB
cnlhICA8aW5mZXJub0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jb25zdGFudHMtZXhwZWN0ZWQudHh0
CmluZGV4IGVhZDA5MzdlYzYyYWMzZWY0MzFjMjUwYzgwYzQyNmVlODA2YWU2ZTAuLjExMGE2OGQ4
MzQ1ZmJmNDg3ZTI4MTU1MGE3MmFkMDQzYWY2OGQyOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwx
NiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiAKIFBBU1Mgd2Via2l0SURCRGF0YWJhc2VF
eGNlcHRpb24uVU5LTk9XTl9FUlIgaXMgMQotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5OT05fVFJBTlNJRU5UX0VSUiBpcyAxCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9u
Lk5PVF9GT1VORF9FUlIgaXMgMgotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5DT05T
VFJBSU5UX0VSUiBpcyAzCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkRBVEFfRVJS
IGlzIDQKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0FMTE9XRURfRVJSIGlz
IDUKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uU0VSSUFMX0VSUiBpcyAxMQotUEFT
UyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMgMjEKLVBBU1Mg
d2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVFJBTlNJRU5UX0VSUiBpcyAzMQotUEFTUyB3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5USU1FT1VUX0VSUiBpcyAzMgotUEFTUyB3ZWJraXRJREJE
YXRhYmFzZUV4Y2VwdGlvbi5ERUFETE9DS19FUlIgaXMgMzMKK1BBU1Mgd2Via2l0SURCRGF0YWJh
c2VFeGNlcHRpb24uTk9OX1RSQU5TSUVOVF9FUlIgaXMgMgorUEFTUyB3ZWJraXRJREJEYXRhYmFz
ZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIGlzIDMKK1BBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uQ09OU1RSQUlOVF9FUlIgaXMgNAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5EQVRBX0VSUiBpcyA1CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExP
V0VEX0VSUiBpcyA2CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIg
aXMgNworUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMg
OAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5UUkFOU0lFTlRfRVJSIGlzIDkKK1BB
U1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVElNRU9VVF9FUlIgaXMgMTAKK1BBU1Mgd2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREVBRExPQ0tfRVJSIGlzIDExCiBQQVNTIHdlYmtpdElE
QlJlcXVlc3QuTE9BRElORyBpcyAxCiBQQVNTIHdlYmtpdElEQlJlcXVlc3QuRE9ORSBpcyAyCiBQ
QVNTIHdlYmtpdElEQkN1cnNvci5ORVhUIGlzIDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvY29uc3RhbnRzLmh0bWwKaW5kZXggNzkwOWUyNDc5ODNlM2ViYzY2NTIwMmM3M2Q0MGU2
ZDc4ZmU5OWZiNC4uMDNhZjYxYmM5ZDJiNWYwNmI5NzcyNGZhYzRhYzAxMWZlMDc3ODNhMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKQEAgLTE3LDE2
ICsxNywxNiBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogZnVuY3Rpb24gdGVz
dCgpCiB7CiAgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlVOS05PV05f
RVJSIiwgIjEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9O
X1RSQU5TSUVOVF9FUlIiLCAiMSIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4
Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIiwgIjIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0
YWJhc2VFeGNlcHRpb24uQ09OU1RSQUlOVF9FUlIiLCAiMyIpOwotICAgIHNob3VsZEJlKCJ3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5EQVRBX0VSUiIsICI0Iik7Ci0gICAgc2hvdWxkQmUoIndl
YmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExPV0VEX0VSUiIsICI1Iik7Ci0gICAgc2hv
dWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIiLCAiMTEiKTsKLSAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVDT1ZFUkFCTEVfRVJSIiwg
IjIxIik7Ci0gICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlRSQU5TSUVO
VF9FUlIiLCAiMzEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24u
VElNRU9VVF9FUlIiLCAiMzIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uREVBRExPQ0tfRVJSIiwgIjMzIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLk5PTl9UUkFOU0lFTlRfRVJSIiwgIjIiKTsKKyAgICBzaG91bGRCZSgid2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIsICIzIik7CisgICAgc2hvdWxk
QmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkNPTlNUUkFJTlRfRVJSIiwgIjQiKTsKKyAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIiLCAiNSIpOwor
ICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfQUxMT1dFRF9FUlIi
LCAiNiIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5TRVJJQUxf
RVJSIiwgIjciKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVD
T1ZFUkFCTEVfRVJSIiwgIjgiKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uVFJBTlNJRU5UX0VSUiIsICI5Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLlRJTUVPVVRfRVJSIiwgIjEwIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElE
QkRhdGFiYXNlRXhjZXB0aW9uLkRFQURMT0NLX0VSUiIsICIxMSIpOwogCiAgICAgc2hvdWxkQmUo
IndlYmtpdElEQlJlcXVlc3QuTE9BRElORyIsICIxIik7CiAgICAgc2hvdWxkQmUoIndlYmtpdElE
QlJlcXVlc3QuRE9ORSIsICIyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1l
eHBlY3RlZC50eHQKaW5kZXggNGU1ZTU2MjQwOGU4Njg2NDIzNzEzMGNkOWQ1YzRlMTczY2JmMTNi
ZC4uZTQ1ZmY3M2U4ZjlhYjRlMzhiZGY1N2FjZGI0YzA4MDg3Y2E3YWUwZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2JqZWN0c3Rv
cmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLWV4cGVjdGVkLnR4dApAQCAtMTIxLDcgKzEyMSw3IEBA
IFBBU1MgJ29uZXJyb3InIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTICdyZWFkeVN0YXRl
JyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBp
cyBldmVudC50YXJnZXQuRE9ORQogCi1QQVNTIGV2ZW50LmNvZGUgaXMgMgorUEFTUyBldmVudC5j
b2RlIGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9GT1VORF9FUlIKIFBBU1MgZXZl
bnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFtZScpIGlzIGZhbHNlCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5o
dG1sCmluZGV4IDVmNjE3Y2E0NDY1NDI3Y2EyN2QwMmFjNjE0OGIyYzcwNjFkODM2NjUuLmM1MzFk
Y2Y3YTQzZDY2Mzk3NmYyMGViYjBmNDdhOTAxNzgzYzI2YjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2Jq
ZWN0c3RvcmUuaHRtbApAQCAtMTEyLDcgKzExMiw3IEBAIGZ1bmN0aW9uIGdldFZhbHVlQWdhaW4o
KQogZnVuY3Rpb24gdmVyaWZ5RXJyb3IoKQogewogICAgIHZlcmlmeUVycm9yRXZlbnQoZXZlbnQp
OwotICAgIHNob3VsZEJlKCJldmVudC5jb2RlIiwgIjIiKTsKKyAgICBzaG91bGRCZSgiZXZlbnQu
Y29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIik7CiAgICAg
c2hvdWxkQmVGYWxzZSgiZXZlbnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFt
ZScpIik7CiAKICAgICBkb25lKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEyMzJjM2NjOGE0MjE4OTNlMjA0ZDZmYWY0ZDg3MGJkODg1
NGMwZWUuLjA0NTE0ZGZhOWFkNGQ0YmM5MTdiYWFiYTRjMTYzYTc5ZjEyY2ZmMWEgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MzAgQEAKKzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERC
IHJldHVybnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgSW5kZXhlZERCIGV4Y2VwdGlv
bnMgbmVlZCB0byBoYXZlIGFuIG9mZnNldCBzbyB0aGV5IGNhbgorICAgICAgICBiZSBkaXN0aW5n
dWlzaGVkIGZyb20gRE9NIGV4Y2VwdGlvbnMuICBXZSBhbHNvIG5lZWQgdG8KKyAgICAgICAgYWRk
IHN0cmluZ3MgZm9yIHRoZSB2YXJpb3VzIGV4Y2VwdGlvbnMuICBMYXN0bHksIG1ha2UKKyAgICAg
ICAgSURCRGF0YWJhc2VFeGNlcHRpb24gdXNlIHRoZSBjb21tb24gZXhjZXB0aW9uIGJhc2UgY2xh
c3MuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6c2V0RE9NRXhjZXB0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OnNldERPTUV4Y2VwdGlvbik6CisgICAg
ICAgICogZG9tL0V4Y2VwdGlvbkNvZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RXhjZXB0
aW9uQ29kZURlc2NyaXB0aW9uKToKKyAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29kZS5oOgorICAg
ICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oOgorICAgICAgICAoV2ViQ29yZTo6SURC
RGF0YWJhc2VFcnJvcjo6Y29kZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2Vw
dGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VFeGNlcHRpb246OmNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUV4Y2VwdGlvbjo6RXJyb3JDb2RlVG9FeGNl
cHRpb25Db2RlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlRXhjZXB0aW9uOjpJREJE
YXRhYmFzZUV4Y2VwdGlvbik6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlv
bi5pZGw6CisKIDIwMTAtMTItMDMgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUBpbmYudS1zemVnZWQu
aHU+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjczMjU0LgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCmluZGV4IDBkOTRiNDQxOGNkMWNjZmFhMmRiMzU4NTZi
ZGIwNGNlMmQ3MDgzMWUuLjI0ODdiNTA4YTg4M2M4NjZiM2ZiODM5NDc2MjAwZjMxN2Y0NGI0OTcg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKQEAgLTg2LDYgKzg2LDExIEBACiAj
aW5jbHVkZSAiSlNGaWxlRXhjZXB0aW9uLmgiCiAjZW5kaWYKIAorI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uRXhjZXB0aW9uLmgiCisj
aW5jbHVkZSAiSlNJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVz
cGFjZSBKU0M7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTY1MCw2ICs2NTUsMTEgQEAgdm9p
ZCBzZXRET01FeGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25Db2RlIGVjKQogICAg
ICAgICAgICAgZXJyb3JPYmplY3QgPSB0b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgRmlsZUV4Y2Vw
dGlvbjo6Y3JlYXRlKGRlc2NyaXB0aW9uKSk7CiAgICAgICAgICAgICBicmVhazsKICNlbmRpZgor
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorICAgICAgICBjYXNlIElEQkRhdGFiYXNlRXhj
ZXB0aW9uVHlwZToKKyAgICAgICAgICAgIGVycm9yT2JqZWN0ID0gdG9KUyhleGVjLCBnbG9iYWxP
YmplY3QsIElEQkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAgICAg
ICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgfQogCiAgICAgQVNTRVJUKGVycm9yT2JqZWN0KTsK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3JlL2Jp
bmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDM1ZGEwMDhhNzY3MGJhYzEwNTVmMzk5ZjcwODZl
ZDg0NmEyNDVhM2MuLjFjMWY2NDIwMDQ3MDg5ODlmZjk0MGM3MjMyMDhmNjAwZjA1OWJlNDcgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9i
aW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUgIkRvY3Vt
ZW50TG9hZGVyLmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlckNs
aWVudC5oIgorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAiSURC
RmFjdG9yeUJhY2tlbmRJbnRlcmZhY2UuaCIKICNpbmNsdWRlICJJREJQZW5kaW5nVHJhbnNhY3Rp
b25Nb25pdG9yLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC02
NCw2ICs2NSwxMCBAQAogI2luY2x1ZGUgIldvcmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJXb3Jr
ZXJDb250ZXh0RXhlY3V0aW9uUHJveHkuaCIKIAorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQorI2luY2x1ZGUgIlY4SURCRGF0YWJhc2VFeGNlcHRpb24uaCIKKyNlbmRpZgorCiAjaWYgRU5B
QkxFKFNWRykKICNpbmNsdWRlICJWOFNWR0V4Y2VwdGlvbi5oIgogI2VuZGlmCkBAIC02NzMsNiAr
Njc4LDExIEBAIHZvaWQgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGludCBleGNlcHRpb25Db2Rl
KQogICAgICAgICBleGNlcHRpb24gPSB0b1Y4KEZpbGVFeGNlcHRpb246OmNyZWF0ZShkZXNjcmlw
dGlvbikpOwogICAgICAgICBicmVhazsKICNlbmRpZgorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQorICAgIGNhc2UgSURCRGF0YWJhc2VFeGNlcHRpb25UeXBlOgorICAgICAgICBleGNlcHRp
b24gPSB0b1Y4KElEQkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAg
ICAgICAgYnJlYWs7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKICAgICB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmNw
cCBiL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCmluZGV4IGFkNGZiNmY0MWYwNmNmYTll
MmVmMTBjNmY1ODRjOWE3ZDhkZDNmY2YuLmUzNjViNTBkZjZlMzIwY2NkNjMwMzIwZWNjMTM3N2Fj
N2M0OGMyMDggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCisrKyBi
L1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVk
ZSAiRXhjZXB0aW9uQ29kZS5oIgogCiAjaW5jbHVkZSAiRXZlbnRFeGNlcHRpb24uaCIKKyNpbmNs
dWRlICJJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIlJhbmdlRXhjZXB0aW9uLmgi
CiAjaW5jbHVkZSAiWE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaCIKIApAQCAtMjA5LDYgKzIxMCwz
NiBAQCBzdGF0aWMgY29uc3QgY2hhciogY29uc3QgZmlsZUV4Y2VwdGlvbkRlc2NyaXB0aW9uc1td
ID0gewogfTsKICNlbmRpZgogCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCitzdGF0aWMg
Y29uc3QgY2hhciogY29uc3QgaWRiRGF0YWJhc2VFeGNlcHRpb25OYW1lc1tdID0geworICAgICJV
TktOT1dOX0VSUiIsCisgICAgIk5PTl9UUkFOU0lFTlRfRVJSIiwKKyAgICAiTk9UX0ZPVU5EX0VS
UiIsCisgICAgIkNPTlNUUkFJTlRfRVJSIiwKKyAgICAiREFUQV9FUlIiLAorICAgICJOT1RfQUxM
T1dFRF9FUlIiLAorICAgICJTRVJJQUxfRVJSIiwKKyAgICAiUkVDT1ZFUkFCTEVfRVJSIiwKKyAg
ICAiVFJBTlNJRU5UX0VSUiIsCisgICAgIlRJTUVPVVRfRVJSIiwKKyAgICAiREVBRExPQ0tfRVJS
IgorfTsKKworc3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGlkYkRhdGFiYXNlRXhjZXB0aW9uRGVz
Y3JpcHRpb25zW10gPSB7CisgICAgIkFuIHVua25vd24gZXJyb3Igb2NjdXJyZWQgd2l0aGluIElu
ZGV4ZWQgRGF0YWJhc2UuIiwKKyAgICAiTk9OX1RSQU5TSUVOVF9FUlIiLCAvLyBGSVhNRTogV3Jp
dGUgYSBiZXR0ZXIgbWVzc2FnZSBpZiBpdCdzIGV2ZXIgcG9zc2libGUgdGhpcyBpcyB0aHJvd24u
CisgICAgIlRoZSBuYW1lIHN1cHBsaWVkIGRvZXMgbm90IG1hdGNoIGFueSBleGlzdGluZyBpdGVt
LiIsCisgICAgIlRoZSByZXF1ZXN0IGNhbm5vdCBiZSBjb21wbGV0ZWQgZHVlIHRvIGEgZmFpbGVk
IGNvbnN0cmFpbnQuIiwKKyAgICAiVGhlIGRhdGEgcHJvdmlkZWQgZG9lcyBub3QgbWVldCB0aGUg
cmVxdWlyZW1lbnRzIG9mIHRoZSBmdW5jdGlvbi4iLAorICAgICJUaGlzIGZ1bmN0aW9uIGlzIG5v
dCBhbGxvd2VkIHRvIGJlIGNhbGxlZCBpbiBzdWNoIGEgY29udGV4dCIsCisgICAgIlRoZSBkYXRh
IHN1cHBsaWVkIGNhbm5vdCBiZSBzZXJpYWxpemVkIGFjY29yZGluZyB0byB0aGUgc3RydWN0dXJl
ZCBjbG9uaW5nIGFsZ29yaXRobSIsCisgICAgIlJFQ09WRVJBQkxFX0VSUiIsIC8vIEZJWE1FOiBU
aGlzIGlzbid0IGV2ZW4gdXNlZC4KKyAgICAiVFJBTlNJRU5UX0VSUiIsIC8vIEZJWE1FOiBUaGlz
IGlzbid0IGV2ZW4gdXNlZC4KKyAgICAiVElNRU9VVF9FUlIiLCAvLyBUaGlzIGNhbid0IGJlIHRo
cm93bi4KKyAgICAiREVBRExPQ0tfRVJSIiAvLyBUaGlzIGNhbid0IGJlIHRocm93bi4KK307Cisj
ZW5kaWYKKwogdm9pZCBnZXRFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24oRXhjZXB0aW9uQ29kZSBl
YywgRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbikKIHsKICAgICBBU1NFUlQo
ZWMpOwpAQCAtMjg3LDYgKzMxOCwxNiBAQCB2b2lkIGdldEV4Y2VwdGlvbkNvZGVEZXNjcmlwdGlv
bihFeGNlcHRpb25Db2RlIGVjLCBFeGNlcHRpb25Db2RlRGVzY3JpcHRpb24mIGRlcwogICAgICAg
ICBuYW1lVGFibGVTaXplID0gV1RGX0FSUkFZX0xFTkdUSChmaWxlRXhjZXB0aW9uTmFtZXMpOwog
ICAgICAgICBuYW1lVGFibGVPZmZzZXQgPSBGaWxlRXhjZXB0aW9uOjpOT1RfRk9VTkRfRVJSOwog
I2VuZGlmCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisgICAgfSBlbHNlIGlmIChjb2Rl
ID49IElEQkRhdGFiYXNlRXhjZXB0aW9uOjpJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCAmJiBj
b2RlIDw9IElEQkRhdGFiYXNlRXhjZXB0aW9uOjpJREJEYXRhYmFzZUV4Y2VwdGlvbk1heCkgewor
ICAgICAgICB0eXBlID0gSURCRGF0YWJhc2VFeGNlcHRpb25UeXBlOworICAgICAgICB0eXBlTmFt
ZSA9ICJET00gSURCRGF0YWJhc2UiOworICAgICAgICBjb2RlIC09IElEQkRhdGFiYXNlRXhjZXB0
aW9uOjpJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldDsKKyAgICAgICAgbmFtZVRhYmxlID0gaWRi
RGF0YWJhc2VFeGNlcHRpb25OYW1lczsKKyAgICAgICAgZGVzY3JpcHRpb25UYWJsZSA9IGlkYkRh
dGFiYXNlRXhjZXB0aW9uRGVzY3JpcHRpb25zOworICAgICAgICBuYW1lVGFibGVTaXplID0gV1RG
X0FSUkFZX0xFTkdUSChpZGJEYXRhYmFzZUV4Y2VwdGlvbk5hbWVzKTsKKyAgICAgICAgbmFtZVRh
YmxlT2Zmc2V0ID0gSURCRGF0YWJhc2VFeGNlcHRpb246OlVOS05PV05fRVJSOworI2VuZGlmCiAg
ICAgfSBlbHNlIHsKICAgICAgICAgdHlwZSA9IERPTUV4Y2VwdGlvblR5cGU7CiAgICAgICAgIHR5
cGVOYW1lID0gIkRPTSI7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmgg
Yi9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmgKaW5kZXggNmVhOWY3ZDAwNGJhZDRkYWYxYWJh
NTYyZjVlZmZlMDJkMzdjZjk1My4uZGQ5NzZjN2M5MTk1YzNkYjYyNjJkOGY4N2UxYTYwZWY2Mjdl
NzJjNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRXhjZXB0aW9uQ29kZS5oCisrKyBiL1dlYkNv
cmUvZG9tL0V4Y2VwdGlvbkNvZGUuaApAQCAtODQsNiArODQsOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAjaWYgRU5BQkxFKEJMT0IpIHx8IEVOQUJMRShGSUxFX1NZU1RFTSkKICAgICAgICAgLCBG
aWxlRXhjZXB0aW9uVHlwZQogI2VuZGlmCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisg
ICAgICAgICwgSURCRGF0YWJhc2VFeGNlcHRpb25UeXBlCisjZW5kaWYKICAgICB9OwogCiAKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUVycm9yLmggYi9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oCmluZGV4IGMzNDVmZjliYTNmMzNmY2M5NTJhM2IzN2Jj
NzExM2M0ZGRkY2RiNmEuLjY4ZTgyMzFmMWM3NzgyNzNiZmMzOGIwYTgxYzRiZDM2ODFiNzgwOGEg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUVycm9yLmgKKysrIGIvV2Vi
Q29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXJyb3IuaApAQCAtMjYsNiArMjYsNyBAQAogI2lmbmRl
ZiBJREJEYXRhYmFzZUVycm9yX2gKICNkZWZpbmUgSURCRGF0YWJhc2VFcnJvcl9oCiAKKyNpbmNs
dWRlICJJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgi
CiAjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgpAQCAtNDIsNyArNDMsNyBAQCBwdWJsaWM6CiAgICAgfQogICAgIH5JREJEYXRhYmFzZUVycm9y
KCkgeyB9CiAKLSAgICB1bnNpZ25lZCBzaG9ydCBjb2RlKCkgY29uc3QgeyByZXR1cm4gbV9jb2Rl
OyB9CisgICAgdW5zaWduZWQgc2hvcnQgY29kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY29kZSAtIElE
QkRhdGFiYXNlRXhjZXB0aW9uOjpJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldDsgfQogICAgIHZv
aWQgc2V0Q29kZSh1bnNpZ25lZCBzaG9ydCB2YWx1ZSkgeyBtX2NvZGUgPSB2YWx1ZTsgfQogICAg
IGNvbnN0IFN0cmluZyYgbWVzc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fbWVzc2FnZTsgfQogICAg
IHZvaWQgc2V0TWVzc2FnZShjb25zdCBTdHJpbmcmIHZhbHVlKSB7IG1fbWVzc2FnZSA9IHZhbHVl
OyB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VFeGNlcHRpb24uaCBi
L1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlvbi5oCmluZGV4IDk0NTc3M2M1ZTZj
MmRhNTRmNzA5NDQyYmNjYmFhY2Y3YjYzZjkyYjIuLjkzNmIwNWEwNGIzMzRkNDIwODBlYmZkNDQ1
ZGJmZThlODM5ZmVkYTEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUV4
Y2VwdGlvbi5oCisrKyBiL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlvbi5oCkBA
IC0yNiw0NiArMjYsNDggQEAKICNpZm5kZWYgSURCRGF0YWJhc2VFeGNlcHRpb25faAogI2RlZmlu
ZSBJREJEYXRhYmFzZUV4Y2VwdGlvbl9oCiAKLSNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgot
I2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
LQogI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogCisjaW5jbHVkZSAiRXhjZXB0aW9uQmFz
ZS5oIgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIElEQkRhdGFiYXNlRXhjZXB0aW9u
IDogcHVibGljIFJlZkNvdW50ZWQ8SURCRGF0YWJhc2VFeGNlcHRpb24+IHsKK2NsYXNzIElEQkRh
dGFiYXNlRXhjZXB0aW9uIDogcHVibGljIEV4Y2VwdGlvbkJhc2UgewogcHVibGljOgotICAgIHN0
YXRpYyBQYXNzUmVmUHRyPElEQkRhdGFiYXNlRXhjZXB0aW9uPiBjcmVhdGUoKQorICAgIHN0YXRp
YyBQYXNzUmVmUHRyPElEQkRhdGFiYXNlRXhjZXB0aW9uPiBjcmVhdGUoY29uc3QgRXhjZXB0aW9u
Q29kZURlc2NyaXB0aW9uJiBkZXNjcmlwdGlvbikKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgSURCRGF0YWJhc2VFeGNlcHRpb24oKSk7CisgICAgICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgSURCRGF0YWJhc2VFeGNlcHRpb24oZGVzY3JpcHRpb24pKTsKICAgICB9Ci0gICAgfklE
QkRhdGFiYXNlRXhjZXB0aW9uKCkgeyB9CiAKLSAgICBlbnVtIEVycm9yQ29kZSB7Ci0gICAgICAg
IFVOS05PV05fRVJSID0gMSwKLSAgICAgICAgTk9OX1RSQU5TSUVOVF9FUlIgPSAxLAotICAgICAg
ICBOT1RfRk9VTkRfRVJSID0gMiwKLSAgICAgICAgQ09OU1RSQUlOVF9FUlIgPSAzLAotICAgICAg
ICBEQVRBX0VSUiA9IDQsCi0gICAgICAgIE5PVF9BTExPV0VEX0VSUiA9IDUsCi0gICAgICAgIFNF
UklBTF9FUlIgPSAxMSwKLSAgICAgICAgUkVDT1ZFUkFCTEVfRVJSID0gMjEsCi0gICAgICAgIFRS
QU5TSUVOVF9FUlIgPSAzMSwKLSAgICAgICAgVElNRU9VVF9FUlIgPSAzMiwKLSAgICAgICAgREVB
RExPQ0tfRVJSID0gMzMKKyAgICBzdGF0aWMgY29uc3QgaW50IElEQkRhdGFiYXNlRXhjZXB0aW9u
T2Zmc2V0ID0gMTIwMDsKKyAgICBzdGF0aWMgY29uc3QgaW50IElEQkRhdGFiYXNlRXhjZXB0aW9u
TWF4ID0gMTI5OTsKKworICAgIGVudW0gSURCRGF0YWJhc2VFeGNlcHRpb25Db2RlIHsKKyAgICAg
ICAgVU5LTk9XTl9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDEsCisgICAgICAg
IE5PTl9UUkFOU0lFTlRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyAyLAorICAg
ICAgICBOT1RfRk9VTkRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyAzLAorICAg
ICAgICBDT05TVFJBSU5UX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgNCwKKyAg
ICAgICAgREFUQV9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDUsCisgICAgICAg
IE5PVF9BTExPV0VEX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgNiwKKyAgICAg
ICAgU0VSSUFMX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgNywKKyAgICAgICAg
UkVDT1ZFUkFCTEVfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyA4LAorICAgICAg
ICBUUkFOU0lFTlRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyA5LAorICAgICAg
ICBUSU1FT1VUX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgMTAsCisgICAgICAg
IERFQURMT0NLX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgMTEKICAgICB9Owot
ICAgCi0gICAgdW5zaWduZWQgc2hvcnQgY29kZSgpIGNvbnN0IHsgcmV0dXJuIG1fY29kZTsgfQot
ICAgIHZvaWQgc2V0Q29kZSh1bnNpZ25lZCBzaG9ydCB2YWx1ZSkgeyBtX2NvZGUgPSB2YWx1ZTsg
fQotICAgIFN0cmluZyBtZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNzYWdlOyB9Ci0gICAg
dm9pZCBzZXRNZXNzYWdlKGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9tZXNzYWdlID0gdmFsdWU7
IH0KIAotcHJpdmF0ZToKLSAgICBJREJEYXRhYmFzZUV4Y2VwdGlvbigpIHsgfQorICAgIHN0YXRp
YyBpbnQgRXJyb3JDb2RlVG9FeGNlcHRpb25Db2RlKGludCBlcnJvckNvZGUpCisgICAgeworICAg
ICAgICBpZiAoIWVycm9yQ29kZSkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1
cm4gZXJyb3JDb2RlICsgSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQ7CisgICAgfQogCi0gICAg
dW5zaWduZWQgc2hvcnQgbV9jb2RlOwotICAgIFN0cmluZyBtX21lc3NhZ2U7Citwcml2YXRlOgor
ICAgIElEQkRhdGFiYXNlRXhjZXB0aW9uKGNvbnN0IEV4Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbiYg
ZGVzY3JpcHRpb24pCisgICAgICAgIDogRXhjZXB0aW9uQmFzZShkZXNjcmlwdGlvbikKKyAgICB7
CisgICAgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmlkbCBiL1dlYkNvcmUvc3RvcmFnZS9JREJE
YXRhYmFzZUV4Y2VwdGlvbi5pZGwKaW5kZXggMWYxNWZjMDY0N2QwY2IzZTUyZjBiYzY3MGMzMjIx
MjNmOTBhYjcwOC4uYTU2ZjRjN2YxN2FiNzA4NGY3ZGI4MDE2ZWRjZDMyZjgxZWQwMTE5MCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmlkbAorKysgYi9X
ZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VFeGNlcHRpb24uaWRsCkBAIC0yNiwyMyArMjYsMzAg
QEAKIG1vZHVsZSBzdG9yYWdlIHsKIAogICAgIGludGVyZmFjZSBbCi0gICAgICAgIENvbmRpdGlv
bmFsPUlOREVYRURfREFUQUJBU0UKKyAgICAgICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFT
RSwKKyAgICAgICAgRG9udENoZWNrRW51bXMKICAgICBdIElEQkRhdGFiYXNlRXhjZXB0aW9uIHsK
LSAgICAgICAgLy8gRklYTUU6IFRoZXNlIGVycm9yIGNvZGVzIGNvbmZsaWN0IHdpdGggb3RoZXJz
LgotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBVTktOT1dOX0VSUiA9IDE7Ci0gICAgICAg
IGNvbnN0IHVuc2lnbmVkIHNob3J0IE5PTl9UUkFOU0lFTlRfRVJSID0gMTsKLSAgICAgICAgY29u
c3QgdW5zaWduZWQgc2hvcnQgTk9UX0ZPVU5EX0VSUiA9IDI7Ci0gICAgICAgIGNvbnN0IHVuc2ln
bmVkIHNob3J0IENPTlNUUkFJTlRfRVJSID0gMzsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hv
cnQgREFUQV9FUlIgPSA0OwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBOT1RfQUxMT1dF
RF9FUlIgPSA1OwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTRVJJQUxfRVJSID0gMTE7
Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFJFQ09WRVJBQkxFX0VSUiA9IDIxOwotICAg
ICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBUUkFOU0lFTlRfRVJSID0gMzE7Ci0gICAgICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IFRJTUVPVVRfRVJSID0gMzI7Ci0gICAgICAgIGNvbnN0IHVuc2ln
bmVkIHNob3J0IERFQURMT0NLX0VSUiA9IDMzOwogCi0gICAgICAgIGF0dHJpYnV0ZSB1bnNpZ25l
ZCBzaG9ydCBjb2RlOwotICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIG1lc3NhZ2U7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCAgIGNvZGU7CisgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgICAgICAgIG5hbWU7CisgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgICAgICAgIG1lc3NhZ2U7CisKKyNpZiBkZWZpbmVkKExBTkdV
QUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJUFQKKyAgICAgICAgLy8gT3ZlcnJp
ZGUgaW4gYSBNb3ppbGxhIGNvbXBhdGlibGUgZm9ybWF0CisgICAgICAgIFtEb250RW51bV0gRE9N
U3RyaW5nIHRvU3RyaW5nKCk7CisjZW5kaWYKKworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9y
dCBVTktOT1dOX0VSUiA9IDE7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE5PTl9UUkFO
U0lFTlRfRVJSID0gMjsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9UX0ZPVU5EX0VS
UiA9IDM7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENPTlNUUkFJTlRfRVJSID0gNDsK
KyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgREFUQV9FUlIgPSA1OworICAgICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBOT1RfQUxMT1dFRF9FUlIgPSA2OworICAgICAgICBjb25zdCB1bnNp
Z25lZCBzaG9ydCBTRVJJQUxfRVJSID0gNzsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQg
UkVDT1ZFUkFCTEVfRVJSID0gODsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgVFJBTlNJ
RU5UX0VSUiA9IDk7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFRJTUVPVVRfRVJSID0g
MTA7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IERFQURMT0NLX0VSUiA9IDExOwogICAg
IH07CiAKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>75918</attachid>
            <date>2010-12-08 10:02:54 -0800</date>
            <delta_ts>2010-12-08 10:10:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50632-20101208180252.patch</filename>
            <type>text/plain</type>
            <size>17729</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZGY5NjM0YmE0MDhhZmViOGMyNTQ2MDgyZDI0ZjgxNTEzMGVkNTlmLi43YTczZTk5
NTY3NDk0ODM4ODM1Mzg3ODYwZjI2OWU3NDAxMDY2YTdkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERCIHJldHVy
bnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jb25z
dGFudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50
cy5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9i
amVjdHN0b3JlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmpl
Y3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5odG1sOgorCiAyMDEwLTEyLTAzICBBYmhpc2hlayBB
cnlhICA8aW5mZXJub0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jb25zdGFudHMtZXhwZWN0ZWQudHh0
CmluZGV4IGVhZDA5MzdlYzYyYWMzZWY0MzFjMjUwYzgwYzQyNmVlODA2YWU2ZTAuLjExMGE2OGQ4
MzQ1ZmJmNDg3ZTI4MTU1MGE3MmFkMDQzYWY2OGQyOGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLWV4cGVjdGVkLnR4dApAQCAtNCwxNiArNCwx
NiBAQCBPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2Vz
LCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURQogCiAKIFBBU1Mgd2Via2l0SURCRGF0YWJhc2VF
eGNlcHRpb24uVU5LTk9XTl9FUlIgaXMgMQotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5OT05fVFJBTlNJRU5UX0VSUiBpcyAxCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9u
Lk5PVF9GT1VORF9FUlIgaXMgMgotUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5DT05T
VFJBSU5UX0VSUiBpcyAzCi1QQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkRBVEFfRVJS
IGlzIDQKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0FMTE9XRURfRVJSIGlz
IDUKLVBBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uU0VSSUFMX0VSUiBpcyAxMQotUEFT
UyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMgMjEKLVBBU1Mg
d2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVFJBTlNJRU5UX0VSUiBpcyAzMQotUEFTUyB3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5USU1FT1VUX0VSUiBpcyAzMgotUEFTUyB3ZWJraXRJREJE
YXRhYmFzZUV4Y2VwdGlvbi5ERUFETE9DS19FUlIgaXMgMzMKK1BBU1Mgd2Via2l0SURCRGF0YWJh
c2VFeGNlcHRpb24uTk9OX1RSQU5TSUVOVF9FUlIgaXMgMgorUEFTUyB3ZWJraXRJREJEYXRhYmFz
ZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIGlzIDMKK1BBU1Mgd2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uQ09OU1RSQUlOVF9FUlIgaXMgNAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlv
bi5EQVRBX0VSUiBpcyA1CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExP
V0VEX0VSUiBpcyA2CitQQVNTIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIg
aXMgNworUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5SRUNPVkVSQUJMRV9FUlIgaXMg
OAorUEFTUyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5UUkFOU0lFTlRfRVJSIGlzIDkKK1BB
U1Mgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVElNRU9VVF9FUlIgaXMgMTAKK1BBU1Mgd2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREVBRExPQ0tfRVJSIGlzIDExCiBQQVNTIHdlYmtpdElE
QlJlcXVlc3QuTE9BRElORyBpcyAxCiBQQVNTIHdlYmtpdElEQlJlcXVlc3QuRE9ORSBpcyAyCiBQ
QVNTIHdlYmtpdElEQkN1cnNvci5ORVhUIGlzIDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2NvbnN0YW50cy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvY29uc3RhbnRzLmh0bWwKaW5kZXggNzkwOWUyNDc5ODNlM2ViYzY2NTIwMmM3M2Q0MGU2
ZDc4ZmU5OWZiNC4uMDNhZjYxYmM5ZDJiNWYwNmI5NzcyNGZhYzRhYzAxMWZlMDc3ODNhMiAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY29uc3RhbnRzLmh0bWwKQEAgLTE3LDE2
ICsxNywxNiBAQCBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQogZnVuY3Rpb24gdGVz
dCgpCiB7CiAgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlVOS05PV05f
RVJSIiwgIjEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9O
X1RSQU5TSUVOVF9FUlIiLCAiMSIpOwotICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4
Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIiwgIjIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0
YWJhc2VFeGNlcHRpb24uQ09OU1RSQUlOVF9FUlIiLCAiMyIpOwotICAgIHNob3VsZEJlKCJ3ZWJr
aXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5EQVRBX0VSUiIsICI0Iik7Ci0gICAgc2hvdWxkQmUoIndl
YmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9BTExPV0VEX0VSUiIsICI1Iik7Ci0gICAgc2hv
dWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlNFUklBTF9FUlIiLCAiMTEiKTsKLSAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVDT1ZFUkFCTEVfRVJSIiwg
IjIxIik7Ci0gICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLlRSQU5TSUVO
VF9FUlIiLCAiMzEiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24u
VElNRU9VVF9FUlIiLCAiMzIiKTsKLSAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uREVBRExPQ0tfRVJSIiwgIjMzIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLk5PTl9UUkFOU0lFTlRfRVJSIiwgIjIiKTsKKyAgICBzaG91bGRCZSgid2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIsICIzIik7CisgICAgc2hvdWxk
QmUoIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkNPTlNUUkFJTlRfRVJSIiwgIjQiKTsKKyAg
ICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIiLCAiNSIpOwor
ICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfQUxMT1dFRF9FUlIi
LCAiNiIpOworICAgIHNob3VsZEJlKCJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5TRVJJQUxf
RVJSIiwgIjciKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uUkVD
T1ZFUkFCTEVfRVJSIiwgIjgiKTsKKyAgICBzaG91bGRCZSgid2Via2l0SURCRGF0YWJhc2VFeGNl
cHRpb24uVFJBTlNJRU5UX0VSUiIsICI5Iik7CisgICAgc2hvdWxkQmUoIndlYmtpdElEQkRhdGFi
YXNlRXhjZXB0aW9uLlRJTUVPVVRfRVJSIiwgIjEwIik7CisgICAgc2hvdWxkQmUoIndlYmtpdElE
QkRhdGFiYXNlRXhjZXB0aW9uLkRFQURMT0NLX0VSUiIsICIxMSIpOwogCiAgICAgc2hvdWxkQmUo
IndlYmtpdElEQlJlcXVlc3QuTE9BRElORyIsICIxIik7CiAgICAgc2hvdWxkQmUoIndlYmtpdElE
QlJlcXVlc3QuRE9ORSIsICIyIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS1l
eHBlY3RlZC50eHQKaW5kZXggNGU1ZTU2MjQwOGU4Njg2NDIzNzEzMGNkOWQ1YzRlMTczY2JmMTNi
ZC4uZTQ1ZmY3M2U4ZjlhYjRlMzhiZGY1N2FjZGI0YzA4MDg3Y2E3YWUwZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2JqZWN0c3Rv
cmUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLWV4cGVjdGVkLnR4dApAQCAtMTIxLDcgKzEyMSw3IEBA
IFBBU1MgJ29uZXJyb3InIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTICdyZWFkeVN0YXRl
JyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBp
cyBldmVudC50YXJnZXQuRE9ORQogCi1QQVNTIGV2ZW50LmNvZGUgaXMgMgorUEFTUyBldmVudC5j
b2RlIGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9GT1VORF9FUlIKIFBBU1MgZXZl
bnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFtZScpIGlzIGZhbHNlCiBQQVNT
IHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1yZW1vdmVvYmplY3RzdG9yZS5o
dG1sCmluZGV4IDVmNjE3Y2E0NDY1NDI3Y2EyN2QwMmFjNjE0OGIyYzcwNjFkODM2NjUuLmM1MzFk
Y2Y3YTQzZDY2Mzk3NmYyMGViYjBmNDdhOTAxNzgzYzI2YjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLXJlbW92ZW9iamVjdHN0b3JlLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtcmVtb3Zlb2Jq
ZWN0c3RvcmUuaHRtbApAQCAtMTEyLDcgKzExMiw3IEBAIGZ1bmN0aW9uIGdldFZhbHVlQWdhaW4o
KQogZnVuY3Rpb24gdmVyaWZ5RXJyb3IoKQogewogICAgIHZlcmlmeUVycm9yRXZlbnQoZXZlbnQp
OwotICAgIHNob3VsZEJlKCJldmVudC5jb2RlIiwgIjIiKTsKKyAgICBzaG91bGRCZSgiZXZlbnQu
Y29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSIik7CiAgICAg
c2hvdWxkQmVGYWxzZSgiZXZlbnQuc291cmNlLmluZGV4TmFtZXMuY29udGFpbnMoJ2luZGV4TmFt
ZScpIik7CiAKICAgICBkb25lKCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEyMzJjM2NjOGE0MjE4OTNlMjA0ZDZmYWY0ZDg3MGJkODg1
NGMwZWUuLjA0NTE0ZGZhOWFkNGQ0YmM5MTdiYWFiYTRjMTYzYTc5ZjEyY2ZmMWEgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MzAgQEAKKzIwMTAtMTItMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERC
IHJldHVybnMgdGhlIHdyb25nIGV4Y2VwdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTUwNjMyCisKKyAgICAgICAgSW5kZXhlZERCIGV4Y2VwdGlv
bnMgbmVlZCB0byBoYXZlIGFuIG9mZnNldCBzbyB0aGV5IGNhbgorICAgICAgICBiZSBkaXN0aW5n
dWlzaGVkIGZyb20gRE9NIGV4Y2VwdGlvbnMuICBXZSBhbHNvIG5lZWQgdG8KKyAgICAgICAgYWRk
IHN0cmluZ3MgZm9yIHRoZSB2YXJpb3VzIGV4Y2VwdGlvbnMuICBMYXN0bHksIG1ha2UKKyAgICAg
ICAgSURCRGF0YWJhc2VFeGNlcHRpb24gdXNlIHRoZSBjb21tb24gZXhjZXB0aW9uIGJhc2UgY2xh
c3MuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6c2V0RE9NRXhjZXB0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OnNldERPTUV4Y2VwdGlvbik6CisgICAg
ICAgICogZG9tL0V4Y2VwdGlvbkNvZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0RXhjZXB0
aW9uQ29kZURlc2NyaXB0aW9uKToKKyAgICAgICAgKiBkb20vRXhjZXB0aW9uQ29kZS5oOgorICAg
ICAgICAqIHN0b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oOgorICAgICAgICAoV2ViQ29yZTo6SURC
RGF0YWJhc2VFcnJvcjo6Y29kZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2Vw
dGlvbi5oOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2VFeGNlcHRpb246OmNyZWF0ZSk6
CisgICAgICAgIChXZWJDb3JlOjpJREJEYXRhYmFzZUV4Y2VwdGlvbjo6RXJyb3JDb2RlVG9FeGNl
cHRpb25Db2RlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQkRhdGFiYXNlRXhjZXB0aW9uOjpJREJE
YXRhYmFzZUV4Y2VwdGlvbik6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlv
bi5pZGw6CisKIDIwMTAtMTItMDMgIEFuZHJhcyBCZWNzaSAgPGFiZWNzaUBpbmYudS1zemVnZWQu
aHU+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0ZXIgcjczMjU0LgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0RPTUJpbmRpbmcuY3BwCmluZGV4IDBkOTRiNDQxOGNkMWNjZmFhMmRiMzU4NTZi
ZGIwNGNlMmQ3MDgzMWUuLmNmMGExNmE2OWU3NWYwZGE3Nzk0ZjgwOTczM2U4MzJhOTVhNzlhNzkg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmNwcAorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5jcHAKQEAgLTg2LDYgKzg2LDExIEBACiAj
aW5jbHVkZSAiSlNGaWxlRXhjZXB0aW9uLmgiCiAjZW5kaWYKIAorI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQorI2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uLmgiCisjaW5jbHVkZSAi
SlNJREJEYXRhYmFzZUV4Y2VwdGlvbi5oIgorI2VuZGlmCisKIHVzaW5nIG5hbWVzcGFjZSBKU0M7
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTY1MCw2ICs2NTUsMTEgQEAgdm9pZCBzZXRET01F
eGNlcHRpb24oRXhlY1N0YXRlKiBleGVjLCBFeGNlcHRpb25Db2RlIGVjKQogICAgICAgICAgICAg
ZXJyb3JPYmplY3QgPSB0b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgRmlsZUV4Y2VwdGlvbjo6Y3Jl
YXRlKGRlc2NyaXB0aW9uKSk7CiAgICAgICAgICAgICBicmVhazsKICNlbmRpZgorI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQorICAgICAgICBjYXNlIElEQkRhdGFiYXNlRXhjZXB0aW9uVHlw
ZToKKyAgICAgICAgICAgIGVycm9yT2JqZWN0ID0gdG9KUyhleGVjLCBnbG9iYWxPYmplY3QsIElE
QkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAgICAgICAgICAgIGJy
ZWFrOworI2VuZGlmCiAgICAgfQogCiAgICAgQVNTRVJUKGVycm9yT2JqZWN0KTsKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4
L1Y4UHJveHkuY3BwCmluZGV4IDM1ZGEwMDhhNzY3MGJhYzEwNTVmMzk5ZjcwODZlZDg0NmEyNDVh
M2MuLjFjMWY2NDIwMDQ3MDg5ODlmZjk0MGM3MjMyMDhmNjAwZjA1OWJlNDcgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOFByb3h5LmNwcApAQCAtMzcsNiArMzcsNyBAQAogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVy
LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZUxvYWRlckNsaWVudC5oIgor
I2luY2x1ZGUgIklEQkRhdGFiYXNlRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAiSURCRmFjdG9yeUJh
Y2tlbmRJbnRlcmZhY2UuaCIKICNpbmNsdWRlICJJREJQZW5kaW5nVHJhbnNhY3Rpb25Nb25pdG9y
LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCkBAIC02NCw2ICs2NSwx
MCBAQAogI2luY2x1ZGUgIldvcmtlckNvbnRleHQuaCIKICNpbmNsdWRlICJXb3JrZXJDb250ZXh0
RXhlY3V0aW9uUHJveHkuaCIKIAorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorI2luY2x1
ZGUgIlY4SURCRGF0YWJhc2VFeGNlcHRpb24uaCIKKyNlbmRpZgorCiAjaWYgRU5BQkxFKFNWRykK
ICNpbmNsdWRlICJWOFNWR0V4Y2VwdGlvbi5oIgogI2VuZGlmCkBAIC02NzMsNiArNjc4LDExIEBA
IHZvaWQgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGludCBleGNlcHRpb25Db2RlKQogICAgICAg
ICBleGNlcHRpb24gPSB0b1Y4KEZpbGVFeGNlcHRpb246OmNyZWF0ZShkZXNjcmlwdGlvbikpOwog
ICAgICAgICBicmVhazsKICNlbmRpZgorI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorICAg
IGNhc2UgSURCRGF0YWJhc2VFeGNlcHRpb25UeXBlOgorICAgICAgICBleGNlcHRpb24gPSB0b1Y4
KElEQkRhdGFiYXNlRXhjZXB0aW9uOjpjcmVhdGUoZGVzY3JpcHRpb24pKTsKKyAgICAgICAgYnJl
YWs7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsK
ICAgICB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmNwcCBiL1dlYkNv
cmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCmluZGV4IGFkNGZiNmY0MWYwNmNmYTllMmVmMTBjNmY1
ODRjOWE3ZDhkZDNmY2YuLjdlN2UwYzkwOGQ0MDkzZWEwNzJjMWI4NDk3MmYzYTBlNGMxYWRhNzYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCisrKyBiL1dlYkNvcmUv
ZG9tL0V4Y2VwdGlvbkNvZGUuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgogCiAjaW5jbHVkZSAiRXZlbnRFeGNlcHRpb24uaCIKKyNpbmNsdWRlICJJREJE
YXRhYmFzZUV4Y2VwdGlvbi5oIgogI2luY2x1ZGUgIlJhbmdlRXhjZXB0aW9uLmgiCiAjaW5jbHVk
ZSAiWE1MSHR0cFJlcXVlc3RFeGNlcHRpb24uaCIKIApAQCAtMjA5LDYgKzIxMCwzNiBAQCBzdGF0
aWMgY29uc3QgY2hhciogY29uc3QgZmlsZUV4Y2VwdGlvbkRlc2NyaXB0aW9uc1tdID0gewogfTsK
ICNlbmRpZgogCisjaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCitzdGF0aWMgY29uc3QgY2hh
ciogY29uc3QgaWRiRGF0YWJhc2VFeGNlcHRpb25OYW1lc1tdID0geworICAgICJVTktOT1dOX0VS
UiIsCisgICAgIk5PTl9UUkFOU0lFTlRfRVJSIiwKKyAgICAiTk9UX0ZPVU5EX0VSUiIsCisgICAg
IkNPTlNUUkFJTlRfRVJSIiwKKyAgICAiREFUQV9FUlIiLAorICAgICJOT1RfQUxMT1dFRF9FUlIi
LAorICAgICJTRVJJQUxfRVJSIiwKKyAgICAiUkVDT1ZFUkFCTEVfRVJSIiwKKyAgICAiVFJBTlNJ
RU5UX0VSUiIsCisgICAgIlRJTUVPVVRfRVJSIiwKKyAgICAiREVBRExPQ0tfRVJSIgorfTsKKwor
c3RhdGljIGNvbnN0IGNoYXIqIGNvbnN0IGlkYkRhdGFiYXNlRXhjZXB0aW9uRGVzY3JpcHRpb25z
W10gPSB7CisgICAgIkFuIHVua25vd24gZXJyb3Igb2NjdXJyZWQgd2l0aGluIEluZGV4ZWQgRGF0
YWJhc2UuIiwKKyAgICAiTk9OX1RSQU5TSUVOVF9FUlIiLCAvLyBGSVhNRTogV3JpdGUgYSBiZXR0
ZXIgbWVzc2FnZSBpZiBpdCdzIGV2ZXIgcG9zc2libGUgdGhpcyBpcyB0aHJvd24uCisgICAgIlRo
ZSBuYW1lIHN1cHBsaWVkIGRvZXMgbm90IG1hdGNoIGFueSBleGlzdGluZyBpdGVtLiIsCisgICAg
IlRoZSByZXF1ZXN0IGNhbm5vdCBiZSBjb21wbGV0ZWQgZHVlIHRvIGEgZmFpbGVkIGNvbnN0cmFp
bnQuIiwKKyAgICAiVGhlIGRhdGEgcHJvdmlkZWQgZG9lcyBub3QgbWVldCB0aGUgcmVxdWlyZW1l
bnRzIG9mIHRoZSBmdW5jdGlvbi4iLAorICAgICJUaGlzIGZ1bmN0aW9uIGlzIG5vdCBhbGxvd2Vk
IHRvIGJlIGNhbGxlZCBpbiBzdWNoIGEgY29udGV4dC4iLAorICAgICJUaGUgZGF0YSBzdXBwbGll
ZCBjYW5ub3QgYmUgc2VyaWFsaXplZCBhY2NvcmRpbmcgdG8gdGhlIHN0cnVjdHVyZWQgY2xvbmlu
ZyBhbGdvcml0aG0uIiwKKyAgICAiUkVDT1ZFUkFCTEVfRVJSIiwgLy8gRklYTUU6IFRoaXMgaXNu
J3QgZXZlbiB1c2VkLgorICAgICJUUkFOU0lFTlRfRVJSIiwgLy8gRklYTUU6IFRoaXMgaXNuJ3Qg
ZXZlbiB1c2VkLgorICAgICJUSU1FT1VUX0VSUiIsIC8vIFRoaXMgY2FuJ3QgYmUgdGhyb3duLgor
ICAgICJERUFETE9DS19FUlIiIC8vIFRoaXMgY2FuJ3QgYmUgdGhyb3duLgorfTsKKyNlbmRpZgor
CiB2b2lkIGdldEV4Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbihFeGNlcHRpb25Db2RlIGVjLCBFeGNl
cHRpb25Db2RlRGVzY3JpcHRpb24mIGRlc2NyaXB0aW9uKQogewogICAgIEFTU0VSVChlYyk7CkBA
IC0yODcsNiArMzE4LDE2IEBAIHZvaWQgZ2V0RXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uKEV4Y2Vw
dGlvbkNvZGUgZWMsIEV4Y2VwdGlvbkNvZGVEZXNjcmlwdGlvbiYgZGVzCiAgICAgICAgIG5hbWVU
YWJsZVNpemUgPSBXVEZfQVJSQVlfTEVOR1RIKGZpbGVFeGNlcHRpb25OYW1lcyk7CiAgICAgICAg
IG5hbWVUYWJsZU9mZnNldCA9IEZpbGVFeGNlcHRpb246Ok5PVF9GT1VORF9FUlI7CiAjZW5kaWYK
KyNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKyAgICB9IGVsc2UgaWYgKGNvZGUgPj0gSURC
RGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICYmIGNvZGUgPD0g
SURCRGF0YWJhc2VFeGNlcHRpb246OklEQkRhdGFiYXNlRXhjZXB0aW9uTWF4KSB7CisgICAgICAg
IHR5cGUgPSBJREJEYXRhYmFzZUV4Y2VwdGlvblR5cGU7CisgICAgICAgIHR5cGVOYW1lID0gIkRP
TSBJREJEYXRhYmFzZSI7CisgICAgICAgIGNvZGUgLT0gSURCRGF0YWJhc2VFeGNlcHRpb246OklE
QkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0OworICAgICAgICBuYW1lVGFibGUgPSBpZGJEYXRhYmFz
ZUV4Y2VwdGlvbk5hbWVzOworICAgICAgICBkZXNjcmlwdGlvblRhYmxlID0gaWRiRGF0YWJhc2VF
eGNlcHRpb25EZXNjcmlwdGlvbnM7CisgICAgICAgIG5hbWVUYWJsZVNpemUgPSBXVEZfQVJSQVlf
TEVOR1RIKGlkYkRhdGFiYXNlRXhjZXB0aW9uTmFtZXMpOworICAgICAgICBuYW1lVGFibGVPZmZz
ZXQgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbjo6VU5LTk9XTl9FUlI7CisjZW5kaWYKICAgICB9IGVs
c2UgewogICAgICAgICB0eXBlID0gRE9NRXhjZXB0aW9uVHlwZTsKICAgICAgICAgdHlwZU5hbWUg
PSAiRE9NIjsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0V4Y2VwdGlvbkNvZGUuaCBiL1dlYkNv
cmUvZG9tL0V4Y2VwdGlvbkNvZGUuaAppbmRleCA2ZWE5ZjdkMDA0YmFkNGRhZjFhYmE1NjJmNWVm
ZmUwMmQzN2NmOTUzLi5kZDk3NmM3YzkxOTVjM2RiNjI2MmQ4Zjg3ZTFhNjBlZjYyN2U3MmM1IDEw
MDY0NAotLS0gYS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Db2RlLmgKKysrIGIvV2ViQ29yZS9kb20v
RXhjZXB0aW9uQ29kZS5oCkBAIC04NCw2ICs4NCw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNp
ZiBFTkFCTEUoQkxPQikgfHwgRU5BQkxFKEZJTEVfU1lTVEVNKQogICAgICAgICAsIEZpbGVFeGNl
cHRpb25UeXBlCiAjZW5kaWYKKyNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKyAgICAgICAg
LCBJREJEYXRhYmFzZUV4Y2VwdGlvblR5cGUKKyNlbmRpZgogICAgIH07CiAKIApkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXJyb3IuaCBiL1dlYkNvcmUvc3RvcmFnZS9J
REJEYXRhYmFzZUVycm9yLmgKaW5kZXggYzM0NWZmOWJhM2YzM2ZjYzk1MmEzYjM3YmM3MTEzYzRk
ZGRjZGI2YS4uNjhlODIzMWYxYzc3ODI3M2JmYzM4YjBhODFjNGJkMzY4MWI3ODA4YSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXJyb3IuaAorKysgYi9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2VFcnJvci5oCkBAIC0yNiw2ICsyNiw3IEBACiAjaWZuZGVmIElEQkRh
dGFiYXNlRXJyb3JfaAogI2RlZmluZSBJREJEYXRhYmFzZUVycm9yX2gKIAorI2luY2x1ZGUgIklE
QkRhdGFiYXNlRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNpbmNs
dWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CkBAIC00
Miw3ICs0Myw3IEBAIHB1YmxpYzoKICAgICB9CiAgICAgfklEQkRhdGFiYXNlRXJyb3IoKSB7IH0K
IAotICAgIHVuc2lnbmVkIHNob3J0IGNvZGUoKSBjb25zdCB7IHJldHVybiBtX2NvZGU7IH0KKyAg
ICB1bnNpZ25lZCBzaG9ydCBjb2RlKCkgY29uc3QgeyByZXR1cm4gbV9jb2RlIC0gSURCRGF0YWJh
c2VFeGNlcHRpb246OklEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0OyB9CiAgICAgdm9pZCBzZXRD
b2RlKHVuc2lnbmVkIHNob3J0IHZhbHVlKSB7IG1fY29kZSA9IHZhbHVlOyB9CiAgICAgY29uc3Qg
U3RyaW5nJiBtZXNzYWdlKCkgY29uc3QgeyByZXR1cm4gbV9tZXNzYWdlOyB9CiAgICAgdm9pZCBz
ZXRNZXNzYWdlKGNvbnN0IFN0cmluZyYgdmFsdWUpIHsgbV9tZXNzYWdlID0gdmFsdWU7IH0KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlvbi5oIGIvV2ViQ29y
ZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmgKaW5kZXggOTQ1NzczYzVlNmMyZGE1NGY3
MDk0NDJiY2NiYWFjZjdiNjNmOTJiMi4uOTM2YjA1YTA0YjMzNGQ0MjA4MGViZmQ0NDVkYmZlOGU4
MzlmZWRhMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9u
LmgKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNlRXhjZXB0aW9uLmgKQEAgLTI2LDQ2
ICsyNiw0OCBAQAogI2lmbmRlZiBJREJEYXRhYmFzZUV4Y2VwdGlvbl9oCiAjZGVmaW5lIElEQkRh
dGFiYXNlRXhjZXB0aW9uX2gKIAotI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCi0jaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KLSNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgotCiAjaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAKKyNpbmNsdWRlICJFeGNlcHRpb25CYXNlLmgiCisK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSURCRGF0YWJhc2VFeGNlcHRpb24gOiBwdWJs
aWMgUmVmQ291bnRlZDxJREJEYXRhYmFzZUV4Y2VwdGlvbj4geworY2xhc3MgSURCRGF0YWJhc2VF
eGNlcHRpb24gOiBwdWJsaWMgRXhjZXB0aW9uQmFzZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBh
c3NSZWZQdHI8SURCRGF0YWJhc2VFeGNlcHRpb24+IGNyZWF0ZSgpCisgICAgc3RhdGljIFBhc3NS
ZWZQdHI8SURCRGF0YWJhc2VFeGNlcHRpb24+IGNyZWF0ZShjb25zdCBFeGNlcHRpb25Db2RlRGVz
Y3JpcHRpb24mIGRlc2NyaXB0aW9uKQogICAgIHsKLSAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBJREJEYXRhYmFzZUV4Y2VwdGlvbigpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJ
REJEYXRhYmFzZUV4Y2VwdGlvbihkZXNjcmlwdGlvbikpOwogICAgIH0KLSAgICB+SURCRGF0YWJh
c2VFeGNlcHRpb24oKSB7IH0KIAotICAgIGVudW0gRXJyb3JDb2RlIHsKLSAgICAgICAgVU5LTk9X
Tl9FUlIgPSAxLAotICAgICAgICBOT05fVFJBTlNJRU5UX0VSUiA9IDEsCi0gICAgICAgIE5PVF9G
T1VORF9FUlIgPSAyLAotICAgICAgICBDT05TVFJBSU5UX0VSUiA9IDMsCi0gICAgICAgIERBVEFf
RVJSID0gNCwKLSAgICAgICAgTk9UX0FMTE9XRURfRVJSID0gNSwKLSAgICAgICAgU0VSSUFMX0VS
UiA9IDExLAotICAgICAgICBSRUNPVkVSQUJMRV9FUlIgPSAyMSwKLSAgICAgICAgVFJBTlNJRU5U
X0VSUiA9IDMxLAotICAgICAgICBUSU1FT1VUX0VSUiA9IDMyLAotICAgICAgICBERUFETE9DS19F
UlIgPSAzMworICAgIHN0YXRpYyBjb25zdCBpbnQgSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQg
PSAxMjAwOworICAgIHN0YXRpYyBjb25zdCBpbnQgSURCRGF0YWJhc2VFeGNlcHRpb25NYXggPSAx
Mjk5OworCisgICAgZW51bSBJREJEYXRhYmFzZUV4Y2VwdGlvbkNvZGUgeworICAgICAgICBVTktO
T1dOX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgMSwKKyAgICAgICAgTk9OX1RS
QU5TSUVOVF9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDIsCisgICAgICAgIE5P
VF9GT1VORF9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDMsCisgICAgICAgIENP
TlNUUkFJTlRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyA0LAorICAgICAgICBE
QVRBX0VSUiA9IElEQkRhdGFiYXNlRXhjZXB0aW9uT2Zmc2V0ICsgNSwKKyAgICAgICAgTk9UX0FM
TE9XRURfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyA2LAorICAgICAgICBTRVJJ
QUxfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyA3LAorICAgICAgICBSRUNPVkVS
QUJMRV9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDgsCisgICAgICAgIFRSQU5T
SUVOVF9FUlIgPSBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldCArIDksCisgICAgICAgIFRJTUVP
VVRfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyAxMCwKKyAgICAgICAgREVBRExP
Q0tfRVJSID0gSURCRGF0YWJhc2VFeGNlcHRpb25PZmZzZXQgKyAxMQogICAgIH07Ci0gICAKLSAg
ICB1bnNpZ25lZCBzaG9ydCBjb2RlKCkgY29uc3QgeyByZXR1cm4gbV9jb2RlOyB9Ci0gICAgdm9p
ZCBzZXRDb2RlKHVuc2lnbmVkIHNob3J0IHZhbHVlKSB7IG1fY29kZSA9IHZhbHVlOyB9Ci0gICAg
U3RyaW5nIG1lc3NhZ2UoKSBjb25zdCB7IHJldHVybiBtX21lc3NhZ2U7IH0KLSAgICB2b2lkIHNl
dE1lc3NhZ2UoY29uc3QgU3RyaW5nJiB2YWx1ZSkgeyBtX21lc3NhZ2UgPSB2YWx1ZTsgfQogCi1w
cml2YXRlOgotICAgIElEQkRhdGFiYXNlRXhjZXB0aW9uKCkgeyB9CisgICAgc3RhdGljIGludCBF
cnJvckNvZGVUb0V4Y2VwdGlvbkNvZGUoaW50IGVycm9yQ29kZSkKKyAgICB7CisgICAgICAgIGlm
ICghZXJyb3JDb2RlKQorICAgICAgICAgICAgcmV0dXJuIDA7CisgICAgICAgIHJldHVybiBlcnJv
ckNvZGUgKyBJREJEYXRhYmFzZUV4Y2VwdGlvbk9mZnNldDsKKyAgICB9CiAKLSAgICB1bnNpZ25l
ZCBzaG9ydCBtX2NvZGU7Ci0gICAgU3RyaW5nIG1fbWVzc2FnZTsKK3ByaXZhdGU6CisgICAgSURC
RGF0YWJhc2VFeGNlcHRpb24oY29uc3QgRXhjZXB0aW9uQ29kZURlc2NyaXB0aW9uJiBkZXNjcmlw
dGlvbikKKyAgICAgICAgOiBFeGNlcHRpb25CYXNlKGRlc2NyaXB0aW9uKQorICAgIHsKKyAgICB9
CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9XZWJDb3JlL3N0b3Jh
Z2UvSURCRGF0YWJhc2VFeGNlcHRpb24uaWRsIGIvV2ViQ29yZS9zdG9yYWdlL0lEQkRhdGFiYXNl
RXhjZXB0aW9uLmlkbAppbmRleCAxZjE1ZmMwNjQ3ZDBjYjNlNTJmMGJjNjcwYzMyMjEyM2Y5MGFi
NzA4Li5hNTZmNGM3ZjE3YWI3MDg0ZjdkYjgwMTZlZGNkMzJmODFlZDAxMTkwIDEwMDY0NAotLS0g
YS9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2VFeGNlcHRpb24uaWRsCisrKyBiL1dlYkNvcmUv
c3RvcmFnZS9JREJEYXRhYmFzZUV4Y2VwdGlvbi5pZGwKQEAgLTI2LDIzICsyNiwzMCBAQAogbW9k
dWxlIHN0b3JhZ2UgewogCiAgICAgaW50ZXJmYWNlIFsKLSAgICAgICAgQ29uZGl0aW9uYWw9SU5E
RVhFRF9EQVRBQkFTRQorICAgICAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAorICAg
ICAgICBEb250Q2hlY2tFbnVtcwogICAgIF0gSURCRGF0YWJhc2VFeGNlcHRpb24gewotICAgICAg
ICAvLyBGSVhNRTogVGhlc2UgZXJyb3IgY29kZXMgY29uZmxpY3Qgd2l0aCBvdGhlcnMuCi0gICAg
ICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFVOS05PV05fRVJSID0gMTsKLSAgICAgICAgY29uc3Qg
dW5zaWduZWQgc2hvcnQgTk9OX1RSQU5TSUVOVF9FUlIgPSAxOwotICAgICAgICBjb25zdCB1bnNp
Z25lZCBzaG9ydCBOT1RfRk9VTkRfRVJSID0gMjsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hv
cnQgQ09OU1RSQUlOVF9FUlIgPSAzOwotICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBEQVRB
X0VSUiA9IDQ7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IE5PVF9BTExPV0VEX0VSUiA9
IDU7Ci0gICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFNFUklBTF9FUlIgPSAxMTsKLSAgICAg
ICAgY29uc3QgdW5zaWduZWQgc2hvcnQgUkVDT1ZFUkFCTEVfRVJSID0gMjE7Ci0gICAgICAgIGNv
bnN0IHVuc2lnbmVkIHNob3J0IFRSQU5TSUVOVF9FUlIgPSAzMTsKLSAgICAgICAgY29uc3QgdW5z
aWduZWQgc2hvcnQgVElNRU9VVF9FUlIgPSAzMjsKLSAgICAgICAgY29uc3QgdW5zaWduZWQgc2hv
cnQgREVBRExPQ0tfRVJSID0gMzM7CiAKLSAgICAgICAgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0
IGNvZGU7Ci0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgbWVzc2FnZTsKKyAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgY29kZTsKKyAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgbmFtZTsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTVN0cmluZyAgICAgICAgbWVzc2FnZTsKKworI2lmIGRlZmluZWQoTEFOR1VBR0VfSkFW
QVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVAorICAgICAgICAvLyBPdmVycmlkZSBpbiBh
IE1vemlsbGEgY29tcGF0aWJsZSBmb3JtYXQKKyAgICAgICAgW0RvbnRFbnVtXSBET01TdHJpbmcg
dG9TdHJpbmcoKTsKKyNlbmRpZgorCisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IFVOS05P
V05fRVJSID0gMTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTk9OX1RSQU5TSUVOVF9F
UlIgPSAyOworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBOT1RfRk9VTkRfRVJSID0gMzsK
KyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQ09OU1RSQUlOVF9FUlIgPSA0OworICAgICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCBEQVRBX0VSUiA9IDU7CisgICAgICAgIGNvbnN0IHVuc2ln
bmVkIHNob3J0IE5PVF9BTExPV0VEX0VSUiA9IDY7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIHNo
b3J0IFNFUklBTF9FUlIgPSA3OworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBSRUNPVkVS
QUJMRV9FUlIgPSA4OworICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBUUkFOU0lFTlRfRVJS
ID0gOTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgVElNRU9VVF9FUlIgPSAxMDsKKyAg
ICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgREVBRExPQ0tfRVJSID0gMTE7CiAgICAgfTsKIAog
fQo=
</data>
<flag name="review"
          id="66775"
          type_id="1"
          status="+"
          setter="steveblock"
    />
          </attachment>
      

    </bug>

</bugzilla>