<?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>109861</bug_id>
          
          <creation_ts>2013-02-14 14:15:20 -0800</creation_ts>
          <short_desc>TokenPreloadScanner should be able to scan CompactHTMLTokens</short_desc>
          <delta_ts>2013-02-15 11:13:13 -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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>108027</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Barth">abarth</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>buildbot</cc>
    
    <cc>eric</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>philn</cc>
    
    <cc>rniwa</cc>
    
    <cc>tonyg</cc>
    
    <cc>webkit-ews</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>833410</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-14 14:15:20 -0800</bug_when>
    <thetext>TokenPreloadScanner should be able to scan CompactHTMLTokens</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833419</commentid>
    <comment_count>1</comment_count>
      <attachid>188426</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-14 14:20:20 -0800</bug_when>
    <thetext>Created attachment 188426
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833434</commentid>
    <comment_count>2</comment_count>
      <attachid>188426</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-02-14 14:32:43 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

Attachment 188426 did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/16581513</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833436</commentid>
    <comment_count>3</comment_count>
      <attachid>188426</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-02-14 14:33:29 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

Attachment 188426 did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/16538801</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833442</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-14 14:38:14 -0800</bug_when>
    <thetext>Probably needs moar ifdefs.  :)

I&apos;d be interested in your review feedback, however.  I&apos;ll get it to compile before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833443</commentid>
    <comment_count>5</comment_count>
      <attachid>188426</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-02-14 14:39:08 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

I&apos;m entertained that you undid my processPossible refactoring. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833457</commentid>
    <comment_count>6</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-14 14:49:09 -0800</bug_when>
    <thetext>&gt; I&apos;m entertained that you undid my processPossible refactoring. :)

Yeah, sorry about that.  I liked it, but it didn&apos;t play well with the switch statement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833535</commentid>
    <comment_count>7</comment_count>
      <attachid>188426</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-02-14 16:23:55 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

Attachment 188426 did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/16538845</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833650</commentid>
    <comment_count>8</comment_count>
      <attachid>188426</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-14 20:30:15 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

Attachment 188426 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16537920</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>833913</commentid>
    <comment_count>9</comment_count>
      <attachid>188426</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-15 05:08:59 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

Attachment 188426 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/16593082</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834011</commentid>
    <comment_count>10</comment_count>
      <attachid>188426</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2013-02-15 07:35:06 -0800</bug_when>
    <thetext>Comment on attachment 188426
Patch

OK.  Ugly switch. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834155</commentid>
    <comment_count>11</comment_count>
      <attachid>188600</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-15 10:32:07 -0800</bug_when>
    <thetext>Created attachment 188600
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834181</commentid>
    <comment_count>12</comment_count>
      <attachid>188600</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-15 10:58:23 -0800</bug_when>
    <thetext>Comment on attachment 188600
Patch for landing

Rejecting attachment 188600 from commit-queue.

abarth@webkit.org does not have committer permissions according to http://trac.webkit.org/browser/trunk/Tools/Scripts/webkitpy/common/config/committers.py.

- If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags.

- If you have committer rights please correct the error in Tools/Scripts/webkitpy/common/config/committers.py by adding yourself to the file (no review needed).  The commit-queue restarts itself every 2 hours.  After restart the commit-queue will correctly respect your committer rights.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834186</commentid>
    <comment_count>13</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-15 11:03:09 -0800</bug_when>
    <thetext>wat?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834191</commentid>
    <comment_count>14</comment_count>
      <attachid>188600</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-15 11:13:10 -0800</bug_when>
    <thetext>Comment on attachment 188600
Patch for landing

Clearing flags on attachment: 188600

Committed r143020: &lt;http://trac.webkit.org/changeset/143020&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>834192</commentid>
    <comment_count>15</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-02-15 11:13:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188426</attachid>
            <date>2013-02-14 14:20:20 -0800</date>
            <delta_ts>2013-02-15 10:32:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-109861-20130214141648.patch</filename>
            <type>text/plain</type>
            <size>14618</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM2ZmIzYTQ3MTE0Yzdl
