<?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>108785</bug_id>
          
          <creation_ts>2013-02-03 19:17:18 -0800</creation_ts>
          <short_desc>Make WebPageProxy and sub-objects MessageReceivers</short_desc>
          <delta_ts>2013-02-11 02:25:13 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>109407</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>mkwst+watchlist</cc>
    
    <cc>noam</cc>
    
    <cc>rafael.lobo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zeno</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>823980</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-02-03 19:17:18 -0800</bug_when>
    <thetext>Make WebPageProxy and sub-objects MessageReceivers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>823981</commentid>
    <comment_count>1</comment_count>
      <attachid>186287</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-02-03 19:19:44 -0800</bug_when>
    <thetext>Created attachment 186287
First attempt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827773</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-02-07 12:00:04 -0800</bug_when>
    <thetext>Committed r142160: &lt;http://trac.webkit.org/changeset/142160&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186287</attachid>
            <date>2013-02-03 19:19:44 -0800</date>
            <delta_ts>2013-02-04 14:34:44 -0800</delta_ts>
            <desc>First attempt</desc>
            <filename>bug-108785-20130203191624.patch</filename>
            <type>text/plain</type>
            <size>31593</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE0MTcyOSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDUxIEBACisyMDEzLTAyLTAzICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgTWFrZSBXZWJQYWdlUHJveHkgYW5kIHN1
