<?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>122085</bug_id>
          
          <creation_ts>2013-09-29 21:27:10 -0700</creation_ts>
          <short_desc>Cleanup PageThrottler and PageConsole a bit</short_desc>
          <delta_ts>2013-09-29 21:35:16 -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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>japhet</cc>
    
    <cc>jer.noble</cc>
    
    <cc>mkwst</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>934435</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-09-29 21:27:10 -0700</bug_when>
    <thetext>Cleanup PageThrottler and PageConsole a bit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934436</commentid>
    <comment_count>1</comment_count>
      <attachid>212948</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-09-29 21:32:38 -0700</bug_when>
    <thetext>Created attachment 212948
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934437</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-09-29 21:35:13 -0700</bug_when>
    <thetext>Committed r156625: &lt;http://trac.webkit.org/changeset/156625&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212948</attachid>
            <date>2013-09-29 21:32:38 -0700</date>
            <delta_ts>2013-09-29 21:34:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-122085-20130929213236.patch</filename>
            <type>text/plain</type>
            <size>18913</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1NjYyNCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDU2IEBACisyMDEzLTA5LTI5ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQ2xlYW51cCBQYWdlVGhyb3R0bGVyIGFu
ZCBQYWdlQ29uc29sZSBhIGJpdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTIyMDg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKyAgICAgICAgKiBsb2FkZXIv
RnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmNvbXBsZXRl
ZCk6CisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmg6CisgICAgICAgICogbG9hZGVyL1N1
YnJlc291cmNlTG9hZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVy
OjpjaGVja0ZvckhUVFBTdGF0dXNDb2RlRXJyb3IpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVz
b3VyY2VMb2FkZXI6OmRpZEZpbmlzaExvYWRpbmcpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVz
b3VyY2VMb2FkZXI6OmRpZEZhaWwpOgorICAgICAgICAoV2ViQ29yZTo6U3VicmVzb3VyY2VMb2Fk
ZXI6OndpbGxDYW5jZWwpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5oOgor
ICAgICAgICBTdG9yZSB0aGUgUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4gYXMgYSBzdGQ6OnVu
aXF1ZV9wdHIuCisKKyAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
UGFnZTo6UGFnZSk6CisgICAgICAgIFVzZSBjcmVhdGVPd25lZCBhbmQgcGFzcyB0aGlzIGJ5IHJl
ZmVyZW5jZSBmb3IgdGhlIFBhZ2VUaHJvdHRsZXIgYW5kIFBhZ2VDb25zb2xlLgorICAgICAgICAo
V2ViQ29yZTo6UGFnZTo6flBhZ2UpOgorICAgICAgICBSZW1vdmUgdW5uZWNlc3NhcnkgY2xlYXJp
bmcgb2YgYW4gT3duUHRyIHRoYXQgaXMgYWJvdXQgdG8gYmUgZGVzdHJveWVkLgorICAgICAgICAq
IHBhZ2UvUGFnZS5oOgorICAgICAgICBNYWtlIG1fcGFnZVRocm90dGxlciBjb25zdCBhbmQgcmV0
dXJuIGl0IGFzIGEgcmVmZXJlbmNlLgorCisgICAgICAgICogcGFnZS9QYWdlQWN0aXZpdHlBc3Nl
cnRpb25Ub2tlbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQWN0aXZpdHlBc3NlcnRpb25U
b2tlbjo6UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4pOgorICAgICAgICAoV2ViQ29yZTo6UGFn
ZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW46On5QYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbik6Cisg
ICAgICAgICogcGFnZS9QYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbi5oOgorICAgICAgICBUYWtl
IHRoZSBQYWdlVGhyb3R0bGVyIGJ5IHJlZmVyZW5jZSBpbiB0aGUgY29uc3RydWN0b3IuIEl0IGlz
IG5ldmVyIG51bGwuCisKKyAgICAgICAgKiBwYWdlL1BhZ2VDb25zb2xlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlBhZ2VDb25zb2xlOjpQYWdlQ29uc29sZSk6CisgICAgICAgIChXZWJDb3JlOjpQ
YWdlQ29uc29sZTo6flBhZ2VDb25zb2xlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDb25zb2xl
OjphZGRNZXNzYWdlKToKKyAgICAgICAgKiBwYWdlL1BhZ2VDb25zb2xlLmg6CisgICAgICAgIFBh
c3MgYW5kIHN0b3JlIHRoZSBQYWdlIGFzIGEgcmVmZXJlbmNlIGFuZCByZW1vdmUgYW4gZXh0cmFu
ZW91cyBudWxsIGNoZWNrLiBSZW1vdmUKKyAgICAgICAgdGhlIGNyZWF0ZSBmdW5jdGlvbi4KKwor
ICAgICAgICAqIHBhZ2UvUGFnZVRocm90dGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdl
VGhyb3R0bGVyOjpQYWdlVGhyb3R0bGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VUaHJvdHRs
ZXI6On5QYWdlVGhyb3R0bGVyKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VUaHJvdHRsZXI6OmNy
ZWF0ZUFjdGl2aXR5VG9rZW4pOgorICAgICAgICAoV2ViQ29yZTo6UGFnZVRocm90dGxlcjo6dGhy
b3R0bGVQYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VUaHJvdHRsZXI6OnVudGhyb3R0bGVQ
YWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VUaHJvdHRsZXI6OmFkZEFjdGl2aXR5VG9rZW4p
OgorICAgICAgICAoV2ViQ29yZTo6UGFnZVRocm90dGxlcjo6cmVtb3ZlQWN0aXZpdHlUb2tlbik6
CisgICAgICAgICogcGFnZS9QYWdlVGhyb3R0bGVyLmg6CisgICAgICAgIFBhc3MgYW5kIHN0b3Jl
IHRoZSBQYWdlIGFzIGEgcmVmZXJlbmNlLiBNb3ZlIHRoZSBjcmVhdGlvbiBvZiBQYWdlQWN0aXZp
dHlBc3NlcnRpb25Ub2tlbiBoZXJlCisgICAgICAgIHRvIGFpZCBlbmNhcHN1bGF0aW9uLgorCiAy
MDEzLTA5LTI5ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBUcnkg
dG8gZml4IFdpbmRvd3MgYnVpbGQuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVs
ZW1lbnQuaAkocmV2aXNpb24gMTU2NjI0KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTc4MSw3ICs3ODEsNyBAQCBwcml2YXRlOgog
ICAgIE93blB0cjxBdWRpb1Nlc3Npb25NYW5hZ2VyVG9rZW4+IG1fYXVkaW9TZXNzaW9uTWFuYWdl
clRva2VuOwogI2VuZGlmCiAKLSAgICBPd25QdHI8UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4+
IG1fYWN0aXZpdHlUb2tlbjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8UGFnZUFjdGl2aXR5QXNzZXJ0
aW9uVG9rZW4+IG1fYWN0aXZpdHlUb2tlbjsKICAgICBzaXplX3QgbV9yZXBvcnRlZEV4dHJhTWVt
b3J5Q29zdDsKIAogI2lmIEVOQUJMRShNRURJQV9DT05UUk9MU19TQ1JJUFQpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAJKHJldmlzaW9uIDE1NjYyNCkKKysrIFNvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMDEs
NyArMTEwMSw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNvbXBsZXRlZCgpCiAKICAgICBpZiAobV9m
cmFtZS52aWV3KCkpCiAgICAgICAgIG1fZnJhbWUudmlldygpLT5tYWludGFpblNjcm9sbFBvc2l0
aW9uQXRBbmNob3IoMCk7Ci0gICAgbV9hY3Rpdml0eUFzc2VydGlvbi5jbGVhcigpOworICAgIG1f
YWN0aXZpdHlBc3NlcnRpb24gPSBudWxscHRyOwogfQogCiB2b2lkIEZyYW1lTG9hZGVyOjpzdGFy
dGVkKCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCShyZXZpc2lvbiAxNTY2
MjQpCisrKyBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAkod29ya2luZyBjb3B5
KQpAQCAtNDQ3LDcgKzQ0Nyw3IEBAIHByaXZhdGU6CiAKICAgICBVUkwgbV9wcmV2aW91c1VSTDsK
ICAgICBSZWZQdHI8SGlzdG9yeUl0ZW0+IG1fcmVxdWVzdGVkSGlzdG9yeUl0ZW07Ci0gICAgT3du
UHRyPFBhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuPiBtX2FjdGl2aXR5QXNzZXJ0aW9uOworICAg
IHN0ZDo6dW5pcXVlX3B0cjxQYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbj4gbV9hY3Rpdml0eUFz
c2VydGlvbjsKIH07CiAKIC8vIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIGJ5IGNyZWF0ZVdpbmRv
dygpIGluIEpTRE9NV2luZG93QmFzZS5jcHAsIGZvciBleGFtcGxlLCBmb3IKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAkocmV2aXNpb24gMTU2NjI0
KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjYwLDcgKzI2MCw3IEBAIGJvb2wgU3VicmVzb3VyY2VMb2FkZXI6OmNoZWNr
Rm9ySFRUUFN0YXQKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgbV9zdGF0ZSA9IEZpbmlz
aGluZzsKLSAgICBtX2FjdGl2aXR5QXNzZXJ0aW9uLmNsZWFyKCk7CisgICAgbV9hY3Rpdml0eUFz
c2VydGlvbiA9IG51bGxwdHI7CiAgICAgbV9yZXNvdXJjZS0+ZXJyb3IoQ2FjaGVkUmVzb3VyY2U6
OkxvYWRFcnJvcik7CiAgICAgY2FuY2VsKCk7CiAgICAgcmV0dXJuIHRydWU7CkBAIC0yNzgsNyAr
Mjc4LDcgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZwogICAgIFJl
ZjxTdWJyZXNvdXJjZUxvYWRlcj4gcHJvdGVjdCgqdGhpcyk7CiAgICAgQ2FjaGVkUmVzb3VyY2VI
YW5kbGU8Q2FjaGVkUmVzb3VyY2U+IHByb3RlY3RSZXNvdXJjZShtX3Jlc291cmNlKTsKICAgICBt
X3N0YXRlID0gRmluaXNoaW5nOwotICAgIG1fYWN0aXZpdHlBc3NlcnRpb24uY2xlYXIoKTsKKyAg
ICBtX2FjdGl2aXR5QXNzZXJ0aW9uID0gbnVsbHB0cjsKICAgICBtX3Jlc291cmNlLT5zZXRMb2Fk
RmluaXNoVGltZShmaW5pc2hUaW1lKTsKICAgICBtX3Jlc291cmNlLT5maW5pc2hMb2FkaW5nKHJl
c291cmNlRGF0YSgpKTsKIApAQCAtMzAzLDcgKzMwMyw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2Fk
ZXI6OmRpZEZhaWwoY29uc3QgUmUKICAgICBSZWY8U3VicmVzb3VyY2VMb2FkZXI+IHByb3RlY3Qo
KnRoaXMpOwogICAgIENhY2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJlc291cmNlPiBwcm90ZWN0
UmVzb3VyY2UobV9yZXNvdXJjZSk7CiAgICAgbV9zdGF0ZSA9IEZpbmlzaGluZzsKLSAgICBtX2Fj
dGl2aXR5QXNzZXJ0aW9uLmNsZWFyKCk7CisgICAgbV9hY3Rpdml0eUFzc2VydGlvbiA9IG51bGxw
dHI7CiAgICAgaWYgKG1fcmVzb3VyY2UtPnJlc291cmNlVG9SZXZhbGlkYXRlKCkpCiAgICAgICAg
IG1lbW9yeUNhY2hlKCktPnJldmFsaWRhdGlvbkZhaWxlZChtX3Jlc291cmNlKTsKICAgICBtX3Jl
c291cmNlLT5zZXRSZXNvdXJjZUVycm9yKGVycm9yKTsKQEAgLTMyNiw3ICszMjYsNyBAQCB2b2lk
IFN1YnJlc291cmNlTG9hZGVyOjp3aWxsQ2FuY2VsKGNvbnN0CiAKICAgICBSZWY8U3VicmVzb3Vy
Y2VMb2FkZXI+IHByb3RlY3QoKnRoaXMpOwogICAgIG1fc3RhdGUgPSBGaW5pc2hpbmc7Ci0gICAg
bV9hY3Rpdml0eUFzc2VydGlvbi5jbGVhcigpOworICAgIG1fYWN0aXZpdHlBc3NlcnRpb24gPSBu
dWxscHRyOwogICAgIGlmIChtX3Jlc291cmNlLT5yZXNvdXJjZVRvUmV2YWxpZGF0ZSgpKQogICAg
ICAgICBtZW1vcnlDYWNoZSgpLT5yZXZhbGlkYXRpb25GYWlsZWQobV9yZXNvdXJjZSk7CiAgICAg
bV9yZXNvdXJjZS0+c2V0UmVzb3VyY2VFcnJvcihlcnJvcik7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuaAkocmV2aXNpb24gMTU2NjI0KQorKysgU291cmNl
L1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTEw
Miw3ICsxMDIsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9sb2FkaW5nTXVsdGlwYXJ0Q29udGVu
dDsKICAgICBTdWJyZXNvdXJjZUxvYWRlclN0YXRlIG1fc3RhdGU7CiAgICAgT3duUHRyPFJlcXVl
c3RDb3VudFRyYWNrZXI+IG1fcmVxdWVzdENvdW50VHJhY2tlcjsKLSAgICBPd25QdHI8UGFnZUFj
dGl2aXR5QXNzZXJ0aW9uVG9rZW4+IG1fYWN0aXZpdHlBc3NlcnRpb247CisgICAgc3RkOjp1bmlx
dWVfcHRyPFBhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuPiBtX2FjdGl2aXR5QXNzZXJ0aW9uOwog
fTsKIAogfQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCShyZXZpc2lvbiAxNTY2MjQpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODUsOCArMTg1LDgg
QEAgUGFnZTo6UGFnZShQYWdlQ2xpZW50cyYgcGFnZUNsaWVudHMpCiAjZW5kaWYKICAgICAsIG1f
YWx0ZXJuYXRpdmVUZXh0Q2xpZW50KHBhZ2VDbGllbnRzLmFsdGVybmF0aXZlVGV4dENsaWVudCkK
ICAgICAsIG1fc2NyaXB0ZWRBbmltYXRpb25zU3VzcGVuZGVkKGZhbHNlKQotICAgICwgbV9wYWdl
VGhyb3R0bGVyKFBhZ2VUaHJvdHRsZXI6OmNyZWF0ZSh0aGlzKSkKLSAgICAsIG1fY29uc29sZShQ
YWdlQ29uc29sZTo6Y3JlYXRlKHRoaXMpKQorICAgICwgbV9wYWdlVGhyb3R0bGVyKGNyZWF0ZU93
bmVkPFBhZ2VUaHJvdHRsZXI+KCp0aGlzKSkKKyAgICAsIG1fY29uc29sZShjcmVhdGVPd25lZDxQ
YWdlQ29uc29sZT4oKnRoaXMpKQogICAgICwgbV9sYXN0U3BhdGlhbE5hdmlnYXRpb25DYW5kaWRh
dGVzQ291bnQoMCkgLy8gTk9URTogT25seSBjYWxsZWQgZnJvbSBJbnRlcm5hbHMgZm9yIFNwYXRp
YWwgTmF2aWdhdGlvbiB0ZXN0aW5nLgogICAgICwgbV9mcmFtZXNIYW5kbGluZ0JlZm9yZVVubG9h
ZEV2ZW50KDApCiB7CkBAIC0yMzUsOCArMjM1LDYgQEAgUGFnZTo6flBhZ2UoKQogI2lmbmRlZiBO
REVCVUcKICAgICBwYWdlQ291bnRlci5kZWNyZW1lbnQoKTsKICNlbmRpZgotCi0gICAgbV9wYWdl
VGhyb3R0bGVyLmNsZWFyKCk7CiB9CiAKIEFyZW5hU2l6ZSBQYWdlOjpyZW5kZXJUcmVlU2l6ZSgp
IGNvbnN0CkBAIC0xNTA1LDkgKzE1MDMsOSBAQCB2b2lkIFBhZ2U6OnJlc2V0U2Vlbk1lZGlhRW5n
aW5lcygpCiAgICAgbV9zZWVuTWVkaWFFbmdpbmVzLmNsZWFyKCk7CiB9CiAKLVBhc3NPd25QdHI8
UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4+IFBhZ2U6OmNyZWF0ZUFjdGl2aXR5VG9rZW4oKQor
c3RkOjp1bmlxdWVfcHRyPFBhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuPiBQYWdlOjpjcmVhdGVB
Y3Rpdml0eVRva2VuKCkKIHsKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IFBhZ2VBY3Rpdml0eUFz
c2VydGlvblRva2VuKG1fcGFnZVRocm90dGxlci5nZXQoKSkpOworICAgIHJldHVybiBtX3BhZ2VU
aHJvdHRsZXItPmNyZWF0ZUFjdGl2aXR5VG9rZW4oKTsKIH0KIAogI2lmIEVOQUJMRShISURERU5f
UEFHRV9ET01fVElNRVJfVEhST1RUTElORykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFn
ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCShyZXZpc2lvbiAx
NTY2MjQpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaAkod29ya2luZyBjb3B5KQpAQCAt
Mzk1LDggKzM5NSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNhd01lZGlhRW5naW5lKGNvbnN0IFN0
cmluZyYgZW5naW5lTmFtZSk7CiAgICAgdm9pZCByZXNldFNlZW5NZWRpYUVuZ2luZXMoKTsKIAot
ICAgIFBhZ2VUaHJvdHRsZXIqIHBhZ2VUaHJvdHRsZXIoKSB7IHJldHVybiBtX3BhZ2VUaHJvdHRs
ZXIuZ2V0KCk7IH0KLSAgICBQYXNzT3duUHRyPFBhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuPiBj
cmVhdGVBY3Rpdml0eVRva2VuKCk7CisgICAgUGFnZVRocm90dGxlciYgcGFnZVRocm90dGxlcigp
IHsgcmV0dXJuICptX3BhZ2VUaHJvdHRsZXI7IH0KKyAgICBzdGQ6OnVuaXF1ZV9wdHI8UGFnZUFj
dGl2aXR5QXNzZXJ0aW9uVG9rZW4+IGNyZWF0ZUFjdGl2aXR5VG9rZW4oKTsKIAogICAgIFBhZ2VD
b25zb2xlJiBjb25zb2xlKCkgeyByZXR1cm4gKm1fY29uc29sZTsgfQogCkBAIC01NDYsOCArNTQ2
LDcgQEAgcHJpdmF0ZToKICAgICBBbHRlcm5hdGl2ZVRleHRDbGllbnQqIG1fYWx0ZXJuYXRpdmVU
ZXh0Q2xpZW50OwogCiAgICAgYm9vbCBtX3NjcmlwdGVkQW5pbWF0aW9uc1N1c3BlbmRlZDsKLSAg
ICBPd25QdHI8UGFnZVRocm90dGxlcj4gbV9wYWdlVGhyb3R0bGVyOwotCisgICAgY29uc3QgT3du
UHRyPFBhZ2VUaHJvdHRsZXI+IG1fcGFnZVRocm90dGxlcjsKICAgICBjb25zdCBPd25QdHI8UGFn
ZUNvbnNvbGU+IG1fY29uc29sZTsKIAogICAgIEhhc2hTZXQ8U3RyaW5nPiBtX3NlZW5QbHVnaW5z
OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbi5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQWN0aXZpdHlBc3NlcnRp
b25Ub2tlbi5jcHAJKHJldmlzaW9uIDE1NjYyNCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFn
ZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMCwxNyArMzAs
MTYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1QYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tl
bjo6UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4oUGFnZVRocm90dGxlciogdGhyb3R0bGVyKQot
ICAgIDptX3Rocm90dGxlcih0aHJvdHRsZXIpCitQYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbjo6
UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4oUGFnZVRocm90dGxlciYgdGhyb3R0bGVyKQorICAg
IDogbV90aHJvdHRsZXIoJnRocm90dGxlcikKIHsKLSAgICBpZiAobV90aHJvdHRsZXIpCi0gICAg
ICAgIG1fdGhyb3R0bGVyLT5hZGRBY3Rpdml0eVRva2VuKHRoaXMpOworICAgIG1fdGhyb3R0bGVy
LT5hZGRBY3Rpdml0eVRva2VuKCp0aGlzKTsKIH0KIAogUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9r
ZW46On5QYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbigpCiB7CiAgICAgaWYgKG1fdGhyb3R0bGVy
KQotICAgICAgICBtX3Rocm90dGxlci0+cmVtb3ZlQWN0aXZpdHlUb2tlbih0aGlzKTsKKyAgICAg
ICAgbV90aHJvdHRsZXItPnJlbW92ZUFjdGl2aXR5VG9rZW4oKnRoaXMpOwogfQogCiB2b2lkIFBh
Z2VBY3Rpdml0eUFzc2VydGlvblRva2VuOjppbnZhbGlkYXRlKCkKQEAgLTQ4LDYgKzQ3LDYgQEAg
dm9pZCBQYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbjo6aW52YWxpZAogICAgIG1fdGhyb3R0bGVy
ID0gMDsKIH0KIAotfQorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4uaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuLmgJKHJldmlzaW9u
IDE1NjYyNCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9r
ZW4uaAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTcgKzM1LDE1IEBAIGNsYXNzIFBhZ2VUaHJvdHRs
ZXI7CiBjbGFzcyBQYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbiB7CiAgICAgV1RGX01BS0VfTk9O
Q09QWUFCTEUoUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4pOwogcHVibGljOgorICAgIFBhZ2VB
Y3Rpdml0eUFzc2VydGlvblRva2VuKFBhZ2VUaHJvdHRsZXImKTsKICAgICB+UGFnZUFjdGl2aXR5
QXNzZXJ0aW9uVG9rZW4oKTsKIAogICAgIHZvaWQgaW52YWxpZGF0ZSgpOwogCiBwcml2YXRlOgot
ICAgIGZyaWVuZCBjbGFzcyBQYWdlOwotICAgIFBhZ2VBY3Rpdml0eUFzc2VydGlvblRva2VuKFBh
Z2VUaHJvdHRsZXIqKTsKLQogICAgIFBhZ2VUaHJvdHRsZXIqIG1fdGhyb3R0bGVyOwogfTsKIAot
fQorfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8gUGFnZUFjdGl2aXR5QXNzZXJ0
aW9uVG9rZW5faApJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQ29uc29sZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQ29uc29sZS5jcHAJKHJldmlzaW9u
IDE1NjYyNCkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZUNvbnNvbGUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC01NSw5ICs1NSwxNCBAQCBuYW1lc3BhY2UgewogICAgIGludCBtdXRlQ291bnQg
PSAwOwogfQogCi1QYWdlQ29uc29sZTo6UGFnZUNvbnNvbGUoUGFnZSogcGFnZSkgOiBtX3BhZ2Uo
cGFnZSkgeyB9CitQYWdlQ29uc29sZTo6UGFnZUNvbnNvbGUoUGFnZSYgcGFnZSkKKyAgICA6IG1f
cGFnZShwYWdlKQoreworfQogCi1QYWdlQ29uc29sZTo6flBhZ2VDb25zb2xlKCkgeyB9CitQYWdl
Q29uc29sZTo6flBhZ2VDb25zb2xlKCkKK3sKK30KIAogdm9pZCBQYWdlQ29uc29sZTo6cHJpbnRT
b3VyY2VVUkxBbmRMaW5lKGNvbnN0IFN0cmluZyYgc291cmNlVVJMLCB1bnNpZ25lZCBsaW5lTnVt
YmVyKQogewpAQCAtMTYxLDI0ICsxNjYsMjAgQEAgdm9pZCBQYWdlQ29uc29sZTo6YWRkTWVzc2Fn
ZShNZXNzYWdlU291cgogICAgIGlmIChtdXRlQ291bnQgJiYgc291cmNlICE9IENvbnNvbGVBUElN
ZXNzYWdlU291cmNlKQogICAgICAgICByZXR1cm47CiAKLSAgICBQYWdlKiBwYWdlID0gdGhpcy0+
cGFnZSgpOwotICAgIGlmICghcGFnZSkKLSAgICAgICAgcmV0dXJuOwotCiAgICAgaWYgKGNhbGxT
dGFjaykKLSAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjphZGRNZXNzYWdlVG9Db25z
b2xlKHBhZ2UsIHNvdXJjZSwgTG9nTWVzc2FnZVR5cGUsIGxldmVsLCBtZXNzYWdlLCBjYWxsU3Rh
Y2ssIHJlcXVlc3RJZGVudGlmaWVyKTsKKyAgICAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9u
OjphZGRNZXNzYWdlVG9Db25zb2xlKCZtX3BhZ2UsIHNvdXJjZSwgTG9nTWVzc2FnZVR5cGUsIGxl
dmVsLCBtZXNzYWdlLCBjYWxsU3RhY2ssIHJlcXVlc3RJZGVudGlmaWVyKTsKICAgICBlbHNlCi0g
ICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZShwYWdl
LCBzb3VyY2UsIExvZ01lc3NhZ2VUeXBlLCBsZXZlbCwgbWVzc2FnZSwgdXJsLCBsaW5lTnVtYmVy
LCBjb2x1bW5OdW1iZXIsIHN0YXRlLCByZXF1ZXN0SWRlbnRpZmllcik7CisgICAgICAgIEluc3Bl
Y3Rvckluc3RydW1lbnRhdGlvbjo6YWRkTWVzc2FnZVRvQ29uc29sZSgmbV9wYWdlLCBzb3VyY2Us
IExvZ01lc3NhZ2VUeXBlLCBsZXZlbCwgbWVzc2FnZSwgdXJsLCBsaW5lTnVtYmVyLCBjb2x1bW5O
dW1iZXIsIHN0YXRlLCByZXF1ZXN0SWRlbnRpZmllcik7CiAKICAgICBpZiAoc291cmNlID09IENT
U01lc3NhZ2VTb3VyY2UpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChwYWdlLT5zZXR0aW5n
cygpLnByaXZhdGVCcm93c2luZ0VuYWJsZWQoKSkKKyAgICBpZiAobV9wYWdlLnNldHRpbmdzKCku
cHJpdmF0ZUJyb3dzaW5nRW5hYmxlZCgpKQogICAgICAgICByZXR1cm47CiAKLSAgICBwYWdlLT5j
aHJvbWUoKS5jbGllbnQoKS5hZGRNZXNzYWdlVG9Db25zb2xlKHNvdXJjZSwgbGV2ZWwsIG1lc3Nh
Z2UsIGxpbmVOdW1iZXIsIGNvbHVtbk51bWJlciwgdXJsKTsKKyAgICBtX3BhZ2UuY2hyb21lKCku
Y2xpZW50KCkuYWRkTWVzc2FnZVRvQ29uc29sZShzb3VyY2UsIGxldmVsLCBtZXNzYWdlLCBsaW5l
TnVtYmVyLCBjb2x1bW5OdW1iZXIsIHVybCk7CiAKLSAgICBpZiAoIXBhZ2UtPnNldHRpbmdzKCku
bG9nc1BhZ2VNZXNzYWdlc1RvU3lzdGVtQ29uc29sZUVuYWJsZWQoKSAmJiAhc2hvdWxkUHJpbnRF
eGNlcHRpb25zKCkpCisgICAgaWYgKCFtX3BhZ2Uuc2V0dGluZ3MoKS5sb2dzUGFnZU1lc3NhZ2Vz
VG9TeXN0ZW1Db25zb2xlRW5hYmxlZCgpICYmICFzaG91bGRQcmludEV4Y2VwdGlvbnMoKSkKICAg
ICAgICAgcmV0dXJuOwogCiAgICAgcHJpbnRTb3VyY2VVUkxBbmRMaW5lKHVybCwgbGluZU51bWJl
cik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VDb25zb2xlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlQ29uc29sZS5oCShyZXZpc2lvbiAxNTY2MjQpCisr
KyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VDb25zb2xlLmgJKHdvcmtpbmcgY29weSkKQEAgLTMx
LDEwICszMSwxMyBAQAogCiAjaW5jbHVkZSAiQ29uc29sZVR5cGVzLmgiCiAjaW5jbHVkZSAiU2Ny
aXB0Q2FsbFN0YWNrLmgiCi0jaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKICNpbmNsdWRlIDx3dGYv
Rm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+CiAKK25hbWVzcGFjZSBKU0Mg
eworY2xhc3MgRXhlY1N0YXRlOworfQorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIERv
Y3VtZW50OwpAQCAtNDIsOCArNDUsOCBAQCBjbGFzcyBQYWdlOwogCiBjbGFzcyBQYWdlQ29uc29s
ZSB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8UGFnZUNvbnNvbGU+IGNyZWF0ZShQ
YWdlKiBwYWdlKSB7IHJldHVybiBhZG9wdFB0cihuZXcgUGFnZUNvbnNvbGUocGFnZSkpOyB9Ci0g
ICAgdmlydHVhbCB+UGFnZUNvbnNvbGUoKTsKKyAgICBQYWdlQ29uc29sZShQYWdlJik7CisgICAg
flBhZ2VDb25zb2xlKCk7CiAKICAgICBzdGF0aWMgdm9pZCBwcmludFNvdXJjZVVSTEFuZExpbmUo
Y29uc3QgU3RyaW5nJiBzb3VyY2VVUkwsIHVuc2lnbmVkIGxpbmVOdW1iZXIpOwogICAgIHN0YXRp
YyB2b2lkIHByaW50TWVzc2FnZVNvdXJjZUFuZExldmVsUHJlZml4KE1lc3NhZ2VTb3VyY2UsIE1l
c3NhZ2VMZXZlbCk7CkBAIC01OSwxMSArNjIsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQg
c2V0U2hvdWxkUHJpbnRFeGNlcHRpb25zKGJvb2wpOwogCiBwcml2YXRlOgotICAgIFBhZ2VDb25z
b2xlKFBhZ2UqKTsKLQotICAgIFBhZ2UqIHBhZ2UoKSB7IHJldHVybiBtX3BhZ2U7IH07Ci0KLSAg
ICBQYWdlKiBtX3BhZ2U7CisgICAgUGFnZSYgbV9wYWdlOwogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlVGhyb3R0bGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VUaHJvdHRsZXIuY3BwCShyZXZpc2lv
biAxNTY2MjQpCisrKyBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VUaHJvdHRsZXIuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0zMSw0MiArMzEsNDggQEAKICNpbmNsdWRlICJNYWluRnJhbWUuaCIKICNp
bmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4uaCIK
KyNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAog
c3RhdGljIGNvbnN0IGRvdWJsZSBrVGhyb3R0bGVIeXN0ZXJlc2lzU2Vjb25kcyA9IDIuMDsKIAot
UGFnZVRocm90dGxlcjo6UGFnZVRocm90dGxlcihQYWdlKiBwYWdlKQorUGFnZVRocm90dGxlcjo6
UGFnZVRocm90dGxlcihQYWdlJiBwYWdlKQogICAgIDogbV9wYWdlKHBhZ2UpCiAgICAgLCBtX3Ro
cm90dGxlU3RhdGUoUGFnZU5vdFRocm90dGxlZFN0YXRlKQogICAgICwgbV90aHJvdHRsZUh5c3Rl
cmVzaXNUaW1lcih0aGlzLCAmUGFnZVRocm90dGxlcjo6dGhyb3R0bGVIeXN0ZXJlc2lzVGltZXJG
aXJlZCkKIHsKLSAgICBtX3BhZ2UtPmNocm9tZSgpLmNsaWVudCgpLmluY3JlbWVudEFjdGl2ZVBh
Z2VDb3VudCgpOworICAgIG1fcGFnZS5jaHJvbWUoKS5jbGllbnQoKS5pbmNyZW1lbnRBY3RpdmVQ
YWdlQ291bnQoKTsKIH0KIAogUGFnZVRocm90dGxlcjo6flBhZ2VUaHJvdHRsZXIoKQogewogICAg
IHNldFRocm90dGxlZChmYWxzZSk7CiAKLSAgICBmb3IgKEhhc2hTZXQ8UGFnZUFjdGl2aXR5QXNz
ZXJ0aW9uVG9rZW4qPjo6aXRlcmF0b3IgaSA9IG1fYWN0aXZpdHlUb2tlbnMuYmVnaW4oKTsgaSAh
PSBtX2FjdGl2aXR5VG9rZW5zLmVuZCgpOyArK2kpCi0gICAgICAgICgqaSktPmludmFsaWRhdGUo
KTsKKyAgICBmb3IgKGF1dG8gaXQgPSBtX2FjdGl2aXR5VG9rZW5zLmJlZ2luKCksIGVuZCA9IG1f
YWN0aXZpdHlUb2tlbnMuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkKKyAgICAgICAgKCppdCktPmlu
dmFsaWRhdGUoKTsKIAogICAgIGlmIChtX3Rocm90dGxlU3RhdGUgIT0gUGFnZVRocm90dGxlZFN0
YXRlKQotICAgICAgICBtX3BhZ2UtPmNocm9tZSgpLmNsaWVudCgpLmRlY3JlbWVudEFjdGl2ZVBh
Z2VDb3VudCgpOworICAgICAgICBtX3BhZ2UuY2hyb21lKCkuY2xpZW50KCkuZGVjcmVtZW50QWN0
aXZlUGFnZUNvdW50KCk7Cit9CisKK3N0ZDo6dW5pcXVlX3B0cjxQYWdlQWN0aXZpdHlBc3NlcnRp
b25Ub2tlbj4gUGFnZVRocm90dGxlcjo6Y3JlYXRlQWN0aXZpdHlUb2tlbigpCit7CisgICAgcmV0
dXJuIHN0ZDo6bWFrZV91bmlxdWU8UGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4+KCp0aGlzKTsK
IH0KIAogdm9pZCBQYWdlVGhyb3R0bGVyOjp0aHJvdHRsZVBhZ2UoKQogewogICAgIG1fdGhyb3R0
bGVTdGF0ZSA9IFBhZ2VUaHJvdHRsZWRTdGF0ZTsKIAotICAgIG1fcGFnZS0+Y2hyb21lKCkuY2xp
ZW50KCkuZGVjcmVtZW50QWN0aXZlUGFnZUNvdW50KCk7CisgICAgbV9wYWdlLmNocm9tZSgpLmNs
aWVudCgpLmRlY3JlbWVudEFjdGl2ZVBhZ2VDb3VudCgpOwogCi0gICAgZm9yIChGcmFtZSogZnJh
bWUgPSAmbV9wYWdlLT5tYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50
cmF2ZXJzZU5leHQoKSkgeworICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1fcGFnZS5tYWluRnJh
bWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQoKSkgewogICAg
ICAgICBpZiAoZnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgICAgICBmcmFtZS0+ZG9jdW1lbnQo
KS0+c2NyaXB0ZWRBbmltYXRpb25Db250cm9sbGVyU2V0VGhyb3R0bGVkKHRydWUpOwogICAgIH0K
IAotICAgIG1fcGFnZS0+dGhyb3R0bGVUaW1lcnMoKTsKKyAgICBtX3BhZ2UudGhyb3R0bGVUaW1l
cnMoKTsKIH0KIAogdm9pZCBQYWdlVGhyb3R0bGVyOjp1bnRocm90dGxlUGFnZSgpCkBAIC03OCwx
NCArODQsMTQgQEAgdm9pZCBQYWdlVGhyb3R0bGVyOjp1bnRocm90dGxlUGFnZSgpCiAgICAgICAg
IHJldHVybjsKIAogICAgIGlmIChvbGRTdGF0ZSA9PSBQYWdlVGhyb3R0bGVkU3RhdGUpCi0gICAg
ICAgIG1fcGFnZS0+Y2hyb21lKCkuY2xpZW50KCkuaW5jcmVtZW50QWN0aXZlUGFnZUNvdW50KCk7
CisgICAgICAgIG1fcGFnZS5jaHJvbWUoKS5jbGllbnQoKS5pbmNyZW1lbnRBY3RpdmVQYWdlQ291
bnQoKTsKICAgICAKLSAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtX3BhZ2UtPm1haW5GcmFtZSgp
OyBmcmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CisgICAgZm9y
IChGcmFtZSogZnJhbWUgPSAmbV9wYWdlLm1haW5GcmFtZSgpOyBmcmFtZTsgZnJhbWUgPSBmcmFt
ZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CiAgICAgICAgIGlmIChmcmFtZS0+ZG9jdW1lbnQo
KSkKICAgICAgICAgICAgIGZyYW1lLT5kb2N1bWVudCgpLT5zY3JpcHRlZEFuaW1hdGlvbkNvbnRy
b2xsZXJTZXRUaHJvdHRsZWQoZmFsc2UpOwogICAgIH0KIAotICAgIG1fcGFnZS0+dW50aHJvdHRs
ZVRpbWVycygpOworICAgIG1fcGFnZS51bnRocm90dGxlVGltZXJzKCk7CiB9CiAKIHZvaWQgUGFn
ZVRocm90dGxlcjo6c2V0VGhyb3R0bGVkKGJvb2wgaXNUaHJvdHRsZWQpCkBAIC0xMjgsMTEgKzEz
NCwxMSBAQCB2b2lkIFBhZ2VUaHJvdHRsZXI6OnRocm90dGxlSHlzdGVyZXNpc1RpCiAgICAgdGhy
b3R0bGVQYWdlKCk7CiB9CiAKLXZvaWQgUGFnZVRocm90dGxlcjo6YWRkQWN0aXZpdHlUb2tlbihQ
YWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbiogdG9rZW4pCit2b2lkIFBhZ2VUaHJvdHRsZXI6OmFk
ZEFjdGl2aXR5VG9rZW4oUGFnZUFjdGl2aXR5QXNzZXJ0aW9uVG9rZW4mIHRva2VuKQogewotICAg
IEFTU0VSVCh0b2tlbiAmJiAhbV9hY3Rpdml0eVRva2Vucy5jb250YWlucyh0b2tlbikpOworICAg
IEFTU0VSVCghbV9hY3Rpdml0eVRva2Vucy5jb250YWlucygmdG9rZW4pKTsKIAotICAgIG1fYWN0
aXZpdHlUb2tlbnMuYWRkKHRva2VuKTsKKyAgICBtX2FjdGl2aXR5VG9rZW5zLmFkZCgmdG9rZW4p
OwogCiAgICAgLy8gSWYgd2UndmUgYWxyZWFkeSBnb3QgZXZlbnRzIHRoYXQgYmxvY2sgdGhyb3R0
bGluZyB3ZSBjYW4gcmV0dXJuIGVhcmx5CiAgICAgaWYgKG1fYWN0aXZpdHlUb2tlbnMuc2l6ZSgp
ID4gMSkKQEAgLTE0OCwxMSArMTU0LDExIEBAIHZvaWQgUGFnZVRocm90dGxlcjo6YWRkQWN0aXZp
dHlUb2tlbihQYWcKICAgICBzdG9wVGhyb3R0bGVIeXN0ZXJlc2lzVGltZXIoKTsKIH0KIAotdm9p
ZCBQYWdlVGhyb3R0bGVyOjpyZW1vdmVBY3Rpdml0eVRva2VuKFBhZ2VBY3Rpdml0eUFzc2VydGlv
blRva2VuKiB0b2tlbikKK3ZvaWQgUGFnZVRocm90dGxlcjo6cmVtb3ZlQWN0aXZpdHlUb2tlbihQ
YWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbiYgdG9rZW4pCiB7Ci0gICAgQVNTRVJUKHRva2VuICYm
IG1fYWN0aXZpdHlUb2tlbnMuY29udGFpbnModG9rZW4pKTsKKyAgICBBU1NFUlQobV9hY3Rpdml0
eVRva2Vucy5jb250YWlucygmdG9rZW4pKTsKIAotICAgIG1fYWN0aXZpdHlUb2tlbnMucmVtb3Zl
KHRva2VuKTsKKyAgICBtX2FjdGl2aXR5VG9rZW5zLnJlbW92ZSgmdG9rZW4pOwogCiAgICAgaWYg
KG1fYWN0aXZpdHlUb2tlbnMuc2l6ZSgpKQogICAgICAgICByZXR1cm47CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1BhZ2VUaHJvdHRsZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wYWdlL1BhZ2VUaHJvdHRsZXIuaAkocmV2aXNpb24gMTU2NjI0KQorKysgU291cmNlL1dlYkNv
cmUvcGFnZS9QYWdlVGhyb3R0bGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTM5LDEwICszOSwxMCBA
QCBjbGFzcyBQYWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbjsKIAogY2xhc3MgUGFnZVRocm90dGxl
ciB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8UGFnZVRocm90dGxlcj4gY3JlYXRl
KFBhZ2UqIHBhZ2UpCi0gICAgewotICAgICAgICByZXR1cm4gYWRvcHRQdHIobmV3IFBhZ2VUaHJv
dHRsZXIocGFnZSkpOwotICAgIH0KKyAgICBQYWdlVGhyb3R0bGVyKFBhZ2UmKTsKKyAgICB+UGFn
ZVRocm90dGxlcigpOworCisgICAgc3RkOjp1bmlxdWVfcHRyPFBhZ2VBY3Rpdml0eUFzc2VydGlv
blRva2VuPiBjcmVhdGVBY3Rpdml0eVRva2VuKCk7CiAKICAgICBib29sIHNob3VsZFRocm90dGxl
QW5pbWF0aW9ucygpIGNvbnN0IHsgcmV0dXJuIG1fdGhyb3R0bGVTdGF0ZSAhPSBQYWdlTm90VGhy
b3R0bGVkU3RhdGU7IH0KICAgICBib29sIHNob3VsZFRocm90dGxlVGltZXJzKCkgY29uc3QgeyBy
ZXR1cm4gbV90aHJvdHRsZVN0YXRlICE9IFBhZ2VOb3RUaHJvdHRsZWRTdGF0ZTsgfQpAQCAtNTEs
OCArNTEsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHJlcG9ydEludGVyZXN0aW5nRXZlbnQoKTsK
IAotICAgIH5QYWdlVGhyb3R0bGVyKCk7Ci0KIHByaXZhdGU6CiAgICAgZW51bSBQYWdlVGhyb3R0
bGVTdGF0ZSB7CiAgICAgICAgIFBhZ2VOb3RUaHJvdHRsZWRTdGF0ZSwKQEAgLTYxLDE5ICs1OSwx
NyBAQCBwcml2YXRlOgogICAgIH07CiAKICAgICBmcmllbmQgY2xhc3MgUGFnZUFjdGl2aXR5QXNz
ZXJ0aW9uVG9rZW47Ci0gICAgdm9pZCBhZGRBY3Rpdml0eVRva2VuKFBhZ2VBY3Rpdml0eUFzc2Vy
dGlvblRva2VuKik7Ci0gICAgdm9pZCByZW1vdmVBY3Rpdml0eVRva2VuKFBhZ2VBY3Rpdml0eUFz
c2VydGlvblRva2VuKik7CisgICAgdm9pZCBhZGRBY3Rpdml0eVRva2VuKFBhZ2VBY3Rpdml0eUFz
c2VydGlvblRva2VuJik7CisgICAgdm9pZCByZW1vdmVBY3Rpdml0eVRva2VuKFBhZ2VBY3Rpdml0
eUFzc2VydGlvblRva2VuJik7CiAKLSAgICBQYWdlVGhyb3R0bGVyKFBhZ2UqKTsKICAgICB2b2lk
IHN0YXJ0VGhyb3R0bGVIeXN0ZXJlc2lzVGltZXIoKTsKICAgICB2b2lkIHN0b3BUaHJvdHRsZUh5
c3RlcmVzaXNUaW1lcigpOwogICAgIHZvaWQgdGhyb3R0bGVIeXN0ZXJlc2lzVGltZXJGaXJlZChU
aW1lcjxQYWdlVGhyb3R0bGVyPiopOwogCi0gICAgUGFnZSogbV9wYWdlOwotCiAgICAgdm9pZCB0
aHJvdHRsZVBhZ2UoKTsKICAgICB2b2lkIHVudGhyb3R0bGVQYWdlKCk7CiAKKyAgICBQYWdlJiBt
X3BhZ2U7CiAgICAgUGFnZVRocm90dGxlU3RhdGUgbV90aHJvdHRsZVN0YXRlOwogICAgIFRpbWVy
PFBhZ2VUaHJvdHRsZXI+IG1fdGhyb3R0bGVIeXN0ZXJlc2lzVGltZXI7CiAgICAgSGFzaFNldDxQ
YWdlQWN0aXZpdHlBc3NlcnRpb25Ub2tlbio+IG1fYWN0aXZpdHlUb2tlbnM7Cg==
</data>
<flag name="review"
          id="235222"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>