<?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>179954</bug_id>
          
          <creation_ts>2017-11-22 11:09:49 -0800</creation_ts>
          <short_desc>Remove unneeded ScriptController::processingUserGesture() forwarding functions</short_desc>
          <delta_ts>2017-11-23 11:37:38 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1374237</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-11-22 11:09:49 -0800</bug_when>
    <thetext>Remove unneeded ScriptController::processingUserGesture() forwarding functions</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374241</commentid>
    <comment_count>1</comment_count>
      <attachid>327463</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-11-22 11:14:25 -0800</bug_when>
    <thetext>Created attachment 327463
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374286</commentid>
    <comment_count>2</comment_count>
      <attachid>327463</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-22 14:01:35 -0800</bug_when>
    <thetext>Comment on attachment 327463
Patch

Rejecting attachment 327463 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-03&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 327463, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/Source/WebKit/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.webkit.org/results/5333366</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374296</commentid>
    <comment_count>3</comment_count>
      <attachid>327463</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-22 15:08:28 -0800</bug_when>
    <thetext>Comment on attachment 327463
Patch

Rejecting attachment 327463 from commit-queue.

Failed to run &quot;[&apos;/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-queues.webkit.org&apos;, &apos;--bot-id=webkit-cq-02&apos;, &apos;validate-changelog&apos;, &apos;--check-oops&apos;, &apos;--non-interactive&apos;, 327463, &apos;--port=mac&apos;]&quot; exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

/Volumes/Data/EWS/WebKit/Source/WebKit/ChangeLog neither lists a valid reviewer nor contains the string &quot;Unreviewed&quot; or &quot;Rubber stamp&quot; (case insensitive).

Full output: http://webkit-queues.webkit.org/results/5333808</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374452</commentid>
    <comment_count>4</comment_count>
      <attachid>327511</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-11-23 11:05:05 -0800</bug_when>
    <thetext>Created attachment 327511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374457</commentid>
    <comment_count>5</comment_count>
      <attachid>327511</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-23 11:36:12 -0800</bug_when>
    <thetext>Comment on attachment 327511
Patch

Clearing flags on attachment: 327511

Committed r225120: &lt;https://trac.webkit.org/changeset/225120&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374458</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-23 11:36:13 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1374459</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-23 11:37:38 -0800</bug_when>
    <thetext>&lt;rdar://problem/35677742&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327463</attachid>
            <date>2017-11-22 11:14:25 -0800</date>
            <delta_ts>2017-11-23 11:05:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179954-20171122111424.patch</filename>
            <type>text/plain</type>
            <size>22990</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNTA5NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ2IEBACisyMDE3LTExLTIyICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIHVubmVlZGVkIFNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGZvcndhcmRpbmcgZnVuY3Rpb25zCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk5NTQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBsYWNlIFNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGFuZCBTY3JpcHRDb250cm9s
bGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpCisgICAgICAgIHdpdGggZGlyZWN0
IGNhbGxzIHRvIHRoZSBjb3JyZXNwb25kaW5nIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGZ1bmN0aW9u
cy4KKworICAgICAgICAqIE1vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFwcGxlUGF5U2Vzc2lvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OkFwcGxlUGF5U2Vzc2lvbjo6b3BlblBheW1lbnRTZXR1cCk6CisgICAgICAgICogTW9kdWxl
cy9zcGVlY2gvU3BlZWNoU3ludGhlc2lzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNwZWVjaFN5
bnRoZXNpczo6c3BlYWspOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1lZGlhKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5n
cy9qcy9TY3JpcHRDb250cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSBj
b25zdCk6CisgICAgICAgICogaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0
VHlwZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudCk6CisgICAgICAgICogaHRtbC9Db2xvcklucHV0
VHlwZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb2xvcklucHV0VHlwZTo6aGFuZGxlRE9NQWN0
aXZhdGVFdmVudCk6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOgorICAgICAg
ICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3Jt
RWxlbWVudDo6c3VibWl0RnJvbUphdmFTY3JpcHQpOgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJ
bkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbik6CisgICAgICAg
ICogbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVy
OjpzdWJtaXRGb3JtKToKKyAgICAgICAgKFdlYkNvcmU6OnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQ
b2xpY3lUb0FwcGx5KToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpET01XaW5kb3c6OmFsbG93UG9wVXApOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2lu
ZG93OjpzZXRMb2NhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmNyZWF0ZVdp
bmRvdyk6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6Om9wZW4pOgorICAgICAgICAqIHBh
Z2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJM
b2NrQ29udHJvbGxlcjo6cmVxdWVzdFBvaW50ZXJMb2NrKToKKwogMjAxNy0xMS0yMiAgQ29tbWl0
IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
cm9sbGluZyBvdXQgcjIyNTA5My4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVw
YXkvQXBwbGVQYXlTZXNzaW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2FwcGxlcGF5L0FwcGxlUGF5U2Vzc2lvbi5jcHAJKHJldmlzaW9uIDIyNTA5NykKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNDAsNiArNDAsNyBAQAogI2luY2x1ZGUgIkFwcGxlUGF5U2hpcHBpbmdNZXRo
b2RTZWxlY3RlZEV2ZW50LmgiCiAjaW5jbHVkZSAiQXBwbGVQYXlTaGlwcGluZ01ldGhvZFVwZGF0
ZS5oIgogI2luY2x1ZGUgIkFwcGxlUGF5VmFsaWRhdGVNZXJjaGFudEV2ZW50LmgiCisjaW5jbHVk
ZSAiRE9NV2luZG93LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVu
dExvYWRlci5oIgogI2luY2x1ZGUgIkV2ZW50TmFtZXMuaCIKQEAgLTU1LDkgKzU2LDkgQEAKICNp
bmNsdWRlICJQYXltZW50TWVyY2hhbnRTZXNzaW9uLmgiCiAjaW5jbHVkZSAiUGF5bWVudE1ldGhv
ZC5oIgogI2luY2x1ZGUgIlBheW1lbnRSZXF1ZXN0VmFsaWRhdG9yLmgiCi0jaW5jbHVkZSAiU2Ny
aXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAi
U2V0dGluZ3MuaCIKKyNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTQwNCw3ICs0MDUsNyBAQCBFeGNlcHRpb25PcjxSZWY8QXBwbGVQ
YXlTZXNzaW9uPj4gQXBwbGVQCiAgICAgaWYgKGNhbkNhbGwuaGFzRXhjZXB0aW9uKCkpCiAgICAg
ICAgIHJldHVybiBjYW5DYWxsLnJlbGVhc2VFeGNlcHRpb24oKTsKIAotICAgIGlmICghU2NyaXB0
Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCisgICAgaWYgKCFVc2VyR2VzdHVy
ZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybiBFeGNl
cHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IsICJNdXN0IGNyZWF0ZSBhIG5ldyBBcHBsZVBheVNl
c3Npb24gZnJvbSBhIHVzZXIgZ2VzdHVyZSBoYW5kbGVyLiIgfTsKIAogICAgIGF1dG8mIHBheW1l
bnRDb29yZGluYXRvciA9IGRvY3VtZW50LmZyYW1lKCktPm1haW5GcmFtZSgpLnBheW1lbnRDb29y
ZGluYXRvcigpOwpAQCAtNDk3LDcgKzQ5OCw3IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEFwcGxlUGF5
U2Vzc2lvbjo6b3BlblAKICAgICBpZiAoY2FuQ2FsbC5oYXNFeGNlcHRpb24oKSkKICAgICAgICAg
cmV0dXJuIGNhbkNhbGwucmVsZWFzZUV4Y2VwdGlvbigpOwogCi0gICAgaWYgKCFTY3JpcHRDb250
cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKKyAgICBpZiAoIVVzZXJHZXN0dXJlSW5k
aWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlv
biB7IEludmFsaWRBY2Nlc3NFcnJvciwgIk11c3QgY2FsbCBBcHBsZVBheVNlc3Npb24ub3BlblBh
eW1lbnRTZXR1cCBmcm9tIGEgdXNlciBnZXN0dXJlIGhhbmRsZXIuIiB9OwogCiAgICAgUmVmUHRy
PERlZmVycmVkUHJvbWlzZT4gcHJvbWlzZShXVEZNb3ZlKHBhc3NlZFByb21pc2UpKTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvc3BlZWNoL1NwZWVjaFN5bnRoZXNpcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3BlZWNoU3ludGhlc2lzLmNw
cAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9zcGVlY2gvU3Bl
ZWNoU3ludGhlc2lzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsOSArMzEsOSBAQAogI2luY2x1
ZGUgIkV2ZW50TmFtZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNl
LmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TcGVlY2hTeW50aGVzaXplci5oIgotI2luY2x1ZGUgIlNj
cmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTcGVlY2hTeW50aGVzaXNFdmVudC5oIgogI2lu
Y2x1ZGUgIlNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5oIgorI2luY2x1ZGUgIlVzZXJHZXN0dXJl
SW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8d3RmL0N1cnJlbnRUaW1lLmg+CiAjaW5jbHVkZSA8d3Rm
L05ldmVyRGVzdHJveWVkLmg+CiAKQEAgLTEyMyw3ICsxMjMsNyBAQCB2b2lkIFNwZWVjaFN5bnRo
ZXNpczo6c3BlYWsoU3BlZWNoU3ludGhlCiB7CiAgICAgLy8gTGlrZSBBdWRpbywgd2Ugc2hvdWxk
IHJlcXVpcmUgdGhhdCB0aGUgdXNlciBpbnRlcmFjdCB0byBzdGFydCBhIHNwZWVjaCBzeW50aGVz
aXMgc2Vzc2lvbi4KICNpZiBQTEFURk9STShJT1MpCi0gICAgaWYgKFNjcmlwdENvbnRyb2xsZXI6
OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQorICAgIGlmIChVc2VyR2VzdHVyZUluZGljYXRvcjo6
cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJlbW92ZUJlaGF2aW9yUmVzdHJpY3Rp
b24oUmVxdWlyZVVzZXJHZXN0dXJlRm9yU3BlZWNoU3RhcnRSZXN0cmljdGlvbik7CiAgICAgZWxz
ZSBpZiAodXNlckdlc3R1cmVSZXF1aXJlZEZvclNwZWVjaFN0YXJ0KCkpCiAgICAgICAgIHJldHVy
bjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xs
ZXIuY3BwCShyZXZpc2lvbiAyMjUwOTcpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9T
Y3JpcHRDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDcyLDE2ICs0NzIsNiBAQCB2
b2lkIFNjcmlwdENvbnRyb2xsZXI6OmRpc2FibGVXZWJBc3NlbWJsCiAgICAgd2luZG93UHJveHkt
PndpbmRvdygpLT5zZXRXZWJBc3NlbWJseUVuYWJsZWQoZmFsc2UsIGVycm9yTWVzc2FnZSk7CiB9
CiAKLWJvb2wgU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkKLXsKLSAg
ICByZXR1cm4gVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpOwot
fQotCi1ib29sIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1lZGlh
KCkKLXsKLSAgICByZXR1cm4gVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2Vz
dHVyZUZvck1lZGlhKCk7Ci19Ci0KIGJvb2wgU2NyaXB0Q29udHJvbGxlcjo6Y2FuQWNjZXNzRnJv
bUN1cnJlbnRPcmlnaW4oRnJhbWUqIGZyYW1lKQogewogICAgIGF1dG8qIHN0YXRlID0gSlNNYWlu
VGhyZWFkRXhlY1N0YXRlOjpjdXJyZW50U3RhdGUoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9TY3JpcHRDb250cm9sbGVyLmgJKHJldmlzaW9uIDIyNTA5NykKKysrIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuaAkod29ya2luZyBjb3B5
KQpAQCAtMTM1LDkgKzEzNSw2IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc2FibGVFdmFsKGNvbnN0
IFN0cmluZyYgZXJyb3JNZXNzYWdlKTsKICAgICB2b2lkIGRpc2FibGVXZWJBc3NlbWJseShjb25z
dCBTdHJpbmcmIGVycm9yTWVzc2FnZSk7CiAKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgYm9v
bCBwcm9jZXNzaW5nVXNlckdlc3R1cmUoKTsKLSAgICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgYm9v
bCBwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpOwotCiAgICAgc3RhdGljIGJvb2wgY2Fu
QWNjZXNzRnJvbUN1cnJlbnRPcmlnaW4oRnJhbWUqKTsKICAgICBXRUJDT1JFX0VYUE9SVCBib29s
IGNhbkV4ZWN1dGVTY3JpcHRzKFJlYXNvbkZvckNhbGxpbmdDYW5FeGVjdXRlU2NyaXB0cyk7CiAK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNl
L1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjY1NCw3ICs2NjU0
LDcgQEAgdm9pZCBEb2N1bWVudDo6dXBkYXRlTGFzdEhhbmRsZWRVc2VyR2VzdAogCiBib29sIERv
Y3VtZW50Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpIGNvbnN0CiB7Ci0gICAgaWYg
KFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1lZGlhKCkpCisgICAg
aWYgKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgp
KQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIGlmIChzZXR0aW5ncygpLm1lZGlhVXNlckdl
c3R1cmVJbmhlcml0c0Zyb21Eb2N1bWVudCgpKQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9C
YXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5jcHAJ
KHJldmlzaW9uIDIyNTA5NykKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvQmFzZUNob29zZXJPbmx5
RGF0ZUFuZFRpbWVJbnB1dFR5cGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw4ICszMiw4IEBA
CiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNs
dWRlICJSZW5kZXJFbGVtZW50LmgiCi0jaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2lu
Y2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgog
I2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC00NSw3ICs0NSw3IEBAIEJhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlOjp+QmEK
IAogdm9pZCBCYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZTo6aGFuZGxlRE9NQWN0
aXZhdGVFdmVudChFdmVudCYpCiB7Ci0gICAgaWYgKGVsZW1lbnQoKS5pc0Rpc2FibGVkT3JSZWFk
T25seSgpIHx8ICFlbGVtZW50KCkucmVuZGVyZXIoKSB8fCAhU2NyaXB0Q29udHJvbGxlcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCkpCisgICAgaWYgKGVsZW1lbnQoKS5pc0Rpc2FibGVkT3JSZWFk
T25seSgpIHx8ICFlbGVtZW50KCkucmVuZGVyZXIoKSB8fCAhVXNlckdlc3R1cmVJbmRpY2F0b3I6
OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAobV9k
YXRlVGltZUNob29zZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBl
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmNw
cAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9Db2xvcklucHV0VHlw
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDggKzQ4LDggQEAKICNpbmNsdWRlICJSZW5kZXJP
YmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJWaWV3LmgiCiAjaW5jbHVkZSAiU2NvcGVkRXZlbnRR
dWV1ZS5oIgotI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTaGFkb3dS
b290LmgiCisjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCkBAIC0xNTEsNyArMTUxLDcgQEAgdm9pZCBDb2xvcklucHV0VHlwZTo6aGFuZGxl
RE9NQWN0aXZhdGVFdgogICAgIGlmIChlbGVtZW50KCkuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkg
fHwgIWVsZW1lbnQoKS5yZW5kZXJlcigpKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoIVNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQorICAgIGlmICghVXNlckdl
c3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm47
CiAKICAgICBpZiAoQ2hyb21lKiBjaHJvbWUgPSB0aGlzLT5jaHJvbWUoKSkgewpJbmRleDogU291
cmNlL1dlYkNvcmUvaHRtbC9GaWxlSW5wdXRUeXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCShyZXZpc2lvbiAyMjUwOTcpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0ZpbGVJbnB1dFR5cGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCwx
MyArNDAsMTIgQEAKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyRmlsZVVwbG9hZENvbnRyb2wuaCIKICNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZlYXR1cmVz
LmgiCi0jaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgi
CiAjaW5jbHVkZSAiU2hhZG93Um9vdC5oIgorI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9y
LmgiCiAjaW5jbHVkZSA8d3RmL1R5cGVDYXN0cy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmlu
Z0J1aWxkZXIuaD4KIAotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiBjbGFzcyBVcGxvYWRCdXR0b25F
bGVtZW50OwogfQpAQCAtMjAwLDcgKzE5OSw3IEBAIHZvaWQgRmlsZUlucHV0VHlwZTo6aGFuZGxl
RE9NQWN0aXZhdGVFdmUKICAgICBpZiAoaW5wdXQuaXNEaXNhYmxlZEZvcm1Db250cm9sKCkpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIGlmICghU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpCisgICAgaWYgKCFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChhdXRvKiBjaHJvbWUgPSB0
aGlzLT5jaHJvbWUoKSkgewpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50
LmNwcAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVs
ZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Nyw4ICs0Nyw4IEBACiAjaW5jbHVkZSAiUGFn
ZS5oIgogI2luY2x1ZGUgIlJhZGlvTm9kZUxpc3QuaCIKICNpbmNsdWRlICJSZW5kZXJUZXh0Q29u
dHJvbC5oIgotI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZXR0aW5n
cy5oIgorI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8bGltaXRz
PgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvU2V0Rm9yU2NvcGUuaD4KQEAg
LTI5OSw3ICsyOTksNyBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KCkKIAogdm9pZCBI
VE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdEZyb21KYXZhU2NyaXB0KCkKIHsKLSAgICBzdWJtaXQobnVs
bHB0ciwgZmFsc2UsIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBT
dWJtaXR0ZWRCeUphdmFTY3JpcHQpOworICAgIHN1Ym1pdChudWxscHRyLCBmYWxzZSwgVXNlckdl
c3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpLCBTdWJtaXR0ZWRCeUphdmFT
Y3JpcHQpOwogfQogCiBTdHJpbmdQYWlyVmVjdG9yIEhUTUxGb3JtRWxlbWVudDo6dGV4dEZpZWxk
VmFsdWVzKCkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdl
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50LmNwcAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEsNiArNTEs
NyBAQAogI2luY2x1ZGUgIlN0eWxlVHJlZVJlc29sdmVyLmgiCiAjaW5jbHVkZSAiU3ViZnJhbWVM
b2FkZXIuaCIKICNpbmNsdWRlICJUeXBlZEVsZW1lbnREZXNjZW5kYW50SXRlcmF0b3IuaCIKKyNp
bmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogI2luY2x1ZGUgPHJ1bnRpbWUvQ2F0Y2hT
Y29wZS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC05Niw3ICs5Nyw3IEBAIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OkhUTUxQbHVnSW5JbWFnZUUKICAgICA6IEhUTUxQbHVnSW5FbGVtZW50
KHRhZ05hbWUsIGRvY3VtZW50KQogICAgICwgbV9zaW11bGF0ZWRNb3VzZUNsaWNrVGltZXIoKnRo
aXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJl
ZCwgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRGVsYXkpCiAgICAgLCBtX3JlbW92ZVNuYXBzaG90
VGltZXIoKnRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hvdFRpbWVy
RmlyZWQpCi0gICAgLCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZShTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKKyAgICAsIG1fY3JlYXRlZER1cmluZ1VzZXJHZXN0
dXJlKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKIHsKICAg
ICBzZXRIYXNDdXN0b21TdHlsZVJlc29sdmVDYWxsYmFja3MoKTsKIH0KQEAgLTYzOSw3ICs2NDAs
NyBAQCB2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnN1YmZyYW1lTG9hCiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKLSAgICBpZiAoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKCkpIHsKKyAgICBpZiAoVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpKSB7CiAgICAgICAgIExPRyhQbHVnaW5zLCAiJXAgU2NyaXB0IGlzIGN1cnJlbnRs
eSBwcm9jZXNzaW5nIHVzZXIgZ2VzdHVyZSwgc2V0IHRvIHBsYXkiLCB0aGlzKTsKICAgICAgICAg
bV9zbmFwc2hvdERlY2lzaW9uID0gTmV2ZXJTbmFwc2hvdDsKICAgICAgICAgcmV0dXJuOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCShyZXZpc2lvbiAyMjUwOTcpCisr
KyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xMTcsNiArMTE3LDcgQEAKICNpbmNsdWRlICJTdWJmcmFtZUxvYWRlci5oIgogI2luY2x1ZGUg
IlRleHRSZXNvdXJjZURlY29kZXIuaCIKICNpbmNsdWRlICJVc2VyQ29udGVudENvbnRyb2xsZXIu
aCIKKyNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogI2luY2x1ZGUgIldpbmRvd0Zl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiWE1MRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlIDx3dGYv
Q29tcGxldGlvbkhhbmRsZXIuaD4KQEAgLTQyMCw3ICs0MjEsNyBAQCB2b2lkIEZyYW1lTG9hZGVy
OjpzdWJtaXRGb3JtKFJlZjxGb3JtU3ViCiAKICAgICBGcmFtZSogdGFyZ2V0RnJhbWUgPSBmaW5k
RnJhbWVGb3JOYXZpZ2F0aW9uKHN1Ym1pc3Npb24tPnRhcmdldCgpLCAmc3VibWlzc2lvbi0+c3Rh
dGUoKS5zb3VyY2VEb2N1bWVudCgpKTsKICAgICBpZiAoIXRhcmdldEZyYW1lKSB7Ci0gICAgICAg
IGlmICghRE9NV2luZG93OjphbGxvd1BvcFVwKG1fZnJhbWUpICYmICFTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKKyAgICAgICAgaWYgKCFET01XaW5kb3c6OmFsbG93
UG9wVXAobV9mcmFtZSkgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdl
c3R1cmUoKSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICAvLyBGSVhNRTogdGFyZ2V0
RnJhbWUgY2FuIGJlIG51bGwgZm9yIHR3byBkaXN0aW5jdCByZWFzb25zOgpAQCAtMTIxNyw3ICsx
MjE4LDcgQEAgdm9pZCBGcmFtZUxvYWRlcjo6bG9hZEZyYW1lUmVxdWVzdChGcmFtZQogCiBzdGF0
aWMgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBzaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9s
aWN5VG9BcHBseShGcmFtZSYgY3VycmVudEZyYW1lLCBJbml0aWF0ZWRCeU1haW5GcmFtZSBpbml0
aWF0ZWRCeU1haW5GcmFtZSwgU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeSBwcm9wYWdhdGVk
UG9saWN5KQogewotICAgIGlmIChTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1
cmUoKSkKKyAgICBpZiAoVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpKQogICAgICAgICByZXR1cm4gU2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeTo6U2hvdWxk
QWxsb3c7CiAKICAgICBpZiAoaW5pdGlhdGVkQnlNYWluRnJhbWUgPT0gSW5pdGlhdGVkQnlNYWlu
RnJhbWU6OlllcykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAJKHJldmlzaW9uIDIy
NTA5NykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNjUsNiArNjUsNyBAQAogI2luY2x1ZGUgIkhUTUxGcmFtZU93bmVyRWxlbWVudC5oIgog
I2luY2x1ZGUgIkhpc3RvcnkuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
aCIKKyNpbmNsdWRlICJKU0RPTVdpbmRvd0Jhc2UuaCIKICNpbmNsdWRlICJKU01haW5UaHJlYWRF
eGVjU3RhdGUuaCIKICNpbmNsdWRlICJMb2NhdGlvbi5oIgogI2luY2x1ZGUgIk1haW5GcmFtZS5o
IgpAQCAtODMsNyArODQsNiBAQAogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIK
ICNpbmNsdWRlICJTY2hlZHVsZWRBY3Rpb24uaCIKICNpbmNsdWRlICJTY3JlZW4uaCIKLSNpbmNs
dWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNp
bmNsdWRlICJTZWN1cml0eU9yaWdpbkRhdGEuaCIKICNpbmNsdWRlICJTZWN1cml0eVBvbGljeS5o
IgpAQCAtMzU4LDcgKzM1OCw3IEBAIEZsb2F0UmVjdCBET01XaW5kb3c6OmFkanVzdFdpbmRvd1Jl
Y3QoUGEKIAogYm9vbCBET01XaW5kb3c6OmFsbG93UG9wVXAoRnJhbWUmIGZpcnN0RnJhbWUpCiB7
Ci0gICAgcmV0dXJuIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpCisg
ICAgcmV0dXJuIFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKQog
ICAgICAgICB8fCBmaXJzdEZyYW1lLnNldHRpbmdzKCkuamF2YVNjcmlwdENhbk9wZW5XaW5kb3dz
QXV0b21hdGljYWxseSgpOwogfQogCkBAIC0yMTAzLDcgKzIxMDMsNyBAQCB2b2lkIERPTVdpbmRv
dzo6c2V0TG9jYXRpb24oRE9NV2luZG93JiBhCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIFdl
IHdhbnQgYSBuZXcgaGlzdG9yeSBpdGVtIGlmIHdlIGFyZSBwcm9jZXNzaW5nIGEgdXNlciBnZXN0
dXJlLgotICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3Rv
cnlCYXNlZE9uR2VzdHVyZVN0YXRlIHx8ICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNl
ckdlc3R1cmUoKSkgPyBMb2NrSGlzdG9yeTo6WWVzIDogTG9ja0hpc3Rvcnk6Ok5vOworICAgIExv
Y2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gKGxvY2tpbmcgIT0gTG9ja0hpc3RvcnlCYXNlZE9uR2Vz
dHVyZVN0YXRlIHx8ICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJl
KCkpID8gTG9ja0hpc3Rvcnk6OlllcyA6IExvY2tIaXN0b3J5OjpObzsKICAgICBMb2NrQmFja0Zv
cndhcmRMaXN0IGxvY2tCYWNrRm9yd2FyZExpc3QgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJh
c2VkT25HZXN0dXJlU3RhdGUpID8gTG9ja0JhY2tGb3J3YXJkTGlzdDo6WWVzIDogTG9ja0JhY2tG
b3J3YXJkTGlzdDo6Tm87CiAgICAgbV9mcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVk
dWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJp
dHlPcmlnaW4oKSwKICAgICAgICAgLy8gRklYTUU6IFdoYXQgaWYgYWN0aXZlRG9jdW1lbnQoKS0+
ZnJhbWUoKSBpcyAwPwpAQCAtMjIzMiw3ICsyMjMyLDcgQEAgUmVmUHRyPEZyYW1lPiBET01XaW5k
b3c6OmNyZWF0ZVdpbmRvdyhjbwogICAgICAgICBGcmFtZUxvYWRSZXF1ZXN0IGZyYW1lTG9hZFJl
cXVlc3QgeyAqYWN0aXZlV2luZG93LmRvY3VtZW50KCksIGFjdGl2ZVdpbmRvdy5kb2N1bWVudCgp
LT5zZWN1cml0eU9yaWdpbigpLCByZXNvdXJjZVJlcXVlc3QsIEFTQ0lJTGl0ZXJhbCgiX3NlbGYi
KSwgTG9ja0hpc3Rvcnk6Ok5vLCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObywgTWF5YmVTZW5kUmVm
ZXJyZXIsIEFsbG93TmF2aWdhdGlvblRvSW52YWxpZFVSTDo6WWVzLCBOZXdGcmFtZU9wZW5lclBv
bGljeTo6QWxsb3csIGFjdGl2ZURvY3VtZW50LT5zaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5
VG9Qcm9wYWdhdGUoKSwgaW5pdGlhdGVkQnlNYWluRnJhbWUgfTsKICAgICAgICAgbmV3RnJhbWUt
PmxvYWRlcigpLmNoYW5nZUxvY2F0aW9uKFdURk1vdmUoZnJhbWVMb2FkUmVxdWVzdCkpOwogICAg
IH0gZWxzZSBpZiAoIXVybFN0cmluZy5pc0VtcHR5KCkpIHsKLSAgICAgICAgTG9ja0hpc3Rvcnkg
bG9ja0hpc3RvcnkgPSBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSA/
IExvY2tIaXN0b3J5OjpObyA6IExvY2tIaXN0b3J5OjpZZXM7CisgICAgICAgIExvY2tIaXN0b3J5
IGxvY2tIaXN0b3J5ID0gVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKICAgICAgICAgbmV3RnJh
bWUtPm5hdmlnYXRpb25TY2hlZHVsZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVE
b2N1bWVudCwgYWN0aXZlRG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwg
cmVmZXJyZXIsIGxvY2tIaXN0b3J5LCBMb2NrQmFja0ZvcndhcmRMaXN0OjpObyk7CiAgICAgfQog
CkBAIC0yMzAxLDcgKzIzMDEsNyBAQCBSZWZQdHI8RE9NV2luZG93PiBET01XaW5kb3c6Om9wZW4o
RE9NV2luCiAKICAgICAgICAgLy8gRm9yIHdoYXRldmVyIHJlYXNvbiwgRmlyZWZveCB1c2VzIHRo
ZSBmaXJzdCB3aW5kb3cgcmF0aGVyIHRoYW4gdGhlIGFjdGl2ZSB3aW5kb3cgdG8KICAgICAgICAg
Ly8gZGV0ZXJtaW5lIHRoZSBvdXRnb2luZyByZWZlcnJlci4gV2UgcmVwbGljYXRlIHRoYXQgYmVo
YXZpb3IgaGVyZS4KLSAgICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBTY3JpcHRDb250
cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSA/IExvY2tIaXN0b3J5OjpObyA6IExvY2tI
aXN0b3J5OjpZZXM7CisgICAgICAgIExvY2tIaXN0b3J5IGxvY2tIaXN0b3J5ID0gVXNlckdlc3R1
cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDog
TG9ja0hpc3Rvcnk6OlllczsKICAgICAgICAgdGFyZ2V0RnJhbWUtPm5hdmlnYXRpb25TY2hlZHVs
ZXIoKS5zY2hlZHVsZUxvY2F0aW9uQ2hhbmdlKCphY3RpdmVEb2N1bWVudCwgYWN0aXZlRG9jdW1l
bnQtPnNlY3VyaXR5T3JpZ2luKCksIGNvbXBsZXRlZFVSTCwgZmlyc3RGcmFtZS0+bG9hZGVyKCku
b3V0Z29pbmdSZWZlcnJlcigpLAogICAgICAgICAgICAgbG9ja0hpc3RvcnksIExvY2tCYWNrRm9y
d2FyZExpc3Q6Ok5vKTsKICAgICAgICAgcmV0dXJuIHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5k
b21XaW5kb3coKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9s
bGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29u
dHJvbGxlci5jcHAJKHJldmlzaW9uIDIyNTA5NykKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUG9p
bnRlckxvY2tDb250cm9sbGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTAgKzM1LDkgQEAK
ICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1Nb3VzZUV2ZW50LmgiCiAjaW5j
bHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgotI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xs
ZXIuaCIKKyNpbmNsdWRlICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogI2luY2x1ZGUgIlZvaWRD
YWxsYmFjay5oIgogCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogUG9pbnRlckxvY2tDb250cm9s
bGVyOjpQb2ludGVyTG9ja0NvbnRyb2xsZXIoUGFnZSYgcGFnZSkKQEAgLTUzLDcgKzUyLDcgQEAg
dm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJlcXVlc3RQb2ludAogICAgICAgICByZXR1cm47
CiAgICAgfQogCi0gICAgaWYgKG1fZG9jdW1lbnRBbGxvd2VkVG9SZWxvY2tXaXRob3V0VXNlckdl
c3R1cmUgIT0gJnRhcmdldC0+ZG9jdW1lbnQoKSAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vz
c2luZ1VzZXJHZXN0dXJlKCkpIHsKKyAgICBpZiAobV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dp
dGhvdXRVc2VyR2VzdHVyZSAhPSAmdGFyZ2V0LT5kb2N1bWVudCgpICYmICFVc2VyR2VzdHVyZUlu
ZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpIHsKICAgICAgICAgZW5xdWV1ZUV2ZW50
KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjI1MDk5KQorKysgU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNiBAQAorMjAxNy0xMS0y
MiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJlbW92ZSB1bm5lZWRl
ZCBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSBmb3J3YXJkaW5nIGZ1
bmN0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTc5OTU0CisKKyAgICAgICAgUmVwbGFjZSBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNl
ckdlc3R1cmUoKSBhbmQgU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9y
TWVkaWEoKQorICAgICAgICB3aXRoIGRpcmVjdCBjYWxscyB0byB0aGUgY29ycmVzcG9uZGluZyBV
c2VyR2VzdHVyZUluZGljYXRvciBmdW5jdGlvbnMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0lu
amVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0
ZWRCdW5kbGU6OmlzUHJvY2Vzc2luZ1VzZXJHZXN0dXJlKToKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmFkZFJlc291
cmNlUmVxdWVzdCk6CisKIDIwMTctMTEtMjIgIFRpbSBIb3J0b24gPHRpbW90aHlfaG9ydG9uQGFw
cGxlLmNvbT4gYW5kIE1pY2hhZWwgQ2F0YW56YXJvIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CiAK
ICAgICAgICAgUmVtb3ZlIGJ1aWxkLXdlYmtpdCdzIG5vdGlvbiBvZiBmZWF0dXJlIGZsYWdzIGhh
dmluZyBhIGRlZmF1bHQgdmFsdWUKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlLmNwcAkocmV2aXNpb24g
MjI1MDk3KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDMzLDcgKzQzMyw3IEBAIGJvb2wgSW5q
ZWN0ZWRCdW5kbGU6OmlzUGFnZUJveFZpc2libGUoV2UKIAogYm9vbCBJbmplY3RlZEJ1bmRsZTo6
aXNQcm9jZXNzaW5nVXNlckdlc3R1cmUoKQogewotICAgIHJldHVybiBTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKTsKKyAgICByZXR1cm4gVXNlckdlc3R1cmVJbmRpY2F0
b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpOwogfQogCiB2b2lkIEluamVjdGVkQnVuZGxlOjph
ZGRVc2VyU2NyaXB0KFdlYlBhZ2VHcm91cFByb3h5KiBwYWdlR3JvdXAsIEluamVjdGVkQnVuZGxl
U2NyaXB0V29ybGQqIHNjcmlwdFdvcmxkLCBTdHJpbmcmJiBzb3VyY2UsIFN0cmluZyYmIHVybCwg
QVBJOjpBcnJheSogd2hpdGVsaXN0LCBBUEk6OkFycmF5KiBibGFja2xpc3QsIFdlYkNvcmU6OlVz
ZXJTY3JpcHRJbmplY3Rpb25UaW1lIGluamVjdGlvblRpbWUsIFdlYkNvcmU6OlVzZXJDb250ZW50
SW5qZWN0ZWRGcmFtZXMgaW5qZWN0ZWRGcmFtZXMpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkocmV2aXNpb24gMjI1MDk3KQorKysgU291cmNl
L1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTE4OSw2ICsxODksNyBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU3ViZnJhbWVMb2FkZXIuaD4KICNp
bmNsdWRlIDxXZWJDb3JlL1N1YnN0aXR1dGVEYXRhLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9UZXh0
SXRlcmF0b3IuaD4KKyNpbmNsdWRlIDxXZWJDb3JlL1VzZXJHZXN0dXJlSW5kaWNhdG9yLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9Vc2VySW5wdXRCcmlkZ2UuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Vz
ZXJTY3JpcHQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1VzZXJTdHlsZVNoZWV0Lmg+CkBAIC00Mjgz
LDcgKzQyODQsNyBAQCB2b2lkIFdlYlBhZ2U6OmFkZFJlc291cmNlUmVxdWVzdCh1bnNpZ25lCiAg
ICAgaWYgKCFyZXF1ZXN0LnVybCgpLnByb3RvY29sSXNJbkhUVFBGYW1pbHkoKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgaWYgKG1fbWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0ZWQgJiYgIVNjcmlw
dENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQorICAgIGlmIChtX21haW5GcmFt
ZVByb2dyZXNzQ29tcGxldGVkICYmICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIEFTU0VSVCghbV90cmFja2VkTmV0
d29ya1Jlc291cmNlUmVxdWVzdElkZW50aWZpZXJzLmNvbnRhaW5zKGlkZW50aWZpZXIpKTsKSW5k
ZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNTA5NykKKysrIFNvdXJj
ZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4
IEBACisyMDE3LTExLTIyICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmVtb3ZlIHVubmVlZGVkIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgp
IGZvcndhcmRpbmcgZnVuY3Rpb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzk5NTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZXBsYWNlIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2Vz
dHVyZSgpIGFuZCBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRp
YSgpCisgICAgICAgIHdpdGggZGlyZWN0IGNhbGxzIHRvIHRoZSBjb3JyZXNwb25kaW5nIFVzZXJH
ZXN0dXJlSW5kaWNhdG9yIGZ1bmN0aW9ucy4KKworICAgICAgICAqIFBsdWdpbnMvV2ViUGx1Z2lu
Q29udHJvbGxlci5tbToKKyAgICAgICAgKC1bV2ViUGx1Z2luQ29udHJvbGxlciBwcm9jZXNzaW5n
VXNlckdlc3R1cmVdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAgICAgICgt
W1dlYlZpZXcgX2lzUHJvY2Vzc2luZ1VzZXJHZXN0dXJlXSk6CisKIDIwMTctMTEtMjIgIENvbW1p
dCBRdWV1ZSAgPGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQs
IHJvbGxpbmcgb3V0IHIyMjUwOTMuCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVn
aW5zL1dlYlBsdWdpbkNvbnRyb2xsZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvUGx1Z2lucy9XZWJQbHVnaW5Db250cm9sbGVyLm1tCShyZXZpc2lvbiAyMjUwOTcp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9QbHVnaW5zL1dlYlBsdWdpbkNvbnRyb2xsZXIu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTU3LDYgKzU3LDcgQEAKICNpbXBvcnQgPFdlYkNvcmUvSFRN
TE5hbWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Jlc291cmNlUmVxdWVzdC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9TY3JpcHRDb250cm9sbGVyLmg+CisjaW1wb3J0IDxXZWJDb3JlL1VzZXJHZXN0dXJl
SW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVVUkxSZXNwb25zZS5oPgogI2lt
cG9ydCA8b2JqYy9ydW50aW1lLmg+CiAjaW1wb3J0IDxydW50aW1lL0pTTG9jay5oPgpAQCAtNDU1
LDcgKzQ1Niw3IEBAIC0gKHZvaWQpZGVzdHJveUFsbFBsdWdpbnMKICNpZiBQTEFURk9STShJT1Mp
CiAtIChCT09MKXByb2Nlc3NpbmdVc2VyR2VzdHVyZQogewotICAgIHJldHVybiBTY3JpcHRDb250
cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKTsKKyAgICByZXR1cm4gVXNlckdlc3R1cmVJ
bmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpOwogfQogI2VuZGlmCiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dlYlZpZXcubW0JKHJldmlzaW9uIDIyNTA5
NykKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQkod29ya2lu
ZyBjb3B5KQpAQCAtMTk1LDYgKzE5NSw3IEBACiAjaW1wb3J0IDxXZWJDb3JlL1RocmVhZENoZWNr
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1VzZXJBZ2VudC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Vc2Vy
Q29udGVudENvbnRyb2xsZXIuaD4KKyNpbXBvcnQgPFdlYkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0
b3IuaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlclNjcmlwdC5oPgogI2ltcG9ydCA8V2ViQ29yZS9V
c2VyU3R5bGVTaGVldC5oPgogI2ltcG9ydCA8V2ViQ29yZS9WYWxpZGF0aW9uQnViYmxlLmg+CkBA
IC0yMzQyLDcgKzIzNDMsNyBAQCAtICh2b2lkKV9jbG9zZQogLy8gSW5kaWNhdGVzIGlmIHRoZSBX
ZWJWaWV3IGlzIGluIHRoZSBtaWRzdCBvZiBhIHVzZXIgZ2VzdHVyZS4KIC0gKEJPT0wpX2lzUHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlCiB7Ci0gICAgcmV0dXJuIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nl
c3NpbmdVc2VyR2VzdHVyZSgpOworICAgIHJldHVybiBVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCk7CiB9CiAKICsgKE5TU3RyaW5nICopX01JTUVUeXBlRm9yRmls
ZTooTlNTdHJpbmcgKilwYXRoCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327511</attachid>
            <date>2017-11-23 11:05:05 -0800</date>
            <delta_ts>2017-11-23 11:36:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179954-20171123110504.patch</filename>
            <type>text/plain</type>
            <size>23072</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIyNTExNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ2IEBACisyMDE3LTExLTIyICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIHVubmVlZGVkIFNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGZvcndhcmRpbmcgZnVuY3Rpb25zCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk5NTQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZXBsYWNlIFNjcmlw
dENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGFuZCBTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpCisgICAgICAgIHdpdGggZGlyZWN0IGNh
bGxzIHRvIHRoZSBjb3JyZXNwb25kaW5nIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGZ1bmN0aW9ucy4K
KworICAgICAgICAqIE1vZHVsZXMvYXBwbGVwYXkvQXBwbGVQYXlTZXNzaW9uLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFwcGxlUGF5U2Vzc2lvbjo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6
OkFwcGxlUGF5U2Vzc2lvbjo6b3BlblBheW1lbnRTZXR1cCk6CisgICAgICAgICogTW9kdWxlcy9z
cGVlY2gvU3BlZWNoU3ludGhlc2lzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNwZWVjaFN5bnRo
ZXNpczo6c3BlYWspOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0
dXJlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OnByb2Nl
c3NpbmdVc2VyR2VzdHVyZUZvck1lZGlhKTogRGVsZXRlZC4KKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9TY3JpcHRDb250cm9sbGVyLmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkRvY3VtZW50Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSBjb25z
dCk6CisgICAgICAgICogaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlwZS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpCYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0VHlw
ZTo6aGFuZGxlRE9NQWN0aXZhdGVFdmVudCk6CisgICAgICAgICogaHRtbC9Db2xvcklucHV0VHlw
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb2xvcklucHV0VHlwZTo6aGFuZGxlRE9NQWN0aXZh
dGVFdmVudCk6CisgICAgICAgICogaHRtbC9GaWxlSW5wdXRUeXBlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkZpbGVJbnB1dFR5cGU6OmhhbmRsZURPTUFjdGl2YXRlRXZlbnQpOgorICAgICAgICAq
IGh0bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxl
bWVudDo6c3VibWl0RnJvbUphdmFTY3JpcHQpOgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbklt
YWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnN1YmZyYW1lTG9hZGVyV2lsbENyZWF0ZVBsdWdJbik6CisgICAgICAgICog
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpz
dWJtaXRGb3JtKToKKyAgICAgICAgKFdlYkNvcmU6OnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xp
Y3lUb0FwcGx5KToKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpET01XaW5kb3c6OmFsbG93UG9wVXApOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93
OjpzZXRMb2NhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6OmNyZWF0ZVdpbmRv
dyk6CisgICAgICAgIChXZWJDb3JlOjpET01XaW5kb3c6Om9wZW4pOgorICAgICAgICAqIHBhZ2Uv
UG9pbnRlckxvY2tDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2Nr
Q29udHJvbGxlcjo6cmVxdWVzdFBvaW50ZXJMb2NrKToKKwogMjAxNy0xMS0yMyAgRGFyaW4gQWRs
ZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVkdWNlIFdURjo6U3RyaW5nIG9wZXJh
dGlvbnMgdGhhdCBkbyB1bm5lY2Vzc2FyeSBVbmljb2RlIG9wZXJhdGlvbnMgaW5zdGVhZCBvZiBB
U0NJSQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9hcHBsZXBheS9BcHBsZVBheVNlc3Np
b24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvYXBwbGVwYXkvQXBw
bGVQYXlTZXNzaW9uLmNwcAkocmV2aXNpb24gMjI1MTE3KQorKysgU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9hcHBsZXBheS9BcHBsZVBheVNlc3Npb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCw2
ICs0MCw3IEBACiAjaW5jbHVkZSAiQXBwbGVQYXlTaGlwcGluZ01ldGhvZFNlbGVjdGVkRXZlbnQu
aCIKICNpbmNsdWRlICJBcHBsZVBheVNoaXBwaW5nTWV0aG9kVXBkYXRlLmgiCiAjaW5jbHVkZSAi
QXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50RXZlbnQuaCIKKyNpbmNsdWRlICJET01XaW5kb3cuaCIK
ICNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkRvY3VtZW50TG9hZGVyLmgiCiAjaW5j
bHVkZSAiRXZlbnROYW1lcy5oIgpAQCAtNTUsOSArNTYsOSBAQAogI2luY2x1ZGUgIlBheW1lbnRN
ZXJjaGFudFNlc3Npb24uaCIKICNpbmNsdWRlICJQYXltZW50TWV0aG9kLmgiCiAjaW5jbHVkZSAi
UGF5bWVudFJlcXVlc3RWYWxpZGF0b3IuaCIKLSNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgi
CiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgorI2lu
Y2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApA
QCAtNDA0LDcgKzQwNSw3IEBAIEV4Y2VwdGlvbk9yPFJlZjxBcHBsZVBheVNlc3Npb24+PiBBcHBs
ZVAKICAgICBpZiAoY2FuQ2FsbC5oYXNFeGNlcHRpb24oKSkKICAgICAgICAgcmV0dXJuIGNhbkNh
bGwucmVsZWFzZUV4Y2VwdGlvbigpOwogCi0gICAgaWYgKCFTY3JpcHRDb250cm9sbGVyOjpwcm9j
ZXNzaW5nVXNlckdlc3R1cmUoKSkKKyAgICBpZiAoIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9j
ZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAgICAgcmV0dXJuIEV4Y2VwdGlvbiB7IEludmFsaWRB
Y2Nlc3NFcnJvciwgIk11c3QgY3JlYXRlIGEgbmV3IEFwcGxlUGF5U2Vzc2lvbiBmcm9tIGEgdXNl
ciBnZXN0dXJlIGhhbmRsZXIuIiB9OwogCiAgICAgYXV0byYgcGF5bWVudENvb3JkaW5hdG9yID0g
ZG9jdW1lbnQuZnJhbWUoKS0+bWFpbkZyYW1lKCkucGF5bWVudENvb3JkaW5hdG9yKCk7CkBAIC00
OTcsNyArNDk4LDcgQEAgRXhjZXB0aW9uT3I8dm9pZD4gQXBwbGVQYXlTZXNzaW9uOjpvcGVuUAog
ICAgIGlmIChjYW5DYWxsLmhhc0V4Y2VwdGlvbigpKQogICAgICAgICByZXR1cm4gY2FuQ2FsbC5y
ZWxlYXNlRXhjZXB0aW9uKCk7CiAKLSAgICBpZiAoIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3Np
bmdVc2VyR2VzdHVyZSgpKQorICAgIGlmICghVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3Np
bmdVc2VyR2VzdHVyZSgpKQogICAgICAgICByZXR1cm4gRXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vz
c0Vycm9yLCAiTXVzdCBjYWxsIEFwcGxlUGF5U2Vzc2lvbi5vcGVuUGF5bWVudFNldHVwIGZyb20g
YSB1c2VyIGdlc3R1cmUgaGFuZGxlci4iIH07CiAKICAgICBSZWZQdHI8RGVmZXJyZWRQcm9taXNl
PiBwcm9taXNlKFdURk1vdmUocGFzc2VkUHJvbWlzZSkpOwpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9zcGVlY2gvU3BlZWNoU3ludGhlc2lzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hTeW50aGVzaXMuY3BwCShyZXZpc2lvbiAyMjUx
MTcpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3NwZWVjaC9TcGVlY2hTeW50aGVzaXMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0zMSw5ICszMSw5IEBACiAjaW5jbHVkZSAiRXZlbnROYW1lcy5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVm9pY2UuaCIKICNpbmNsdWRlICJQ
bGF0Zm9ybVNwZWVjaFN5bnRoZXNpemVyLmgiCi0jaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5o
IgogI2luY2x1ZGUgIlNwZWVjaFN5bnRoZXNpc0V2ZW50LmgiCiAjaW5jbHVkZSAiU3BlZWNoU3lu
dGhlc2lzVXR0ZXJhbmNlLmgiCisjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKICNp
bmNsdWRlIDx3dGYvQ3VycmVudFRpbWUuaD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQu
aD4KIApAQCAtMTIzLDcgKzEyMyw3IEBAIHZvaWQgU3BlZWNoU3ludGhlc2lzOjpzcGVhayhTcGVl
Y2hTeW50aGUKIHsKICAgICAvLyBMaWtlIEF1ZGlvLCB3ZSBzaG91bGQgcmVxdWlyZSB0aGF0IHRo
ZSB1c2VyIGludGVyYWN0IHRvIHN0YXJ0IGEgc3BlZWNoIHN5bnRoZXNpcyBzZXNzaW9uLgogI2lm
IFBMQVRGT1JNKElPUykKLSAgICBpZiAoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKCkpCisgICAgaWYgKFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdl
c3R1cmUoKSkKICAgICAgICAgcmVtb3ZlQmVoYXZpb3JSZXN0cmljdGlvbihSZXF1aXJlVXNlckdl
c3R1cmVGb3JTcGVlY2hTdGFydFJlc3RyaWN0aW9uKTsKICAgICBlbHNlIGlmICh1c2VyR2VzdHVy
ZVJlcXVpcmVkRm9yU3BlZWNoU3RhcnQoKSkKICAgICAgICAgcmV0dXJuOwpJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHAJKHJldmlzaW9u
IDIyNTExNykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NjcmlwdENvbnRyb2xsZXIu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NzIsMTYgKzQ3Miw2IEBAIHZvaWQgU2NyaXB0Q29udHJv
bGxlcjo6ZGlzYWJsZVdlYkFzc2VtYmwKICAgICB3aW5kb3dQcm94eS0+d2luZG93KCktPnNldFdl
YkFzc2VtYmx5RW5hYmxlZChmYWxzZSwgZXJyb3JNZXNzYWdlKTsKIH0KIAotYm9vbCBTY3JpcHRD
b250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKQotewotICAgIHJldHVybiBVc2VyR2Vz
dHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCk7Ci19Ci0KLWJvb2wgU2NyaXB0
Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9yTWVkaWEoKQotewotICAgIHJldHVy
biBVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9yTWVkaWEoKTsK
LX0KLQogYm9vbCBTY3JpcHRDb250cm9sbGVyOjpjYW5BY2Nlc3NGcm9tQ3VycmVudE9yaWdpbihG
cmFtZSogZnJhbWUpCiB7CiAgICAgYXV0byogc3RhdGUgPSBKU01haW5UaHJlYWRFeGVjU3RhdGU6
OmN1cnJlbnRTdGF0ZSgpOwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0
Q29udHJvbGxlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1Nj
cmlwdENvbnRyb2xsZXIuaAkocmV2aXNpb24gMjI1MTE3KQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzUsOSArMTM1
LDYgQEAgcHVibGljOgogICAgIHZvaWQgZGlzYWJsZUV2YWwoY29uc3QgU3RyaW5nJiBlcnJvck1l
c3NhZ2UpOwogICAgIHZvaWQgZGlzYWJsZVdlYkFzc2VtYmx5KGNvbnN0IFN0cmluZyYgZXJyb3JN
ZXNzYWdlKTsKIAotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBib29sIHByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpOwotICAgIFdFQkNPUkVfRVhQT1JUIHN0YXRpYyBib29sIHByb2Nlc3NpbmdVc2Vy
R2VzdHVyZUZvck1lZGlhKCk7Ci0KICAgICBzdGF0aWMgYm9vbCBjYW5BY2Nlc3NGcm9tQ3VycmVu
dE9yaWdpbihGcmFtZSopOwogICAgIFdFQkNPUkVfRVhQT1JUIGJvb2wgY2FuRXhlY3V0ZVNjcmlw
dHMoUmVhc29uRm9yQ2FsbGluZ0NhbkV4ZWN1dGVTY3JpcHRzKTsKIApJbmRleDogU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuY3BwCShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NjU0LDcgKzY2NTQsNyBAQCB2b2lkIERvY3Vt
ZW50Ojp1cGRhdGVMYXN0SGFuZGxlZFVzZXJHZXN0CiAKIGJvb2wgRG9jdW1lbnQ6OnByb2Nlc3Np
bmdVc2VyR2VzdHVyZUZvck1lZGlhKCkgY29uc3QKIHsKLSAgICBpZiAoU2NyaXB0Q29udHJvbGxl
cjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlRm9yTWVkaWEoKSkKKyAgICBpZiAoVXNlckdlc3R1cmVJ
bmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1lZGlhKCkpCiAgICAgICAgIHJldHVy
biB0cnVlOwogCiAgICAgaWYgKHNldHRpbmdzKCkubWVkaWFVc2VyR2VzdHVyZUluaGVyaXRzRnJv
bURvY3VtZW50KCkpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0Jhc2VDaG9vc2VyT25seURh
dGVBbmRUaW1lSW5wdXRUeXBlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L0Jhc2VDaG9vc2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlLmNwcAkocmV2aXNpb24gMjI1MTE3
KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9CYXNlQ2hvb3Nlck9ubHlEYXRlQW5kVGltZUlucHV0
VHlwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMyLDggKzMyLDggQEAKICNpbmNsdWRlICJIVE1M
SW5wdXRFbGVtZW50LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlJlbmRlckVsZW1l
bnQuaCIKLSNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2hhZG93Um9v
dC5oIgorI2luY2x1ZGUgIlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8d3RmL05l
dmVyRGVzdHJveWVkLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQ1LDcgKzQ1LDcgQEAg
QmFzZUNob29zZXJPbmx5RGF0ZUFuZFRpbWVJbnB1dFR5cGU6On5CYQogCiB2b2lkIEJhc2VDaG9v
c2VyT25seURhdGVBbmRUaW1lSW5wdXRUeXBlOjpoYW5kbGVET01BY3RpdmF0ZUV2ZW50KEV2ZW50
JikKIHsKLSAgICBpZiAoZWxlbWVudCgpLmlzRGlzYWJsZWRPclJlYWRPbmx5KCkgfHwgIWVsZW1l
bnQoKS5yZW5kZXJlcigpIHx8ICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1
cmUoKSkKKyAgICBpZiAoZWxlbWVudCgpLmlzRGlzYWJsZWRPclJlYWRPbmx5KCkgfHwgIWVsZW1l
bnQoKS5yZW5kZXJlcigpIHx8ICFVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJH
ZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChtX2RhdGVUaW1lQ2hvb3NlcikK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvQ29sb3JJbnB1dFR5cGUuY3BwCShyZXZpc2lvbiAyMjUx
MTcpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0NvbG9ySW5wdXRUeXBlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNDgsOCArNDgsOCBAQAogI2luY2x1ZGUgIlJlbmRlck9iamVjdC5oIgogI2luY2x1
ZGUgIlJlbmRlclZpZXcuaCIKICNpbmNsdWRlICJTY29wZWRFdmVudFF1ZXVlLmgiCi0jaW5jbHVk
ZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRl
ICJVc2VyR2VzdHVyZUluZGljYXRvci5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTE1
MSw3ICsxNTEsNyBAQCB2b2lkIENvbG9ySW5wdXRUeXBlOjpoYW5kbGVET01BY3RpdmF0ZUV2CiAg
ICAgaWYgKGVsZW1lbnQoKS5pc0Rpc2FibGVkRm9ybUNvbnRyb2woKSB8fCAhZWxlbWVudCgpLnJl
bmRlcmVyKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmICghU2NyaXB0Q29udHJvbGxlcjo6
cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCisgICAgaWYgKCFVc2VyR2VzdHVyZUluZGljYXRvcjo6
cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmIChDaHJv
bWUqIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1s
L0ZpbGVJbnB1dFR5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvRmls
ZUlucHV0VHlwZS5jcHAJKHJldmlzaW9uIDIyNTExNykKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwv
RmlsZUlucHV0VHlwZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDEzICs0MCwxMiBAQAogI2lu
Y2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIKICNpbmNsdWRlICJSZW5kZXJGaWxlVXBsb2FkQ29u
dHJvbC5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKLSNpbmNsdWRlICJT
Y3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJTaGFk
b3dSb290LmgiCisjaW5jbHVkZSAiVXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKICNpbmNsdWRlIDx3
dGYvVHlwZUNhc3RzLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0K
IG5hbWVzcGFjZSBXZWJDb3JlIHsKIGNsYXNzIFVwbG9hZEJ1dHRvbkVsZW1lbnQ7CiB9CkBAIC0y
MDAsNyArMTk5LDcgQEAgdm9pZCBGaWxlSW5wdXRUeXBlOjpoYW5kbGVET01BY3RpdmF0ZUV2ZQog
ICAgIGlmIChpbnB1dC5pc0Rpc2FibGVkRm9ybUNvbnRyb2woKSkKICAgICAgICAgcmV0dXJuOwog
Ci0gICAgaWYgKCFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKKyAg
ICBpZiAoIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAg
ICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGF1dG8qIGNocm9tZSA9IHRoaXMtPmNocm9tZSgpKSB7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCShyZXZpc2lvbiAy
MjUxMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTQ3LDggKzQ3LDggQEAKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAi
UmFkaW9Ob2RlTGlzdC5oIgogI2luY2x1ZGUgIlJlbmRlclRleHRDb250cm9sLmgiCi0jaW5jbHVk
ZSAiU2NyaXB0Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCisjaW5jbHVkZSAi
VXNlckdlc3R1cmVJbmRpY2F0b3IuaCIKICNpbmNsdWRlIDxsaW1pdHM+CiAjaW5jbHVkZSA8d3Rm
L1JlZi5oPgogI2luY2x1ZGUgPHd0Zi9TZXRGb3JTY29wZS5oPgpAQCAtMjk5LDcgKzI5OSw3IEBA
IHZvaWQgSFRNTEZvcm1FbGVtZW50OjpzdWJtaXQoKQogCiB2b2lkIEhUTUxGb3JtRWxlbWVudDo6
c3VibWl0RnJvbUphdmFTY3JpcHQoKQogewotICAgIHN1Ym1pdChudWxscHRyLCBmYWxzZSwgU2Ny
aXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCksIFN1Ym1pdHRlZEJ5SmF2YVNj
cmlwdCk7CisgICAgc3VibWl0KG51bGxwdHIsIGZhbHNlLCBVc2VyR2VzdHVyZUluZGljYXRvcjo6
cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCksIFN1Ym1pdHRlZEJ5SmF2YVNjcmlwdCk7CiB9CiAKIFN0
cmluZ1BhaXJWZWN0b3IgSFRNTEZvcm1FbGVtZW50Ojp0ZXh0RmllbGRWYWx1ZXMoKSBjb25zdApJ
bmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3Bw
CShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MSw2ICs1MSw3IEBACiAjaW5jbHVkZSAi
U3R5bGVUcmVlUmVzb2x2ZXIuaCIKICNpbmNsdWRlICJTdWJmcmFtZUxvYWRlci5oIgogI2luY2x1
ZGUgIlR5cGVkRWxlbWVudERlc2NlbmRhbnRJdGVyYXRvci5oIgorI2luY2x1ZGUgIlVzZXJHZXN0
dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSA8cnVudGltZS9DYXRjaFNjb3BlLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKQEAgLTk2LDcgKzk3LDcgQEAgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6
SFRNTFBsdWdJbkltYWdlRQogICAgIDogSFRNTFBsdWdJbkVsZW1lbnQodGFnTmFtZSwgZG9jdW1l
bnQpCiAgICAgLCBtX3NpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lcigqdGhpcywgJkhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnNpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lckZpcmVkLCBzaW11bGF0ZWRNb3Vz
ZUNsaWNrVGltZXJEZWxheSkKICAgICAsIG1fcmVtb3ZlU25hcHNob3RUaW1lcigqdGhpcywgJkhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbW92ZVNuYXBzaG90VGltZXJGaXJlZCkKLSAgICAsIG1f
Y3JlYXRlZER1cmluZ1VzZXJHZXN0dXJlKFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpKQorICAgICwgbV9jcmVhdGVkRHVyaW5nVXNlckdlc3R1cmUoVXNlckdlc3R1cmVJ
bmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogewogICAgIHNldEhhc0N1c3RvbVN0
eWxlUmVzb2x2ZUNhbGxiYWNrcygpOwogfQpAQCAtNjM5LDcgKzY0MCw3IEBAIHZvaWQgSFRNTFBs
dWdJbkltYWdlRWxlbWVudDo6c3ViZnJhbWVMb2EKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAot
ICAgIGlmIChTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgeworICAg
IGlmIChVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpIHsKICAg
ICAgICAgTE9HKFBsdWdpbnMsICIlcCBTY3JpcHQgaXMgY3VycmVudGx5IHByb2Nlc3NpbmcgdXNl
ciBnZXN0dXJlLCBzZXQgdG8gcGxheSIsIHRoaXMpOwogICAgICAgICBtX3NuYXBzaG90RGVjaXNp
b24gPSBOZXZlclNuYXBzaG90OwogICAgICAgICByZXR1cm47CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5jcHAJKHJldmlzaW9uIDIyNTExNykKKysrIFNvdXJjZS9XZWJDb3Jl
L2xvYWRlci9GcmFtZUxvYWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNyw2ICsxMTcsNyBA
QAogI2luY2x1ZGUgIlN1YmZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiVGV4dFJlc291cmNlRGVj
b2Rlci5oIgogI2luY2x1ZGUgIlVzZXJDb250ZW50Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIlVz
ZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSAiV2luZG93RmVhdHVyZXMuaCIKICNpbmNs
dWRlICJYTUxEb2N1bWVudFBhcnNlci5oIgogI2luY2x1ZGUgPHd0Zi9Db21wbGV0aW9uSGFuZGxl
ci5oPgpAQCAtNDIwLDcgKzQyMSw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnN1Ym1pdEZvcm0oUmVm
PEZvcm1TdWIKIAogICAgIEZyYW1lKiB0YXJnZXRGcmFtZSA9IGZpbmRGcmFtZUZvck5hdmlnYXRp
b24oc3VibWlzc2lvbi0+dGFyZ2V0KCksICZzdWJtaXNzaW9uLT5zdGF0ZSgpLnNvdXJjZURvY3Vt
ZW50KCkpOwogICAgIGlmICghdGFyZ2V0RnJhbWUpIHsKLSAgICAgICAgaWYgKCFET01XaW5kb3c6
OmFsbG93UG9wVXAobV9mcmFtZSkgJiYgIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpKQorICAgICAgICBpZiAoIURPTVdpbmRvdzo6YWxsb3dQb3BVcChtX2ZyYW1lKSAm
JiAhVXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQogICAgICAg
ICAgICAgcmV0dXJuOwogCiAgICAgICAgIC8vIEZJWE1FOiB0YXJnZXRGcmFtZSBjYW4gYmUgbnVs
bCBmb3IgdHdvIGRpc3RpbmN0IHJlYXNvbnM6CkBAIC0xMjE3LDcgKzEyMTgsNyBAQCB2b2lkIEZy
YW1lTG9hZGVyOjpsb2FkRnJhbWVSZXF1ZXN0KEZyYW1lCiAKIHN0YXRpYyBTaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5IHNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb0FwcGx5KEZyYW1l
JiBjdXJyZW50RnJhbWUsIEluaXRpYXRlZEJ5TWFpbkZyYW1lIGluaXRpYXRlZEJ5TWFpbkZyYW1l
LCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5IHByb3BhZ2F0ZWRQb2xpY3kpCiB7Ci0gICAg
aWYgKFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKQorICAgIGlmIChV
c2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgICAgIHJl
dHVybiBTaG91bGRPcGVuRXh0ZXJuYWxVUkxzUG9saWN5OjpTaG91bGRBbGxvdzsKIAogICAgIGlm
IChpbml0aWF0ZWRCeU1haW5GcmFtZSA9PSBJbml0aWF0ZWRCeU1haW5GcmFtZTo6WWVzKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcAkocmV2aXNpb24gMjI1MTE3KQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02NSw2ICs2NSw3
IEBACiAjaW5jbHVkZSAiSFRNTEZyYW1lT3duZXJFbGVtZW50LmgiCiAjaW5jbHVkZSAiSGlzdG9y
eS5oIgogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIgorI2luY2x1ZGUgIkpT
RE9NV2luZG93QmFzZS5oIgogI2luY2x1ZGUgIkpTTWFpblRocmVhZEV4ZWNTdGF0ZS5oIgogI2lu
Y2x1ZGUgIkxvY2F0aW9uLmgiCiAjaW5jbHVkZSAiTWFpbkZyYW1lLmgiCkBAIC04Myw3ICs4NCw2
IEBACiAjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNjaGVk
dWxlZEFjdGlvbi5oIgogI2luY2x1ZGUgIlNjcmVlbi5oIgotI2luY2x1ZGUgIlNjcmlwdENvbnRy
b2xsZXIuaCIKICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlNlY3VyaXR5
T3JpZ2luRGF0YS5oIgogI2luY2x1ZGUgIlNlY3VyaXR5UG9saWN5LmgiCkBAIC0zNTksNyArMzU5
LDcgQEAgRmxvYXRSZWN0IERPTVdpbmRvdzo6YWRqdXN0V2luZG93UmVjdChQYQogCiBib29sIERP
TVdpbmRvdzo6YWxsb3dQb3BVcChGcmFtZSYgZmlyc3RGcmFtZSkKIHsKLSAgICByZXR1cm4gU2Ny
aXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkKKyAgICByZXR1cm4gVXNlckdl
c3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpCiAgICAgICAgIHx8IGZpcnN0
RnJhbWUuc2V0dGluZ3MoKS5qYXZhU2NyaXB0Q2FuT3BlbldpbmRvd3NBdXRvbWF0aWNhbGx5KCk7
CiB9CiAKQEAgLTIxMTUsNyArMjExNSw3IEBAIHZvaWQgRE9NV2luZG93OjpzZXRMb2NhdGlvbihE
T01XaW5kb3cmIGEKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gV2Ugd2FudCBhIG5ldyBoaXN0
b3J5IGl0ZW0gaWYgd2UgYXJlIHByb2Nlc3NpbmcgYSB1c2VyIGdlc3R1cmUuCi0gICAgTG9ja0hp
c3RvcnkgbG9ja0hpc3RvcnkgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJl
U3RhdGUgfHwgIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSA/IExv
Y2tIaXN0b3J5OjpZZXMgOiBMb2NrSGlzdG9yeTo6Tm87CisgICAgTG9ja0hpc3RvcnkgbG9ja0hp
c3RvcnkgPSAobG9ja2luZyAhPSBMb2NrSGlzdG9yeUJhc2VkT25HZXN0dXJlU3RhdGUgfHwgIVVz
ZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgPyBMb2NrSGlzdG9y
eTo6WWVzIDogTG9ja0hpc3Rvcnk6Ok5vOwogICAgIExvY2tCYWNrRm9yd2FyZExpc3QgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCA9IChsb2NraW5nICE9IExvY2tIaXN0b3J5QmFzZWRPbkdlc3R1cmVTdGF0
ZSkgPyBMb2NrQmFja0ZvcndhcmRMaXN0OjpZZXMgOiBMb2NrQmFja0ZvcndhcmRMaXN0OjpObzsK
ICAgICBtX2ZyYW1lLT5uYXZpZ2F0aW9uU2NoZWR1bGVyKCkuc2NoZWR1bGVMb2NhdGlvbkNoYW5n
ZSgqYWN0aXZlRG9jdW1lbnQsIGFjdGl2ZURvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpLAogICAg
ICAgICAvLyBGSVhNRTogV2hhdCBpZiBhY3RpdmVEb2N1bWVudCgpLT5mcmFtZSgpIGlzIDA/CkBA
IC0yMjQ0LDcgKzIyNDQsNyBAQCBSZWZQdHI8RnJhbWU+IERPTVdpbmRvdzo6Y3JlYXRlV2luZG93
KGNvCiAgICAgICAgIEZyYW1lTG9hZFJlcXVlc3QgZnJhbWVMb2FkUmVxdWVzdCB7ICphY3RpdmVX
aW5kb3cuZG9jdW1lbnQoKSwgYWN0aXZlV2luZG93LmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2lu
KCksIHJlc291cmNlUmVxdWVzdCwgQVNDSUlMaXRlcmFsKCJfc2VsZiIpLCBMb2NrSGlzdG9yeTo6
Tm8sIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vLCBNYXliZVNlbmRSZWZlcnJlciwgQWxsb3dOYXZp
Z2F0aW9uVG9JbnZhbGlkVVJMOjpZZXMsIE5ld0ZyYW1lT3BlbmVyUG9saWN5OjpBbGxvdywgYWN0
aXZlRG9jdW1lbnQtPnNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3lUb1Byb3BhZ2F0ZSgpLCBp
bml0aWF0ZWRCeU1haW5GcmFtZSB9OwogICAgICAgICBuZXdGcmFtZS0+bG9hZGVyKCkuY2hhbmdl
TG9jYXRpb24oV1RGTW92ZShmcmFtZUxvYWRSZXF1ZXN0KSk7CiAgICAgfSBlbHNlIGlmICghdXJs
U3RyaW5nLmlzRW1wdHkoKSkgewotICAgICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNj
cmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5v
IDogTG9ja0hpc3Rvcnk6OlllczsKKyAgICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBV
c2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkgPyBMb2NrSGlzdG9y
eTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVzOwogICAgICAgICBuZXdGcmFtZS0+bmF2aWdhdGlvblNj
aGVkdWxlcigpLnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVE
b2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSwgY29tcGxldGVkVVJMLCByZWZlcnJlciwgbG9ja0hp
c3RvcnksIExvY2tCYWNrRm9yd2FyZExpc3Q6Ok5vKTsKICAgICB9CiAKQEAgLTIzMTMsNyArMjMx
Myw3IEBAIFJlZlB0cjxET01XaW5kb3c+IERPTVdpbmRvdzo6b3BlbihET01XaW4KIAogICAgICAg
ICAvLyBGb3Igd2hhdGV2ZXIgcmVhc29uLCBGaXJlZm94IHVzZXMgdGhlIGZpcnN0IHdpbmRvdyBy
YXRoZXIgdGhhbiB0aGUgYWN0aXZlIHdpbmRvdyB0bwogICAgICAgICAvLyBkZXRlcm1pbmUgdGhl
IG91dGdvaW5nIHJlZmVycmVyLiBXZSByZXBsaWNhdGUgdGhhdCBiZWhhdmlvciBoZXJlLgotICAg
ICAgICBMb2NrSGlzdG9yeSBsb2NrSGlzdG9yeSA9IFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3Np
bmdVc2VyR2VzdHVyZSgpID8gTG9ja0hpc3Rvcnk6Ok5vIDogTG9ja0hpc3Rvcnk6OlllczsKKyAg
ICAgICAgTG9ja0hpc3RvcnkgbG9ja0hpc3RvcnkgPSBVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCkgPyBMb2NrSGlzdG9yeTo6Tm8gOiBMb2NrSGlzdG9yeTo6WWVz
OwogICAgICAgICB0YXJnZXRGcmFtZS0+bmF2aWdhdGlvblNjaGVkdWxlcigpLnNjaGVkdWxlTG9j
YXRpb25DaGFuZ2UoKmFjdGl2ZURvY3VtZW50LCBhY3RpdmVEb2N1bWVudC0+c2VjdXJpdHlPcmln
aW4oKSwgY29tcGxldGVkVVJMLCBmaXJzdEZyYW1lLT5sb2FkZXIoKS5vdXRnb2luZ1JlZmVycmVy
KCksCiAgICAgICAgICAgICBsb2NrSGlzdG9yeSwgTG9ja0JhY2tGb3J3YXJkTGlzdDo6Tm8pOwog
ICAgICAgICByZXR1cm4gdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmRvbVdpbmRvdygpOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcAkocmV2
aXNpb24gMjI1MTE3KQorKysgU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xs
ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxMCArMzUsOSBAQAogI2luY2x1ZGUgIlBhZ2Uu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybU1vdXNlRXZlbnQuaCIKICNpbmNsdWRlICJSdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmgiCi0jaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUg
IlVzZXJHZXN0dXJlSW5kaWNhdG9yLmgiCiAjaW5jbHVkZSAiVm9pZENhbGxiYWNrLmgiCiAKLQog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OlBvaW50ZXJMb2Nr
Q29udHJvbGxlcihQYWdlJiBwYWdlKQpAQCAtNTMsNyArNTIsNyBAQCB2b2lkIFBvaW50ZXJMb2Nr
Q29udHJvbGxlcjo6cmVxdWVzdFBvaW50CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBp
ZiAobV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2VyR2VzdHVyZSAhPSAmdGFyZ2V0
LT5kb2N1bWVudCgpICYmICFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUo
KSkgeworICAgIGlmIChtX2RvY3VtZW50QWxsb3dlZFRvUmVsb2NrV2l0aG91dFVzZXJHZXN0dXJl
ICE9ICZ0YXJnZXQtPmRvY3VtZW50KCkgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNz
aW5nVXNlckdlc3R1cmUoKSkgewogICAgICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLnBv
aW50ZXJsb2NrZXJyb3JFdmVudCwgdGFyZ2V0KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE3LTExLTIyICBTYW0gV2VpbmlnICA8
c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIHVubmVlZGVkIFNjcmlwdENvbnRyb2xs
ZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGZvcndhcmRpbmcgZnVuY3Rpb25zCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzk5NTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KKworICAgICAgICBSZXBsYWNlIFNjcmlwdENvbnRy
b2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpIGFuZCBTY3JpcHRDb250cm9sbGVyOjpwcm9j
ZXNzaW5nVXNlckdlc3R1cmVGb3JNZWRpYSgpCisgICAgICAgIHdpdGggZGlyZWN0IGNhbGxzIHRv
IHRoZSBjb3JyZXNwb25kaW5nIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGZ1bmN0aW9ucy4KKworICAg
ICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpJbmplY3RlZEJ1bmRsZTo6aXNQcm9jZXNzaW5nVXNlckdlc3R1cmUpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KToKKwogMjAxNy0xMS0yMyAgRGFyaW4gQWRs
ZXIgIDxkYXJpbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVkdWNlIFdURjo6U3RyaW5nIG9wZXJh
dGlvbnMgdGhhdCBkbyB1bm5lY2Vzc2FyeSBVbmljb2RlIG9wZXJhdGlvbnMgaW5zdGVhZCBvZiBB
U0NJSQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGUuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC00MzMsNyArNDMzLDcgQEAgYm9vbCBJbmplY3RlZEJ1bmRsZTo6aXNQ
YWdlQm94VmlzaWJsZShXZQogCiBib29sIEluamVjdGVkQnVuZGxlOjppc1Byb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpCiB7Ci0gICAgcmV0dXJuIFNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2Vy
R2VzdHVyZSgpOworICAgIHJldHVybiBVc2VyR2VzdHVyZUluZGljYXRvcjo6cHJvY2Vzc2luZ1Vz
ZXJHZXN0dXJlKCk7CiB9CiAKIHZvaWQgSW5qZWN0ZWRCdW5kbGU6OmFkZFVzZXJTY3JpcHQoV2Vi
UGFnZUdyb3VwUHJveHkqIHBhZ2VHcm91cCwgSW5qZWN0ZWRCdW5kbGVTY3JpcHRXb3JsZCogc2Ny
aXB0V29ybGQsIFN0cmluZyYmIHNvdXJjZSwgU3RyaW5nJiYgdXJsLCBBUEk6OkFycmF5KiB3aGl0
ZWxpc3QsIEFQSTo6QXJyYXkqIGJsYWNrbGlzdCwgV2ViQ29yZTo6VXNlclNjcmlwdEluamVjdGlv
blRpbWUgaW5qZWN0aW9uVGltZSwgV2ViQ29yZTo6VXNlckNvbnRlbnRJbmplY3RlZEZyYW1lcyBp
bmplY3RlZEZyYW1lcykKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg5LDYgKzE4OSw3IEBA
CiAjaW5jbHVkZSA8V2ViQ29yZS9TdWJmcmFtZUxvYWRlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUv
U3Vic3RpdHV0ZURhdGEuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1RleHRJdGVyYXRvci5oPgorI2lu
Y2x1ZGUgPFdlYkNvcmUvVXNlckdlc3R1cmVJbmRpY2F0b3IuaD4KICNpbmNsdWRlIDxXZWJDb3Jl
L1VzZXJJbnB1dEJyaWRnZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvVXNlclNjcmlwdC5oPgogI2lu
Y2x1ZGUgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KQEAgLTQyODMsNyArNDI4NCw3IEBAIHZv
aWQgV2ViUGFnZTo6YWRkUmVzb3VyY2VSZXF1ZXN0KHVuc2lnbmUKICAgICBpZiAoIXJlcXVlc3Qu
dXJsKCkucHJvdG9jb2xJc0luSFRUUEZhbWlseSgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBp
ZiAobV9tYWluRnJhbWVQcm9ncmVzc0NvbXBsZXRlZCAmJiAhU2NyaXB0Q29udHJvbGxlcjo6cHJv
Y2Vzc2luZ1VzZXJHZXN0dXJlKCkpCisgICAgaWYgKG1fbWFpbkZyYW1lUHJvZ3Jlc3NDb21wbGV0
ZWQgJiYgIVVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAg
ICAgICAgcmV0dXJuOwogCiAgICAgQVNTRVJUKCFtX3RyYWNrZWROZXR3b3JrUmVzb3VyY2VSZXF1
ZXN0SWRlbnRpZmllcnMuY29udGFpbnMoaWRlbnRpZmllcikpOwpJbmRleDogU291cmNlL1dlYktp
dExlZ2FjeS9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMjI1MTE3KQorKysgU291cmNlL1dlYktpdExlZ2FjeS9t
YWMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTctMTEtMjIg
IFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZW1vdmUgdW5uZWVkZWQg
U2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkgZm9yd2FyZGluZyBmdW5j
dGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3
OTk1NAorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIFJlcGxh
Y2UgU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkgYW5kIFNjcmlwdENv
bnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZUZvck1lZGlhKCkKKyAgICAgICAgd2l0aCBk
aXJlY3QgY2FsbHMgdG8gdGhlIGNvcnJlc3BvbmRpbmcgVXNlckdlc3R1cmVJbmRpY2F0b3IgZnVu
Y3Rpb25zLgorCisgICAgICAgICogUGx1Z2lucy9XZWJQbHVnaW5Db250cm9sbGVyLm1tOgorICAg
ICAgICAoLVtXZWJQbHVnaW5Db250cm9sbGVyIHByb2Nlc3NpbmdVc2VyR2VzdHVyZV0pOgorICAg
ICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBfaXNQcm9jZXNz
aW5nVXNlckdlc3R1cmVdKToKKwogMjAxNy0xMS0yMyAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmVkdWNlIFdURjo6U3RyaW5nIG9wZXJhdGlvbnMgdGhhdCBkbyB1
bm5lY2Vzc2FyeSBVbmljb2RlIG9wZXJhdGlvbnMgaW5zdGVhZCBvZiBBU0NJSQpJbmRleDogU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1Z2lucy9XZWJQbHVnaW5Db250cm9sbGVyLm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1BsdWdpbnMvV2ViUGx1Z2luQ29udHJv
bGxlci5tbQkocmV2aXNpb24gMjI1MTE3KQorKysgU291cmNlL1dlYktpdExlZ2FjeS9tYWMvUGx1
Z2lucy9XZWJQbHVnaW5Db250cm9sbGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw2ICs1Nyw3
IEBACiAjaW1wb3J0IDxXZWJDb3JlL0hUTUxOYW1lcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9SZXNv
dXJjZVJlcXVlc3QuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2NyaXB0Q29udHJvbGxlci5oPgorI2lt
cG9ydCA8V2ViQ29yZS9Vc2VyR2VzdHVyZUluZGljYXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9X
ZWJDb3JlVVJMUmVzcG9uc2UuaD4KICNpbXBvcnQgPG9iamMvcnVudGltZS5oPgogI2ltcG9ydCA8
cnVudGltZS9KU0xvY2suaD4KQEAgLTQ1NSw3ICs0NTYsNyBAQCAtICh2b2lkKWRlc3Ryb3lBbGxQ
bHVnaW5zCiAjaWYgUExBVEZPUk0oSU9TKQogLSAoQk9PTClwcm9jZXNzaW5nVXNlckdlc3R1cmUK
IHsKLSAgICByZXR1cm4gU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCk7
CisgICAgcmV0dXJuIFVzZXJHZXN0dXJlSW5kaWNhdG9yOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUo
KTsKIH0KICNlbmRpZgogCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJWaWV3L1dl
YlZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tCShyZXZpc2lvbiAyMjUxMTcpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9X
ZWJWaWV3L1dlYlZpZXcubW0JKHdvcmtpbmcgY29weSkKQEAgLTE5NSw2ICsxOTUsNyBAQAogI2lt
cG9ydCA8V2ViQ29yZS9UaHJlYWRDaGVjay5oPgogI2ltcG9ydCA8V2ViQ29yZS9Vc2VyQWdlbnQu
aD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlckNvbnRlbnRDb250cm9sbGVyLmg+CisjaW1wb3J0IDxX
ZWJDb3JlL1VzZXJHZXN0dXJlSW5kaWNhdG9yLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1VzZXJTY3Jp
cHQuaD4KICNpbXBvcnQgPFdlYkNvcmUvVXNlclN0eWxlU2hlZXQuaD4KICNpbXBvcnQgPFdlYkNv
cmUvVmFsaWRhdGlvbkJ1YmJsZS5oPgpAQCAtMjM0Miw3ICsyMzQzLDcgQEAgLSAodm9pZClfY2xv
c2UKIC8vIEluZGljYXRlcyBpZiB0aGUgV2ViVmlldyBpcyBpbiB0aGUgbWlkc3Qgb2YgYSB1c2Vy
IGdlc3R1cmUuCiAtIChCT09MKV9pc1Byb2Nlc3NpbmdVc2VyR2VzdHVyZQogewotICAgIHJldHVy
biBTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKTsKKyAgICByZXR1cm4g
VXNlckdlc3R1cmVJbmRpY2F0b3I6OnByb2Nlc3NpbmdVc2VyR2VzdHVyZSgpOwogfQogCiArIChO
U1N0cmluZyAqKV9NSU1FVHlwZUZvckZpbGU6KE5TU3RyaW5nICopcGF0aAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>