YzViZDNhOWJiN2QyNWU5OWY2ODhjZTY5Ny4uOGEzMzBiNDllZTcwMWMyNjgzNjEzNzFiM2UwMzE2
ZWRiY2JmMTg5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEzLTAyLTE0ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVG9rZW5QcmVsb2FkU2Nhbm5l
ciBzaG91bGQgYmUgYWJsZSB0byBzY2FuIENvbXBhY3RIVE1MVG9rZW5zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIG1vdmVzIHRoZSBt
YWluIHNjYW5uaW5nIGxvZ2ljIGZvciB0aGUgVG9rZW5QcmVsb2FkU2Nhbm5lciB0bworICAgICAg
ICBhIHRlbXBsYXRlZCBzY2FuQ29tbW9uIHJvdXRpbmUgdGhhdCBjYW4gc2NhbiBlaXRoZXIgYW4g
SFRNTFRva2VuIG9yIGEKKyAgICAgICAgQ29tcGFjdEhUTUxUb2tlbi4gVGhpcyBwYXRjaCB3aWxs
IGxldCB0aGUgQmFja2dyb3VuZEhUTUxQYXJzZXIgcHJlbG9hZAorICAgICAgICBzY2FuIGl0cyBD
b21wYWN0SFRNTFRva2Vucy4KKworICAgICAgICAqIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2Fu
bmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJlbG9h
ZFNjYW5uZXI6OnNjYW5Db21tb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJlbG9hZFNjYW5u
ZXI6OnNjYW4pOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmg6Cisg
ICAgICAgIChDU1NQcmVsb2FkU2Nhbm5lcik6CisgICAgICAgICAgICAtIFR3ZWFrIHRoZSBDU1NQ
cmVsb2FkU2Nhbm5lciBBUEkgc2xpZ2h0bHkgdG8gbWFrZSBpdCBlYXNpZXIgdG8KKyAgICAgICAg
ICAgICAgY2FsbCBmcm9tIHRlbXBsYXRlZCBjb2RlLgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hU
TUxQcmVsb2FkU2Nhbm5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUb2tlblByZWxvYWRTY2Fu
bmVyOjp0YWdJZEZvcik6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRv
a2VuUHJlbG9hZFNjYW5uZXI6OlN0YXJ0VGFnU2Nhbm5lcjo6cHJvY2Vzc0F0dHJpYnV0ZXMpOgor
ICAgICAgICAoVG9rZW5QcmVsb2FkU2Nhbm5lcjo6U3RhcnRUYWdTY2FubmVyKToKKyAgICAgICAg
KFdlYkNvcmU6OlRva2VuUHJlbG9hZFNjYW5uZXI6OnNjYW4pOgorICAgICAgICAoV2ViQ29yZTo6
VG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2NhbkNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpUb2tl
blByZWxvYWRTY2FubmVyOjp1cGRhdGVQcmVkaWN0ZWRCYXNlVVJMKToKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6c2Nhbik6CisgICAgICAgICogaHRtbC9wYXJzZXIvSFRN
TFByZWxvYWRTY2FubmVyLmg6CisgICAgICAgIChUb2tlblByZWxvYWRTY2FubmVyKToKKwogMjAx
My0wMi0xNCAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBXZWIgSW5zcGVjdG9yOiBleHRyYWN0IERPTSBjb3VudGVycyBncmFwaCBpbXBsZW1lbnRhdGlv
biBpbnRvIGl0cyBvd24gY2xhc3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFy
c2VyL0NTU1ByZWxvYWRTY2FubmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NT
U1ByZWxvYWRTY2FubmVyLmNwcAppbmRleCA5NTc3MDc5MzY3ZTVkNGI4MjdhODRiYWI3MzZiZTk2
ZWM5YzcwNzg0Li5jZjliYzI0OTQ0Y2M5NjljZDc0Yjc2Y2I2OWI5ZWE0NTQzZjE5OGUxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5uZXIuY3BwCkBA
IC01MCwyMCArNTAsMjkgQEAgdm9pZCBDU1NQcmVsb2FkU2Nhbm5lcjo6cmVzZXQoKQogICAgIG1f
cnVsZVZhbHVlLmNsZWFyKCk7CiB9CiAKLXZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29u
c3QgVUNoYXIqIGJlZ2luLCBjb25zdCBVQ2hhciogZW5kLCBWZWN0b3I8T3duUHRyPFByZWxvYWRS
ZXF1ZXN0PiA+JiByZXF1ZXN0cykKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXI+Cit2b2lkIENTU1By
ZWxvYWRTY2FubmVyOjpzY2FuQ29tbW9uKGNvbnN0IENoYXIqIGJlZ2luLCBjb25zdCBDaGFyKiBl
bmQsIFZlY3RvcjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mIHJlcXVlc3RzKQogewogICAgIG1f
cmVxdWVzdHMgPSAmcmVxdWVzdHM7Ci0gICAgZm9yIChjb25zdCBVQ2hhciogaXQgPSBiZWdpbjsg
aXQgIT0gZW5kICYmIG1fc3RhdGUgIT0gRG9uZVBhcnNpbmdJbXBvcnRSdWxlczsgKytpdCkKKyAg
ICBmb3IgKGNvbnN0IENoYXIqIGl0ID0gYmVnaW47IGl0ICE9IGVuZCAmJiBtX3N0YXRlICE9IERv
bmVQYXJzaW5nSW1wb3J0UnVsZXM7ICsraXQpCiAgICAgICAgIHRva2VuaXplKCppdCk7CiAgICAg
bV9yZXF1ZXN0cyA9IDA7CiB9CiAKLXZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3Qg
TENoYXIqIGJlZ2luLCBjb25zdCBMQ2hhciogZW5kLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1
ZXN0PiA+JiByZXF1ZXN0cykKK3ZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3QgSFRN
TFRva2VuOjpEYXRhVmVjdG9yJiBkYXRhLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+
JiByZXF1ZXN0cykKIHsKLSAgICBtX3JlcXVlc3RzID0gJnJlcXVlc3RzOwotICAgIGZvciAoY29u
c3QgTENoYXIqIGl0ID0gYmVnaW47IGl0ICE9IGVuZCAmJiBtX3N0YXRlICE9IERvbmVQYXJzaW5n
SW1wb3J0UnVsZXM7ICsraXQpCi0gICAgICAgIHRva2VuaXplKCppdCk7Ci0gICAgbV9yZXF1ZXN0
cyA9IDA7CisgICAgc2NhbkNvbW1vbihkYXRhLmRhdGEoKSwgZGF0YS5kYXRhKCkgKyBkYXRhLnNp
emUoKSwgcmVxdWVzdHMpOworfQorCit2b2lkIENTU1ByZWxvYWRTY2FubmVyOjpzY2FuKGNvbnN0
IFN0cmluZyYgZGF0YSwgVmVjdG9yPE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYgcmVxdWVzdHMp
Cit7CisgICAgaWYgKGRhdGEuaXM4Qml0KCkpIHsKKyAgICAgICAgY29uc3QgTENoYXIqIGJlZ2lu
ID0gZGF0YS5jaGFyYWN0ZXJzOCgpOworICAgICAgICBzY2FuQ29tbW9uKGJlZ2luLCBiZWdpbiAr
IGRhdGEubGVuZ3RoKCksIHJlcXVlc3RzKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBj
b25zdCBVQ2hhciogYmVnaW4gPSBkYXRhLmNoYXJhY3RlcnMxNigpOworICAgIHNjYW5Db21tb24o
YmVnaW4sIGJlZ2luICsgZGF0YS5sZW5ndGgoKSwgcmVxdWVzdHMpOwogfQogCiBpbmxpbmUgdm9p
ZCBDU1NQcmVsb2FkU2Nhbm5lcjo6dG9rZW5pemUoVUNoYXIgYykKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmggYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5oCmluZGV4IDIyZjZmYTg2OWNhNTI0NTI4
ODFiNmE4ODFiZDUxZTY3ZTc2ZmViNGUuLjZjYjY2ZmE3NzkyYWM4MzFmM2Q4ZGM0NjIyN2Y5OGU4
NjFkNzdhMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxv
YWRTY2FubmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNj
YW5uZXIuaApAQCAtMjgsNiArMjgsNyBAQAogI2RlZmluZSBDU1NQcmVsb2FkU2Nhbm5lcl9oCiAK
ICNpbmNsdWRlICJIVE1MUmVzb3VyY2VQcmVsb2FkZXIuaCIKKyNpbmNsdWRlICJIVE1MVG9rZW4u
aCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKQEAgLTQwLDggKzQxLDggQEAgcHVibGljOgogCiAgICAgdm9pZCByZXNldCgpOwogCi0g
ICAgdm9pZCBzY2FuKGNvbnN0IFVDaGFyKiBiZWdpbiwgY29uc3QgVUNoYXIqIGVuZCwgVmVjdG9y
PE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYpOwotICAgIHZvaWQgc2Nhbihjb25zdCBMQ2hhciog
YmVnaW4sIGNvbnN0IExDaGFyKiBlbmQsIFZlY3RvcjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4m
KTsKKyAgICB2b2lkIHNjYW4oY29uc3QgSFRNTFRva2VuOjpEYXRhVmVjdG9yJiwgVmVjdG9yPE93
blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYpOworICAgIHZvaWQgc2Nhbihjb25zdCBTdHJpbmcmLCBW
ZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+Jik7CiAKIHByaXZhdGU6CiAgICAgZW51bSBT
dGF0ZSB7CkBAIC01Nyw2ICs1OCw5IEBAIHByaXZhdGU6CiAgICAgICAgIERvbmVQYXJzaW5nSW1w
b3J0UnVsZXMsCiAgICAgfTsKIAorICAgIHRlbXBsYXRlPHR5cGVuYW1lIENoYXI+CisgICAgdm9p
ZCBzY2FuQ29tbW9uKGNvbnN0IENoYXIqIGJlZ2luLCBjb25zdCBDaGFyKiBlbmQsIFZlY3RvcjxP
d25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mKTsKKwogICAgIGlubGluZSB2b2lkIHRva2VuaXplKFVD
aGFyKTsKICAgICB2b2lkIGVtaXRSdWxlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCmluZGV4IDg0ODU2NGQ3NTE2Yjk4MjlhNGYw
ZjliNjJhY2IxMzE1YTA0YjhmY2MuLmFkYzY0ZGUzMDhjNDhlYzEwMGJiZGRkYjUzMGVkOWFhNmFk
NGU3YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2Fk
U2Nhbm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRT
Y2FubmVyLmNwcApAQCAtNDMsMTggKzQzLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2lu
ZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogCi1zdGF0aWMgYm9vbCBpc1N0YXJ0VGFnKEhUTUxUb2tl
bjo6VHlwZSB0eXBlKQotewotICAgIHJldHVybiB0eXBlID09IEhUTUxUb2tlbjo6U3RhcnRUYWc7
Ci19Ci0KLXN0YXRpYyBib29sIGlzU3RhcnRPckVuZFRhZyhIVE1MVG9rZW46OlR5cGUgdHlwZSkK
LXsKLSAgICByZXR1cm4gdHlwZSA9PSBIVE1MVG9rZW46OkVuZFRhZyB8fCBpc1N0YXJ0VGFnKHR5
cGUpOwotfQotCi1Ub2tlblByZWxvYWRTY2FubmVyOjpUYWdJZCBUb2tlblByZWxvYWRTY2FubmVy
OjppZGVudGlmaWVyRm9yKGNvbnN0IEF0b21pY1N0cmluZyYgdGFnTmFtZSkKK1Rva2VuUHJlbG9h
ZFNjYW5uZXI6OlRhZ0lkIFRva2VuUHJlbG9hZFNjYW5uZXI6OnRhZ0lkRm9yKGNvbnN0IEhUTUxU
b2tlbjo6RGF0YVZlY3RvciYgZGF0YSkKIHsKKyAgICBBdG9taWNTdHJpbmcgdGFnTmFtZShkYXRh
KTsKICAgICBpZiAodGFnTmFtZSA9PSBpbWdUYWcpCiAgICAgICAgIHJldHVybiBJbWdUYWdJZDsK
ICAgICBpZiAodGFnTmFtZSA9PSBpbnB1dFRhZykKQEAgLTcyLDYgKzYzLDI1IEBAIFRva2VuUHJl
bG9hZFNjYW5uZXI6OlRhZ0lkIFRva2VuUHJlbG9hZFNjYW5uZXI6OmlkZW50aWZpZXJGb3IoY29u
c3QgQXRvbWljU3RyaW5nCiAgICAgcmV0dXJuIFVua25vd25UYWdJZDsKIH0KIAorVG9rZW5QcmVs
b2FkU2Nhbm5lcjo6VGFnSWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6dGFnSWRGb3IoY29uc3QgU3Ry
aW5nJiB0YWdOYW1lKQoreworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgaW1nVGFn
KSkKKyAgICAgICAgcmV0dXJuIEltZ1RhZ0lkOworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFn
TmFtZSwgaW5wdXRUYWcpKQorICAgICAgICByZXR1cm4gSW5wdXRUYWdJZDsKKyAgICBpZiAodGhy
ZWFkU2FmZU1hdGNoKHRhZ05hbWUsIGxpbmtUYWcpKQorICAgICAgICByZXR1cm4gTGlua1RhZ0lk
OworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgc2NyaXB0VGFnKSkKKyAgICAgICAg
cmV0dXJuIFNjcmlwdFRhZ0lkOworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgc3R5
bGVUYWcpKQorICAgICAgICByZXR1cm4gU3R5bGVUYWdJZDsKKyAgICBpZiAodGhyZWFkU2FmZU1h
dGNoKHRhZ05hbWUsIGJhc2VUYWcpKQorICAgICAgICByZXR1cm4gQmFzZVRhZ0lkOworICAgIGlm
ICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgdGVtcGxhdGVUYWcpKQorICAgICAgICByZXR1cm4g
VGVtcGxhdGVUYWdJZDsKKyAgICByZXR1cm4gVW5rbm93blRhZ0lkOworfQorCiBTdHJpbmcgVG9r
ZW5QcmVsb2FkU2Nhbm5lcjo6aW5pdGl0YXRvckZvcihUYWdJZCB0YWdJZCkKIHsKICAgICBzd2l0
Y2ggKHRhZ0lkKSB7CkBAIC0xMDcsMTAgKzExNyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHByb2Nl
c3NBdHRyaWJ1dGVzKGNvbnN0IEhUTUxUb2tlbjo6QXR0cmlidXRlTGlzdCYgYXR0cmlidXRlcykK
ICAgICB7CiAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICAgICAgaWYgKG1f
dGFnSWQgPj0gVW5rbm93blRhZ0lkKQogICAgICAgICAgICAgcmV0dXJuOwotCiAgICAgICAgIGZv
ciAoSFRNTFRva2VuOjpBdHRyaWJ1dGVMaXN0Ojpjb25zdF9pdGVyYXRvciBpdGVyID0gYXR0cmli
dXRlcy5iZWdpbigpOyBpdGVyICE9IGF0dHJpYnV0ZXMuZW5kKCk7ICsraXRlcikgewogICAgICAg
ICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZU5hbWUoaXRlci0+bmFtZSk7CiAgICAgICAgICAg
ICBTdHJpbmcgYXR0cmlidXRlVmFsdWUgPSBTdHJpbmdJbXBsOjpjcmVhdGU4Qml0SWZQb3NzaWJs
ZShpdGVyLT52YWx1ZSk7CkBAIC0xMTgsNiArMTI2LDE0IEBAIHB1YmxpYzoKICAgICAgICAgfQog
ICAgIH0KIAorICAgIHZvaWQgcHJvY2Vzc0F0dHJpYnV0ZXMoY29uc3QgVmVjdG9yPENvbXBhY3RB
dHRyaWJ1dGU+JiBhdHRyaWJ1dGVzKQorICAgIHsKKyAgICAgICAgaWYgKG1fdGFnSWQgPj0gVW5r
bm93blRhZ0lkKQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBmb3IgKFZlY3RvcjxDb21w
YWN0QXR0cmlidXRlPjo6Y29uc3RfaXRlcmF0b3IgaXRlciA9IGF0dHJpYnV0ZXMuYmVnaW4oKTsg
aXRlciAhPSBhdHRyaWJ1dGVzLmVuZCgpOyArK2l0ZXIpCisgICAgICAgICAgICBwcm9jZXNzQXR0
cmlidXRlKGl0ZXItPm5hbWUoKSwgaXRlci0+dmFsdWUoKSk7CisgICAgfQorCiAgICAgUGFzc093
blB0cjxQcmVsb2FkUmVxdWVzdD4gY3JlYXRlUHJlbG9hZFJlcXVlc3QoY29uc3QgS1VSTCYgcHJl
ZGljdGVkQmFzZVVSTCkKICAgICB7CiAgICAgICAgIGlmICghc2hvdWxkUHJlbG9hZCgpKQpAQCAt
MjQ0LDQ1ICsyNjAsODIgQEAgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6flRva2VuUHJlbG9hZFNjYW5u
ZXIoKQogewogfQogCi0jaWYgRU5BQkxFKFRFTVBMQVRFX0VMRU1FTlQpCi1ib29sIFRva2VuUHJl
bG9hZFNjYW5uZXI6OnByb2Nlc3NQb3NzaWJsZVRlbXBsYXRlVGFnKFRhZ0lkIHRhZ0lkLCBIVE1M
VG9rZW46OlR5cGUgdHlwZSkKK3ZvaWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2Nhbihjb25zdCBI
VE1MVG9rZW4mIHRva2VuLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0
cykKIHsKLSAgICBpZiAoaXNTdGFydE9yRW5kVGFnKHR5cGUpICYmIHRhZ0lkID09IFRlbXBsYXRl
VGFnSWQpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRUYWcodHlwZSkpCi0gICAgICAgICAgICBtX3Rl
bXBsYXRlQ291bnQrKzsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgbV90ZW1wbGF0ZUNvdW50
LS07Ci0gICAgICAgIHJldHVybiB0cnVlOyAvLyBUd2FzIG91ciB0b2tlbi4KLSAgICB9Ci0gICAg
Ly8gSWYgd2UncmUgaW4gYSB0ZW1wbGF0ZSB3ZSAiY29uc3VtZSIgYWxsIHRva2Vucy4KLSAgICBy
ZXR1cm4gbV90ZW1wbGF0ZUNvdW50ID4gMDsKKyAgICBzY2FuQ29tbW9uKHRva2VuLCByZXF1ZXN0
cyk7CiB9Ci0jZW5kaWYKIAotYm9vbCBUb2tlblByZWxvYWRTY2FubmVyOjpwcm9jZXNzUG9zc2li
bGVTdHlsZVRhZyhUYWdJZCB0YWdJZCwgSFRNTFRva2VuOjpUeXBlIHR5cGUpCit2b2lkIFRva2Vu
UHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3QgQ29tcGFjdEhUTUxUb2tlbiYgdG9rZW4sIFZlY3Rv
cjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mIHJlcXVlc3RzKQogewotICAgIEFTU0VSVChpc1N0
YXJ0T3JFbmRUYWcodHlwZSkpOwotICAgIGlmICh0YWdJZCAhPSBTdHlsZVRhZ0lkKQotICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0KLSAgICBtX2luU3R5bGUgPSBpc1N0YXJ0VGFnKHR5cGUpOwotCi0g
ICAgaWYgKCFtX2luU3R5bGUpCi0gICAgICAgIG1fY3NzU2Nhbm5lci5yZXNldCgpOwotCi0gICAg
cmV0dXJuIHRydWU7CisgICAgc2NhbkNvbW1vbih0b2tlbiwgcmVxdWVzdHMpOwogfQogCi1ib29s
IFRva2VuUHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NQb3NzaWJsZUJhc2VUYWcoVGFnSWQgdGFnSWQs
IGNvbnN0IEhUTUxUb2tlbiYgdG9rZW4pCit0ZW1wbGF0ZTx0eXBlbmFtZSBUb2tlbj4KK3ZvaWQg
VG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2NhbkNvbW1vbihjb25zdCBUb2tlbiYgdG9rZW4sIFZlY3Rv
cjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mIHJlcXVlc3RzKQogewotICAgIEFTU0VSVChpc1N0
YXJ0VGFnKHRva2VuLnR5cGUoKSkpOwotICAgIGlmICh0YWdJZCAhPSBCYXNlVGFnSWQpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICBzd2l0Y2ggKHRva2VuLnR5cGUoKSkgeworICAgIGNhc2Ug
SFRNTFRva2VuOjpDaGFyYWN0ZXI6IHsKKyAgICAgICAgaWYgKCFtX2luU3R5bGUpCisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIG1fY3NzU2Nhbm5lci5zY2FuKHRva2VuLmRhdGEoKSwgcmVx
dWVzdHMpOworICAgICAgICByZXR1cm47CisgICAgfQorICAgIGNhc2UgSFRNTFRva2VuOjpFbmRU
YWc6IHsKKyAgICAgICAgVGFnSWQgdGFnSWQgPSB0YWdJZEZvcih0b2tlbi5kYXRhKCkpOworI2lm
IEVOQUJMRShURU1QTEFURV9FTEVNRU5UKQorICAgICAgICBpZiAodGFnSWQgPT0gVGVtcGxhdGVU
YWdJZCkgeworICAgICAgICAgICAgaWYgKG1fdGVtcGxhdGVDb3VudCkKKyAgICAgICAgICAgICAg
ICAtLW1fdGVtcGxhdGVDb3VudDsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorI2Vu
ZGlmCisgICAgICAgIGlmICh0YWdJZCA9PSBTdHlsZVRhZ0lkKSB7CisgICAgICAgICAgICBpZiAo
bV9pblN0eWxlKQorICAgICAgICAgICAgICAgIG1fY3NzU2Nhbm5lci5yZXNldCgpOworICAgICAg
ICAgICAgbV9pblN0eWxlID0gZmFsc2U7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuOworICAg
IH0KKyAgICBjYXNlIEhUTUxUb2tlbjo6U3RhcnRUYWc6IHsKKyNpZiBFTkFCTEUoVEVNUExBVEVf
RUxFTUVOVCkKKyAgICAgICAgaWYgKG1fdGVtcGxhdGVDb3VudCkKKyAgICAgICAgICAgIHJldHVy
bjsKKyNlbmRpZgorICAgICAgICBUYWdJZCB0YWdJZCA9IHRhZ0lkRm9yKHRva2VuLmRhdGEoKSk7
CisjaWYgRU5BQkxFKFRFTVBMQVRFX0VMRU1FTlQpCisgICAgICAgIGlmICh0YWdJZCA9PSBUZW1w
bGF0ZVRhZ0lkKSB7CisgICAgICAgICAgICArK21fdGVtcGxhdGVDb3VudDsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorI2VuZGlmCisgICAgICAgIGlmICh0YWdJZCA9PSBTdHlsZVRh
Z0lkKSB7CisgICAgICAgICAgICBtX2luU3R5bGUgPSB0cnVlOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgICAgIGlmICh0YWdJZCA9PSBCYXNlVGFnSWQpIHsKKyAgICAgICAg
ICAgIC8vIFRoZSBmaXJzdCA8YmFzZT4gZWxlbWVudCBpcyB0aGUgb25lIHRoYXQgd2lucy4KKyAg
ICAgICAgICAgIGlmICghbV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTC5pc0VtcHR5KCkpCisgICAg
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgdXBkYXRlUHJlZGljdGVkQmFzZVVSTCh0
b2tlbik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KIAotICAgIC8vIFRoZSBmaXJz
dCA8YmFzZT4gZWxlbWVudCBpcyB0aGUgb25lIHRoYXQgd2lucy4KLSAgICBpZiAoIW1fcHJlZGlj
dGVkQmFzZUVsZW1lbnRVUkwuaXNFbXB0eSgpKQotICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAg
ICAgU3RhcnRUYWdTY2FubmVyIHNjYW5uZXIodGFnSWQpOworICAgICAgICBzY2FubmVyLnByb2Nl
c3NBdHRyaWJ1dGVzKHRva2VuLmF0dHJpYnV0ZXMoKSk7CisgICAgICAgIE93blB0cjxQcmVsb2Fk
UmVxdWVzdD4gcmVxdWVzdCA9IHNjYW5uZXIuY3JlYXRlUHJlbG9hZFJlcXVlc3QobV9wcmVkaWN0
ZWRCYXNlRWxlbWVudFVSTCk7CisgICAgICAgIGlmIChyZXF1ZXN0KQorICAgICAgICAgICAgcmVx
dWVzdHMuYXBwZW5kKHJlcXVlc3QucmVsZWFzZSgpKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KyAgICBkZWZhdWx0OiB7CisgICAgICAgIHJldHVybjsKKyAgICB9CisgICAgfQorfQogCit2b2lk
IFRva2VuUHJlbG9hZFNjYW5uZXI6OnVwZGF0ZVByZWRpY3RlZEJhc2VVUkwoY29uc3QgSFRNTFRv
a2VuJiB0b2tlbikKK3sKKyAgICBBU1NFUlQobV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTC5pc0Vt
cHR5KCkpOwogICAgIGZvciAoSFRNTFRva2VuOjpBdHRyaWJ1dGVMaXN0Ojpjb25zdF9pdGVyYXRv
ciBpdGVyID0gdG9rZW4uYXR0cmlidXRlcygpLmJlZ2luKCk7IGl0ZXIgIT0gdG9rZW4uYXR0cmli
dXRlcygpLmVuZCgpOyArK2l0ZXIpIHsKICAgICAgICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZU5h
bWUoaXRlci0+bmFtZSk7CiAgICAgICAgIGlmIChhdHRyaWJ1dGVOYW1lID09IGhyZWZBdHRyKSB7
CkBAIC0yOTEsNDEgKzM0NCwxMiBAQCBib29sIFRva2VuUHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NQ
b3NzaWJsZUJhc2VUYWcoVGFnSWQgdGFnSWQsIGNvbnN0IEhUTUxUb2tlbiYgdAogICAgICAgICAg
ICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9Ci0gICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQg
VG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2Nhbihjb25zdCBIVE1MVG9rZW4mIHRva2VuLCBWZWN0b3I8
T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cykKK3ZvaWQgVG9rZW5QcmVsb2FkU2Nh
bm5lcjo6dXBkYXRlUHJlZGljdGVkQmFzZVVSTChjb25zdCBDb21wYWN0SFRNTFRva2VuJiB0b2tl
bikKIHsKLSAgICAvLyA8c3R5bGU+IGlzIHRoZSBvbmx5IHBsYWNlIHdlIHNlYXJjaCBmb3IgdXJs
cyBpbiBub24tc3RhcnQvZW5kLXRhZyB0b2tlbnMuCi0gICAgaWYgKG1faW5TdHlsZSkgewotICAg
ICAgICBpZiAodG9rZW4udHlwZSgpICE9IEhUTUxUb2tlbjo6Q2hhcmFjdGVyKQotICAgICAgICAg
ICAgcmV0dXJuOwotICAgICAgICBjb25zdCBIVE1MVG9rZW46OkRhdGFWZWN0b3ImIGNoYXJhY3Rl
cnMgPSB0b2tlbi5jaGFyYWN0ZXJzKCk7Ci0gICAgICAgIHJldHVybiBtX2Nzc1NjYW5uZXIuc2Nh
bihjaGFyYWN0ZXJzLmJlZ2luKCksIGNoYXJhY3RlcnMuZW5kKCksIHJlcXVlc3RzKTsKLSAgICB9
Ci0KLSAgICBpZiAoIWlzU3RhcnRPckVuZFRhZyh0b2tlbi50eXBlKCkpKQotICAgICAgICByZXR1
cm47Ci0KLSAgICBBdG9taWNTdHJpbmcgdGFnTmFtZSh0b2tlbi5uYW1lKCkpOwotICAgIFRhZ0lk
IHRhZ0lkID0gaWRlbnRpZmllckZvcih0YWdOYW1lKTsKLQotI2lmIEVOQUJMRShURU1QTEFURV9F
TEVNRU5UKQotICAgIGlmIChwcm9jZXNzUG9zc2libGVUZW1wbGF0ZVRhZyh0YWdJZCwgdG9rZW4u
dHlwZSgpKSkKLSAgICAgICAgcmV0dXJuOwotI2VuZGlmCi0gICAgaWYgKHByb2Nlc3NQb3NzaWJs
ZVN0eWxlVGFnKHRhZ0lkLCB0b2tlbi50eXBlKCkpKQotICAgICAgICByZXR1cm47Ci0gICAgaWYg
KCFpc1N0YXJ0VGFnKHRva2VuLnR5cGUoKSkpCi0gICAgICAgIHJldHVybjsKLSAgICBpZiAocHJv
Y2Vzc1Bvc3NpYmxlQmFzZVRhZyh0YWdJZCwgdG9rZW4pKQotICAgICAgICByZXR1cm47Ci0KLSAg
ICBTdGFydFRhZ1NjYW5uZXIgc2Nhbm5lcih0YWdJZCk7Ci0gICAgc2Nhbm5lci5wcm9jZXNzQXR0
cmlidXRlcyh0b2tlbi5hdHRyaWJ1dGVzKCkpOwotICAgIE93blB0cjxQcmVsb2FkUmVxdWVzdD4g
cmVxdWVzdCA9ICBzY2FubmVyLmNyZWF0ZVByZWxvYWRSZXF1ZXN0KG1fcHJlZGljdGVkQmFzZUVs
ZW1lbnRVUkwpOwotICAgIGlmIChyZXF1ZXN0KQotICAgICAgICByZXF1ZXN0cy5hcHBlbmQocmVx
dWVzdC5yZWxlYXNlKCkpOworICAgIEFTU0VSVChtX3ByZWRpY3RlZEJhc2VFbGVtZW50VVJMLmlz
RW1wdHkoKSk7CisgICAgbV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTCA9IEtVUkwobV9kb2N1bWVu
dFVSTCwgc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3BhY2VzKHRva2VuLmdldEF0dHJpYnV0
ZUl0ZW0oaHJlZkF0dHIpLT52YWx1ZSgpKSk7CiB9CiAKIEhUTUxQcmVsb2FkU2Nhbm5lcjo6SFRN
TFByZWxvYWRTY2FubmVyKGNvbnN0IEhUTUxQYXJzZXJPcHRpb25zJiBvcHRpb25zLCBjb25zdCBL
VVJMJiBkb2N1bWVudFVSTCkKQEAgLTM1Myw3ICszNzcsNyBAQCB2b2lkIEhUTUxQcmVsb2FkU2Nh
bm5lcjo6c2NhbihIVE1MUmVzb3VyY2VQcmVsb2FkZXIqIHByZWxvYWRlciwgY29uc3QgS1VSTCYg
c3RhcgogCiAgICAgVmVjdG9yPE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiByZXF1ZXN0czsKICAg
ICB3aGlsZSAobV90b2tlbml6ZXItPm5leHRUb2tlbihtX3NvdXJjZSwgbV90b2tlbikpIHsKLSAg
ICAgICAgaWYgKGlzU3RhcnRUYWcobV90b2tlbi50eXBlKCkpKQorICAgICAgICBpZiAobV90b2tl
bi50eXBlKCkgPT0gSFRNTFRva2VuOjpTdGFydFRhZykKICAgICAgICAgICAgIG1fdG9rZW5pemVy
LT51cGRhdGVTdGF0ZUZvcihBdG9taWNTdHJpbmcobV90b2tlbi5uYW1lKCkpKTsKICAgICAgICAg
bV9zY2FubmVyLnNjYW4obV90b2tlbiwgcmVxdWVzdHMpOwogICAgICAgICBtX3Rva2VuLmNsZWFy
KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNj
YW5uZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5o
CmluZGV4IGZjZTY1NTJmOTg5YTJiM2VkNGY0YjgwOTljYzU0MmMwM2RiYjhkZDcuLjBhZjkwNGFm
MjVhOWQ0ZjU4NTg5MDFkMzIyOWM3OWY3MGNjYzllMTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCkBAIC0yOCw2ICsyOCw3IEBACiAjZGVm
aW5lIEhUTUxQcmVsb2FkU2Nhbm5lcl9oCiAKICNpbmNsdWRlICJDU1NQcmVsb2FkU2Nhbm5lci5o
IgorI2luY2x1ZGUgIkNvbXBhY3RIVE1MVG9rZW4uaCIKICNpbmNsdWRlICJIVE1MVG9rZW4uaCIK
ICNpbmNsdWRlICJTZWdtZW50ZWRTdHJpbmcuaCIKIApAQCAtNDQsNiArNDUsNyBAQCBwdWJsaWM6
CiAgICAgflRva2VuUHJlbG9hZFNjYW5uZXIoKTsKIAogICAgIHZvaWQgc2Nhbihjb25zdCBIVE1M
VG9rZW4mLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cyk7CisgICAg
dm9pZCBzY2FuKGNvbnN0IENvbXBhY3RIVE1MVG9rZW4mLCBWZWN0b3I8T3duUHRyPFByZWxvYWRS
ZXF1ZXN0PiA+JiByZXF1ZXN0cyk7CiAKICAgICB2b2lkIHNldFByZWRpY3RlZEJhc2VFbGVtZW50
VVJMKGNvbnN0IEtVUkwmIHVybCkgeyBtX3ByZWRpY3RlZEJhc2VFbGVtZW50VVJMID0gdXJsOyB9
CiAKQEAgLTY0LDE1ICs2NiwxNiBAQCBwcml2YXRlOgogCiAgICAgY2xhc3MgU3RhcnRUYWdTY2Fu
bmVyOwogCi0gICAgc3RhdGljIFRhZ0lkIGlkZW50aWZpZXJGb3IoY29uc3QgQXRvbWljU3RyaW5n
JiB0YWdOYW1lKTsKLSAgICBzdGF0aWMgU3RyaW5nIGluaXRpdGF0b3JGb3IoVGFnSWQpOworICAg
IHRlbXBsYXRlPHR5cGVuYW1lIFRva2VuPgorICAgIGlubGluZSB2b2lkIHNjYW5Db21tb24oY29u
c3QgVG9rZW4mLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cyk7CiAK
LSNpZiBFTkFCTEUoVEVNUExBVEVfRUxFTUVOVCkKLSAgICBib29sIHByb2Nlc3NQb3NzaWJsZVRl
bXBsYXRlVGFnKFRhZ0lkLCBIVE1MVG9rZW46OlR5cGUpOwotI2VuZGlmCisgICAgc3RhdGljIFRh
Z0lkIHRhZ0lkRm9yKGNvbnN0IEhUTUxUb2tlbjo6RGF0YVZlY3RvciYpOworICAgIHN0YXRpYyBU
YWdJZCB0YWdJZEZvcihjb25zdCBTdHJpbmcmKTsKKworICAgIHN0YXRpYyBTdHJpbmcgaW5pdGl0
YXRvckZvcihUYWdJZCk7CiAKLSAgICBib29sIHByb2Nlc3NQb3NzaWJsZVN0eWxlVGFnKFRhZ0lk
LCBIVE1MVG9rZW46OlR5cGUpOwotICAgIGJvb2wgcHJvY2Vzc1Bvc3NpYmxlQmFzZVRhZyhUYWdJ
ZCwgY29uc3QgSFRNTFRva2VuJik7CisgICAgdm9pZCB1cGRhdGVQcmVkaWN0ZWRCYXNlVVJMKGNv
bnN0IEhUTUxUb2tlbiYpOworICAgIHZvaWQgdXBkYXRlUHJlZGljdGVkQmFzZVVSTChjb25zdCBD
b21wYWN0SFRNTFRva2VuJik7CiAKICAgICBDU1NQcmVsb2FkU2Nhbm5lciBtX2Nzc1NjYW5uZXI7
CiAgICAgS1VSTCBtX2RvY3VtZW50VVJMOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188600</attachid>
            <date>2013-02-15 10:32:07 -0800</date>
            <delta_ts>2013-02-15 11:13:10 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-109861-20130215102833.patch</filename>
            <type>text/plain</type>
            <size>22228</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQyODYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWM2ZmIzYTQ3MTE0Yzdl