Yi1vYmplY3RzIE1lc3NhZ2VSZWNlaXZlcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwODc4NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRp
bmF0ZWRMYXllclRyZWVIb3N0UHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpDb29yZGluYXRl
ZExheWVyVHJlZUhvc3RQcm94eTo6Q29vcmRpbmF0ZWRMYXllclRyZWVIb3N0UHJveHkpOgorICAg
ICAgICAoV2ViS2l0OjpDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eTo6fkNvb3JkaW5hdGVk
TGF5ZXJUcmVlSG9zdFByb3h5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFw
aGljcy9Db29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eS5oOgorICAgICAgICAoQ29vcmRpbmF0
ZWRMYXllclRyZWVIb3N0UHJveHkpOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db29yZGluYXRlZEdy
YXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5Lm1lc3NhZ2VzLmluOgorICAgICAg
ICAqIFVJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6RHJh
d2luZ0FyZWFQcm94eTo6RHJhd2luZ0FyZWFQcm94eSk6CisgICAgICAgIChXZWJLaXQ6OkRyYXdp
bmdBcmVhUHJveHk6On5EcmF3aW5nQXJlYVByb3h5KToKKyAgICAgICAgKFdlYktpdDo6RHJhd2lu
Z0FyZWFQcm94eTo6Y29udGVudHNSZWN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvRHJhd2luZ0Fy
ZWFQcm94eS5oOgorICAgICAgICAoV2ViS2l0OjpEcmF3aW5nQXJlYVByb3h5OjpzZXRWaXNpYmxl
Q29udGVudHNSZWN0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5tZXNz
YWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eUltcGwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpEcmF3aW5nQXJlYVByb3h5SW1wbDo6c2V0VmlzaWJsZUNvbnRlbnRz
UmVjdCk6CisgICAgICAgICogVUlQcm9jZXNzL0RyYXdpbmdBcmVhUHJveHlJbXBsLmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5OjpXZWJGdWxsU2NyZWVuTWFuYWdlclBy
b3h5KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eS5oOgor
ICAgICAgICAoV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eSk6CisgICAgICAgICogVUlQcm9jZXNz
L1dlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW46CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9y
UHJveHk6OldlYkluc3BlY3RvclByb3h5KToKKyAgICAgICAgKFdlYktpdDo6V2ViSW5zcGVjdG9y
UHJveHk6OmludmFsaWRhdGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94
eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5tZXNzYWdlcy5pbjoK
KyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViUGFnZVByb3h5OjpXZWJQYWdlUHJveHkpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJv
eHk6OnJlYXR0YWNoVG9XZWJQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5
OjpjbG9zZSk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6aW5zcGVjdG9yKToKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmdWxsU2NyZWVuTWFuYWdlcik6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cHJvY2Vzc0RpZENyYXNoKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5t
ZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpkaWRSZWNlaXZlTWVzc2FnZSk6CisgICAg
ICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6ZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHlNYWMubW06Cisg
ICAgICAgIChXZWJLaXQ6OldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHk6OmludmFsaWRhdGUpOgor
CiAyMDEzLTAyLTAzICBKb2FubWFyaWUgRGlnZ3MgIDxqZGlnZ3NAaWdhbGlhLmNvbT4KIAogICAg
ICAgICBbR1RLXSBNYWtlIGRpc3RjaGVjayBmYWlscwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0RyYXdpbmdBcmVhUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5LmNwcAkocmV2aXNpb24gMTQxNzA3KQorKysgU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0RyYXdpbmdBcmVhUHJveHkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw3ICsyNiw5IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiRHJhd2lu
Z0FyZWFQcm94eS5oIgogCisjaW5jbHVkZSAiRHJhd2luZ0FyZWFQcm94eU1lc3NhZ2VzLmgiCiAj
aW5jbHVkZSAiV2ViUGFnZVByb3h5LmgiCisjaW5jbHVkZSAiV2ViUHJvY2Vzc1Byb3h5LmgiCiAK
ICNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCiAjaW5jbHVkZSAiQ29vcmRpbmF0ZWRMYXll
clRyZWVIb3N0UHJveHkuaCIKQEAgLTQxLDEwICs0MywxMiBAQCBEcmF3aW5nQXJlYVByb3h5OjpE
cmF3aW5nQXJlYVByb3h5KERyYXdpCiAgICAgLCBtX3dlYlBhZ2VQcm94eSh3ZWJQYWdlUHJveHkp
CiAgICAgLCBtX3NpemUod2ViUGFnZVByb3h5LT52aWV3U2l6ZSgpKQogeworICAgIG1fd2ViUGFn
ZVByb3h5LT5wcm9jZXNzKCktPmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6RHJhd2luZ0Fy
ZWFQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCB3ZWJQYWdlUHJveHktPnBhZ2VJRCgpLCB0
aGlzKTsKIH0KIAogRHJhd2luZ0FyZWFQcm94eTo6fkRyYXdpbmdBcmVhUHJveHkoKQogeworICAg
IG1fd2ViUGFnZVByb3h5LT5wcm9jZXNzKCktPnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdl
czo6RHJhd2luZ0FyZWFQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3dlYlBhZ2VQcm94
eS0+cGFnZUlEKCkpOwogfQogCiB2b2lkIERyYXdpbmdBcmVhUHJveHk6OnNldFNpemUoY29uc3Qg
SW50U2l6ZSYgc2l6ZSwgY29uc3QgSW50U2l6ZSYgc2Nyb2xsT2Zmc2V0KQpAQCAtNjcsMTAgKzcx
LDYgQEAgV2ViQ29yZTo6SW50UmVjdCBEcmF3aW5nQXJlYVByb3h5Ojpjb250ZQogewogICAgIHJl
dHVybiBJbnRSZWN0KEludFBvaW50Ojp6ZXJvKCksIG1fd2ViUGFnZVByb3h5LT52aWV3U2l6ZSgp
KTsKIH0KLQotdm9pZCBEcmF3aW5nQXJlYVByb3h5OjpkaWRSZWNlaXZlQ29vcmRpbmF0ZWRMYXll
clRyZWVIb3N0UHJveHlNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNz
YWdlRGVjb2RlciYpCi17Ci19CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5LmgJKHJldmlzaW9u
IDE0MTcwNykKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI5LDIxICsyOSwxMyBAQAogCiAjaW5jbHVkZSAiQmFja2luZ1N0
b3JlLmgiCiAjaW5jbHVkZSAiRHJhd2luZ0FyZWFJbmZvLmgiCisjaW5jbHVkZSAiTWVzc2FnZVJl
Y2VpdmVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9GbG9hdFBvaW50Lmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9JbnRSZWN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9JbnRTaXplLmg+CiAjaW5jbHVkZSA8
c3RkaW50Lmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+CiAKLW5hbWVzcGFjZSBDb3Jl
SVBDIHsKLSAgICBjbGFzcyBDb25uZWN0aW9uOwotICAgIGNsYXNzIE1lc3NhZ2VEZWNvZGVyOwot
fQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7Ci0gICAgY2xhc3MgVHJhbnNmb3JtYXRpb25NYXRyaXg7
Ci19Ci0KIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBMYXllclRyZWVDb250ZXh0OwpAQCAt
NTEsNyArNDMsNyBAQCBjbGFzcyBDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eTsKIGNsYXNz
IFVwZGF0ZUluZm87CiBjbGFzcyBXZWJQYWdlUHJveHk7CiAKLWNsYXNzIERyYXdpbmdBcmVhUHJv
eHkgeworY2xhc3MgRHJhd2luZ0FyZWFQcm94eSA6IHB1YmxpYyBDb3JlSVBDOjpNZXNzYWdlUmVj
ZWl2ZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKERyYXdpbmdBcmVhUHJveHkpOwogCiBw
dWJsaWM6CkBAIC01OSw4ICs1MSw2IEBAIHB1YmxpYzoKIAogICAgIERyYXdpbmdBcmVhVHlwZSB0
eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAKLSAgICB2b2lkIGRpZFJlY2VpdmVEcmF3
aW5nQXJlYVByb3h5TWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2Fn
ZURlY29kZXImKTsKLQogICAgIHZpcnR1YWwgdm9pZCBkZXZpY2VTY2FsZUZhY3RvckRpZENoYW5n
ZSgpID0gMDsKIAogICAgIC8vIEZJWE1FOiBUaGVzZSBzaG91bGQgYmUgcHVyZSB2aXJ0dWFsLgpA
QCAtODYsNyArNzYsNiBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpJbnRSZWN0IGNv
bnRlbnRzUmVjdCgpIGNvbnN0OwogICAgIENvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5KiBj
b29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eSgpIGNvbnN0IHsgcmV0dXJuIG1fY29vcmRpbmF0
ZWRMYXllclRyZWVIb3N0UHJveHkuZ2V0KCk7IH0KICAgICB2aXJ0dWFsIHZvaWQgc2V0VmlzaWJs
ZUNvbnRlbnRzUmVjdChjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QmIC8qIHZpc2libGVDb250ZW50
c1JlY3QgKi8sIGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIC8qIHRyYWplY3RvcnlWZWN0b3Ig
Ki8pIHsgfQotICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQ29vcmRpbmF0ZWRMYXllclRyZWVI
b3N0UHJveHlNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlRGVj
b2RlciYpOwogCiAgICAgV2ViUGFnZVByb3h5KiBwYWdlKCkgeyByZXR1cm4gbV93ZWJQYWdlUHJv
eHk7IH0KICNlbmRpZgpAQCAtMTA2LDYgKzk1LDkgQEAgcHJvdGVjdGVkOgogcHJpdmF0ZToKICAg
ICB2aXJ0dWFsIHZvaWQgc2l6ZURpZENoYW5nZSgpID0gMDsKIAorICAgIC8vIENvcmVJUEM6Ok1l
c3NhZ2VSZWNlaXZlcgorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBD
OjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImKSBPVkVSUklERTsKKwogICAg
IC8vIENvcmVJUEMgbWVzc2FnZSBoYW5kbGVycy4KICAgICAvLyBGSVhNRTogVGhlc2Ugc2hvdWxk
IGJlIHB1cmUgdmlydHVhbC4KICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlKHVpbnQ2NF90IC8qIGJh
Y2tpbmdTdG9yZVN0YXRlSUQgKi8sIGNvbnN0IFVwZGF0ZUluZm8mKSB7IH0KSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5Lm1lc3NhZ2VzLmluCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5Lm1lc3NhZ2Vz
LmluCShyZXZpc2lvbiAxNDE3MDcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2lu
Z0FyZWFQcm94eS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjAsNyArMjAsNyBAQAog
IyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi1tZXNzYWdlcyAtPiBEcmF3
aW5nQXJlYVByb3h5IExlZ2FjeVJlY2VpdmVyIHsKK21lc3NhZ2VzIC0+IERyYXdpbmdBcmVhUHJv
eHkgewogICAgIFVwZGF0ZSh1aW50NjRfdCBzdGF0ZUlELCBXZWJLaXQ6OlVwZGF0ZUluZm8gdXBk
YXRlSW5mbykKICAgICBEaWRVcGRhdGVCYWNraW5nU3RvcmVTdGF0ZSh1aW50NjRfdCBiYWNraW5n
U3RvcmVTdGF0ZUlELCBXZWJLaXQ6OlVwZGF0ZUluZm8gdXBkYXRlSW5mbywgV2ViS2l0OjpMYXll
clRyZWVDb250ZXh0IGNvbnRleHQpCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQpJ
bmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0RyYXdpbmdBcmVhUHJveHlJbXBsLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eUlt
cGwuY3BwCShyZXZpc2lvbiAxNDE3MDcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJh
d2luZ0FyZWFQcm94eUltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNzAsMTggKzM3MCwxMSBA
QCB2b2lkIERyYXdpbmdBcmVhUHJveHlJbXBsOjplbnRlckFjY2VsZXJhCiB9CiAKICNpZiBVU0Uo
Q09PUkRJTkFURURfR1JBUEhJQ1MpCi12b2lkIERyYXdpbmdBcmVhUHJveHlJbXBsOjpkaWRSZWNl
aXZlQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0UHJveHlNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rp
b24qIGNvbm5lY3Rpb24sIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJiBkZWNvZGVyKQotewotICAg
IGlmIChtX2Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5KQotICAgICAgICBtX2Nvb3JkaW5h
dGVkTGF5ZXJUcmVlSG9zdFByb3h5LT5kaWRSZWNlaXZlQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0
UHJveHlNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwotfQotCiB2b2lkIERyYXdpbmdBcmVh
UHJveHlJbXBsOjpzZXRWaXNpYmxlQ29udGVudHNSZWN0KGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVj
dCYgdmlzaWJsZUNvbnRlbnRzUmVjdCwgY29uc3QgV2ViQ29yZTo6RmxvYXRQb2ludCYgdHJhamVj
dG9yeVZlY3RvcikKIHsKICAgICBpZiAobV9jb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eSkK
ICAgICAgICAgbV9jb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eS0+c2V0VmlzaWJsZUNvbnRl
bnRzUmVjdCh2aXNpYmxlQ29udGVudHNSZWN0LCB0cmFqZWN0b3J5VmVjdG9yKTsKIH0KLQogI2Vu
ZGlmCiAKIHZvaWQgRHJhd2luZ0FyZWFQcm94eUltcGw6OmV4aXRBY2NlbGVyYXRlZENvbXBvc2l0
aW5nTW9kZSgpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94
eUltcGwuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvRHJhd2luZ0Fy
ZWFQcm94eUltcGwuaAkocmV2aXNpb24gMTQxNzA3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0RyYXdpbmdBcmVhUHJveHlJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTg0LDcgKzg0LDYg
QEAgcHJpdmF0ZToKICAgICB2b2lkIHVwZGF0ZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKGNv
bnN0IExheWVyVHJlZUNvbnRleHQmKTsKICNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCiAg
ICAgdmlydHVhbCB2b2lkIHNldFZpc2libGVDb250ZW50c1JlY3QoY29uc3QgV2ViQ29yZTo6Rmxv
YXRSZWN0JiB2aXNpYmxlQ29udGVudHNSZWN0LCBjb25zdCBXZWJDb3JlOjpGbG9hdFBvaW50JiB0
cmFqZWN0b3J5KSBPVkVSUklERTsKLSAgICB2b2lkIGRpZFJlY2VpdmVDb29yZGluYXRlZExheWVy
VHJlZUhvc3RQcm94eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3Nh
Z2VEZWNvZGVyJik7CiAjZW5kaWYKICNlbHNlCiAgICAgYm9vbCBpc0luQWNjZWxlcmF0ZWRDb21w
b3NpdGluZ01vZGUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQpJbmRleDogU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5LmNwcAko
cmV2aXNpb24gMTQxNzA3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Myw2ICs0Myw3IEBAIFdlYkZ1
bGxTY3JlZW5NYW5hZ2VyUHJveHk6OldlYkZ1bGxTY3JlZW4KICAgICA6IG1fcGFnZShwYWdlKQog
ICAgICwgbV93ZWJWaWV3KDApCiB7CisgICAgbV9wYWdlLT5wcm9jZXNzKCktPmFkZE1lc3NhZ2VS
ZWNlaXZlcihNZXNzYWdlczo6V2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2Vp
dmVyTmFtZSgpLCBtX3BhZ2UtPnBhZ2VJRCgpLCB0aGlzKTsKIH0KIAogV2ViRnVsbFNjcmVlbk1h
bmFnZXJQcm94eTo6fldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkoKQpAQCAtNTQsMTYgKzU1LDYg
QEAgdm9pZCBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5OjpzZXRXZWJWaQogICAgIG1fd2ViVmll
dyA9IHdlYlZpZXc7CiB9CiAKLXZvaWQgV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eTo6ZGlkUmVj
ZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiogY29ubmVjdGlvbiwgQ29yZUlQQzo6TWVz
c2FnZURlY29kZXImIGRlY29kZXIpCi17Ci0gICAgZGlkUmVjZWl2ZVdlYkZ1bGxTY3JlZW5NYW5h
Z2VyUHJveHlNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIpOwotfQotCi12b2lkIFdlYkZ1bGxT
Y3JlZW5NYW5hZ2VyUHJveHk6OmRpZFJlY2VpdmVTeW5jTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0
aW9uKiBjb25uZWN0aW9uLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYgZGVjb2RlciwgT3duUHRy
PENvcmVJUEM6Ok1lc3NhZ2VFbmNvZGVyPiYgcmVwbHlFbmNvZGVyKQotewotICAgIGRpZFJlY2Vp
dmVTeW5jV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rl
ciwgcmVwbHlFbmNvZGVyKTsKLX0KLQogdm9pZCBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5Ojp3
aWxsRW50ZXJGdWxsU2NyZWVuKCkKIHsKICAgICBtX3BhZ2UtPnByb2Nlc3MoKS0+c2VuZChNZXNz
YWdlczo6V2ViRnVsbFNjcmVlbk1hbmFnZXI6OldpbGxFbnRlckZ1bGxTY3JlZW4oKSwgbV9wYWdl
LT5wYWdlSUQoKSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRnVsbFNjcmVl
bk1hbmFnZXJQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5LmgJKHJldmlzaW9uIDE0MTcwNykKKysrIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI4LDE1ICsyOCwxMSBAQAogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQogCi0j
aW5jbHVkZSAiQ29ubmVjdGlvbi5oIgorI2luY2x1ZGUgIk1lc3NhZ2VSZWNlaXZlci5oIgogI2lu
Y2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+CisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KICNp
bmNsdWRlIDx3dGYvUmVmUHRyLmg+CiAKLW5hbWVzcGFjZSBDb3JlSVBDIHsKLWNsYXNzIEFyZ3Vt
ZW50RGVjb2RlcjsKLWNsYXNzIENvbm5lY3Rpb247Ci19Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IGNsYXNzIEludFJlY3Q7CiB9CkBAIC02NCw3ICs2MCw3IEBAIHR5cGVkZWYgRXZhc19PYmplY3Qg
UGxhdGZvcm1XZWJWaWV3OwogY2xhc3MgV2ViUGFnZVByb3h5OwogY2xhc3MgTGF5ZXJUcmVlQ29u
dGV4dDsKIAotY2xhc3MgV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eSA6IHB1YmxpYyBSZWZDb3Vu
dGVkPFdlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHk+IHsKK2NsYXNzIFdlYkZ1bGxTY3JlZW5NYW5h
Z2VyUHJveHkgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5Piwg
cHVibGljIENvcmVJUEM6Ok1lc3NhZ2VSZWNlaXZlciB7CiBwdWJsaWM6CiAgICAgc3RhdGljIFBh
c3NSZWZQdHI8V2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eT4gY3JlYXRlKFdlYlBhZ2VQcm94eSop
OwogICAgIHZpcnR1YWwgfldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHkoKTsKQEAgLTc1LDkgKzcx
LDYgQEAgcHVibGljOgogICAgIGJvb2wgaXNGdWxsU2NyZWVuKCk7CiAgICAgdm9pZCBjbG9zZSgp
OwogCi0gICAgdm9pZCBkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29y
ZUlQQzo6TWVzc2FnZURlY29kZXImKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShD
b3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImLCBPd25QdHI8Q29y
ZUlQQzo6TWVzc2FnZUVuY29kZXI+Jik7Ci0KICAgICB2b2lkIHdpbGxFbnRlckZ1bGxTY3JlZW4o
KTsKICAgICB2b2lkIGRpZEVudGVyRnVsbFNjcmVlbigpOwogICAgIHZvaWQgd2lsbEV4aXRGdWxs
U2NyZWVuKCk7CkBAIC05NCwxMSArODcsMTEgQEAgcHJpdmF0ZToKICAgICB2b2lkIGJlZ2FuRW50
ZXJGdWxsU2NyZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGluaXRpYWxGcmFtZSwgY29uc3Qg
V2ViQ29yZTo6SW50UmVjdCYgZmluYWxGcmFtZSk7CiAgICAgdm9pZCBiZWdhbkV4aXRGdWxsU2Ny
ZWVuKGNvbnN0IFdlYkNvcmU6OkludFJlY3QmIGluaXRpYWxGcmFtZSwgY29uc3QgV2ViQ29yZTo6
SW50UmVjdCYgZmluYWxGcmFtZSk7CiAKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZU1lc3Nh
Z2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJikgT1ZFUlJJ
REU7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVTeW5jTWVzc2FnZShDb3JlSVBDOjpDb25u
ZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImLCBPd25QdHI8Q29yZUlQQzo6TWVzc2Fn
ZUVuY29kZXI+JikgT1ZFUlJJREU7CisKICAgICBXZWJQYWdlUHJveHkqIG1fcGFnZTsKICAgICBQ
bGF0Zm9ybVdlYlZpZXcqIG1fd2ViVmlldzsKLQotICAgIHZvaWQgZGlkUmVjZWl2ZVdlYkZ1bGxT
Y3JlZW5NYW5hZ2VyUHJveHlNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpN
ZXNzYWdlRGVjb2RlciYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZVN5bmNXZWJGdWxsU2NyZWVuTWFu
YWdlclByb3h5TWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURl
Y29kZXImLCBPd25QdHI8Q29yZUlQQzo6TWVzc2FnZUVuY29kZXI+Jik7CiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJGdWxsU2Ny
ZWVuTWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluCShyZXZpc2lv
biAxNDE3MDcpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRnVsbFNjcmVlbk1hbmFn
ZXJQcm94eS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjEsNyArMjEsNyBAQAogIyBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotbWVzc2FnZXMgLT4gV2Vi
RnVsbFNjcmVlbk1hbmFnZXJQcm94eSBMZWdhY3lSZWNlaXZlciB7CittZXNzYWdlcyAtPiBXZWJG
dWxsU2NyZWVuTWFuYWdlclByb3h5IHsKICAgICBTdXBwb3J0c0Z1bGxTY3JlZW4oYm9vbCB3aXRo
S2V5Ym9hcmQpIC0+IChib29sIHN1cHBvcnRzRnVsbFNjcmVlbikKICAgICBFbnRlckZ1bGxTY3Jl
ZW4oKQogICAgIEV4aXRGdWxsU2NyZWVuKCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJJbnNwZWN0b3JQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcAkocmV2aXNpb24gMTQxNzA3KQorKysgU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYkluc3BlY3RvclByb3h5LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUgIldlYkZyYW1lUG9saWN5TGlzdGVuZXJQcm94eS5o
IgogI2luY2x1ZGUgIldlYkZyYW1lUHJveHkuaCIKICNpbmNsdWRlICJXZWJJbnNwZWN0b3JNZXNz
YWdlcy5oIgorI2luY2x1ZGUgIldlYkluc3BlY3RvclByb3h5TWVzc2FnZXMuaCIKICNpbmNsdWRl
ICJXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmgiCiAjaW5jbHVkZSAiV2ViUGFnZUdyb3VwLmgi
CiAjaW5jbHVkZSAiV2ViUGFnZVByb3h5LmgiCkBAIC05Miw2ICs5Myw3IEBAIFdlYkluc3BlY3Rv
clByb3h5OjpXZWJJbnNwZWN0b3JQcm94eShXZWIKICAgICAsIG1fcmVtb3RlSW5zcGVjdGlvblBh
Z2VJZCgwKQogI2VuZGlmCiB7CisgICAgbV9wYWdlLT5wcm9jZXNzKCktPmFkZE1lc3NhZ2VSZWNl
aXZlcihNZXNzYWdlczo6V2ViSW5zcGVjdG9yUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwg
bV9wYWdlLT5wYWdlSUQoKSwgdGhpcyk7CiB9CiAKIFdlYkluc3BlY3RvclByb3h5Ojp+V2ViSW5z
cGVjdG9yUHJveHkoKQpAQCAtMTA1LDYgKzEwNyw4IEBAIHZvaWQgV2ViSW5zcGVjdG9yUHJveHk6
OmludmFsaWRhdGUoKQogICAgICAgICBXZWJJbnNwZWN0b3JTZXJ2ZXI6OnNoYXJlZCgpLnVucmVn
aXN0ZXJQYWdlKG1fcmVtb3RlSW5zcGVjdGlvblBhZ2VJZCk7CiAjZW5kaWYKIAorICAgIG1fcGFn
ZS0+cHJvY2VzcygpLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYkluc3BlY3Rv
clByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZS0+cGFnZUlEKCkpOworCiAgICAg
bV9wYWdlLT5jbG9zZSgpOwogICAgIGRpZENsb3NlKCk7CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5oCShyZXZpc2lvbiAxNDE3MDcpCisrKyBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkuaAkod29ya2luZyBjb3B5
KQpAQCAtMzAsNyArMzAsNyBAQAogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAKICNpbmNsdWRlICJB
UElPYmplY3QuaCIKLSNpbmNsdWRlICJDb25uZWN0aW9uLmgiCisjaW5jbHVkZSAiTWVzc2FnZVJl
Y2VpdmVyLmgiCiAjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KICNpbmNsdWRlIDx3dGYvUGFzc1Jl
ZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KQEAgLTYyLDcgKzYyLDcgQEAgY2xhc3Mg
V2ViUGFnZUdyb3VwOwogY2xhc3MgV2ViUGFnZVByb3h5Owogc3RydWN0IFdlYlBhZ2VDcmVhdGlv
blBhcmFtZXRlcnM7CiAKLWNsYXNzIFdlYkluc3BlY3RvclByb3h5IDogcHVibGljIEFQSU9iamVj
dCB7CitjbGFzcyBXZWJJbnNwZWN0b3JQcm94eSA6IHB1YmxpYyBBUElPYmplY3QsIHB1YmxpYyBD
b3JlSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewogcHVibGljOgogICAgIHN0YXRpYyBjb25zdCBUeXBl
IEFQSVR5cGUgPSBUeXBlSW5zcGVjdG9yOwogCkBAIC0xMTYsMTIgKzExNiw2IEBAIHB1YmxpYzoK
ICAgICBib29sIGlzUHJvZmlsaW5nUGFnZSgpIGNvbnN0IHsgcmV0dXJuIG1faXNQcm9maWxpbmdQ
YWdlOyB9CiAgICAgdm9pZCB0b2dnbGVQYWdlUHJvZmlsaW5nKCk7CiAKLSNpZiBFTkFCTEUoSU5T
UEVDVE9SKQotICAgIC8vIEltcGxlbWVudGVkIGluIGdlbmVyYXRlZCBXZWJJbnNwZWN0b3JQcm94
eU1lc3NhZ2VSZWNlaXZlci5jcHAKLSAgICB2b2lkIGRpZFJlY2VpdmVXZWJJbnNwZWN0b3JQcm94
eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJik7
Ci0gICAgdm9pZCBkaWRSZWNlaXZlU3luY1dlYkluc3BlY3RvclByb3h5TWVzc2FnZShDb3JlSVBD
OjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImLCBPd25QdHI8Q29yZUlQQzo6
TWVzc2FnZUVuY29kZXI+Jik7Ci0jZW5kaWYKLQogICAgIHN0YXRpYyBib29sIGlzSW5zcGVjdG9y
UGFnZShXZWJQYWdlUHJveHkqKTsKIAogICAgIC8vIEltcGxlbWVudGVkIHRoZSBwbGF0Zm9ybSBX
ZWJJbnNwZWN0b3JQcm94eSBmaWxlCkBAIC0xNDEsNiArMTM1LDEwIEBAIHByaXZhdGU6CiAKICAg
ICB2aXJ0dWFsIFR5cGUgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIEFQSVR5cGU7IH0KIAorICAgIC8v
IENvcmVJUEM6Ok1lc3NhZ2VSZWNlaXZlcgorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlTWVz
c2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImKSBPVkVS
UklERTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKENvcmVJUEM6OkNv
bm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYsIE93blB0cjxDb3JlSVBDOjpNZXNz
YWdlRW5jb2Rlcj4mKSBPVkVSUklERTsKKwogICAgIFdlYlBhZ2VQcm94eSogcGxhdGZvcm1DcmVh
dGVJbnNwZWN0b3JQYWdlKCk7CiAgICAgdm9pZCBwbGF0Zm9ybU9wZW4oKTsKICAgICB2b2lkIHBs
YXRmb3JtRGlkQ2xvc2UoKTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnNw
ZWN0b3JQcm94eS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViSW5zcGVjdG9yUHJveHkubWVzc2FnZXMuaW4JKHJldmlzaW9uIDE0MTcwNykKKysr
IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJJbnNwZWN0b3JQcm94eS5tZXNzYWdlcy5pbgko
d29ya2luZyBjb3B5KQpAQCAtMjIsNyArMjIsNyBAQAogCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikK
IAotbWVzc2FnZXMgLT4gV2ViSW5zcGVjdG9yUHJveHkgTGVnYWN5UmVjZWl2ZXIgeworbWVzc2Fn
ZXMgLT4gV2ViSW5zcGVjdG9yUHJveHkgewogICAgIENyZWF0ZUluc3BlY3RvclBhZ2UoKSAtPiAo
dWludDY0X3QgaW5zcGVjdG9yUGFnZUlELCBXZWJLaXQ6OldlYlBhZ2VDcmVhdGlvblBhcmFtZXRl
cnMgaW5zcGVjdG9yUGFnZVBhcmFtZXRlcnMpCiAgICAgRGlkTG9hZEluc3BlY3RvclBhZ2UoKQog
ICAgIERpZENsb3NlKCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkuY3BwCShyZXZpc2lvbiAxNDE3MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzIsNiArNzIsNyBAQAogI2luY2x1ZGUg
IldlYlBhZ2VHcm91cC5oIgogI2luY2x1ZGUgIldlYlBhZ2VHcm91cERhdGEuaCIKICNpbmNsdWRl
ICJXZWJQYWdlTWVzc2FnZXMuaCIKKyNpbmNsdWRlICJXZWJQYWdlUHJveHlNZXNzYWdlcy5oIgog
I2luY2x1ZGUgIldlYlBvcHVwSXRlbS5oIgogI2luY2x1ZGUgIldlYlBvcHVwTWVudVByb3h5Lmgi
CiAjaW5jbHVkZSAiV2ViUHJlZmVyZW5jZXMuaCIKQEAgLTI1MCw5ICsyNTEsMTcgQEAgV2ViUGFn
ZVByb3h5OjpXZWJQYWdlUHJveHkoUGFnZUNsaWVudCogcAogCiAgICAgbV9wYWdlR3JvdXAtPmFk
ZFBhZ2UodGhpcyk7CiAKKyNpZiBFTkFCTEUoSU5TUEVDVE9SKQorICAgIG1faW5zcGVjdG9yID0g
V2ViSW5zcGVjdG9yUHJveHk6OmNyZWF0ZSh0aGlzKTsKKyNlbmRpZgorI2lmIEVOQUJMRShGVUxM
U0NSRUVOX0FQSSkKKyAgICBtX2Z1bGxTY3JlZW5NYW5hZ2VyID0gV2ViRnVsbFNjcmVlbk1hbmFn
ZXJQcm94eTo6Y3JlYXRlKHRoaXMpOworI2VuZGlmCiAjaWYgRU5BQkxFKFZJQlJBVElPTikKICAg
ICBtX3ZpYnJhdGlvbiA9IFdlYlZpYnJhdGlvblByb3h5OjpjcmVhdGUodGhpcyk7CiAjZW5kaWYK
KworICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJv
eHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQsIHRoaXMpOwogfQogCiBXZWJQYWdl
UHJveHk6On5XZWJQYWdlUHJveHkoKQpAQCAtMzg1LDExICszOTQsMTkgQEAgdm9pZCBXZWJQYWdl
UHJveHk6OnJlYXR0YWNoVG9XZWJQcm9jZXNzKAogICAgIGVsc2UKICAgICAgICAgbV9wcm9jZXNz
ID0gbV9wcm9jZXNzLT5jb250ZXh0KCktPmNyZWF0ZU5ld1dlYlByb2Nlc3NSZXNwZWN0aW5nUHJv
Y2Vzc0NvdW50TGltaXQoKTsKICAgICBtX3Byb2Nlc3MtPmFkZEV4aXN0aW5nV2ViUGFnZSh0aGlz
LCBtX3BhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5hZGRNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6
OldlYlBhZ2VQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCwgdGhpcyk7CiAK
ICAgICBpbml0aWFsaXplV2ViUGFnZSgpOwogCiAgICAgbV9wYWdlQ2xpZW50LT5kaWRSZWxhdW5j
aFByb2Nlc3MoKTsKICAgICBtX2RyYXdpbmdBcmVhLT53YWl0Rm9yQmFja2luZ1N0b3JlVXBkYXRl
T25OZXh0UGFpbnQoKTsKKworI2lmIEVOQUJMRShJTlNQRUNUT1IpCisgICAgbV9pbnNwZWN0b3Ig
PSBXZWJJbnNwZWN0b3JQcm94eTo6Y3JlYXRlKHRoaXMpOworI2VuZGlmCisjaWYgRU5BQkxFKEZV
TExTQ1JFRU5fQVBJKQorICAgIG1fZnVsbFNjcmVlbk1hbmFnZXIgPSBXZWJGdWxsU2NyZWVuTWFu
YWdlclByb3h5OjpjcmVhdGUodGhpcyk7CisjZW5kaWYKIH0KIAogdm9pZCBXZWJQYWdlUHJveHk6
OnJlYXR0YWNoVG9XZWJQcm9jZXNzV2l0aEl0ZW0oV2ViQmFja0ZvcndhcmRMaXN0SXRlbSogaXRl
bSkKQEAgLTUyNiw2ICs1NDMsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6Y2xvc2UoKQogCiAgICAg
bV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpDbG9zZSgpLCBtX3BhZ2VJRCk7CiAg
ICAgbV9wcm9jZXNzLT5yZW1vdmVXZWJQYWdlKG1fcGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnJl
bW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2
ZXJOYW1lKCksIG1fcGFnZUlEKTsKIH0KIAogYm9vbCBXZWJQYWdlUHJveHk6OnRyeUNsb3NlKCkK
QEAgLTE5MzMsNTkgKzE5NTEsNiBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cHJlZmVyZW5jZXNEaWRD
aGFuZ2UoCiAgICAgbV9wcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpQcmVmZXJlbmNl
c0RpZENoYW5nZShwYWdlR3JvdXAoKS0+cHJlZmVyZW5jZXMoKS0+c3RvcmUoKSksIG1fcGFnZUlE
LCBtX2lzUGVyZm9ybWluZ0RPTVByaW50T3BlcmF0aW9uID8gQ29yZUlQQzo6RGlzcGF0Y2hNZXNz
YWdlRXZlbldoZW5XYWl0aW5nRm9yU3luY1JlcGx5IDogMCk7CiB9CiAKLXZvaWQgV2ViUGFnZVBy
b3h5OjpkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBD
b3JlSVBDOjpNZXNzYWdlRGVjb2RlciYgZGVjb2RlcikKLXsKLSAgICBpZiAoZGVjb2Rlci5tZXNz
YWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OkRyYXdpbmdBcmVhUHJveHk6Om1lc3NhZ2VS
ZWNlaXZlck5hbWUoKSkgewotICAgICAgICBtX2RyYXdpbmdBcmVhLT5kaWRSZWNlaXZlRHJhd2lu
Z0FyZWFQcm94eU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7Ci0gICAgICAgIHJldHVybjsK
LSAgICB9Ci0KLSNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1MpCi0gICAgaWYgKGRlY29kZXIu
bWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpDb29yZGluYXRlZExheWVyVHJlZUhv
c3RQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7Ci0gICAgICAgIG1fZHJhd2luZ0FyZWEt
PmRpZFJlY2VpdmVDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eU1lc3NhZ2UoY29ubmVjdGlv
biwgZGVjb2Rlcik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0jZW5kaWYKLQotI2lmIEVOQUJM
RShJTlNQRUNUT1IpCi0gICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1l
c3NhZ2VzOjpXZWJJbnNwZWN0b3JQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7Ci0gICAg
ICAgIGlmIChXZWJJbnNwZWN0b3JQcm94eSogaW5zcGVjdG9yID0gdGhpcy0+aW5zcGVjdG9yKCkp
Ci0gICAgICAgICAgICBpbnNwZWN0b3ItPmRpZFJlY2VpdmVXZWJJbnNwZWN0b3JQcm94eU1lc3Nh
Z2UoY29ubmVjdGlvbiwgZGVjb2Rlcik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0jZW5kaWYK
LQotI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKLSAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYkZ1bGxTY3JlZW5NYW5hZ2VyUHJveHk6Om1lc3Nh
Z2VSZWNlaXZlck5hbWUoKSkgewotICAgICAgICBmdWxsU2NyZWVuTWFuYWdlcigpLT5kaWRSZWNl
aXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0K
LSNlbmRpZgotCi0gICAgZGlkUmVjZWl2ZVdlYlBhZ2VQcm94eU1lc3NhZ2UoY29ubmVjdGlvbiwg
ZGVjb2Rlcik7Ci19Ci0KLXZvaWQgV2ViUGFnZVByb3h5OjpkaWRSZWNlaXZlU3luY01lc3NhZ2Uo
Q29yZUlQQzo6Q29ubmVjdGlvbiogY29ubmVjdGlvbiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXIm
IGRlY29kZXIsIE93blB0cjxDb3JlSVBDOjpNZXNzYWdlRW5jb2Rlcj4mIHJlcGx5RW5jb2RlcikK
LXsKLSNpZiBFTkFCTEUoSU5TUEVDVE9SKQotICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSA9PSBNZXNzYWdlczo6V2ViSW5zcGVjdG9yUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5h
bWUoKSkgewotICAgICAgICBpZiAoV2ViSW5zcGVjdG9yUHJveHkqIGluc3BlY3RvciA9IHRoaXMt
Pmluc3BlY3RvcigpKQotICAgICAgICAgICAgaW5zcGVjdG9yLT5kaWRSZWNlaXZlU3luY1dlYklu
c3BlY3RvclByb3h5TWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyLCByZXBseUVuY29kZXIpOwot
ICAgICAgICByZXR1cm47Ci0gICAgfQotI2VuZGlmCi0KLSNpZiBFTkFCTEUoRlVMTFNDUkVFTl9B
UEkpCi0gICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2VzOjpX
ZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCkpIHsKLSAgICAg
ICAgZnVsbFNjcmVlbk1hbmFnZXIoKS0+ZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKGNvbm5lY3Rpb24s
IGRlY29kZXIsIHJlcGx5RW5jb2Rlcik7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0jZW5kaWYK
LQotICAgIC8vIEZJWE1FOiBEbyBzb21ldGhpbmcgd2l0aCByZXBseS4KLSAgICBkaWRSZWNlaXZl
U3luY1dlYlBhZ2VQcm94eU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVjb2RlciwgcmVwbHlFbmNvZGVy
KTsKLX0KLQogdm9pZCBXZWJQYWdlUHJveHk6OmRpZENyZWF0ZU1haW5GcmFtZSh1aW50NjRfdCBm
cmFtZUlEKQogewogICAgIE1FU1NBR0VfQ0hFQ0soIW1fbWFpbkZyYW1lKTsKQEAgLTI4NDYsOCAr
MjgxMSw2IEBAIFdlYkluc3BlY3RvclByb3h5KiBXZWJQYWdlUHJveHk6Omluc3BlY3QKIHsKICAg
ICBpZiAoaXNDbG9zZWQoKSB8fCAhaXNWYWxpZCgpKQogICAgICAgICByZXR1cm4gMDsKLSAgICBp
ZiAoIW1faW5zcGVjdG9yKQotICAgICAgICBtX2luc3BlY3RvciA9IFdlYkluc3BlY3RvclByb3h5
OjpjcmVhdGUodGhpcyk7CiAgICAgcmV0dXJuIG1faW5zcGVjdG9yLmdldCgpOwogfQogCkBAIC0y
ODU2LDggKzI4MTksNiBAQCBXZWJJbnNwZWN0b3JQcm94eSogV2ViUGFnZVByb3h5OjppbnNwZWN0
CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQogV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eSog
V2ViUGFnZVByb3h5OjpmdWxsU2NyZWVuTWFuYWdlcigpCiB7Ci0gICAgaWYgKCFtX2Z1bGxTY3Jl
ZW5NYW5hZ2VyKQotICAgICAgICBtX2Z1bGxTY3JlZW5NYW5hZ2VyID0gV2ViRnVsbFNjcmVlbk1h
bmFnZXJQcm94eTo6Y3JlYXRlKHRoaXMpOwogICAgIHJldHVybiBtX2Z1bGxTY3JlZW5NYW5hZ2Vy
LmdldCgpOwogfQogI2VuZGlmCkBAIC0zNjEyLDE3ICszNTczLDEzIEBAIHZvaWQgV2ViUGFnZVBy
b3h5Ojpwcm9jZXNzRGlkQ3Jhc2goKQogICAgIG1fZHJhd2luZ0FyZWEgPSBudWxscHRyOwogCiAj
aWYgRU5BQkxFKElOU1BFQ1RPUikKLSAgICBpZiAobV9pbnNwZWN0b3IpIHsKLSAgICAgICAgbV9p
bnNwZWN0b3ItPmludmFsaWRhdGUoKTsKLSAgICAgICAgbV9pbnNwZWN0b3IgPSBudWxscHRyOwot
ICAgIH0KKyAgICBtX2luc3BlY3Rvci0+aW52YWxpZGF0ZSgpOworICAgIG1faW5zcGVjdG9yID0g
bnVsbHB0cjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotICAgIGlmICht
X2Z1bGxTY3JlZW5NYW5hZ2VyKSB7Ci0gICAgICAgIG1fZnVsbFNjcmVlbk1hbmFnZXItPmludmFs
aWRhdGUoKTsKLSAgICAgICAgbV9mdWxsU2NyZWVuTWFuYWdlciA9IG51bGxwdHI7Ci0gICAgfQor
ICAgIG1fZnVsbFNjcmVlbk1hbmFnZXItPmludmFsaWRhdGUoKTsKKyAgICBtX2Z1bGxTY3JlZW5N
YW5hZ2VyID0gbnVsbHB0cjsKICNlbmRpZgogCiAjaWYgRU5BQkxFKFZJQlJBVElPTikKQEAgLTM3
MTksNiArMzY3Niw4IEBAIHZvaWQgV2ViUGFnZVByb3h5Ojpwcm9jZXNzRGlkQ3Jhc2goKQogICAg
IGRpc21pc3NDb3JyZWN0aW9uUGFuZWwoUmVhc29uRm9yRGlzbWlzc2luZ0FsdGVybmF0aXZlVGV4
dElnbm9yZWQpOwogICAgIG1fcGFnZUNsaWVudC0+ZGlzbWlzc0RpY3Rpb25hcnlMb29rdXBQYW5l
bCgpOwogI2VuZGlmCisKKyAgICBtX3Byb2Nlc3MtPnJlbW92ZU1lc3NhZ2VSZWNlaXZlcihNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlEKTsKIH0K
IAogV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyBXZWJQYWdlUHJveHk6OmNyZWF0aW9uUGFyYW1l
dGVycygpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5o
CShyZXZpc2lvbiAxNDE3MDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTMyLDEyICszMiw2IEBACiAjaW5jbHVkZSAiRHJhd2lu
Z0FyZWFQcm94eS5oIgogI2luY2x1ZGUgIkVkaXRvclN0YXRlLmgiCiAjaW5jbHVkZSAiR2VvbG9j
YXRpb25QZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5oIgotI2lmIEVOQUJMRShUT1VDSF9F
VkVOVFMpCi0jaW5jbHVkZSAiTmF0aXZlV2ViVG91Y2hFdmVudC5oIgotI2VuZGlmCi0jaWYgUExB
VEZPUk0oUVQpCi0jaW5jbHVkZSAiUXROZXR3b3JrUmVxdWVzdERhdGEuaCIKLSNlbmRpZgogI2lu
Y2x1ZGUgIkxheWVyVHJlZUNvbnRleHQuaCIKICNpbmNsdWRlICJOb3RpZmljYXRpb25QZXJtaXNz
aW9uUmVxdWVzdE1hbmFnZXJQcm94eS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtUHJvY2Vzc0lkZW50
aWZpZXIuaCIKQEAgLTgxLDEwICs3NSwxOCBAQAogI2luY2x1ZGUgPFdlYkNvcmUvRHJhZ1Nlc3Np
b24uaD4KICNlbmRpZgogCisjaWYgRU5BQkxFKFRPVUNIX0VWRU5UUykKKyNpbmNsdWRlICJOYXRp
dmVXZWJUb3VjaEV2ZW50LmgiCisjZW5kaWYKKwogI2lmIFBMQVRGT1JNKEVGTCkKICNpbmNsdWRl
IDxFdmFzLmg+CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKFFUKQorI2luY2x1ZGUgIlF0TmV0d29y
a1JlcXVlc3REYXRhLmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIENvcmVJUEMgewogICAgIGNsYXNz
IEFyZ3VtZW50RGVjb2RlcjsKICAgICBjbGFzcyBDb25uZWN0aW9uOwpAQCAtMjMwLDcgKzIzMiw4
IEBAIGNsYXNzIFdlYlBhZ2VQcm94eQogI2lmIEVOQUJMRShJTlBVVF9UWVBFX0NPTE9SKQogICAg
ICwgcHVibGljIFdlYkNvbG9yQ2hvb3NlclByb3h5OjpDbGllbnQKICNlbmRpZgotICAgICwgcHVi
bGljIFdlYlBvcHVwTWVudVByb3h5OjpDbGllbnQgeworICAgICwgcHVibGljIFdlYlBvcHVwTWVu
dVByb3h5OjpDbGllbnQKKyAgICAsIHB1YmxpYyBDb3JlSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewog
cHVibGljOgogICAgIHN0YXRpYyBjb25zdCBUeXBlIEFQSVR5cGUgPSBUeXBlUGFnZTsKIApAQCAt
NTgzLDkgKzU4Niw2IEBAIHB1YmxpYzoKICNlbmRpZgogI2VuZGlmCiAKLSAgICB2b2lkIGRpZFJl
Y2VpdmVNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2Rl
ciYpOwotICAgIHZvaWQgZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24q
LCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYsIE93blB0cjxDb3JlSVBDOjpNZXNzYWdlRW5jb2Rl
cj4mKTsKLQogICAgIHZvaWQgcHJvY2Vzc0RpZEJlY29tZVVucmVzcG9uc2l2ZSgpOwogICAgIHZv
aWQgaW50ZXJhY3Rpb25PY2N1cnJlZFdoaWxlUHJvY2Vzc1VucmVzcG9uc2l2ZSgpOwogICAgIHZv
aWQgcHJvY2Vzc0RpZEJlY29tZVJlc3BvbnNpdmUoKTsKQEAgLTc0OSw2ICs3NDksMTAgQEAgcHJp
dmF0ZToKIAogICAgIHZpcnR1YWwgVHlwZSB0eXBlKCkgY29uc3QgeyByZXR1cm4gQVBJVHlwZTsg
fQogCisgICAgLy8gQ29yZUlQQzo6TWVzc2FnZVJlY2VpdmVyCisgICAgdmlydHVhbCB2b2lkIGRp
ZFJlY2VpdmVNZXNzYWdlKENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlRGVj
b2RlciYpIE9WRVJSSURFOworICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlU3luY01lc3NhZ2Uo
Q29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VEZWNvZGVyJiwgT3duUHRyPENv
cmVJUEM6Ok1lc3NhZ2VFbmNvZGVyPiYpIE9WRVJSSURFOworCiAgICAgLy8gV2ViUG9wdXBNZW51
UHJveHk6OkNsaWVudAogICAgIHZpcnR1YWwgdm9pZCB2YWx1ZUNoYW5nZWRGb3JQb3B1cE1lbnUo
V2ViUG9wdXBNZW51UHJveHkqLCBpbnQzMl90IG5ld1NlbGVjdGVkSW5kZXgpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRUZXh0RnJvbUl0ZW1Gb3JQb3B1cE1lbnUoV2ViUG9wdXBNZW51UHJveHkqLCBp
bnQzMl90IGluZGV4KTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJv
eHkubWVzc2FnZXMuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMTQxNzA4KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAt
MjAsNyArMjAsNyBAQAogIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJF
LCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi1t
ZXNzYWdlcyAtPiBXZWJQYWdlUHJveHkgTGVnYWN5UmVjZWl2ZXIgeworbWVzc2FnZXMgLT4gV2Vi
UGFnZVByb3h5IHsKICAgICAjIFVJIG1lc3NhZ2VzCiAgICAgQ3JlYXRlTmV3UGFnZShXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCwgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMgd2luZG93
RmVhdHVyZXMsIHVpbnQzMl90IG1vZGlmaWVycywgaW50MzJfdCBtb3VzZUJ1dHRvbikgLT4gKHVp
bnQ2NF90IG5ld1BhZ2VJRCwgV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIG5ld1Bh
Z2VQYXJhbWV0ZXJzKQogICAgIFNob3dQYWdlKCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAxNDE3MDcpCisrKyBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NDA1LDExICs0MDUsNiBAQCB2b2lkIFdlYlByb2Nlc3NQcm94eTo6ZGlkUmVjZWl2ZU1lc3NhZ2Uo
CiAgICAgaWYgKG1fY29udGV4dC0+ZGlzcGF0Y2hNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29kZXIp
KQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1l
KCkgPT0gTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7
Ci0gICAgICAgIGRpZFJlY2VpdmVXZWJQcm9jZXNzUHJveHlNZXNzYWdlKGNvbm5lY3Rpb24sIGRl
Y29kZXIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCiAjaWYgRU5BQkxFKENVU1RPTV9QUk9U
T0NPTFMpCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3NhZ2Vz
OjpDdXN0b21Qcm90b2NvbE1hbmFnZXJQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CiAj
aWYgRU5BQkxFKE5FVFdPUktfUFJPQ0VTUykKQEAgLTQyMCwxNSArNDE1LDggQEAgdm9pZCBXZWJQ
cm9jZXNzUHJveHk6OmRpZFJlY2VpdmVNZXNzYWdlKAogICAgIH0KICNlbmRpZgogCi0gICAgdWlu
dDY0X3QgcGFnZUlEID0gZGVjb2Rlci5kZXN0aW5hdGlvbklEKCk7Ci0gICAgaWYgKCFwYWdlSUQp
Ci0gICAgICAgIHJldHVybjsKLQotICAgIFdlYlBhZ2VQcm94eSogcGFnZVByb3h5ID0gd2ViUGFn
ZShwYWdlSUQpOwotICAgIGlmICghcGFnZVByb3h5KQotICAgICAgICByZXR1cm47Ci0gICAgCi0g
ICAgcGFnZVByb3h5LT5kaWRSZWNlaXZlTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKKyAg
ICBBU1NFUlQoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVzc2FnZXM6OldlYlBy
b2Nlc3NQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKTsKKyAgICBkaWRSZWNlaXZlV2ViUHJv
Y2Vzc1Byb3h5TWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyKTsKIH0KIAogdm9pZCBXZWJQcm9j
ZXNzUHJveHk6OmRpZFJlY2VpdmVTeW5jTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiBjb25u
ZWN0aW9uLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYgZGVjb2RlciwgT3duUHRyPENvcmVJUEM6
Ok1lc3NhZ2VFbmNvZGVyPiYgcmVwbHlFbmNvZGVyKQpAQCAtNDM5LDIwICs0MjcsOCBAQCB2b2lk
IFdlYlByb2Nlc3NQcm94eTo6ZGlkUmVjZWl2ZVN5bmNNZXNzCiAgICAgaWYgKG1fY29udGV4dC0+
ZGlzcGF0Y2hTeW5jTWVzc2FnZShjb25uZWN0aW9uLCBkZWNvZGVyLCByZXBseUVuY29kZXIpKQog
ICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkg
PT0gTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7Ci0g
ICAgICAgIGRpZFJlY2VpdmVTeW5jV2ViUHJvY2Vzc1Byb3h5TWVzc2FnZShjb25uZWN0aW9uLCBk
ZWNvZGVyLCByZXBseUVuY29kZXIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgdWlu
dDY0X3QgcGFnZUlEID0gZGVjb2Rlci5kZXN0aW5hdGlvbklEKCk7Ci0gICAgaWYgKCFwYWdlSUQp
Ci0gICAgICAgIHJldHVybjsKLSAgICAKLSAgICBXZWJQYWdlUHJveHkqIHBhZ2VQcm94eSA9IHdl
YlBhZ2UocGFnZUlEKTsKLSAgICBpZiAoIXBhZ2VQcm94eSkKLSAgICAgICAgcmV0dXJuOwotICAg
IAotICAgIHBhZ2VQcm94eS0+ZGlkUmVjZWl2ZVN5bmNNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29k
ZXIsIHJlcGx5RW5jb2Rlcik7CisgICAgQVNTRVJUKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFt
ZSgpID09IE1lc3NhZ2VzOjpXZWJQcm9jZXNzUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSk7
CisgICAgZGlkUmVjZWl2ZVN5bmNXZWJQcm9jZXNzUHJveHlNZXNzYWdlKGNvbm5lY3Rpb24sIGRl
Y29kZXIsIHJlcGx5RW5jb2Rlcik7CiB9CiAKIHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpkaWRSZWNl
aXZlTWVzc2FnZU9uQ29ubmVjdGlvbldvcmtRdWV1ZShDb3JlSVBDOjpDb25uZWN0aW9uKiBjb25u
ZWN0aW9uLCBDb3JlSVBDOjpNZXNzYWdlRGVjb2RlciYgZGVjb2RlciwgYm9vbCYgZGlkSGFuZGxl
TWVzc2FnZSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Db29yZGluYXRlZEdyYXBo
aWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVy
VHJlZUhvc3RQcm94eS5jcHAJKHJldmlzaW9uIDE0MTcwNykKKysrIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjMsNiArMjMsNyBAQAogI2luY2x1ZGUgIkNvb3JkaW5h
dGVkTGF5ZXJUcmVlSG9zdFByb3h5LmgiCiAKICNpbmNsdWRlICJDb29yZGluYXRlZExheWVyVHJl
ZUhvc3RNZXNzYWdlcy5oIgorI2luY2x1ZGUgIkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5
TWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKICNpbmNsdWRl
ICJXZWJQYWdlUHJveHkuaCIKICNpbmNsdWRlICJXZWJQcm9jZXNzUHJveHkuaCIKQEAgLTQyLDEw
ICs0MywxMiBAQCBDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eTo6Q29vcmRpbmF0CiAgICAg
OiBtX2RyYXdpbmdBcmVhUHJveHkoZHJhd2luZ0FyZWFQcm94eSkKICAgICAsIG1fc2NlbmUoYWRv
cHRSZWYobmV3IENvb3JkaW5hdGVkR3JhcGhpY3NTY2VuZSh0aGlzKSkpCiB7CisgICAgbV9kcmF3
aW5nQXJlYVByb3h5LT5wYWdlKCktPnByb2Nlc3MoKS0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3Nh
Z2VzOjpDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94eTo6bWVzc2FnZVJlY2VpdmVyTmFtZSgp
LCBtX2RyYXdpbmdBcmVhUHJveHktPnBhZ2UoKS0+cGFnZUlEKCksIHRoaXMpOwogfQogCiBDb29y
ZGluYXRlZExheWVyVHJlZUhvc3RQcm94eTo6fkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5
KCkKIHsKKyAgICBtX2RyYXdpbmdBcmVhUHJveHktPnBhZ2UoKS0+cHJvY2VzcygpLT5yZW1vdmVN
ZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OkNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5Ojpt
ZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fZHJhd2luZ0FyZWFQcm94eS0+cGFnZSgpLT5wYWdlSUQo
KSk7CiAgICAgbV9zY2VuZS0+ZGV0YWNoKCk7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9Db29yZGluYXRlZEdyYXBoaWNzL0Nvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3Jh
cGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVIb3N0UHJveHkuaAkocmV2aXNpb24gMTQxNzA3KQor
KysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0
ZWRMYXllclRyZWVIb3N0UHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsNyArNDcsNyBAQCBj
bGFzcyBTdXJmYWNlVXBkYXRlSW5mbzsKIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKLWNsYXNzIENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5IDogcHVibGljIFdlYkNvcmU6OkNvb3JkaW5hdGVk
R3JhcGhpY3NTY2VuZUNsaWVudCB7CitjbGFzcyBDb29yZGluYXRlZExheWVyVHJlZUhvc3RQcm94
eSA6IHB1YmxpYyBXZWJDb3JlOjpDb29yZGluYXRlZEdyYXBoaWNzU2NlbmVDbGllbnQsIHB1Ymxp
YyBDb3JlSVBDOjpNZXNzYWdlUmVjZWl2ZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKENv
b3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5KTsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRF
RDsKIHB1YmxpYzoKQEAgLTc3LDcgKzc3LDYgQEAgcHVibGljOgogICAgIHZvaWQgdXBkYXRlSW1h
Z2VCYWNraW5nKFdlYkNvcmU6OkNvb3JkaW5hdGVkSW1hZ2VCYWNraW5nSUQsIGNvbnN0IFdlYkNv
b3JkaW5hdGVkU3VyZmFjZTo6SGFuZGxlJik7CiAgICAgdm9pZCBjbGVhckltYWdlQmFja2luZ0Nv
bnRlbnRzKFdlYkNvcmU6OkNvb3JkaW5hdGVkSW1hZ2VCYWNraW5nSUQpOwogICAgIHZvaWQgcmVt
b3ZlSW1hZ2VCYWNraW5nKFdlYkNvcmU6OkNvb3JkaW5hdGVkSW1hZ2VCYWNraW5nSUQpOwotICAg
IHZvaWQgZGlkUmVjZWl2ZUNvb3JkaW5hdGVkTGF5ZXJUcmVlSG9zdFByb3h5TWVzc2FnZShDb3Jl
SVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVzc2FnZURlY29kZXImKTsKICAgICB2b2lkIGRp
ZENoYW5nZVNjcm9sbFBvc2l0aW9uKGNvbnN0IFdlYkNvcmU6OkZsb2F0UG9pbnQmIHBvc2l0aW9u
KTsKICNpZiBVU0UoR1JBUEhJQ1NfU1VSRkFDRSkKICAgICB2b2lkIGNyZWF0ZUNhbnZhcyhXZWJD
b3JlOjpDb29yZGluYXRlZExheWVySUQsIGNvbnN0IFdlYkNvcmU6OkludFNpemUmLCBjb25zdCBX
ZWJDb3JlOjpHcmFwaGljc1N1cmZhY2VUb2tlbiYpOwpAQCAtMTA0LDYgKzEwMyw5IEBAIHB1Ymxp
YzoKIHByb3RlY3RlZDoKICAgICB2b2lkIGRpc3BhdGNoVXBkYXRlKGNvbnN0IEZ1bmN0aW9uPHZv
aWQoKT4mKTsKIAorICAgIC8vIENvcmVJUEM6Ok1lc3NhZ2VSZWNlaXZlcgorICAgIHZpcnR1YWwg
dm9pZCBkaWRSZWNlaXZlTWVzc2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiwgQ29yZUlQQzo6TWVz
c2FnZURlY29kZXImKSBPVkVSUklERTsKKwogICAgIERyYXdpbmdBcmVhUHJveHkqIG1fZHJhd2lu
Z0FyZWFQcm94eTsKICAgICBSZWZQdHI8V2ViQ29yZTo6Q29vcmRpbmF0ZWRHcmFwaGljc1NjZW5l
PiBtX3NjZW5lOwogICAgIFdlYkNvcmU6OkZsb2F0UmVjdCBtX2xhc3RTZW50VmlzaWJsZVJlY3Q7
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29y
ZGluYXRlZExheWVyVHJlZUhvc3RQcm94eS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQ29vcmRpbmF0ZWRHcmFwaGljcy9Db29yZGluYXRlZExheWVy
VHJlZUhvc3RQcm94eS5tZXNzYWdlcy5pbgkocmV2aXNpb24gMTQxNzA3KQorKysgU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0Nvb3JkaW5hdGVkR3JhcGhpY3MvQ29vcmRpbmF0ZWRMYXllclRyZWVI
b3N0UHJveHkubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE4LDcgKzE4LDcgQEAKICMK
IAogI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLW1lc3NhZ2VzIC0+IENvb3JkaW5hdGVk
TGF5ZXJUcmVlSG9zdFByb3h5IExlZ2FjeVJlY2VpdmVyIHsKK21lc3NhZ2VzIC0+IENvb3JkaW5h
dGVkTGF5ZXJUcmVlSG9zdFByb3h5IHsKICAgICBTZXRDb21wb3NpdGluZ0xheWVyU3RhdGUodWlu
dDMyX3QgaWQsIFdlYkNvcmU6OkNvb3JkaW5hdGVkTGF5ZXJJbmZvIGxheWVySW5mbykKICAgICBT
ZXRDb21wb3NpdGluZ0xheWVyQ2hpbGRyZW4odWludDMyX3QgaWQsIFZlY3Rvcjx1aW50MzJfdD4g
Y2hpbGRyZW4pCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQpJbmRleDogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL21hYy9XZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWFjLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94
eU1hYy5tbQkocmV2aXNpb24gMTQxNzA3KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21h
Yy9XZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2
ICszMSw5IEBACiAjaW1wb3J0ICJMYXllclRyZWVDb250ZXh0LmgiCiAjaW1wb3J0ICJXS0Z1bGxT
Y3JlZW5XaW5kb3dDb250cm9sbGVyLmgiCiAjaW1wb3J0ICJXS1ZpZXdJbnRlcm5hbC5oIgorI2lt
cG9ydCAiV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eU1lc3NhZ2VzLmgiCisjaW1wb3J0ICJXZWJQ
YWdlUHJveHkuaCIKKyNpbXBvcnQgIldlYlByb2Nlc3NQcm94eS5oIgogI2ltcG9ydCA8V2ViQ29y
ZS9JbnRSZWN0Lmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwpAQCAtMzksNiArNDIsOCBA
QCBuYW1lc3BhY2UgV2ViS2l0IHsKIAogdm9pZCBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5Ojpp
bnZhbGlkYXRlKCkKIHsKKyAgICBtX3BhZ2UtPnByb2Nlc3MoKS0+cmVtb3ZlTWVzc2FnZVJlY2Vp
dmVyKE1lc3NhZ2VzOjpXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5OjptZXNzYWdlUmVjZWl2ZXJO
YW1lKCksIG1fcGFnZS0+cGFnZUlEKCkpOworCiAgICAgaWYgKCFtX3dlYlZpZXcpCiAgICAgICAg
IHJldHVybjsKICAgICAK
</data>
<flag name="review"
          id="205675"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>