<?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>91380</bug_id>
          
          <creation_ts>2012-07-16 05:15:51 -0700</creation_ts>
          <short_desc>REGRESSION(r122714): It broke mac compilation (Requested by loislo on #webkit).</short_desc>
          <delta_ts>2012-07-16 05:18:25 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>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>91259</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>loislo</cc>
    
    <cc>pfeldman</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>670257</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-16 05:15:51 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/122714 broke the build:
It broke mac compilation (Requested by loislo on #webkit).

This is an automatic bug report generated by the sheriff-bot. If this bug
report was created because of a flaky test, please file a bug for the flaky
test (if we don&apos;t already have one on file) and dup this bug against that bug
so that we can track how often these flaky tests case pain.

&quot;Only you can prevent forest fires.&quot; -- Smokey the Bear</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670259</commentid>
    <comment_count>1</comment_count>
      <attachid>152515</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-16 05:16:33 -0700</bug_when>
    <thetext>Created attachment 152515
ROLLOUT of r122714

Any committer can land this patch automatically by marking it commit-queue+.  The commit-queue will build and test the patch before landing to ensure that the rollout will be successful.  This process takes approximately 15 minutes.

If you would like to land the rollout faster, you can use the following command:

  webkit-patch land-attachment ATTACHMENT_ID

where ATTACHMENT_ID is the ID of this attachment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670260</commentid>
    <comment_count>2</comment_count>
      <attachid>152515</attachid>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2012-07-16 05:18:18 -0700</bug_when>
    <thetext>Comment on attachment 152515
ROLLOUT of r122714

Clearing flags on attachment: 152515

Committed r122715: &lt;http://trac.webkit.org/changeset/122715&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>670261</commentid>
    <comment_count>3</comment_count>
    <who name="Ilya Tikhonovsky">loislo</who>
    <bug_when>2012-07-16 05:18:25 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>152515</attachid>
            <date>2012-07-16 05:16:33 -0700</date>
            <delta_ts>2012-07-16 05:18:18 -0700</delta_ts>
            <desc>ROLLOUT of r122714</desc>
            <filename>bug-91380-20120716122202.patch</filename>
            <type>text/plain</type>
            <size>28511</size>
            <attacher name="WebKit Review Bot">webkit.review.bot</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIyNzE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZWEwY2IxMTIyNDYxNmRk
ZWJhMjg0NDYzODBkM2VlZmU3ZmEyYTk2MS4uMTFjOTQ4OTg4ODIxMGEzMjExMDQ2M2I2MDdkYzM3
MTliMTFkOTZlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY4IEBACisyMDEyLTA3LTE2ICBTaGVy
aWZmIEJvdCAgPHdlYmtpdC5yZXZpZXcuYm90QGdtYWlsLmNvbT4KKworICAgICAgICBVbnJldmll
d2VkLCByb2xsaW5nIG91dCByMTIyNzE0LgorICAgICAgICBodHRwOi8vdHJhYy53ZWJraXQub3Jn
L2NoYW5nZXNldC8xMjI3MTQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTkxMzgwCisKKyAgICAgICAgSXQgYnJva2UgbWFjIGNvbXBpbGF0aW9uIChSZXF1
ZXN0ZWQgYnkgbG9pc2xvIG9uICN3ZWJraXQpLgorCisgICAgICAgICogYmluZGluZ3MvanMvU2Ny
aXB0V3JhcHBhYmxlLmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRXcmFwcGFibGU6OnJlcG9y
dE1lbW9yeVVzYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9ET01EYXRhU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6RE9NRGF0YVN0b3JlOjpyZXBvcnRNZW1vcnlVc2FnZSk6CisgICAg
ICAgICogYmluZGluZ3MvdjgvSW50cnVzaXZlRE9NV3JhcHBlck1hcC5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q2h1bmtlZFRhYmxlOjpyZXBvcnRNZW1vcnlVc2FnZSk6CisgICAgICAgICogYmluZGlu
Z3MvdjgvU2NyaXB0UHJvZmlsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0UHJvZmls
ZXI6OmNvbGxlY3RCaW5kaW5nTWVtb3J5SW5mbyk6CisgICAgICAgICogYmluZGluZ3MvdjgvU2Ny
aXB0V3JhcHBhYmxlLmg6CisgICAgICAgIChXZWJDb3JlOjpTY3JpcHRXcmFwcGFibGU6OnJlcG9y
dE1lbW9yeVVzYWdlKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6VjhCaW5kaW5nUGVySXNvbGF0ZURhdGE6OnJlcG9ydE1lbW9yeVVzYWdl
KToKKyAgICAgICAgKFdlYkNvcmU6OlN0cmluZ0NhY2hlOjpyZXBvcnRNZW1vcnlVc2FnZSk6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvVjhET01NYXAuaDoKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9w
ZXJ0eVNldC5oOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0eVNldDo6cmVwb3J0TWVt
b3J5VXNhZ2UpOgorICAgICAgICAqIGRvbS9DaGFyYWN0ZXJEYXRhLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNoYXJhY3RlckRhdGE6OnJlcG9ydE1lbW9yeVVzYWdlKToKKyAgICAgICAgKiBkb20v
Q29udGFpbmVyTm9kZS5oOgorICAgICAgICAoV2ViQ29yZTo6Q29udGFpbmVyTm9kZTo6cmVwb3J0
TWVtb3J5VXNhZ2UpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpEb2N1bWVudDo6cmVwb3J0TWVtb3J5VXNhZ2UpOgorICAgICAgICAqIGRvbS9FbGVtZW50
Lmg6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpyZXBvcnRNZW1vcnlVc2FnZSk6CisgICAg
ICAgICogZG9tL0VsZW1lbnRBdHRyaWJ1dGVEYXRhLmg6CisgICAgICAgIChXZWJDb3JlOjpFbGVt
ZW50QXR0cmlidXRlRGF0YTo6cmVwb3J0TWVtb3J5VXNhZ2UpOgorICAgICAgICAqIGRvbS9NZW1v
cnlJbnN0cnVtZW50YXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUluc3RydW1lbnRh
dGlvbjo6cmVwb3J0T2JqZWN0KToKKyAgICAgICAgKE1lbW9yeUluc3RydW1lbnRhdGlvbik6Cisg
ICAgICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVtZW50YXRpb246OnJlcG9ydFBvaW50ZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6TWVtb3J5Q2xhc3NJbmZvOjpyZXBvcnRJbnN0cnVtZW50ZWRQb2lu
dGVyKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUNsYXNzSW5mbzo6cmVwb3J0SW5zdHJ1bWVu
dGVkT2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUNsYXNzSW5mbzo6cmVwb3J0UG9p
bnRlcik6CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlDbGFzc0luZm86OnJlcG9ydE9iamVjdCk6
CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlDbGFzc0luZm86OnJlcG9ydEhhc2hNYXApOgorICAg
ICAgICAoV2ViQ29yZTo6TWVtb3J5Q2xhc3NJbmZvOjpyZXBvcnRIYXNoU2V0KToKKyAgICAgICAg
KFdlYkNvcmU6Ok1lbW9yeUNsYXNzSW5mbzo6cmVwb3J0TGlzdEhhc2hTZXQpOgorICAgICAgICAo
V2ViQ29yZTo6TWVtb3J5Q2xhc3NJbmZvOjpyZXBvcnRWZWN0b3IpOgorICAgICAgICAoTWVtb3J5
Q2xhc3NJbmZvKToKKyAgICAgICAgKFdlYkNvcmU6Ok1lbW9yeUNsYXNzSW5mbzo6cmVwb3J0U3Ry
aW5nKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6TWVtb3J5SW5zdHJ1
bWVudGF0aW9uOjpyZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKToKKyAgICAgICAgKFdlYkNvcmU6
Ok1lbW9yeUluc3RydW1lbnRhdGlvbjo6cmVwb3J0SW5zdHJ1bWVudGVkT2JqZWN0KToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lbW9yeUluc3RydW1lbnRhdGlvbjo6cmVwb3J0SGFzaE1hcCk6CisgICAg
ICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVtZW50YXRpb246OnJlcG9ydEhhc2hTZXQpOgorICAg
ICAgICAoV2ViQ29yZTo6TWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpyZXBvcnRMaXN0SGFzaFNldCk6
CisgICAgICAgIChXZWJDb3JlOjpNZW1vcnlJbnN0cnVtZW50YXRpb246OnJlcG9ydFZlY3Rvcik6
CisgICAgICAgICogZG9tL05vZGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm9kZTo6cmVwb3J0
TWVtb3J5VXNhZ2UpOgorICAgICAgICAqIGRvbS9RdWFsaWZpZWROYW1lLmg6CisgICAgICAgIChX
ZWJDb3JlOjpRdWFsaWZpZWROYW1lOjpRdWFsaWZpZWROYW1lSW1wbDo6cmVwb3J0TWVtb3J5VXNh
Z2UpOgorICAgICAgICAoV2ViQ29yZTo6UXVhbGlmaWVkTmFtZTo6cmVwb3J0TWVtb3J5VXNhZ2Up
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JNZW1vcnlBZ2VudC5jcHA6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9UcmVlU2hhcmVkLmg6CisgICAgICAgIChX
ZWJDb3JlOjpUcmVlU2hhcmVkOjpyZXBvcnRNZW1vcnlVc2FnZSk6CisKIDIwMTItMDctMTYgIEls
eWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNw
ZWN0b3I6IG1vdmluZyBmb3J3YXJkIHRvIHRoZSBiZXR0ZXIgbWVtb3J5IGluc3RydW1lbnRhdGlv
biBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdFdyYXBw
YWJsZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0V3JhcHBhYmxlLmgKaW5k
ZXggM2NiNWQ4MTZjMTExYjgwN2ZhMDY5N2E2N2NkOWY5YTk2NDJkMDVlNy4uOTQ3Nzk0ZGMyZjRk
NGEyMGEyNTE2N2JhNjJmYWQ3YjhhNDJjYzJiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvU2NyaXB0V3JhcHBhYmxlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvU2NyaXB0V3JhcHBhYmxlLmgKQEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgogICAgIHZv
aWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykg
Y29uc3QKICAgICB7CiAgICAgICAgIE1lbW9yeUNsYXNzSW5mbzxTY3JpcHRXcmFwcGFibGU+IGlu
Zm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpET00pOwot
ICAgICAgICBpbmZvLmFkZE1lbWJlcihtX3dyYXBwZXIpOworICAgICAgICBpbmZvLnJlcG9ydE9i
amVjdChtX3dyYXBwZXIpOwogICAgIH0KIAogcHJpdmF0ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTURhdGFTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9ET01EYXRhU3RvcmUuY3BwCmluZGV4IDdmYjhiMDQyZGEwNmYyZjYwYzFiZTVlZDI2
Yjk1ZGY1NTdhZTVmY2QuLjAyMWE3YzgxMTkxM2JlMzgwMGRjYzUzNTk3YjAxMmVhNzE3YTc2ZGUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0RPTURhdGFTdG9yZS5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvRE9NRGF0YVN0b3JlLmNwcApAQCAtMTIy
LDEwICsxMjIsMTAgQEAgdm9pZCogRE9NRGF0YVN0b3JlOjpnZXRET01XcmFwcGVyTWFwKERPTVdy
YXBwZXJNYXBUeXBlIHR5cGUpCiB2b2lkIERPTURhdGFTdG9yZTo6cmVwb3J0TWVtb3J5VXNhZ2Uo
TWVtb3J5T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QKIHsKICAgICBNZW1vcnlD
bGFzc0luZm88RE9NRGF0YVN0b3JlPiBpbmZvKG1lbW9yeU9iamVjdEluZm8sIHRoaXMsIE1lbW9y
eUluc3RydW1lbnRhdGlvbjo6QmluZGluZyk7Ci0gICAgaW5mby5hZGRJbnN0cnVtZW50ZWRNZW1i
ZXIobV9kb21Ob2RlTWFwKTsKLSAgICBpbmZvLmFkZEluc3RydW1lbnRlZE1lbWJlcihtX2FjdGl2
ZURvbU5vZGVNYXApOwotICAgIGluZm8uYWRkSW5zdHJ1bWVudGVkTWVtYmVyKG1fZG9tT2JqZWN0
TWFwKTsKLSAgICBpbmZvLmFkZEluc3RydW1lbnRlZE1lbWJlcihtX2FjdGl2ZURvbU9iamVjdE1h
cCk7CisgICAgaW5mby5yZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKG1fZG9tTm9kZU1hcCk7Cisg
ICAgaW5mby5yZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKG1fYWN0aXZlRG9tTm9kZU1hcCk7Cisg
ICAgaW5mby5yZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKG1fZG9tT2JqZWN0TWFwKTsKKyAgICBp
bmZvLnJlcG9ydEluc3RydW1lbnRlZFBvaW50ZXIobV9hY3RpdmVEb21PYmplY3RNYXApOwogfQog
CiAvLyBDYWxsZWQgd2hlbiB0aGUgb2JqZWN0IGlzIG5lYXIgZGVhdGggKG5vdCByZWFjaGFibGUg
ZnJvbSBKUyByb290cykuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9J
bnRydXNpdmVET01XcmFwcGVyTWFwLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9JbnRy
dXNpdmVET01XcmFwcGVyTWFwLmgKaW5kZXggMTIwMGQxMjNjNDQ3YzA4NDMzYzI3NzFkMGU1ZGI3
ZjVlYmNlMzZkMi4uZTA3MjhjMjk1YmNlNzhiOWY1YmVjYzY0NDZjZjNkZjgxZWExYzYwMyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvSW50cnVzaXZlRE9NV3JhcHBlck1h
cC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0ludHJ1c2l2ZURPTVdyYXBwZXJN
YXAuaApAQCAtMTA2LDcgKzEwNiw3IEBAIGNsYXNzIENodW5rZWRUYWJsZSB7CiAgICAgewogICAg
ICAgICBNZW1vcnlDbGFzc0luZm88Q2h1bmtlZFRhYmxlPiBpbmZvKG1lbW9yeU9iamVjdEluZm8s
IHRoaXMsIE1lbW9yeUluc3RydW1lbnRhdGlvbjo6QmluZGluZyk7CiAgICAgICAgIGZvciAoQ2h1
bmsqIGNodW5rID0gbV9jaHVua3M7IGNodW5rOyBjaHVuayA9IGNodW5rLT5tX3ByZXZpb3VzKQot
ICAgICAgICAgICAgaW5mby5hZGRNZW1iZXIoY2h1bmspOworICAgICAgICAgICAgaW5mby5yZXBv
cnRQb2ludGVyKGNodW5rKTsKICAgICB9CiAKICAgcHJpdmF0ZToKQEAgLTE4Nyw3ICsxODcsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVj
dEluZm8qIG1lbW9yeU9iamVjdEluZm8pIGNvbnN0IE9WRVJSSURFCiAgICAgewogICAgICAgICBN
ZW1vcnlDbGFzc0luZm88SW50cnVzaXZlRE9NV3JhcHBlck1hcD4gaW5mbyhtZW1vcnlPYmplY3RJ
bmZvLCB0aGlzLCBNZW1vcnlJbnN0cnVtZW50YXRpb246OkJpbmRpbmcpOwotICAgICAgICBpbmZv
LmFkZEluc3RydW1lbnRlZE1lbWJlcihtX3RhYmxlKTsKKyAgICAgICAgaW5mby5yZXBvcnRJbnN0
cnVtZW50ZWRPYmplY3QobV90YWJsZSk7CiAgICAgfQogCiBwcml2YXRlOgpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0UHJvZmlsZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0UHJvZmlsZXIuY3BwCmluZGV4IGEyNjhmMzlhZWU5NmFl
ZjQyOTM3ZDIwM2I2ZTE4MWQzYWU2NDVkNmYuLjA3ZjAzOWU3YzVlN2RiM2Y3Y2Q4Y2NhNzAzNmE1
OTZiZDFjNTY1MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Njcmlw
dFByb2ZpbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3JpcHRQcm9m
aWxlci5jcHAKQEAgLTIyMyw3ICsyMjMsNyBAQCB2b2lkIFNjcmlwdFByb2ZpbGVyOjp2aXNpdEV4
dGVybmFsQXJyYXlzKEV4dGVybmFsQXJyYXlWaXNpdG9yKiB2aXNpdG9yKQogdm9pZCBTY3JpcHRQ
cm9maWxlcjo6Y29sbGVjdEJpbmRpbmdNZW1vcnlJbmZvKE1lbW9yeUluc3RydW1lbnRhdGlvbiog
aW5zdHJ1bWVudGF0aW9uKQogewogICAgIFY4QmluZGluZ1Blcklzb2xhdGVEYXRhKiBkYXRhID0g
VjhCaW5kaW5nUGVySXNvbGF0ZURhdGE6OmN1cnJlbnQoKTsKLSAgICBpbnN0cnVtZW50YXRpb24t
PmFkZEluc3RydW1lbnRlZE1lbWJlcihkYXRhKTsKKyAgICBpbnN0cnVtZW50YXRpb24tPnJlcG9y
dEluc3RydW1lbnRlZFBvaW50ZXIoZGF0YSk7CiB9CiAKIHNpemVfdCBTY3JpcHRQcm9maWxlcjo6
cHJvZmlsZXJTbmFwc2hvdHNTaXplKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3Y4L1NjcmlwdFdyYXBwYWJsZS5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2Ny
aXB0V3JhcHBhYmxlLmgKaW5kZXggZWYyZjc2MTlmMjQ1MTEwNjU3YzdhZTBhNWJhMDJlZGMwNGQ2
ZmY2OS4uOGYwYmNkYmQ4ZjY0NDE4ZTA5Njg3YjQ4YmZkYjQwY2NkYjY5ZDE2YyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0V3JhcHBhYmxlLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0V3JhcHBhYmxlLmgKQEAgLTU1LDcgKzU1LDcg
QEAgcHVibGljOgogICAgIHZvaWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyog
bWVtb3J5T2JqZWN0SW5mbykgY29uc3QKICAgICB7CiAgICAgICAgIE1lbW9yeUNsYXNzSW5mbzxT
Y3JpcHRXcmFwcGFibGU+IGluZm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1
bWVudGF0aW9uOjpET00pOwotICAgICAgICBpbmZvLmFkZE1lbWJlcihtX3dyYXBwZXIpOworICAg
ICAgICBpbmZvLnJlcG9ydFBvaW50ZXIobV93cmFwcGVyKTsKICAgICB9CiAKIHByaXZhdGU6CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJpbmRpbmcuY3BwIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhCaW5kaW5nLmNwcAppbmRleCBkMjgyYjBkYmVmNzg2
OTkzNDI1YjlkNzZiMDc3YTMzZDAzNmFjZjEzLi40Yzc2NjIxYzkwNGNkZDc0MWJiM2Y5ZTc1NDMx
YWNkM2EyZWEwOTQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOEJp
bmRpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4QmluZGluZy5jcHAK
QEAgLTkzLDEzICs5MywxMyBAQCB2b2lkIFY4QmluZGluZ1Blcklzb2xhdGVEYXRhOjpkaXNwb3Nl
KHY4OjpJc29sYXRlKiBpc29sYXRlKQogdm9pZCBWOEJpbmRpbmdQZXJJc29sYXRlRGF0YTo6cmVw
b3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QK
IHsKICAgICBNZW1vcnlDbGFzc0luZm88VjhCaW5kaW5nUGVySXNvbGF0ZURhdGE+IGluZm8obWVt
b3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpCaW5kaW5nKTsKLSAg
ICBpbmZvLmFkZEhhc2hNYXAobV9yYXdUZW1wbGF0ZXMpOwotICAgIGluZm8uYWRkSGFzaE1hcCht
X3RlbXBsYXRlcyk7Ci0gICAgaW5mby5hZGRJbnN0cnVtZW50ZWRNZW1iZXIobV9zdHJpbmdDYWNo
ZSk7Ci0gICAgaW5mby5hZGRWZWN0b3IobV9kb21EYXRhTGlzdCk7CisgICAgaW5mby5yZXBvcnRI
YXNoTWFwKG1fcmF3VGVtcGxhdGVzKTsKKyAgICBpbmZvLnJlcG9ydEhhc2hNYXAobV90ZW1wbGF0
ZXMpOworICAgIGluZm8ucmVwb3J0SW5zdHJ1bWVudGVkT2JqZWN0KG1fc3RyaW5nQ2FjaGUpOwor
ICAgIGluZm8ucmVwb3J0VmVjdG9yKG1fZG9tRGF0YUxpc3QpOwogCiAgICAgZm9yIChzaXplX3Qg
aSA9IDA7IGkgPCBtX2RvbURhdGFMaXN0LnNpemUoKTsgaSsrKQotICAgICAgICBpbmZvLmFkZElu
c3RydW1lbnRlZE1lbWJlcihtX2RvbURhdGFMaXN0W2ldKTsKKyAgICAgICAgaW5mby5yZXBvcnRJ
bnN0cnVtZW50ZWRQb2ludGVyKG1fZG9tRGF0YUxpc3RbaV0pOwogfQogCiAvLyBXZWJDb3JlU3Ry
aW5nUmVzb3VyY2UgaXMgYSBoZWxwZXIgY2xhc3MgZm9yIHY4RXh0ZXJuYWxTdHJpbmcuIEl0IGlz
IHVzZWQKQEAgLTU5MSw3ICs1OTEsNyBAQCB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1w
bGF0ZT4gZ2V0VG9TdHJpbmdUZW1wbGF0ZSgpCiB2b2lkIFN0cmluZ0NhY2hlOjpyZXBvcnRNZW1v
cnlVc2FnZShNZW1vcnlPYmplY3RJbmZvKiBtZW1vcnlPYmplY3RJbmZvKSBjb25zdAogewogICAg
IE1lbW9yeUNsYXNzSW5mbzxTdHJpbmdDYWNoZT4gaW5mbyhtZW1vcnlPYmplY3RJbmZvLCB0aGlz
LCBNZW1vcnlJbnN0cnVtZW50YXRpb246OkJpbmRpbmcpOwotICAgIGluZm8uYWRkSGFzaE1hcCht
X3N0cmluZ0NhY2hlKTsKKyAgICBpbmZvLnJlcG9ydEhhc2hNYXAobV9zdHJpbmdDYWNoZSk7CiB9
CiAgICAgCiBQYXNzUmVmUHRyPERPTVN0cmluZ0xpc3Q+IHY4VmFsdWVUb1dlYkNvcmVET01TdHJp
bmdMaXN0KHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NTWFwLmggYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92
OC9WOERPTU1hcC5oCmluZGV4IDRkZTM1NTg1ZGQwY2JkNzVlZWUxMjMxMzBhZTFhZmExMGNlZWE5
NTUuLmFhMTkwMTcwMjA3YjA3ZDEyMTM1MDQyOTdlNTEzOGVjZjU2MTZlNGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4RE9NTWFwLmgKKysrIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhET01NYXAuaApAQCAtMTM3LDcgKzEzNyw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgdmlydHVhbCB2b2lkIHJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9i
amVjdEluZm8qIG1lbW9yeU9iamVjdEluZm8pIGNvbnN0IE9WRVJSSURFCiAgICAgICAgIHsKICAg
ICAgICAgICAgIE1lbW9yeUNsYXNzSW5mbzxXZWFrUmVmZXJlbmNlTWFwPEtleVR5cGUsIFZhbHVl
VHlwZT4gPiBpbmZvKG1lbW9yeU9iamVjdEluZm8sIHRoaXMsIE1lbW9yeUluc3RydW1lbnRhdGlv
bjo6QmluZGluZyk7Ci0gICAgICAgICAgICBpbmZvLmFkZEhhc2hNYXAobV9tYXApOworICAgICAg
ICAgICAgaW5mby5yZXBvcnRIYXNoTWFwKG1fbWFwKTsKICAgICAgICAgfQogCiAgICAgcHJvdGVj
dGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTZXQuaCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0LmgKaW5kZXggNzA5OGY3MjMyOWI4
YjBiYzkzZjQ4MDhlNDkwMjU3ZGRlNDUwZDgzMy4uNDQzMDc0MjMyMzliNzFjNDY1MDI4ODBmYzE5
ZGJhMWUzMWY4YzRkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVy
dHlTZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNldC5oCkBAIC0x
MjAsNyArMTIwLDcgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgTWVtb3J5Q2xhc3NJbmZvPFN0
eWxlUHJvcGVydHlTZXQ+IGluZm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1
bWVudGF0aW9uOjpDU1MpOwogICAgICAgICBpZiAobV9pc011dGFibGUpCi0gICAgICAgICAgICBp
bmZvLmFkZE1lbWJlcihtX211dGFibGVQcm9wZXJ0eVZlY3Rvcik7CisgICAgICAgICAgICBpbmZv
LnJlcG9ydFBvaW50ZXIobV9tdXRhYmxlUHJvcGVydHlWZWN0b3IpOwogICAgIH0KIAogcHJpdmF0
ZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9DaGFyYWN0ZXJEYXRhLmNwcAppbmRleCBhZjFkOGZlZDRjZjViYjc2
MmE2Yjk4N2Q0Mzc4MmZkMjJlOTBlZmY5Li4zOTVlZmZhMmQ3NjhhNzg4N2EyOTVlNDU3YWQ2OTEy
Y2NjYjJhYzJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hhcmFjdGVyRGF0YS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0NoYXJhY3RlckRhdGEuY3BwCkBAIC05Niw3ICs5
Niw3IEBAIHZvaWQgQ2hhcmFjdGVyRGF0YTo6cmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0
SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29uc3QKIHsKICAgICBNZW1vcnlDbGFzc0luZm88Q2hh
cmFjdGVyRGF0YT4gaW5mbyhtZW1vcnlPYmplY3RJbmZvLCB0aGlzLCBNZW1vcnlJbnN0cnVtZW50
YXRpb246OkRPTSk7CiAgICAgaW5mby52aXNpdEJhc2VDbGFzczxOb2RlPih0aGlzKTsKLSAgICBp
bmZvLmFkZFN0cmluZyhtX2RhdGEpOworICAgIGluZm8ucmVwb3J0U3RyaW5nKG1fZGF0YSk7CiB9
CiAKIHZvaWQgQ2hhcmFjdGVyRGF0YTo6YXBwZW5kRGF0YShjb25zdCBTdHJpbmcmIGRhdGEsIEV4
Y2VwdGlvbkNvZGUmKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5lck5v
ZGUuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Db250YWluZXJOb2RlLmgKaW5kZXggOWFiYWYyMzcz
YzBhOTBiMDNjYmEyMjIyYzk1YWIxODlkYjdjMmU3ZC4uZmMyNzUxZTlkYzA5NTU4YTZkMGZhMDEx
ODg0Y2Y1YmIxMWZkYmI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0NvbnRhaW5l
ck5vZGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ29udGFpbmVyTm9kZS5oCkBAIC0xMDMs
OCArMTAzLDggQEAgcHVibGljOgogICAgIHsKICAgICAgICAgTWVtb3J5Q2xhc3NJbmZvPENvbnRh
aW5lck5vZGU+IGluZm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0
aW9uOjpET00pOwogICAgICAgICBpbmZvLnZpc2l0QmFzZUNsYXNzPE5vZGU+KHRoaXMpOwotICAg
ICAgICBpbmZvLmFkZEluc3RydW1lbnRlZE1lbWJlcihtX2ZpcnN0Q2hpbGQpOwotICAgICAgICBp
bmZvLmFkZEluc3RydW1lbnRlZE1lbWJlcihtX2xhc3RDaGlsZCk7CisgICAgICAgIGluZm8ucmVw
b3J0SW5zdHJ1bWVudGVkUG9pbnRlcihtX2ZpcnN0Q2hpbGQpOworICAgICAgICBpbmZvLnJlcG9y
dEluc3RydW1lbnRlZFBvaW50ZXIobV9sYXN0Q2hpbGQpOwogICAgIH0KIAogcHJvdGVjdGVkOgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggNjMwYjFkN2ZiOTVkNjJjZWE3MWNhZWExZTUwNzY3
ZDM3ZDc0MTEyOS4uMDZhMDhmYmQzZGY5NjE3ZTc3YmJiMGVlNzNjZWJmOWJmYTE2YzM4MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC02MDY0LDM2ICs2MDY0LDM2IEBAIHZvaWQgRG9jdW1l
bnQ6OnJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVjdEluZm8qIG1lbW9yeU9iamVjdEluZm8p
IGNvbnN0CiB7CiAgICAgTWVtb3J5Q2xhc3NJbmZvPERvY3VtZW50PiBpbmZvKG1lbW9yeU9iamVj
dEluZm8sIHRoaXMsIE1lbW9yeUluc3RydW1lbnRhdGlvbjo6RE9NKTsKICAgICBpbmZvLnZpc2l0
QmFzZUNsYXNzPENvbnRhaW5lck5vZGU+KHRoaXMpOwotICAgIGluZm8uYWRkVmVjdG9yKG1fY3Vz
dG9tRm9udHMpOwotICAgIGluZm8uYWRkU3RyaW5nKG1fZG9jdW1lbnRVUkkpOwotICAgIGluZm8u
YWRkU3RyaW5nKG1fYmFzZVRhcmdldCk7CisgICAgaW5mby5yZXBvcnRWZWN0b3IobV9jdXN0b21G
b250cyk7CisgICAgaW5mby5yZXBvcnRTdHJpbmcobV9kb2N1bWVudFVSSSk7CisgICAgaW5mby5y
ZXBvcnRTdHJpbmcobV9iYXNlVGFyZ2V0KTsKICAgICBpZiAobV9wYWdlR3JvdXBVc2VyU2hlZXRz
KQotICAgICAgICBpbmZvLmFkZFZlY3RvcigqbV9wYWdlR3JvdXBVc2VyU2hlZXRzLmdldCgpKTsK
KyAgICAgICAgaW5mby5yZXBvcnRWZWN0b3IoKm1fcGFnZUdyb3VwVXNlclNoZWV0cy5nZXQoKSk7
CiAgICAgaWYgKG1fdXNlclNoZWV0cykKLSAgICAgICAgaW5mby5hZGRWZWN0b3IoKm1fdXNlclNo
ZWV0cy5nZXQoKSk7Ci0gICAgaW5mby5hZGRIYXNoU2V0KG1fbm9kZUl0ZXJhdG9ycyk7Ci0gICAg
aW5mby5hZGRIYXNoU2V0KG1fcmFuZ2VzKTsKLSAgICBpbmZvLmFkZExpc3RIYXNoU2V0KG1fc3R5
bGVTaGVldENhbmRpZGF0ZU5vZGVzKTsKLSAgICBpbmZvLmFkZFN0cmluZyhtX3ByZWZlcnJlZFN0
eWxlc2hlZXRTZXQpOwotICAgIGluZm8uYWRkU3RyaW5nKG1fc2VsZWN0ZWRTdHlsZXNoZWV0U2V0
KTsKLSAgICBpbmZvLmFkZFN0cmluZyhtX3RpdGxlLnN0cmluZygpKTsKLSAgICBpbmZvLmFkZFN0
cmluZyhtX3Jhd1RpdGxlLnN0cmluZygpKTsKLSAgICBpbmZvLmFkZFN0cmluZyhtX3htbEVuY29k
aW5nKTsKLSAgICBpbmZvLmFkZFN0cmluZyhtX3htbFZlcnNpb24pOwotICAgIGluZm8uYWRkU3Ry
aW5nKG1fY29udGVudExhbmd1YWdlKTsKLSAgICBpbmZvLmFkZEhhc2hNYXAobV9kb2N1bWVudE5h
bWVkSXRlbUNvbGxlY3Rpb25zKTsKLSAgICBpbmZvLmFkZEhhc2hNYXAobV93aW5kb3dOYW1lZEl0
ZW1Db2xsZWN0aW9ucyk7CisgICAgICAgIGluZm8ucmVwb3J0VmVjdG9yKCptX3VzZXJTaGVldHMu
Z2V0KCkpOworICAgIGluZm8ucmVwb3J0SGFzaFNldChtX25vZGVJdGVyYXRvcnMpOworICAgIGlu
Zm8ucmVwb3J0SGFzaFNldChtX3Jhbmdlcyk7CisgICAgaW5mby5yZXBvcnRMaXN0SGFzaFNldCht
X3N0eWxlU2hlZXRDYW5kaWRhdGVOb2Rlcyk7CisgICAgaW5mby5yZXBvcnRTdHJpbmcobV9wcmVm
ZXJyZWRTdHlsZXNoZWV0U2V0KTsKKyAgICBpbmZvLnJlcG9ydFN0cmluZyhtX3NlbGVjdGVkU3R5
bGVzaGVldFNldCk7CisgICAgaW5mby5yZXBvcnRTdHJpbmcobV90aXRsZS5zdHJpbmcoKSk7Cisg
ICAgaW5mby5yZXBvcnRTdHJpbmcobV9yYXdUaXRsZS5zdHJpbmcoKSk7CisgICAgaW5mby5yZXBv
cnRTdHJpbmcobV94bWxFbmNvZGluZyk7CisgICAgaW5mby5yZXBvcnRTdHJpbmcobV94bWxWZXJz
aW9uKTsKKyAgICBpbmZvLnJlcG9ydFN0cmluZyhtX2NvbnRlbnRMYW5ndWFnZSk7CisgICAgaW5m
by5yZXBvcnRIYXNoTWFwKG1fZG9jdW1lbnROYW1lZEl0ZW1Db2xsZWN0aW9ucyk7CisgICAgaW5m
by5yZXBvcnRIYXNoTWFwKG1fd2luZG93TmFtZWRJdGVtQ29sbGVjdGlvbnMpOwogI2lmIEVOQUJM
RShEQVNIQk9BUkRfU1VQUE9SVCkKLSAgICBpbmZvLmFkZFZlY3RvcihtX2Rhc2hib2FyZFJlZ2lv
bnMpOworICAgIGluZm8ucmVwb3J0VmVjdG9yKG1fZGFzaGJvYXJkUmVnaW9ucyk7CiAjZW5kaWYK
LSAgICBpbmZvLmFkZEhhc2hNYXAobV9jc3NDYW52YXNFbGVtZW50cyk7Ci0gICAgaW5mby5hZGRW
ZWN0b3IobV9pY29uVVJMcyk7Ci0gICAgaW5mby5hZGRIYXNoU2V0KG1fZG9jdW1lbnRTdXNwZW5z
aW9uQ2FsbGJhY2tFbGVtZW50cyk7Ci0gICAgaW5mby5hZGRIYXNoU2V0KG1fbWVkaWFWb2x1bWVD
YWxsYmFja0VsZW1lbnRzKTsKLSAgICBpbmZvLmFkZEhhc2hTZXQobV9wcml2YXRlQnJvd3NpbmdT
dGF0ZUNoYW5nZWRFbGVtZW50cyk7Ci0gICAgaW5mby5hZGRIYXNoTWFwKG1fZWxlbWVudHNCeUFj
Y2Vzc0tleSk7Ci0gICAgaW5mby5hZGRIYXNoU2V0KG1fbWVkaWFDYW5TdGFydExpc3RlbmVycyk7
Ci0gICAgaW5mby5hZGRWZWN0b3IobV9wZW5kaW5nVGFza3MpOworICAgIGluZm8ucmVwb3J0SGFz
aE1hcChtX2Nzc0NhbnZhc0VsZW1lbnRzKTsKKyAgICBpbmZvLnJlcG9ydFZlY3RvcihtX2ljb25V
UkxzKTsKKyAgICBpbmZvLnJlcG9ydEhhc2hTZXQobV9kb2N1bWVudFN1c3BlbnNpb25DYWxsYmFj
a0VsZW1lbnRzKTsKKyAgICBpbmZvLnJlcG9ydEhhc2hTZXQobV9tZWRpYVZvbHVtZUNhbGxiYWNr
RWxlbWVudHMpOworICAgIGluZm8ucmVwb3J0SGFzaFNldChtX3ByaXZhdGVCcm93c2luZ1N0YXRl
Q2hhbmdlZEVsZW1lbnRzKTsKKyAgICBpbmZvLnJlcG9ydEhhc2hNYXAobV9lbGVtZW50c0J5QWNj
ZXNzS2V5KTsKKyAgICBpbmZvLnJlcG9ydEhhc2hTZXQobV9tZWRpYUNhblN0YXJ0TGlzdGVuZXJz
KTsKKyAgICBpbmZvLnJlcG9ydFZlY3RvcihtX3BlbmRpbmdUYXNrcyk7CiB9CiAKICNpZiBFTkFC
TEUoVU5ET19NQU5BR0VSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50LmgKaW5kZXggODBhMWIzY2FiY2YxNTlmY2U5
OWUyNjMxZTNjZDQ4ODczMmZhZTVkOC4uMGZmYzc4NzdiZWMyM2NmYzFiMTU2MDJkZDU4MWM1ZjQ4
OWRkZjBmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCkBAIC00MzEsOCArNDMxLDggQEAgcHVibGljOgog
ICAgIHsKICAgICAgICAgTWVtb3J5Q2xhc3NJbmZvPEVsZW1lbnQ+IGluZm8obWVtb3J5T2JqZWN0
SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpET00pOwogICAgICAgICBpbmZvLnZp
c2l0QmFzZUNsYXNzPENvbnRhaW5lck5vZGU+KHRoaXMpOwotICAgICAgICBpbmZvLmFkZEluc3Ry
dW1lbnRlZE1lbWJlcihtX3RhZ05hbWUpOwotICAgICAgICBpbmZvLmFkZEluc3RydW1lbnRlZE1l
bWJlcihtX2F0dHJpYnV0ZURhdGEuZ2V0KCkpOworICAgICAgICBpbmZvLnJlcG9ydEluc3RydW1l
bnRlZE9iamVjdChtX3RhZ05hbWUpOworICAgICAgICBpbmZvLnJlcG9ydEluc3RydW1lbnRlZFBv
aW50ZXIobV9hdHRyaWJ1dGVEYXRhLmdldCgpKTsKICAgICB9CiAKIHByb3RlY3RlZDoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVtZW50QXR0cmlidXRlRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvZG9tL0VsZW1lbnRBdHRyaWJ1dGVEYXRhLmgKaW5kZXggOGM5OGRmZTI3MzBhMDQ0
ZjA0NjdjNTQ3MmMzZTkxNWVmOGQ1MTQwZS4uMmRmZjQyNDhjOTY0NTEwODNiZjNiOWJlZWE0MDQz
MTRhZTA5YThjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRBdHRyaWJ1
dGVEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnRBdHRyaWJ1dGVEYXRhLmgK
QEAgLTEwMywxMSArMTAzLDExIEBAIHB1YmxpYzoKICAgICB2b2lkIHJlcG9ydE1lbW9yeVVzYWdl
KE1lbW9yeU9iamVjdEluZm8qIG1lbW9yeU9iamVjdEluZm8pIGNvbnN0CiAgICAgewogICAgICAg
ICBNZW1vcnlDbGFzc0luZm88RWxlbWVudEF0dHJpYnV0ZURhdGE+IGluZm8obWVtb3J5T2JqZWN0
SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpET00pOwotICAgICAgICBpbmZvLmFk
ZEluc3RydW1lbnRlZE1lbWJlcihtX2lubGluZVN0eWxlRGVjbC5nZXQoKSk7Ci0gICAgICAgIGlu
Zm8uYWRkSW5zdHJ1bWVudGVkTWVtYmVyKG1fYXR0cmlidXRlU3R5bGUuZ2V0KCkpOwotICAgICAg
ICBpbmZvLmFkZE1lbWJlcihtX2NsYXNzTmFtZXMpOwotICAgICAgICBpbmZvLmFkZE1lbWJlciht
X2lkRm9yU3R5bGVSZXNvbHV0aW9uKTsKLSAgICAgICAgaW5mby5hZGRWZWN0b3IobV9hdHRyaWJ1
dGVzKTsKKyAgICAgICAgaW5mby5yZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKG1faW5saW5lU3R5
bGVEZWNsLmdldCgpKTsKKyAgICAgICAgaW5mby5yZXBvcnRJbnN0cnVtZW50ZWRQb2ludGVyKG1f
YXR0cmlidXRlU3R5bGUuZ2V0KCkpOworICAgICAgICBpbmZvLnJlcG9ydE9iamVjdChtX2NsYXNz
TmFtZXMpOworICAgICAgICBpbmZvLnJlcG9ydE9iamVjdChtX2lkRm9yU3R5bGVSZXNvbHV0aW9u
KTsKKyAgICAgICAgaW5mby5yZXBvcnRWZWN0b3IobV9hdHRyaWJ1dGVzKTsKICAgICB9CiAKIHBy
aXZhdGU6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vTWVtb3J5SW5zdHJ1bWVudGF0
aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vTWVtb3J5SW5zdHJ1bWVudGF0aW9uLmgKaW5kZXgg
MDJmYTZmMzEzN2E3MTEyNDRmOTgwMWRiM2ZkYzgyMTE5MzMwNzAzNi4uZDZmMTEzYjNhM2YwMjZi
MjlmY2UxYWJmYzY5OTNmODg2ZmY2ZGQzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L01lbW9yeUluc3RydW1lbnRhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9NZW1vcnlJ
bnN0cnVtZW50YXRpb24uaApAQCAtNTIsNjEgKzUyLDIxIEBAIHB1YmxpYzoKICAgICAgICAgTGFz
dFR5cGVFbnRyeQogICAgIH07CiAKLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCBhZGRJ
bnN0cnVtZW50ZWRNZW1iZXIoY29uc3QgVCYgdCkKLSAgICB7Ci0gICAgICAgIE93bmluZ1RyYWl0
czxUPjo6YWRkSW5zdHJ1bWVudGVkTWVtYmVyKHRoaXMsIHQpOwotICAgIH0KLQotICAgIHRlbXBs
YXRlIDx0eXBlbmFtZSBUPiB2b2lkIGFkZE1lbWJlcihjb25zdCBUJiB0LCBPYmplY3RUeXBlIG9i
amVjdFR5cGUpCi0gICAgewotICAgICAgICBPd25pbmdUcmFpdHM8VD46OmFkZE1lbWJlcih0aGlz
LCB0LCBvYmplY3RUeXBlKTsKLSAgICB9Ci0KLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgSGFzaE1h
cFR5cGU+IHZvaWQgYWRkSGFzaE1hcChjb25zdCBIYXNoTWFwVHlwZSYsIE9iamVjdFR5cGUsIGJv
b2wgY29udGVudE9ubHkgPSBmYWxzZSk7Ci0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIEhhc2hTZXRU
eXBlPiB2b2lkIGFkZEhhc2hTZXQoY29uc3QgSGFzaFNldFR5cGUmLCBPYmplY3RUeXBlLCBib29s
IGNvbnRlbnRPbmx5ID0gZmFsc2UpOwotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBMaXN0SGFzaFNl
dFR5cGU+IHZvaWQgYWRkTGlzdEhhc2hTZXQoY29uc3QgTGlzdEhhc2hTZXRUeXBlJiwgT2JqZWN0
VHlwZSwgYm9vbCBjb250ZW50T25seSA9IGZhbHNlKTsKLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VmVjdG9yVHlwZT4gdm9pZCBhZGRWZWN0b3IoY29uc3QgVmVjdG9yVHlwZSYsIE9iamVjdFR5cGUs
IGJvb2wgY29udGVudE9ubHkgPSBmYWxzZSk7Ci0KLXByb3RlY3RlZDoKLSAgICBlbnVtIE93bmlu
Z1R5cGUgewotICAgICAgICBieVBvaW50ZXIsCi0gICAgICAgIGJ5UmVmZXJlbmNlCi0gICAgfTsK
LQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPgotICAgIHN0cnVjdCBPd25pbmdUcmFpdHMgeyAv
LyBEZWZhdWx0IGJ5UmVmZXJlbmNlIGltcGxlbWVudGF0aW9uLgotICAgICAgICBzdGF0aWMgdm9p
ZCBhZGRJbnN0cnVtZW50ZWRNZW1iZXIoTWVtb3J5SW5zdHJ1bWVudGF0aW9uKiBpbnN0cnVtZW50
YXRpb24sIGNvbnN0IFQmIHQpIHsgaW5zdHJ1bWVudGF0aW9uLT5hZGRJbnN0cnVtZW50ZWRNZW1i
ZXJJbXBsKCZ0LCBieVJlZmVyZW5jZSk7IH0KLSAgICAgICAgc3RhdGljIHZvaWQgYWRkTWVtYmVy
KE1lbW9yeUluc3RydW1lbnRhdGlvbiogaW5zdHJ1bWVudGF0aW9uLCBjb25zdCBUJiB0LCBNZW1v
cnlJbnN0cnVtZW50YXRpb246Ok9iamVjdFR5cGUgb2JqZWN0VHlwZSkgeyBpbnN0cnVtZW50YXRp
b24tPmFkZE1lbWJlckltcGwoJnQsIG9iamVjdFR5cGUsIGJ5UmVmZXJlbmNlKTsgfQotICAgIH07
Ci0KLSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4KLSAgICBzdHJ1Y3QgT3duaW5nVHJhaXRzPFQq
PiB7IC8vIEN1c3RvbSBieVBvaW50ZXIgaW1wbGVtZW50YXRpb24uCi0gICAgICAgIHN0YXRpYyB2
b2lkIGFkZEluc3RydW1lbnRlZE1lbWJlcihNZW1vcnlJbnN0cnVtZW50YXRpb24qIGluc3RydW1l
bnRhdGlvbiwgY29uc3QgVCogY29uc3QmIHQpIHsgaW5zdHJ1bWVudGF0aW9uLT5hZGRJbnN0cnVt
ZW50ZWRNZW1iZXJJbXBsKHQsIGJ5UG9pbnRlcik7IH0KLSAgICAgICAgc3RhdGljIHZvaWQgYWRk
TWVtYmVyKE1lbW9yeUluc3RydW1lbnRhdGlvbiogaW5zdHJ1bWVudGF0aW9uLCBjb25zdCBUKiBj
b25zdCYgdCwgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpPYmplY3RUeXBlIG9iamVjdFR5cGUpIHsg
aW5zdHJ1bWVudGF0aW9uLT5hZGRNZW1iZXJJbXBsKHQsIG9iamVjdFR5cGUsIGJ5UG9pbnRlcik7
IH0KLSAgICB9OwotCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgdm9pZCBhZGRJbnN0
cnVtZW50ZWRNZW1iZXJJbXBsKGNvbnN0IFQqIGNvbnN0JiBvYmplY3QsIE93bmluZ1R5cGUgb3du
aW5nVHlwZSkKLSAgICB7Ci0gICAgICAgIGlmICghb2JqZWN0IHx8IHZpc2l0ZWQob2JqZWN0KSkK
LSAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgaWYgKG93bmluZ1R5cGUgPT0gYnlSZWZlcmVu
Y2UpIHsKLSAgICAgICAgICAgIE1lbW9yeU9iamVjdEluZm8gbWVtb3J5T2JqZWN0SW5mbyh0aGlz
KTsKLSAgICAgICAgICAgIG9iamVjdC0+cmVwb3J0TWVtb3J5VXNhZ2UoJm1lbW9yeU9iamVjdElu
Zm8pOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGRlZmVySW5zdHJ1bWVudGVkUG9pbnRl
cihhZG9wdFB0cihuZXcgSW5zdHJ1bWVudGVkUG9pbnRlcjxUPihvYmplY3QpKSk7Ci0gICAgfQot
Ci0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci0gICAgdm9pZCBhZGRNZW1iZXJJbXBsKGNvbnN0
IFQqIGNvbnN0JiBvYmplY3QsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgT3duaW5nVHlwZSBvd25p
bmdUeXBlKQorICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBUPiB2b2lkIHJlcG9ydEluc3RydW1lbnRl
ZE9iamVjdChjb25zdCBUJik7CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IHZvaWQgcmVwb3J0
T2JqZWN0KGNvbnN0IFQmKSB7IH0KKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVD4gdm9pZCByZXBv
cnRJbnN0cnVtZW50ZWRQb2ludGVyKGNvbnN0IFQqKTsKKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUg
VD4gdm9pZCByZXBvcnRQb2ludGVyKGNvbnN0IFQqIG9iamVjdCwgT2JqZWN0VHlwZSBvYmplY3RU
eXBlKQogICAgIHsKICAgICAgICAgaWYgKCFvYmplY3QgfHwgdmlzaXRlZChvYmplY3QpKQogICAg
ICAgICAgICAgcmV0dXJuOwotICAgICAgICBpZiAob3duaW5nVHlwZSA9PSBieVJlZmVyZW5jZSkK
LSAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgY291bnRPYmplY3RTaXplKG9iamVjdFR5cGUs
IHNpemVvZihUKSk7CiAgICAgfQorICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBIYXNoTWFwVHlwZT4g
dm9pZCByZXBvcnRIYXNoTWFwKGNvbnN0IEhhc2hNYXBUeXBlJiwgT2JqZWN0VHlwZSwgYm9vbCBj
b250ZW50T25seSA9IGZhbHNlKTsKKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgSGFzaFNldFR5cGU+
IHZvaWQgcmVwb3J0SGFzaFNldChjb25zdCBIYXNoU2V0VHlwZSYsIE9iamVjdFR5cGUsIGJvb2wg
Y29udGVudE9ubHkgPSBmYWxzZSk7CisgICAgdGVtcGxhdGUgPHR5cGVuYW1lIExpc3RIYXNoU2V0
VHlwZT4gdm9pZCByZXBvcnRMaXN0SGFzaFNldChjb25zdCBMaXN0SGFzaFNldFR5cGUmLCBPYmpl
Y3RUeXBlLCBib29sIGNvbnRlbnRPbmx5ID0gZmFsc2UpOworICAgIHRlbXBsYXRlIDx0eXBlbmFt
ZSBWZWN0b3JUeXBlPiB2b2lkIHJlcG9ydFZlY3Rvcihjb25zdCBWZWN0b3JUeXBlJiwgT2JqZWN0
VHlwZSwgYm9vbCBjb250ZW50T25seSA9IGZhbHNlKTsKIAorcHJvdGVjdGVkOgogICAgIGNsYXNz
IEluc3RydW1lbnRlZFBvaW50ZXJCYXNlIHsKICAgICBwdWJsaWM6CiAgICAgICAgIHZpcnR1YWwg
fkluc3RydW1lbnRlZFBvaW50ZXJCYXNlKCkgeyB9CkBAIC0xMzMsNyArOTMsNyBAQCBwcml2YXRl
OgogICAgICAgICBjb25zdCBUKiBtX3BvaW50ZXI7CiAgICAgfTsKIAotICAgIHZpcnR1YWwgdm9p
ZCBhZGRTdHJpbmcoY29uc3QgU3RyaW5nJiwgT2JqZWN0VHlwZSkgPSAwOworICAgIHZpcnR1YWwg
dm9pZCByZXBvcnRTdHJpbmcoT2JqZWN0VHlwZSwgY29uc3QgU3RyaW5nJikgPSAwOwogICAgIHZp
cnR1YWwgdm9pZCBjb3VudE9iamVjdFNpemUoT2JqZWN0VHlwZSwgc2l6ZV90KSA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIGRlZmVySW5zdHJ1bWVudGVkUG9pbnRlcihQYXNzT3duUHRyPEluc3RydW1l
bnRlZFBvaW50ZXJCYXNlPikgPSAwOwogICAgIHZpcnR1YWwgYm9vbCB2aXNpdGVkKGNvbnN0IHZv
aWQqKSA9IDA7CkBAIC0xODEsMTUgKzE0MSwxOCBAQCBwdWJsaWM6CiAKICAgICB0ZW1wbGF0ZSA8
dHlwZW5hbWUgUD4gdm9pZCB2aXNpdEJhc2VDbGFzcyhjb25zdCBQKiBwdHIpIHsgcHRyLT5QOjpy
ZXBvcnRNZW1vcnlVc2FnZShtX21lbW9yeU9iamVjdEluZm8pOyB9CiAKLSAgICB0ZW1wbGF0ZSA8
dHlwZW5hbWUgTT4gdm9pZCBhZGRJbnN0cnVtZW50ZWRNZW1iZXIoY29uc3QgTSYgbWVtYmVyKSB7
IG1fbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5hZGRJbnN0cnVtZW50ZWRNZW1iZXIobWVtYmVyKTsg
fQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBNPiB2b2lkIGFkZE1lbWJlcihjb25zdCBNJiBtZW1i
ZXIpIHsgbV9tZW1vcnlJbnN0cnVtZW50YXRpb24tPmFkZE1lbWJlcihtZW1iZXIsIG1fb2JqZWN0
VHlwZSk7IH0KKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgUD4gdm9pZCByZXBvcnRJbnN0cnVtZW50
ZWRQb2ludGVyKGNvbnN0IFAqIG1lbWJlclBvaW50ZXIpIHsgbV9tZW1vcnlJbnN0cnVtZW50YXRp
b24tPnJlcG9ydEluc3RydW1lbnRlZFBvaW50ZXIobWVtYmVyUG9pbnRlcik7IH0KKyAgICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgTz4gdm9pZCByZXBvcnRJbnN0cnVtZW50ZWRPYmplY3QoY29uc3QgTyYg
bWVtYmVyT2JqZWN0KSB7IG1fbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5yZXBvcnRJbnN0cnVtZW50
ZWRPYmplY3QobWVtYmVyT2JqZWN0KTsgfQogCi0gICAgdGVtcGxhdGUgPHR5cGVuYW1lIEhhc2hN
YXBUeXBlPiB2b2lkIGFkZEhhc2hNYXAoY29uc3QgSGFzaE1hcFR5cGUmIG1hcCkgeyBtX21lbW9y
eUluc3RydW1lbnRhdGlvbi0+YWRkSGFzaE1hcChtYXAsIG1fb2JqZWN0VHlwZSwgdHJ1ZSk7IH0K
LSAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgSGFzaFNldFR5cGU+IHZvaWQgYWRkSGFzaFNldChjb25z
dCBIYXNoU2V0VHlwZSYgc2V0KSB7IG1fbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5hZGRIYXNoU2V0
KHNldCwgbV9vYmplY3RUeXBlLCB0cnVlKTsgfQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBMaXN0
SGFzaFNldFR5cGU+IHZvaWQgYWRkTGlzdEhhc2hTZXQoY29uc3QgTGlzdEhhc2hTZXRUeXBlJiBz
ZXQpIHsgbV9tZW1vcnlJbnN0cnVtZW50YXRpb24tPmFkZExpc3RIYXNoU2V0KHNldCwgbV9vYmpl
Y3RUeXBlLCB0cnVlKTsgfQotICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBWZWN0b3JUeXBlPiB2b2lk
IGFkZFZlY3Rvcihjb25zdCBWZWN0b3JUeXBlJiB2ZWN0b3IpIHsgbV9tZW1vcnlJbnN0cnVtZW50
YXRpb24tPmFkZFZlY3Rvcih2ZWN0b3IsIG1fb2JqZWN0VHlwZSwgdHJ1ZSk7IH0KKyAgICB0ZW1w
bGF0ZSA8dHlwZW5hbWUgUD4gdm9pZCByZXBvcnRQb2ludGVyKGNvbnN0IFAqIHBvaW50ZXIpIHsg
bV9tZW1vcnlJbnN0cnVtZW50YXRpb24tPnJlcG9ydFBvaW50ZXIocG9pbnRlciwgbV9vYmplY3RU
eXBlKTsgfQorICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBPPiB2b2lkIHJlcG9ydE9iamVjdChjb25z
dCBPJiBvYmplY3QpIHsgbV9tZW1vcnlJbnN0cnVtZW50YXRpb24tPnJlcG9ydE9iamVjdChvYmpl
Y3QpOyB9CiAKLSAgICB2b2lkIGFkZFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykgeyBtX21l
bW9yeUluc3RydW1lbnRhdGlvbi0+YWRkU3RyaW5nKHN0cmluZywgbV9vYmplY3RUeXBlKTsgfQor
ICAgIHRlbXBsYXRlIDx0eXBlbmFtZSBIYXNoTWFwVHlwZT4gdm9pZCByZXBvcnRIYXNoTWFwKGNv
bnN0IEhhc2hNYXBUeXBlJiBtYXApIHsgbV9tZW1vcnlJbnN0cnVtZW50YXRpb24tPnJlcG9ydEhh
c2hNYXAobWFwLCBtX29iamVjdFR5cGUsIHRydWUpOyB9CisgICAgdGVtcGxhdGUgPHR5cGVuYW1l
IEhhc2hTZXRUeXBlPiB2b2lkIHJlcG9ydEhhc2hTZXQoY29uc3QgSGFzaFNldFR5cGUmIHNldCkg
eyBtX21lbW9yeUluc3RydW1lbnRhdGlvbi0+cmVwb3J0SGFzaFNldChzZXQsIG1fb2JqZWN0VHlw
ZSwgdHJ1ZSk7IH0KKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgTGlzdEhhc2hTZXRUeXBlPiB2b2lk
IHJlcG9ydExpc3RIYXNoU2V0KGNvbnN0IExpc3RIYXNoU2V0VHlwZSYgc2V0KSB7IG1fbWVtb3J5
SW5zdHJ1bWVudGF0aW9uLT5yZXBvcnRMaXN0SGFzaFNldChzZXQsIG1fb2JqZWN0VHlwZSwgdHJ1
ZSk7IH0KKyAgICB0ZW1wbGF0ZSA8dHlwZW5hbWUgVmVjdG9yVHlwZT4gdm9pZCByZXBvcnRWZWN0
b3IoY29uc3QgVmVjdG9yVHlwZSYgdmVjdG9yKSB7IG1fbWVtb3J5SW5zdHJ1bWVudGF0aW9uLT5y
ZXBvcnRWZWN0b3IodmVjdG9yLCBtX29iamVjdFR5cGUsIHRydWUpOyB9CisKKyAgICB2b2lkIHJl
cG9ydFN0cmluZyhjb25zdCBTdHJpbmcmIHN0cmluZykgeyBtX21lbW9yeUluc3RydW1lbnRhdGlv
bi0+cmVwb3J0U3RyaW5nKG1fb2JqZWN0VHlwZSwgc3RyaW5nKTsgfQogCiBwcml2YXRlOgogICAg
IE1lbW9yeU9iamVjdEluZm8qIG1fbWVtb3J5T2JqZWN0SW5mbzsKQEAgLTE5NywxNCArMTYwLDMx
IEBAIHByaXZhdGU6CiAgICAgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpPYmplY3RUeXBlIG1fb2Jq
ZWN0VHlwZTsKIH07CiAKK3RlbXBsYXRlIDx0eXBlbmFtZSBUPgordm9pZCBNZW1vcnlJbnN0cnVt
ZW50YXRpb246OnJlcG9ydEluc3RydW1lbnRlZFBvaW50ZXIoY29uc3QgVCogY29uc3Qgb2JqZWN0
KQoreworICAgIGlmICghb2JqZWN0IHx8IHZpc2l0ZWQob2JqZWN0KSkKKyAgICAgICAgcmV0dXJu
OworICAgIGRlZmVySW5zdHJ1bWVudGVkUG9pbnRlcihhZG9wdFB0cihuZXcgSW5zdHJ1bWVudGVk
UG9pbnRlcjxUPihvYmplY3QpKSk7Cit9CisKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+Cit2b2lkIE1l
bW9yeUluc3RydW1lbnRhdGlvbjo6cmVwb3J0SW5zdHJ1bWVudGVkT2JqZWN0KGNvbnN0IFQmIG9i
amVjdCkKK3sKKyAgICBpZiAodmlzaXRlZCgmb2JqZWN0KSkKKyAgICAgICAgcmV0dXJuOworICAg
IE1lbW9yeU9iamVjdEluZm8gbWVtb3J5T2JqZWN0SW5mbyh0aGlzKTsKKyAgICBvYmplY3QucmVw
b3J0TWVtb3J5VXNhZ2UoJm1lbW9yeU9iamVjdEluZm8pOworfQorCiB0ZW1wbGF0ZTx0eXBlbmFt
ZSBIYXNoTWFwVHlwZT4KLXZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjphZGRIYXNoTWFwKGNv
bnN0IEhhc2hNYXBUeXBlJiBoYXNoTWFwLCBPYmplY3RUeXBlIG9iamVjdFR5cGUsIGJvb2wgY29u
dGVudE9ubHkpCit2b2lkIE1lbW9yeUluc3RydW1lbnRhdGlvbjo6cmVwb3J0SGFzaE1hcChjb25z
dCBIYXNoTWFwVHlwZSYgaGFzaE1hcCwgT2JqZWN0VHlwZSBvYmplY3RUeXBlLCBib29sIGNvbnRl
bnRPbmx5KQogewogICAgIGNvdW50T2JqZWN0U2l6ZShvYmplY3RUeXBlLCBjYWxjdWxhdGVDb250
YWluZXJTaXplKGhhc2hNYXAsIGNvbnRlbnRPbmx5KSk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1l
IEhhc2hTZXRUeXBlPgotdm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEhhc2hTZXQoY29u
c3QgSGFzaFNldFR5cGUmIGhhc2hTZXQsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgYm9vbCBjb250
ZW50T25seSkKK3ZvaWQgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpyZXBvcnRIYXNoU2V0KGNvbnN0
IEhhc2hTZXRUeXBlJiBoYXNoU2V0LCBPYmplY3RUeXBlIG9iamVjdFR5cGUsIGJvb2wgY29udGVu
dE9ubHkpCiB7CiAgICAgaWYgKHZpc2l0ZWQoJmhhc2hTZXQpKQogICAgICAgICByZXR1cm47CkBA
IC0yMTIsNyArMTkyLDcgQEAgdm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZEhhc2hTZXQo
Y29uc3QgSGFzaFNldFR5cGUmIGhhc2hTZXQsIE9iamVjdFR5cGUgb2IKIH0KIAogdGVtcGxhdGU8
dHlwZW5hbWUgTGlzdEhhc2hTZXRUeXBlPgotdm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246OmFk
ZExpc3RIYXNoU2V0KGNvbnN0IExpc3RIYXNoU2V0VHlwZSYgaGFzaFNldCwgT2JqZWN0VHlwZSBv
YmplY3RUeXBlLCBib29sIGNvbnRlbnRPbmx5KQordm9pZCBNZW1vcnlJbnN0cnVtZW50YXRpb246
OnJlcG9ydExpc3RIYXNoU2V0KGNvbnN0IExpc3RIYXNoU2V0VHlwZSYgaGFzaFNldCwgT2JqZWN0
VHlwZSBvYmplY3RUeXBlLCBib29sIGNvbnRlbnRPbmx5KQogewogICAgIGlmICh2aXNpdGVkKCZo
YXNoU2V0KSkKICAgICAgICAgcmV0dXJuOwpAQCAtMjIxLDcgKzIwMSw3IEBAIHZvaWQgTWVtb3J5
SW5zdHJ1bWVudGF0aW9uOjphZGRMaXN0SGFzaFNldChjb25zdCBMaXN0SGFzaFNldFR5cGUmIGhh
c2hTZXQsIE9iamVjCiB9CiAKIHRlbXBsYXRlIDx0eXBlbmFtZSBWZWN0b3JUeXBlPgotdm9pZCBN
ZW1vcnlJbnN0cnVtZW50YXRpb246OmFkZFZlY3Rvcihjb25zdCBWZWN0b3JUeXBlJiB2ZWN0b3Is
IE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgYm9vbCBjb250ZW50T25seSkKK3ZvaWQgTWVtb3J5SW5z
dHJ1bWVudGF0aW9uOjpyZXBvcnRWZWN0b3IoY29uc3QgVmVjdG9yVHlwZSYgdmVjdG9yLCBPYmpl
Y3RUeXBlIG9iamVjdFR5cGUsIGJvb2wgY29udGVudE9ubHkpCiB7CiAgICAgaWYgKHZpc2l0ZWQo
dmVjdG9yLmRhdGEoKSkpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Ob2RlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAppbmRleCBjYjUy
MDk0ZGI3MjRhMmNlNTNhOGU3ZTcyN2RlNTUxMWM0MzIwMzU3Li4wM2E2MGU1MjA2MTdlODZkOTVh
MjUzOTg5OTU5YzczZmZhNzlmNWMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vTm9k
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGUuY3BwCkBAIC0yNzcxLDkgKzI3NzEs
OSBAQCB2b2lkIE5vZGU6OnJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVjdEluZm8qIG1lbW9y
eU9iamVjdEluZm8pIGNvbnN0CiAgICAgTWVtb3J5Q2xhc3NJbmZvPE5vZGU+IGluZm8obWVtb3J5
T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpET00pOwogICAgIGluZm8u
dmlzaXRCYXNlQ2xhc3M8VHJlZVNoYXJlZDxOb2RlLCBDb250YWluZXJOb2RlPiA+KHRoaXMpOwog
ICAgIGluZm8udmlzaXRCYXNlQ2xhc3M8U2NyaXB0V3JhcHBhYmxlPih0aGlzKTsKLSAgICBpbmZv
LmFkZEluc3RydW1lbnRlZE1lbWJlcihtX2RvY3VtZW50KTsKLSAgICBpbmZvLmFkZEluc3RydW1l
bnRlZE1lbWJlcihtX25leHQpOwotICAgIGluZm8uYWRkSW5zdHJ1bWVudGVkTWVtYmVyKG1fcHJl
dmlvdXMpOworICAgIGluZm8ucmVwb3J0SW5zdHJ1bWVudGVkUG9pbnRlcihtX2RvY3VtZW50KTsK
KyAgICBpbmZvLnJlcG9ydEluc3RydW1lbnRlZFBvaW50ZXIobV9uZXh0KTsKKyAgICBpbmZvLnJl
cG9ydEluc3RydW1lbnRlZFBvaW50ZXIobV9wcmV2aW91cyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9RdWFsaWZpZWROYW1lLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vUXVhbGlmaWVkTmFtZS5oCmluZGV4IDViMmRlMzkwZTNlOTAx
NmY2NWM0NWJkNTYxNDYxNmZhZmFjYzJjZWQuLjI4NDVlNzc1OWFmNTAwMzIzNzNiNDE0NDhjMTky
NmFhN2VhN2U2NzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9RdWFsaWZpZWROYW1l
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1F1YWxpZmllZE5hbWUuaApAQCAtNTMsMTAgKzUz
LDEwIEBAIHB1YmxpYzoKICAgICAgICAgdm9pZCByZXBvcnRNZW1vcnlVc2FnZShNZW1vcnlPYmpl
Y3RJbmZvKiBtZW1vcnlPYmplY3RJbmZvKSBjb25zdAogICAgICAgICB7CiAgICAgICAgICAgICBN
ZW1vcnlDbGFzc0luZm88UXVhbGlmaWVkTmFtZUltcGw+IGluZm8obWVtb3J5T2JqZWN0SW5mbywg
dGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9uOjpET00pOwotICAgICAgICAgICAgaW5mby5hZGRN
ZW1iZXIobV9wcmVmaXgpOwotICAgICAgICAgICAgaW5mby5hZGRNZW1iZXIobV9sb2NhbE5hbWUp
OwotICAgICAgICAgICAgaW5mby5hZGRNZW1iZXIobV9uYW1lc3BhY2UpOwotICAgICAgICAgICAg
aW5mby5hZGRNZW1iZXIobV9sb2NhbE5hbWVVcHBlcik7CisgICAgICAgICAgICBpbmZvLnJlcG9y
dE9iamVjdChtX3ByZWZpeCk7CisgICAgICAgICAgICBpbmZvLnJlcG9ydE9iamVjdChtX2xvY2Fs
TmFtZSk7CisgICAgICAgICAgICBpbmZvLnJlcG9ydE9iamVjdChtX25hbWVzcGFjZSk7CisgICAg
ICAgICAgICBpbmZvLnJlcG9ydE9iamVjdChtX2xvY2FsTmFtZVVwcGVyKTsKICAgICAgICAgfQog
ICAgIHByaXZhdGU6CiAgICAgICAgIFF1YWxpZmllZE5hbWVJbXBsKGNvbnN0IEF0b21pY1N0cmlu
ZyYgcHJlZml4LCBjb25zdCBBdG9taWNTdHJpbmcmIGxvY2FsTmFtZSwgY29uc3QgQXRvbWljU3Ry
aW5nJiBuYW1lc3BhY2VVUkkpCkBAIC0xMDUsNyArMTA1LDcgQEAgcHVibGljOgogICAgIHZvaWQg
cmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyogbWVtb3J5T2JqZWN0SW5mbykgY29u
c3QKICAgICB7CiAgICAgICAgIE1lbW9yeUNsYXNzSW5mbzxRdWFsaWZpZWROYW1lPiBpbmZvKG1l
bW9yeU9iamVjdEluZm8sIHRoaXMsIE1lbW9yeUluc3RydW1lbnRhdGlvbjo6RE9NKTsKLSAgICAg
ICAgaW5mby5hZGRJbnN0cnVtZW50ZWRNZW1iZXIobV9pbXBsKTsKKyAgICAgICAgaW5mby5yZXBv
cnRJbnN0cnVtZW50ZWRQb2ludGVyKG1faW1wbCk7CiAgICAgfQogcHJpdmF0ZToKICAgICB2b2lk
IGluaXQoY29uc3QgQXRvbWljU3RyaW5nJiBwcmVmaXgsIGNvbnN0IEF0b21pY1N0cmluZyYgbG9j
YWxOYW1lLCBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWVzcGFjZVVSSSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yTWVtb3J5QWdlbnQuY3BwIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvck1lbW9yeUFnZW50LmNwcAppbmRleCAyYWQwMTQ1
NzY5ZDAxNjc0ZjEyZjE0M2MxNDYxNTg2ZGY5OTU5OWQ4Li41YjNlMzY2MmQ1YTUxZWRhNjIwZjM4
N2U2NWE5OWNjMzA5MDBmNzQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yTWVtb3J5QWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JNZW1vcnlBZ2VudC5jcHAKQEAgLTUwMCw3ICs1MDAsNyBAQCBwdWJsaWM6CiAgICAg
fQogCiBwcml2YXRlOgotICAgIHZpcnR1YWwgdm9pZCBhZGRTdHJpbmcoY29uc3QgU3RyaW5nJiBz
dHJpbmcsIE9iamVjdFR5cGUgb2JqZWN0VHlwZSkKKyAgICB2aXJ0dWFsIHZvaWQgcmVwb3J0U3Ry
aW5nKE9iamVjdFR5cGUgb2JqZWN0VHlwZSwgY29uc3QgU3RyaW5nJiBzdHJpbmcpCiAgICAgewog
ICAgICAgICBpZiAoc3RyaW5nLmlzTnVsbCgpIHx8IHZpc2l0ZWQoc3RyaW5nLmltcGwoKSkpCiAg
ICAgICAgICAgICByZXR1cm47CkBAIC01NDEsNyArNTQxLDcgQEAgcHVibGljOgogICAgICAgICBp
ZiAobm9kZS0+ZG9jdW1lbnQoKSAmJiBub2RlLT5kb2N1bWVudCgpLT5mcmFtZSgpICYmIG1fcGFn
ZSAhPSBub2RlLT5kb2N1bWVudCgpLT5mcmFtZSgpLT5wYWdlKCkpCiAgICAgICAgICAgICByZXR1
cm47CiAKLSAgICAgICAgbV9kb21NZW1vcnlVc2FnZS5hZGRJbnN0cnVtZW50ZWRNZW1iZXIobm9k
ZSk7CisgICAgICAgIG1fZG9tTWVtb3J5VXNhZ2UucmVwb3J0SW5zdHJ1bWVudGVkUG9pbnRlcihu
b2RlKTsKICAgICAgICAgbV9kb21NZW1vcnlVc2FnZS5wcm9jZXNzRGVmZXJyZWRJbnN0cnVtZW50
ZWRQb2ludGVycygpOwogICAgIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vVHJlZVNoYXJlZC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vVHJlZVNoYXJlZC5oCmlu
ZGV4IGQ0ZDUzZWFlZTkyNGVhMjFhZDhmZWFjNzFlYmQyNjY3Y2UxMzI0YWUuLjQ0ZGMxNmZiZmE4
ZDE2MjZhZmQwZmRiZDIwM2IyZTY5Y2VmYjY1NGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL1RyZWVTaGFyZWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9UcmVl
U2hhcmVkLmgKQEAgLTExNCw3ICsxMTQsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCByZXBvcnRNZW1v
cnlVc2FnZShNZW1vcnlPYmplY3RJbmZvKiBtZW1vcnlPYmplY3RJbmZvKSBjb25zdAogICAgIHsK
ICAgICAgICAgTWVtb3J5Q2xhc3NJbmZvPFRyZWVTaGFyZWQ8Tm9kZVR5cGUsIFBhcmVudE5vZGVU
eXBlPiA+IGluZm8obWVtb3J5T2JqZWN0SW5mbywgdGhpcywgTWVtb3J5SW5zdHJ1bWVudGF0aW9u
OjpET00pOwotICAgICAgICBpbmZvLmFkZEluc3RydW1lbnRlZE1lbWJlcihtX3BhcmVudCk7Cisg
ICAgICAgIGluZm8ucmVwb3J0SW5zdHJ1bWVudGVkUG9pbnRlcihtX3BhcmVudCk7CiAgICAgfQog
CiBwcml2YXRlOgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>