YzViZDNhOWJiN2QyNWU5OWY2ODhjZTY5Ny4uODE5OGEyMzM5ZDI3YTdhYzdjOTM1ZTY5YzM1Mjk5
NDE2MWQyNzVlNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEzLTAyLTE1ICBBZGFt
IEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgVG9rZW5QcmVsb2FkU2Nhbm5l
ciBzaG91bGQgYmUgYWJsZSB0byBzY2FuIENvbXBhY3RIVE1MVG9rZW5zCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDk4NjEKKworICAgICAgICBSZXZp
ZXdlZCBieSBFcmljIFNlaWRlbC4KKworICAgICAgICBUaGlzIHBhdGNoIG1vdmVzIHRoZSBtYWlu
IHNjYW5uaW5nIGxvZ2ljIGZvciB0aGUgVG9rZW5QcmVsb2FkU2Nhbm5lciB0bworICAgICAgICBh
IHRlbXBsYXRlZCBzY2FuQ29tbW9uIHJvdXRpbmUgdGhhdCBjYW4gc2NhbiBlaXRoZXIgYW4gSFRN
TFRva2VuIG9yIGEKKyAgICAgICAgQ29tcGFjdEhUTUxUb2tlbi4gVGhpcyBwYXRjaCB3aWxsIGxl
dCB0aGUgQmFja2dyb3VuZEhUTUxQYXJzZXIgcHJlbG9hZAorICAgICAgICBzY2FuIGl0cyBDb21w
YWN0SFRNTFRva2Vucy4KKworICAgICAgICAqIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVy
LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJlbG9hZFNj
YW5uZXI6OnNjYW5Db21tb24pOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJlbG9hZFNjYW5uZXI6
OnNjYW4pOgorICAgICAgICAqIGh0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmg6CisgICAg
ICAgIChDU1NQcmVsb2FkU2Nhbm5lcik6CisgICAgICAgICAgICAtIFR3ZWFrIHRoZSBDU1NQcmVs
b2FkU2Nhbm5lciBBUEkgc2xpZ2h0bHkgdG8gbWFrZSBpdCBlYXNpZXIgdG8KKyAgICAgICAgICAg
ICAgY2FsbCBmcm9tIHRlbXBsYXRlZCBjb2RlLgorICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxQ
cmVsb2FkU2Nhbm5lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUb2tlblByZWxvYWRTY2FubmVy
Ojp0YWdJZEZvcik6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OlRva2Vu
UHJlbG9hZFNjYW5uZXI6OlN0YXJ0VGFnU2Nhbm5lcjo6cHJvY2Vzc0F0dHJpYnV0ZXMpOgorICAg
ICAgICAoVG9rZW5QcmVsb2FkU2Nhbm5lcjo6U3RhcnRUYWdTY2FubmVyKToKKyAgICAgICAgKFdl
YkNvcmU6OlRva2VuUHJlbG9hZFNjYW5uZXI6OnNjYW4pOgorICAgICAgICAoV2ViQ29yZTo6VG9r
ZW5QcmVsb2FkU2Nhbm5lcjo6c2NhbkNvbW1vbik6CisgICAgICAgIChXZWJDb3JlOjpUb2tlblBy
ZWxvYWRTY2FubmVyOjp1cGRhdGVQcmVkaWN0ZWRCYXNlVVJMKToKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxQcmVsb2FkU2Nhbm5lcjo6c2Nhbik6CisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFBy
ZWxvYWRTY2FubmVyLmg6CisgICAgICAgIChUb2tlblByZWxvYWRTY2FubmVyKToKKwogMjAxMy0w
Mi0xNCAgWXVyeSBTZW1pa2hhdHNreSAgPHl1cnlzQGNocm9taXVtLm9yZz4KIAogICAgICAgICBX
ZWIgSW5zcGVjdG9yOiBleHRyYWN0IERPTSBjb3VudGVycyBncmFwaCBpbXBsZW1lbnRhdGlvbiBp
bnRvIGl0cyBvd24gY2xhc3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2Vy
L0NTU1ByZWxvYWRTY2FubmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1By
ZWxvYWRTY2FubmVyLmNwcAppbmRleCA5NTc3MDc5MzY3ZTVkNGI4MjdhODRiYWI3MzZiZTk2ZWM5
YzcwNzg0Li5jZjliYzI0OTQ0Y2M5NjljZDc0Yjc2Y2I2OWI5ZWE0NTQzZjE5OGUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5uZXIuY3BwCkBAIC01
MCwyMCArNTAsMjkgQEAgdm9pZCBDU1NQcmVsb2FkU2Nhbm5lcjo6cmVzZXQoKQogICAgIG1fcnVs
ZVZhbHVlLmNsZWFyKCk7CiB9CiAKLXZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3Qg
VUNoYXIqIGJlZ2luLCBjb25zdCBVQ2hhciogZW5kLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1
ZXN0PiA+JiByZXF1ZXN0cykKK3RlbXBsYXRlPHR5cGVuYW1lIENoYXI+Cit2b2lkIENTU1ByZWxv
YWRTY2FubmVyOjpzY2FuQ29tbW9uKGNvbnN0IENoYXIqIGJlZ2luLCBjb25zdCBDaGFyKiBlbmQs
IFZlY3RvcjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mIHJlcXVlc3RzKQogewogICAgIG1fcmVx
dWVzdHMgPSAmcmVxdWVzdHM7Ci0gICAgZm9yIChjb25zdCBVQ2hhciogaXQgPSBiZWdpbjsgaXQg
IT0gZW5kICYmIG1fc3RhdGUgIT0gRG9uZVBhcnNpbmdJbXBvcnRSdWxlczsgKytpdCkKKyAgICBm
b3IgKGNvbnN0IENoYXIqIGl0ID0gYmVnaW47IGl0ICE9IGVuZCAmJiBtX3N0YXRlICE9IERvbmVQ
YXJzaW5nSW1wb3J0UnVsZXM7ICsraXQpCiAgICAgICAgIHRva2VuaXplKCppdCk7CiAgICAgbV9y
ZXF1ZXN0cyA9IDA7CiB9CiAKLXZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3QgTENo
YXIqIGJlZ2luLCBjb25zdCBMQ2hhciogZW5kLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0
PiA+JiByZXF1ZXN0cykKK3ZvaWQgQ1NTUHJlbG9hZFNjYW5uZXI6OnNjYW4oY29uc3QgSFRNTFRv
a2VuOjpEYXRhVmVjdG9yJiBkYXRhLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiBy
ZXF1ZXN0cykKIHsKLSAgICBtX3JlcXVlc3RzID0gJnJlcXVlc3RzOwotICAgIGZvciAoY29uc3Qg
TENoYXIqIGl0ID0gYmVnaW47IGl0ICE9IGVuZCAmJiBtX3N0YXRlICE9IERvbmVQYXJzaW5nSW1w
b3J0UnVsZXM7ICsraXQpCi0gICAgICAgIHRva2VuaXplKCppdCk7Ci0gICAgbV9yZXF1ZXN0cyA9
IDA7CisgICAgc2NhbkNvbW1vbihkYXRhLmRhdGEoKSwgZGF0YS5kYXRhKCkgKyBkYXRhLnNpemUo
KSwgcmVxdWVzdHMpOworfQorCit2b2lkIENTU1ByZWxvYWRTY2FubmVyOjpzY2FuKGNvbnN0IFN0
cmluZyYgZGF0YSwgVmVjdG9yPE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYgcmVxdWVzdHMpCit7
CisgICAgaWYgKGRhdGEuaXM4Qml0KCkpIHsKKyAgICAgICAgY29uc3QgTENoYXIqIGJlZ2luID0g
ZGF0YS5jaGFyYWN0ZXJzOCgpOworICAgICAgICBzY2FuQ29tbW9uKGJlZ2luLCBiZWdpbiArIGRh
dGEubGVuZ3RoKCksIHJlcXVlc3RzKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjb25z
dCBVQ2hhciogYmVnaW4gPSBkYXRhLmNoYXJhY3RlcnMxNigpOworICAgIHNjYW5Db21tb24oYmVn
aW4sIGJlZ2luICsgZGF0YS5sZW5ndGgoKSwgcmVxdWVzdHMpOwogfQogCiBpbmxpbmUgdm9pZCBD
U1NQcmVsb2FkU2Nhbm5lcjo6dG9rZW5pemUoVUNoYXIgYykKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRTY2FubmVyLmggYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3BhcnNlci9DU1NQcmVsb2FkU2Nhbm5lci5oCmluZGV4IDIyZjZmYTg2OWNhNTI0NTI4ODFi
NmE4ODFiZDUxZTY3ZTc2ZmViNGUuLjZjYjY2ZmE3NzkyYWM4MzFmM2Q4ZGM0NjIyN2Y5OGU4NjFk
NzdhMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0NTU1ByZWxvYWRT
Y2FubmVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQ1NTUHJlbG9hZFNjYW5u
ZXIuaApAQCAtMjgsNiArMjgsNyBAQAogI2RlZmluZSBDU1NQcmVsb2FkU2Nhbm5lcl9oCiAKICNp
bmNsdWRlICJIVE1MUmVzb3VyY2VQcmVsb2FkZXIuaCIKKyNpbmNsdWRlICJIVE1MVG9rZW4uaCIK
ICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTQwLDggKzQxLDggQEAgcHVibGljOgogCiAgICAgdm9pZCByZXNldCgpOwogCi0gICAg
dm9pZCBzY2FuKGNvbnN0IFVDaGFyKiBiZWdpbiwgY29uc3QgVUNoYXIqIGVuZCwgVmVjdG9yPE93
blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYpOwotICAgIHZvaWQgc2Nhbihjb25zdCBMQ2hhciogYmVn
aW4sIGNvbnN0IExDaGFyKiBlbmQsIFZlY3RvcjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mKTsK
KyAgICB2b2lkIHNjYW4oY29uc3QgSFRNTFRva2VuOjpEYXRhVmVjdG9yJiwgVmVjdG9yPE93blB0
cjxQcmVsb2FkUmVxdWVzdD4gPiYpOworICAgIHZvaWQgc2Nhbihjb25zdCBTdHJpbmcmLCBWZWN0
b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+Jik7CiAKIHByaXZhdGU6CiAgICAgZW51bSBTdGF0
ZSB7CkBAIC01Nyw2ICs1OCw5IEBAIHByaXZhdGU6CiAgICAgICAgIERvbmVQYXJzaW5nSW1wb3J0
UnVsZXMsCiAgICAgfTsKIAorICAgIHRlbXBsYXRlPHR5cGVuYW1lIENoYXI+CisgICAgdm9pZCBz
Y2FuQ29tbW9uKGNvbnN0IENoYXIqIGJlZ2luLCBjb25zdCBDaGFyKiBlbmQsIFZlY3RvcjxPd25Q
dHI8UHJlbG9hZFJlcXVlc3Q+ID4mKTsKKwogICAgIGlubGluZSB2b2lkIHRva2VuaXplKFVDaGFy
KTsKICAgICB2b2lkIGVtaXRSdWxlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Bh
cnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCmluZGV4IDg0ODU2NGQ3NTE2Yjk4MjlhNGYwZjli
NjJhY2IxMzE1YTA0YjhmY2MuLjAxNjBlNWY5MTY4YTg5YjIxYTRiYmEyZWY0OGRlYmI0N2Q1YTc3
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nh
bm5lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRTY2Fu
bmVyLmNwcApAQCAtNDMsMTggKzQzLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBu
YW1lc3BhY2UgSFRNTE5hbWVzOwogCi1zdGF0aWMgYm9vbCBpc1N0YXJ0VGFnKEhUTUxUb2tlbjo6
VHlwZSB0eXBlKQotewotICAgIHJldHVybiB0eXBlID09IEhUTUxUb2tlbjo6U3RhcnRUYWc7Ci19
Ci0KLXN0YXRpYyBib29sIGlzU3RhcnRPckVuZFRhZyhIVE1MVG9rZW46OlR5cGUgdHlwZSkKLXsK
LSAgICByZXR1cm4gdHlwZSA9PSBIVE1MVG9rZW46OkVuZFRhZyB8fCBpc1N0YXJ0VGFnKHR5cGUp
OwotfQotCi1Ub2tlblByZWxvYWRTY2FubmVyOjpUYWdJZCBUb2tlblByZWxvYWRTY2FubmVyOjpp
ZGVudGlmaWVyRm9yKGNvbnN0IEF0b21pY1N0cmluZyYgdGFnTmFtZSkKK1Rva2VuUHJlbG9hZFNj
YW5uZXI6OlRhZ0lkIFRva2VuUHJlbG9hZFNjYW5uZXI6OnRhZ0lkRm9yKGNvbnN0IEhUTUxUb2tl
bjo6RGF0YVZlY3RvciYgZGF0YSkKIHsKKyAgICBBdG9taWNTdHJpbmcgdGFnTmFtZShkYXRhKTsK
ICAgICBpZiAodGFnTmFtZSA9PSBpbWdUYWcpCiAgICAgICAgIHJldHVybiBJbWdUYWdJZDsKICAg
ICBpZiAodGFnTmFtZSA9PSBpbnB1dFRhZykKQEAgLTcyLDYgKzYzLDI1IEBAIFRva2VuUHJlbG9h
ZFNjYW5uZXI6OlRhZ0lkIFRva2VuUHJlbG9hZFNjYW5uZXI6OmlkZW50aWZpZXJGb3IoY29uc3Qg
QXRvbWljU3RyaW5nCiAgICAgcmV0dXJuIFVua25vd25UYWdJZDsKIH0KIAorVG9rZW5QcmVsb2Fk
U2Nhbm5lcjo6VGFnSWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6dGFnSWRGb3IoY29uc3QgU3RyaW5n
JiB0YWdOYW1lKQoreworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgaW1nVGFnKSkK
KyAgICAgICAgcmV0dXJuIEltZ1RhZ0lkOworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFt
ZSwgaW5wdXRUYWcpKQorICAgICAgICByZXR1cm4gSW5wdXRUYWdJZDsKKyAgICBpZiAodGhyZWFk
U2FmZU1hdGNoKHRhZ05hbWUsIGxpbmtUYWcpKQorICAgICAgICByZXR1cm4gTGlua1RhZ0lkOwor
ICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgc2NyaXB0VGFnKSkKKyAgICAgICAgcmV0
dXJuIFNjcmlwdFRhZ0lkOworICAgIGlmICh0aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgc3R5bGVU
YWcpKQorICAgICAgICByZXR1cm4gU3R5bGVUYWdJZDsKKyAgICBpZiAodGhyZWFkU2FmZU1hdGNo
KHRhZ05hbWUsIGJhc2VUYWcpKQorICAgICAgICByZXR1cm4gQmFzZVRhZ0lkOworICAgIGlmICh0
aHJlYWRTYWZlTWF0Y2godGFnTmFtZSwgdGVtcGxhdGVUYWcpKQorICAgICAgICByZXR1cm4gVGVt
cGxhdGVUYWdJZDsKKyAgICByZXR1cm4gVW5rbm93blRhZ0lkOworfQorCiBTdHJpbmcgVG9rZW5Q
cmVsb2FkU2Nhbm5lcjo6aW5pdGl0YXRvckZvcihUYWdJZCB0YWdJZCkKIHsKICAgICBzd2l0Y2gg
KHRhZ0lkKSB7CkBAIC0xMDcsMTAgKzExNyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHByb2Nlc3NB
dHRyaWJ1dGVzKGNvbnN0IEhUTUxUb2tlbjo6QXR0cmlidXRlTGlzdCYgYXR0cmlidXRlcykKICAg
ICB7CiAgICAgICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7Ci0KICAgICAgICAgaWYgKG1fdGFn
SWQgPj0gVW5rbm93blRhZ0lkKQogICAgICAgICAgICAgcmV0dXJuOwotCiAgICAgICAgIGZvciAo
SFRNTFRva2VuOjpBdHRyaWJ1dGVMaXN0Ojpjb25zdF9pdGVyYXRvciBpdGVyID0gYXR0cmlidXRl
cy5iZWdpbigpOyBpdGVyICE9IGF0dHJpYnV0ZXMuZW5kKCk7ICsraXRlcikgewogICAgICAgICAg
ICAgQXRvbWljU3RyaW5nIGF0dHJpYnV0ZU5hbWUoaXRlci0+bmFtZSk7CiAgICAgICAgICAgICBT
dHJpbmcgYXR0cmlidXRlVmFsdWUgPSBTdHJpbmdJbXBsOjpjcmVhdGU4Qml0SWZQb3NzaWJsZShp
dGVyLT52YWx1ZSk7CkBAIC0xMTgsNiArMTI2LDE2IEBAIHB1YmxpYzoKICAgICAgICAgfQogICAg
IH0KIAorI2lmIEVOQUJMRShUSFJFQURFRF9IVE1MX1BBUlNFUikKKyAgICB2b2lkIHByb2Nlc3NB
dHRyaWJ1dGVzKGNvbnN0IFZlY3RvcjxDb21wYWN0QXR0cmlidXRlPiYgYXR0cmlidXRlcykKKyAg
ICB7CisgICAgICAgIGlmIChtX3RhZ0lkID49IFVua25vd25UYWdJZCkKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgZm9yIChWZWN0b3I8Q29tcGFjdEF0dHJpYnV0ZT46OmNvbnN0X2l0ZXJh
dG9yIGl0ZXIgPSBhdHRyaWJ1dGVzLmJlZ2luKCk7IGl0ZXIgIT0gYXR0cmlidXRlcy5lbmQoKTsg
KytpdGVyKQorICAgICAgICAgICAgcHJvY2Vzc0F0dHJpYnV0ZShpdGVyLT5uYW1lKCksIGl0ZXIt
PnZhbHVlKCkpOworICAgIH0KKyNlbmRpZgorCiAgICAgUGFzc093blB0cjxQcmVsb2FkUmVxdWVz
dD4gY3JlYXRlUHJlbG9hZFJlcXVlc3QoY29uc3QgS1VSTCYgcHJlZGljdGVkQmFzZVVSTCkKICAg
ICB7CiAgICAgICAgIGlmICghc2hvdWxkUHJlbG9hZCgpKQpAQCAtMjQ0LDQ1ICsyNjIsODQgQEAg
VG9rZW5QcmVsb2FkU2Nhbm5lcjo6flRva2VuUHJlbG9hZFNjYW5uZXIoKQogewogfQogCi0jaWYg
RU5BQkxFKFRFTVBMQVRFX0VMRU1FTlQpCi1ib29sIFRva2VuUHJlbG9hZFNjYW5uZXI6OnByb2Nl
c3NQb3NzaWJsZVRlbXBsYXRlVGFnKFRhZ0lkIHRhZ0lkLCBIVE1MVG9rZW46OlR5cGUgdHlwZSkK
K3ZvaWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2Nhbihjb25zdCBIVE1MVG9rZW4mIHRva2VuLCBW
ZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cykKIHsKLSAgICBpZiAoaXNT
dGFydE9yRW5kVGFnKHR5cGUpICYmIHRhZ0lkID09IFRlbXBsYXRlVGFnSWQpIHsKLSAgICAgICAg
aWYgKGlzU3RhcnRUYWcodHlwZSkpCi0gICAgICAgICAgICBtX3RlbXBsYXRlQ291bnQrKzsKLSAg
ICAgICAgZWxzZQotICAgICAgICAgICAgbV90ZW1wbGF0ZUNvdW50LS07Ci0gICAgICAgIHJldHVy
biB0cnVlOyAvLyBUd2FzIG91ciB0b2tlbi4KLSAgICB9Ci0gICAgLy8gSWYgd2UncmUgaW4gYSB0
ZW1wbGF0ZSB3ZSAiY29uc3VtZSIgYWxsIHRva2Vucy4KLSAgICByZXR1cm4gbV90ZW1wbGF0ZUNv
dW50ID4gMDsKKyAgICBzY2FuQ29tbW9uKHRva2VuLCByZXF1ZXN0cyk7CiB9Ci0jZW5kaWYKIAot
Ym9vbCBUb2tlblByZWxvYWRTY2FubmVyOjpwcm9jZXNzUG9zc2libGVTdHlsZVRhZyhUYWdJZCB0
YWdJZCwgSFRNTFRva2VuOjpUeXBlIHR5cGUpCisjaWYgRU5BQkxFKFRIUkVBREVEX0hUTUxfUEFS
U0VSKQordm9pZCBUb2tlblByZWxvYWRTY2FubmVyOjpzY2FuKGNvbnN0IENvbXBhY3RIVE1MVG9r
ZW4mIHRva2VuLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cykKIHsK
LSAgICBBU1NFUlQoaXNTdGFydE9yRW5kVGFnKHR5cGUpKTsKLSAgICBpZiAodGFnSWQgIT0gU3R5
bGVUYWdJZCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgbV9pblN0eWxlID0gaXNTdGFy
dFRhZyh0eXBlKTsKLQotICAgIGlmICghbV9pblN0eWxlKQotICAgICAgICBtX2Nzc1NjYW5uZXIu
cmVzZXQoKTsKLQotICAgIHJldHVybiB0cnVlOworICAgIHNjYW5Db21tb24odG9rZW4sIHJlcXVl
c3RzKTsKIH0KKyNlbmRpZgogCi1ib29sIFRva2VuUHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NQb3Nz
aWJsZUJhc2VUYWcoVGFnSWQgdGFnSWQsIGNvbnN0IEhUTUxUb2tlbiYgdG9rZW4pCit0ZW1wbGF0
ZTx0eXBlbmFtZSBUb2tlbj4KK3ZvaWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2NhbkNvbW1vbihj
b25zdCBUb2tlbiYgdG9rZW4sIFZlY3RvcjxPd25QdHI8UHJlbG9hZFJlcXVlc3Q+ID4mIHJlcXVl
c3RzKQogewotICAgIEFTU0VSVChpc1N0YXJ0VGFnKHRva2VuLnR5cGUoKSkpOwotICAgIGlmICh0
YWdJZCAhPSBCYXNlVGFnSWQpCi0gICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBzd2l0Y2ggKHRv
a2VuLnR5cGUoKSkgeworICAgIGNhc2UgSFRNTFRva2VuOjpDaGFyYWN0ZXI6IHsKKyAgICAgICAg
aWYgKCFtX2luU3R5bGUpCisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIG1fY3NzU2Nhbm5l
ci5zY2FuKHRva2VuLmRhdGEoKSwgcmVxdWVzdHMpOworICAgICAgICByZXR1cm47CisgICAgfQor
ICAgIGNhc2UgSFRNTFRva2VuOjpFbmRUYWc6IHsKKyAgICAgICAgVGFnSWQgdGFnSWQgPSB0YWdJ
ZEZvcih0b2tlbi5kYXRhKCkpOworI2lmIEVOQUJMRShURU1QTEFURV9FTEVNRU5UKQorICAgICAg
ICBpZiAodGFnSWQgPT0gVGVtcGxhdGVUYWdJZCkgeworICAgICAgICAgICAgaWYgKG1fdGVtcGxh
dGVDb3VudCkKKyAgICAgICAgICAgICAgICAtLW1fdGVtcGxhdGVDb3VudDsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorI2VuZGlmCisgICAgICAgIGlmICh0YWdJZCA9PSBTdHlsZVRh
Z0lkKSB7CisgICAgICAgICAgICBpZiAobV9pblN0eWxlKQorICAgICAgICAgICAgICAgIG1fY3Nz
U2Nhbm5lci5yZXNldCgpOworICAgICAgICAgICAgbV9pblN0eWxlID0gZmFsc2U7CisgICAgICAg
IH0KKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjYXNlIEhUTUxUb2tlbjo6U3RhcnRUYWc6
IHsKKyNpZiBFTkFCTEUoVEVNUExBVEVfRUxFTUVOVCkKKyAgICAgICAgaWYgKG1fdGVtcGxhdGVD
b3VudCkKKyAgICAgICAgICAgIHJldHVybjsKKyNlbmRpZgorICAgICAgICBUYWdJZCB0YWdJZCA9
IHRhZ0lkRm9yKHRva2VuLmRhdGEoKSk7CisjaWYgRU5BQkxFKFRFTVBMQVRFX0VMRU1FTlQpCisg
ICAgICAgIGlmICh0YWdJZCA9PSBUZW1wbGF0ZVRhZ0lkKSB7CisgICAgICAgICAgICArK21fdGVt
cGxhdGVDb3VudDsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorI2VuZGlmCisgICAg
ICAgIGlmICh0YWdJZCA9PSBTdHlsZVRhZ0lkKSB7CisgICAgICAgICAgICBtX2luU3R5bGUgPSB0
cnVlOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgIGlmICh0YWdJZCA9
PSBCYXNlVGFnSWQpIHsKKyAgICAgICAgICAgIC8vIFRoZSBmaXJzdCA8YmFzZT4gZWxlbWVudCBp
cyB0aGUgb25lIHRoYXQgd2lucy4KKyAgICAgICAgICAgIGlmICghbV9wcmVkaWN0ZWRCYXNlRWxl
bWVudFVSTC5pc0VtcHR5KCkpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAg
dXBkYXRlUHJlZGljdGVkQmFzZVVSTCh0b2tlbik7CisgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0KIAotICAgIC8vIFRoZSBmaXJzdCA8YmFzZT4gZWxlbWVudCBpcyB0aGUgb25lIHRoYXQg
d2lucy4KLSAgICBpZiAoIW1fcHJlZGljdGVkQmFzZUVsZW1lbnRVUkwuaXNFbXB0eSgpKQotICAg
ICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgU3RhcnRUYWdTY2FubmVyIHNjYW5uZXIodGFnSWQp
OworICAgICAgICBzY2FubmVyLnByb2Nlc3NBdHRyaWJ1dGVzKHRva2VuLmF0dHJpYnV0ZXMoKSk7
CisgICAgICAgIE93blB0cjxQcmVsb2FkUmVxdWVzdD4gcmVxdWVzdCA9IHNjYW5uZXIuY3JlYXRl
UHJlbG9hZFJlcXVlc3QobV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTCk7CisgICAgICAgIGlmIChy
ZXF1ZXN0KQorICAgICAgICAgICAgcmVxdWVzdHMuYXBwZW5kKHJlcXVlc3QucmVsZWFzZSgpKTsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBkZWZhdWx0OiB7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisgICAgfQorfQogCit2b2lkIFRva2VuUHJlbG9hZFNjYW5uZXI6OnVwZGF0ZVByZWRp
Y3RlZEJhc2VVUkwoY29uc3QgSFRNTFRva2VuJiB0b2tlbikKK3sKKyAgICBBU1NFUlQobV9wcmVk
aWN0ZWRCYXNlRWxlbWVudFVSTC5pc0VtcHR5KCkpOwogICAgIGZvciAoSFRNTFRva2VuOjpBdHRy
aWJ1dGVMaXN0Ojpjb25zdF9pdGVyYXRvciBpdGVyID0gdG9rZW4uYXR0cmlidXRlcygpLmJlZ2lu
KCk7IGl0ZXIgIT0gdG9rZW4uYXR0cmlidXRlcygpLmVuZCgpOyArK2l0ZXIpIHsKICAgICAgICAg
QXRvbWljU3RyaW5nIGF0dHJpYnV0ZU5hbWUoaXRlci0+bmFtZSk7CiAgICAgICAgIGlmIChhdHRy
aWJ1dGVOYW1lID09IGhyZWZBdHRyKSB7CkBAIC0yOTEsNDIgKzM0OCwxNSBAQCBib29sIFRva2Vu
UHJlbG9hZFNjYW5uZXI6OnByb2Nlc3NQb3NzaWJsZUJhc2VUYWcoVGFnSWQgdGFnSWQsIGNvbnN0
IEhUTUxUb2tlbiYgdAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICB9Ci0gICAg
cmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgVG9rZW5QcmVsb2FkU2Nhbm5lcjo6c2Nhbihjb25zdCBI
VE1MVG9rZW4mIHRva2VuLCBWZWN0b3I8T3duUHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0
cykKKyNpZiBFTkFCTEUoVEhSRUFERURfSFRNTF9QQVJTRVIpCit2b2lkIFRva2VuUHJlbG9hZFNj
YW5uZXI6OnVwZGF0ZVByZWRpY3RlZEJhc2VVUkwoY29uc3QgQ29tcGFjdEhUTUxUb2tlbiYgdG9r
ZW4pCiB7Ci0gICAgLy8gPHN0eWxlPiBpcyB0aGUgb25seSBwbGFjZSB3ZSBzZWFyY2ggZm9yIHVy
bHMgaW4gbm9uLXN0YXJ0L2VuZC10YWcgdG9rZW5zLgotICAgIGlmIChtX2luU3R5bGUpIHsKLSAg
ICAgICAgaWYgKHRva2VuLnR5cGUoKSAhPSBIVE1MVG9rZW46OkNoYXJhY3RlcikKLSAgICAgICAg
ICAgIHJldHVybjsKLSAgICAgICAgY29uc3QgSFRNTFRva2VuOjpEYXRhVmVjdG9yJiBjaGFyYWN0
ZXJzID0gdG9rZW4uY2hhcmFjdGVycygpOwotICAgICAgICByZXR1cm4gbV9jc3NTY2FubmVyLnNj
YW4oY2hhcmFjdGVycy5iZWdpbigpLCBjaGFyYWN0ZXJzLmVuZCgpLCByZXF1ZXN0cyk7Ci0gICAg
fQotCi0gICAgaWYgKCFpc1N0YXJ0T3JFbmRUYWcodG9rZW4udHlwZSgpKSkKLSAgICAgICAgcmV0
dXJuOwotCi0gICAgQXRvbWljU3RyaW5nIHRhZ05hbWUodG9rZW4ubmFtZSgpKTsKLSAgICBUYWdJ
ZCB0YWdJZCA9IGlkZW50aWZpZXJGb3IodGFnTmFtZSk7Ci0KLSNpZiBFTkFCTEUoVEVNUExBVEVf
RUxFTUVOVCkKLSAgICBpZiAocHJvY2Vzc1Bvc3NpYmxlVGVtcGxhdGVUYWcodGFnSWQsIHRva2Vu
LnR5cGUoKSkpCi0gICAgICAgIHJldHVybjsKLSNlbmRpZgotICAgIGlmIChwcm9jZXNzUG9zc2li
bGVTdHlsZVRhZyh0YWdJZCwgdG9rZW4udHlwZSgpKSkKLSAgICAgICAgcmV0dXJuOwotICAgIGlm
ICghaXNTdGFydFRhZyh0b2tlbi50eXBlKCkpKQotICAgICAgICByZXR1cm47Ci0gICAgaWYgKHBy
b2Nlc3NQb3NzaWJsZUJhc2VUYWcodGFnSWQsIHRva2VuKSkKLSAgICAgICAgcmV0dXJuOwotCi0g
ICAgU3RhcnRUYWdTY2FubmVyIHNjYW5uZXIodGFnSWQpOwotICAgIHNjYW5uZXIucHJvY2Vzc0F0
dHJpYnV0ZXModG9rZW4uYXR0cmlidXRlcygpKTsKLSAgICBPd25QdHI8UHJlbG9hZFJlcXVlc3Q+
IHJlcXVlc3QgPSAgc2Nhbm5lci5jcmVhdGVQcmVsb2FkUmVxdWVzdChtX3ByZWRpY3RlZEJhc2VF
bGVtZW50VVJMKTsKLSAgICBpZiAocmVxdWVzdCkKLSAgICAgICAgcmVxdWVzdHMuYXBwZW5kKHJl
cXVlc3QucmVsZWFzZSgpKTsKKyAgICBBU1NFUlQobV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTC5p
c0VtcHR5KCkpOworICAgIG1fcHJlZGljdGVkQmFzZUVsZW1lbnRVUkwgPSBLVVJMKG1fZG9jdW1l
bnRVUkwsIHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNlcyh0b2tlbi5nZXRBdHRyaWJ1
dGVJdGVtKGhyZWZBdHRyKS0+dmFsdWUoKSkpOwogfQorI2VuZGlmCiAKIEhUTUxQcmVsb2FkU2Nh
bm5lcjo6SFRNTFByZWxvYWRTY2FubmVyKGNvbnN0IEhUTUxQYXJzZXJPcHRpb25zJiBvcHRpb25z
LCBjb25zdCBLVVJMJiBkb2N1bWVudFVSTCkKICAgICA6IG1fc2Nhbm5lcihkb2N1bWVudFVSTCkK
QEAgLTM1Myw3ICszODMsNyBAQCB2b2lkIEhUTUxQcmVsb2FkU2Nhbm5lcjo6c2NhbihIVE1MUmVz
b3VyY2VQcmVsb2FkZXIqIHByZWxvYWRlciwgY29uc3QgS1VSTCYgc3RhcgogCiAgICAgVmVjdG9y
PE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiByZXF1ZXN0czsKICAgICB3aGlsZSAobV90b2tlbml6
ZXItPm5leHRUb2tlbihtX3NvdXJjZSwgbV90b2tlbikpIHsKLSAgICAgICAgaWYgKGlzU3RhcnRU
YWcobV90b2tlbi50eXBlKCkpKQorICAgICAgICBpZiAobV90b2tlbi50eXBlKCkgPT0gSFRNTFRv
a2VuOjpTdGFydFRhZykKICAgICAgICAgICAgIG1fdG9rZW5pemVyLT51cGRhdGVTdGF0ZUZvcihB
dG9taWNTdHJpbmcobV90b2tlbi5uYW1lKCkpKTsKICAgICAgICAgbV9zY2FubmVyLnNjYW4obV90
b2tlbiwgcmVxdWVzdHMpOwogICAgICAgICBtX3Rva2VuLmNsZWFyKCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCmluZGV4IGZjZTY1NTJmOTg5
YTJiM2VkNGY0YjgwOTljYzU0MmMwM2RiYjhkZDcuLmI3NGI5NjFmOWIzY2I4M2Q3NWFhMzY4NzJh
NzdjZDk5NmQzNzAyNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hU
TUxQcmVsb2FkU2Nhbm5lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQ
cmVsb2FkU2Nhbm5lci5oCkBAIC0yOCw2ICsyOCw3IEBACiAjZGVmaW5lIEhUTUxQcmVsb2FkU2Nh
bm5lcl9oCiAKICNpbmNsdWRlICJDU1NQcmVsb2FkU2Nhbm5lci5oIgorI2luY2x1ZGUgIkNvbXBh
Y3RIVE1MVG9rZW4uaCIKICNpbmNsdWRlICJIVE1MVG9rZW4uaCIKICNpbmNsdWRlICJTZWdtZW50
ZWRTdHJpbmcuaCIKIApAQCAtNDQsNiArNDUsOSBAQCBwdWJsaWM6CiAgICAgflRva2VuUHJlbG9h
ZFNjYW5uZXIoKTsKIAogICAgIHZvaWQgc2Nhbihjb25zdCBIVE1MVG9rZW4mLCBWZWN0b3I8T3du
UHRyPFByZWxvYWRSZXF1ZXN0PiA+JiByZXF1ZXN0cyk7CisjaWYgRU5BQkxFKFRIUkVBREVEX0hU
TUxfUEFSU0VSKQorICAgIHZvaWQgc2Nhbihjb25zdCBDb21wYWN0SFRNTFRva2VuJiwgVmVjdG9y
PE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYgcmVxdWVzdHMpOworI2VuZGlmCiAKICAgICB2b2lk
IHNldFByZWRpY3RlZEJhc2VFbGVtZW50VVJMKGNvbnN0IEtVUkwmIHVybCkgeyBtX3ByZWRpY3Rl
ZEJhc2VFbGVtZW50VVJMID0gdXJsOyB9CiAKQEAgLTY0LDE2ICs2OCwxOSBAQCBwcml2YXRlOgog
CiAgICAgY2xhc3MgU3RhcnRUYWdTY2FubmVyOwogCi0gICAgc3RhdGljIFRhZ0lkIGlkZW50aWZp
ZXJGb3IoY29uc3QgQXRvbWljU3RyaW5nJiB0YWdOYW1lKTsKKyAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBUb2tlbj4KKyAgICBpbmxpbmUgdm9pZCBzY2FuQ29tbW9uKGNvbnN0IFRva2VuJiwgVmVjdG9y
PE93blB0cjxQcmVsb2FkUmVxdWVzdD4gPiYgcmVxdWVzdHMpOworCisgICAgc3RhdGljIFRhZ0lk
IHRhZ0lkRm9yKGNvbnN0IEhUTUxUb2tlbjo6RGF0YVZlY3RvciYpOworICAgIHN0YXRpYyBUYWdJ
ZCB0YWdJZEZvcihjb25zdCBTdHJpbmcmKTsKKwogICAgIHN0YXRpYyBTdHJpbmcgaW5pdGl0YXRv
ckZvcihUYWdJZCk7CiAKLSNpZiBFTkFCTEUoVEVNUExBVEVfRUxFTUVOVCkKLSAgICBib29sIHBy
b2Nlc3NQb3NzaWJsZVRlbXBsYXRlVGFnKFRhZ0lkLCBIVE1MVG9rZW46OlR5cGUpOworICAgIHZv
aWQgdXBkYXRlUHJlZGljdGVkQmFzZVVSTChjb25zdCBIVE1MVG9rZW4mKTsKKyNpZiBFTkFCTEUo
VEhSRUFERURfSFRNTF9QQVJTRVIpCisgICAgdm9pZCB1cGRhdGVQcmVkaWN0ZWRCYXNlVVJMKGNv
bnN0IENvbXBhY3RIVE1MVG9rZW4mKTsKICNlbmRpZgogCi0gICAgYm9vbCBwcm9jZXNzUG9zc2li
bGVTdHlsZVRhZyhUYWdJZCwgSFRNTFRva2VuOjpUeXBlKTsKLSAgICBib29sIHByb2Nlc3NQb3Nz
aWJsZUJhc2VUYWcoVGFnSWQsIGNvbnN0IEhUTUxUb2tlbiYpOwotCiAgICAgQ1NTUHJlbG9hZFNj
YW5uZXIgbV9jc3NTY2FubmVyOwogICAgIEtVUkwgbV9kb2N1bWVudFVSTDsKICAgICBLVVJMIG1f
cHJlZGljdGVkQmFzZUVsZW1lbnRVUkw7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJl
ZS9EdW1wUmVuZGVyVHJlZS52Y3hwcm9qL0R1bXBSZW5kZXJUcmVlLnNsbiBiL1Rvb2xzL0R1bXBS
ZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLnZjeHByb2ovRHVtcFJlbmRlclRyZWUuc2xuCmluZGV4
IGUwYWQyNDEwOTQyODJhMmJiMmFhYzU0OGYzMTQwZWExODNiOGRmZDQuLjI4NWUyNTI1OTA2YWM1
Njc2NWIzNTNkYjY2ZmEyM2VhNmZlNDk1OGEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL0R1bXBSZW5kZXJUcmVlLnZjeHByb2ovRHVtcFJlbmRlclRyZWUuc2xuCisrKyBiL1Rvb2xz
L0R1bXBSZW5kZXJUcmVlL0R1bXBSZW5kZXJUcmVlLnZjeHByb2ovRHVtcFJlbmRlclRyZWUuc2xu
CkBAIC0xLDU2ICsxLDU2IEBACi3vu78NCi1NaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBTb2x1dGlv
biBGaWxlLCBGb3JtYXQgVmVyc2lvbiAxMS4wMA0KLSMgVmlzdWFsIFN0dWRpbyAyMDEwDQotUHJv
amVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJUZXN0TmV0
c2NhcGVQbHVnaW4iLCAiVGVzdE5ldHNjYXBlUGx1Z2luXFRlc3ROZXRzY2FwZVBsdWdpbi52Y3hw
cm9qIiwgIntDMDczNzM5OC0zNTY1LTQzOUUtQTJCOC1BQjJCRTRENTQzMEN9Ig0KLUVuZFByb2pl
Y3QNCi1Qcm9qZWN0KCJ7OEJDOUNFQjgtOEI0QS0xMUQwLThEMTEtMDBBMEM5MUJDOTQyfSIpID0g
IkltYWdlRGlmZkxhdW5jaGVyIiwgIkltYWdlRGlmZlxJbWFnZURpZmZMYXVuY2hlci52Y3hwcm9q
IiwgIntERDc5NDlCNi1GMkI0LTQ3QzItOUM0Mi1FMjFFODRDQjEwMTd9Ig0KLQlQcm9qZWN0U2Vj
dGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0DQotCQl7NTlDQzA1NDctNzBB
Qy00OTlDLTlCMTktRUMwMUM2RjYxMTM3fSA9IHs1OUNDMDU0Ny03MEFDLTQ5OUMtOUIxOS1FQzAx
QzZGNjExMzd9DQotCUVuZFByb2plY3RTZWN0aW9uDQotRW5kUHJvamVjdA0KLVByb2plY3QoIns4
QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiSW1hZ2VEaWZmIiwgIklt
YWdlRGlmZlxJbWFnZURpZmYudmN4cHJvaiIsICJ7NTlDQzA1NDctNzBBQy00OTlDLTlCMTktRUMw
MUM2RjYxMTM3fSINCi0JUHJvamVjdFNlY3Rpb24oUHJvamVjdERlcGVuZGVuY2llcykgPSBwb3N0
UHJvamVjdA0KLQkJe0MwNzM3Mzk4LTM1NjUtNDM5RS1BMkI4LUFCMkJFNEQ1NDMwQ30gPSB7QzA3
MzczOTgtMzU2NS00MzlFLUEyQjgtQUIyQkU0RDU0MzBDfQ0KLQlFbmRQcm9qZWN0U2VjdGlvbg0K
LUVuZFByb2plY3QNCi1Qcm9qZWN0KCJ7OEJDOUNFQjgtOEI0QS0xMUQwLThEMTEtMDBBMEM5MUJD
OTQyfSIpID0gIkR1bXBSZW5kZXJUcmVlIiwgIkR1bXBSZW5kZXJUcmVlXER1bXBSZW5kZXJUcmVl
LnZjeHByb2oiLCAiezY1NjdERkQ0LUQ2REUtNENENS04MjVELTE3RTM1M0QxNjBFMX0iDQotCVBy
b2plY3RTZWN0aW9uKFByb2plY3REZXBlbmRlbmNpZXMpID0gcG9zdFByb2plY3QNCi0JCXtERDc5
NDlCNi1GMkI0LTQ3QzItOUM0Mi1FMjFFODRDQjEwMTd9ID0ge0RENzk0OUI2LUYyQjQtNDdDMi05
QzQyLUUyMUU4NENCMTAxN30NCi0JRW5kUHJvamVjdFNlY3Rpb24NCi1FbmRQcm9qZWN0DQotUHJv
amVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJEdW1wUmVu
ZGVyVHJlZUxhdW5jaGVyIiwgIkR1bXBSZW5kZXJUcmVlXER1bXBSZW5kZXJUcmVlTGF1bmNoZXIu
dmN4cHJvaiIsICJ7Mjk3NEVBMDItODQwQi00OTk1LTg3MTktODkyMEE2MTAwNkYxfSINCi0JUHJv
amVjdFNlY3Rpb24oUHJvamVjdERlcGVuZGVuY2llcykgPSBwb3N0UHJvamVjdA0KLQkJezY1NjdE
RkQ0LUQ2REUtNENENS04MjVELTE3RTM1M0QxNjBFMX0gPSB7NjU2N0RGRDQtRDZERS00Q0Q1LTgy
NUQtMTdFMzUzRDE2MEUxfQ0KLQlFbmRQcm9qZWN0U2VjdGlvbg0KLUVuZFByb2plY3QNCi1HbG9i
YWwNCi0JR2xvYmFsU2VjdGlvbihTb2x1dGlvbkNvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcHJl
U29sdXRpb24NCi0JCURlYnVnfFdpbjMyID0gRGVidWd8V2luMzINCi0JCVJlbGVhc2V8V2luMzIg
PSBSZWxlYXNlfFdpbjMyDQotCUVuZEdsb2JhbFNlY3Rpb24NCi0JR2xvYmFsU2VjdGlvbihQcm9q
ZWN0Q29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwb3N0U29sdXRpb24NCi0JCXtDMDczNzM5OC0z
NTY1LTQzOUUtQTJCOC1BQjJCRTRENTQzMEN9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVn
fFdpbjMyDQotCQl7QzA3MzczOTgtMzU2NS00MzlFLUEyQjgtQUIyQkU0RDU0MzBDfS5EZWJ1Z3xX
aW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzINCi0JCXtDMDczNzM5OC0zNTY1LTQzOUUtQTJCOC1B
QjJCRTRENTQzMEN9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMg0KLQkJ
e0MwNzM3Mzk4LTM1NjUtNDM5RS1BMkI4LUFCMkJFNEQ1NDMwQ30uUmVsZWFzZXxXaW4zMi5CdWls
ZC4wID0gUmVsZWFzZXxXaW4zMg0KLQkJe0RENzk0OUI2LUYyQjQtNDdDMi05QzQyLUUyMUU4NENC
MTAxN30uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCi0JCXtERDc5NDlCNi1G
MkI0LTQ3QzItOUM0Mi1FMjFFODRDQjEwMTd9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xX
aW4zMg0KLQkJe0RENzk0OUI2LUYyQjQtNDdDMi05QzQyLUUyMUU4NENCMTAxN30uUmVsZWFzZXxX
aW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyDQotCQl7REQ3OTQ5QjYtRjJCNC00N0MyLTlD
NDItRTIxRTg0Q0IxMDE3fS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQot
CQl7NTlDQzA1NDctNzBBQy00OTlDLTlCMTktRUMwMUM2RjYxMTM3fS5EZWJ1Z3xXaW4zMi5BY3Rp
dmVDZmcgPSBEZWJ1Z3xXaW4zMg0KLQkJezU5Q0MwNTQ3LTcwQUMtNDk5Qy05QjE5LUVDMDFDNkY2
MTEzN30uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyDQotCQl7NTlDQzA1NDctNzBB
Qy00OTlDLTlCMTktRUMwMUM2RjYxMTM3fS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVh
c2V8V2luMzINCi0JCXs1OUNDMDU0Ny03MEFDLTQ5OUMtOUIxOS1FQzAxQzZGNjExMzd9LlJlbGVh
c2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzINCi0JCXs2NTY3REZENC1ENkRFLTRDRDUt
ODI1RC0xN0UzNTNEMTYwRTF9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyDQot
CQl7NjU2N0RGRDQtRDZERS00Q0Q1LTgyNUQtMTdFMzUzRDE2MEUxfS5EZWJ1Z3xXaW4zMi5CdWls
ZC4wID0gRGVidWd8V2luMzINCi0JCXs2NTY3REZENC1ENkRFLTRDRDUtODI1RC0xN0UzNTNEMTYw
RTF9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMg0KLQkJezY1NjdERkQ0
LUQ2REUtNENENS04MjVELTE3RTM1M0QxNjBFMX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVs
ZWFzZXxXaW4zMg0KLQkJezI5NzRFQTAyLTg0MEItNDk5NS04NzE5LTg5MjBBNjEwMDZGMX0uRGVi
dWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCi0JCXsyOTc0RUEwMi04NDBCLTQ5OTUt
ODcxOS04OTIwQTYxMDA2RjF9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMg0KLQkJ
ezI5NzRFQTAyLTg0MEItNDk5NS04NzE5LTg5MjBBNjEwMDZGMX0uUmVsZWFzZXxXaW4zMi5BY3Rp
dmVDZmcgPSBSZWxlYXNlfFdpbjMyDQotCQl7Mjk3NEVBMDItODQwQi00OTk1LTg3MTktODkyMEE2
MTAwNkYxfS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQotCUVuZEdsb2Jh
bFNlY3Rpb24NCi0JR2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRp
b24NCi0JCUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRQ0KLQlFbmRHbG9iYWxTZWN0aW9uDQotRW5k
R2xvYmFsDQor77u/CitNaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBTb2x1dGlvbiBGaWxlLCBGb3Jt
YXQgVmVyc2lvbiAxMS4wMAorIyBWaXN1YWwgU3R1ZGlvIDIwMTAKK1Byb2plY3QoIns4QkM5Q0VC
OC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiVGVzdE5ldHNjYXBlUGx1Z2luIiwg
IlRlc3ROZXRzY2FwZVBsdWdpblxUZXN0TmV0c2NhcGVQbHVnaW4udmN4cHJvaiIsICJ7QzA3Mzcz
OTgtMzU2NS00MzlFLUEyQjgtQUIyQkU0RDU0MzBDfSIKK0VuZFByb2plY3QKK1Byb2plY3QoIns4
QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAiSW1hZ2VEaWZmTGF1bmNo
ZXIiLCAiSW1hZ2VEaWZmXEltYWdlRGlmZkxhdW5jaGVyLnZjeHByb2oiLCAie0RENzk0OUI2LUYy
QjQtNDdDMi05QzQyLUUyMUU4NENCMTAxN30iCisJUHJvamVjdFNlY3Rpb24oUHJvamVjdERlcGVu
ZGVuY2llcykgPSBwb3N0UHJvamVjdAorCQl7NTlDQzA1NDctNzBBQy00OTlDLTlCMTktRUMwMUM2
RjYxMTM3fSA9IHs1OUNDMDU0Ny03MEFDLTQ5OUMtOUIxOS1FQzAxQzZGNjExMzd9CisJRW5kUHJv
amVjdFNlY3Rpb24KK0VuZFByb2plY3QKK1Byb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQx
MS0wMEEwQzkxQkM5NDJ9IikgPSAiSW1hZ2VEaWZmIiwgIkltYWdlRGlmZlxJbWFnZURpZmYudmN4
cHJvaiIsICJ7NTlDQzA1NDctNzBBQy00OTlDLTlCMTktRUMwMUM2RjYxMTM3fSIKKwlQcm9qZWN0
U2VjdGlvbihQcm9qZWN0RGVwZW5kZW5jaWVzKSA9IHBvc3RQcm9qZWN0CisJCXtDMDczNzM5OC0z
NTY1LTQzOUUtQTJCOC1BQjJCRTRENTQzMEN9ID0ge0MwNzM3Mzk4LTM1NjUtNDM5RS1BMkI4LUFC
MkJFNEQ1NDMwQ30KKwlFbmRQcm9qZWN0U2VjdGlvbgorRW5kUHJvamVjdAorUHJvamVjdCgiezhC
QzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJEdW1wUmVuZGVyVHJlZSIs
ICJEdW1wUmVuZGVyVHJlZVxEdW1wUmVuZGVyVHJlZS52Y3hwcm9qIiwgIns2NTY3REZENC1ENkRF
LTRDRDUtODI1RC0xN0UzNTNEMTYwRTF9IgorCVByb2plY3RTZWN0aW9uKFByb2plY3REZXBlbmRl
bmNpZXMpID0gcG9zdFByb2plY3QKKwkJe0RENzk0OUI2LUYyQjQtNDdDMi05QzQyLUUyMUU4NENC
MTAxN30gPSB7REQ3OTQ5QjYtRjJCNC00N0MyLTlDNDItRTIxRTg0Q0IxMDE3fQorCUVuZFByb2pl
Y3RTZWN0aW9uCitFbmRQcm9qZWN0CitQcm9qZWN0KCJ7OEJDOUNFQjgtOEI0QS0xMUQwLThEMTEt
MDBBMEM5MUJDOTQyfSIpID0gIkR1bXBSZW5kZXJUcmVlTGF1bmNoZXIiLCAiRHVtcFJlbmRlclRy
ZWVcRHVtcFJlbmRlclRyZWVMYXVuY2hlci52Y3hwcm9qIiwgInsyOTc0RUEwMi04NDBCLTQ5OTUt
ODcxOS04OTIwQTYxMDA2RjF9IgorCVByb2plY3RTZWN0aW9uKFByb2plY3REZXBlbmRlbmNpZXMp
ID0gcG9zdFByb2plY3QKKwkJezY1NjdERkQ0LUQ2REUtNENENS04MjVELTE3RTM1M0QxNjBFMX0g
PSB7NjU2N0RGRDQtRDZERS00Q0Q1LTgyNUQtMTdFMzUzRDE2MEUxfQorCUVuZFByb2plY3RTZWN0
aW9uCitFbmRQcm9qZWN0CitHbG9iYWwKKwlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJh
dGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbgorCQlEZWJ1Z3xXaW4zMiA9IERlYnVnfFdpbjMy
CisJCVJlbGVhc2V8V2luMzIgPSBSZWxlYXNlfFdpbjMyCisJRW5kR2xvYmFsU2VjdGlvbgorCUds
b2JhbFNlY3Rpb24oUHJvamVjdENvbmZpZ3VyYXRpb25QbGF0Zm9ybXMpID0gcG9zdFNvbHV0aW9u
CisJCXtDMDczNzM5OC0zNTY1LTQzOUUtQTJCOC1BQjJCRTRENTQzMEN9LkRlYnVnfFdpbjMyLkFj
dGl2ZUNmZyA9IERlYnVnfFdpbjMyCisJCXtDMDczNzM5OC0zNTY1LTQzOUUtQTJCOC1BQjJCRTRE
NTQzMEN9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMgorCQl7QzA3MzczOTgtMzU2
NS00MzlFLUEyQjgtQUIyQkU0RDU0MzBDfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVh
c2V8V2luMzIKKwkJe0MwNzM3Mzk4LTM1NjUtNDM5RS1BMkI4LUFCMkJFNEQ1NDMwQ30uUmVsZWFz
ZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMgorCQl7REQ3OTQ5QjYtRjJCNC00N0MyLTlD
NDItRTIxRTg0Q0IxMDE3fS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMgorCQl7
REQ3OTQ5QjYtRjJCNC00N0MyLTlDNDItRTIxRTg0Q0IxMDE3fS5EZWJ1Z3xXaW4zMi5CdWlsZC4w
ID0gRGVidWd8V2luMzIKKwkJe0RENzk0OUI2LUYyQjQtNDdDMi05QzQyLUUyMUU4NENCMTAxN30u
UmVsZWFzZXxXaW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyCisJCXtERDc5NDlCNi1GMkI0
LTQ3QzItOUM0Mi1FMjFFODRDQjEwMTd9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8
V2luMzIKKwkJezU5Q0MwNTQ3LTcwQUMtNDk5Qy05QjE5LUVDMDFDNkY2MTEzN30uRGVidWd8V2lu
MzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzIKKwkJezU5Q0MwNTQ3LTcwQUMtNDk5Qy05QjE5LUVD
MDFDNkY2MTEzN30uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyCisJCXs1OUNDMDU0
Ny03MEFDLTQ5OUMtOUIxOS1FQzAxQzZGNjExMzd9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0g
UmVsZWFzZXxXaW4zMgorCQl7NTlDQzA1NDctNzBBQy00OTlDLTlCMTktRUMwMUM2RjYxMTM3fS5S
ZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyCisJCXs2NTY3REZENC1ENkRFLTRD
RDUtODI1RC0xN0UzNTNEMTYwRTF9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMy
CisJCXs2NTY3REZENC1ENkRFLTRDRDUtODI1RC0xN0UzNTNEMTYwRTF9LkRlYnVnfFdpbjMyLkJ1
aWxkLjAgPSBEZWJ1Z3xXaW4zMgorCQl7NjU2N0RGRDQtRDZERS00Q0Q1LTgyNUQtMTdFMzUzRDE2
MEUxfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzIKKwkJezY1NjdERkQ0
LUQ2REUtNENENS04MjVELTE3RTM1M0QxNjBFMX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVs
ZWFzZXxXaW4zMgorCQl7Mjk3NEVBMDItODQwQi00OTk1LTg3MTktODkyMEE2MTAwNkYxfS5EZWJ1
Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMgorCQl7Mjk3NEVBMDItODQwQi00OTk1LTg3
MTktODkyMEE2MTAwNkYxfS5EZWJ1Z3xXaW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzIKKwkJezI5
NzRFQTAyLTg0MEItNDk5NS04NzE5LTg5MjBBNjEwMDZGMX0uUmVsZWFzZXxXaW4zMi5BY3RpdmVD
ZmcgPSBSZWxlYXNlfFdpbjMyCisJCXsyOTc0RUEwMi04NDBCLTQ5OTUtODcxOS04OTIwQTYxMDA2
RjF9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzIKKwlFbmRHbG9iYWxTZWN0
aW9uCisJR2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24KKwkJ
SGlkZVNvbHV0aW9uTm9kZSA9IEZBTFNFCisJRW5kR2xvYmFsU2VjdGlvbgorRW5kR2xvYmFsCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>