<?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>143249</bug_id>
          
          <creation_ts>2015-03-30 19:55:30 -0700</creation_ts>
          <short_desc>[WK2][iOS] Extend ProcessThrottler use to the NetworkProcess</short_desc>
          <delta_ts>2015-03-31 14:59:58 -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>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>143278</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>barraclough</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1081542</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-30 19:55:30 -0700</bug_when>
    <thetext>Extend ProcessThrottler use to the NetworkProcess instead of only the WebProcesses. This is needed so that the NetworkProcess gets notified before suspension, in order to free-up memory. In a follow-up, the NetworkProcess will also be able to use this new infrastructure to delay process suspension until pending SQL transaction are complete.

Radar: &lt;rdar://problem/20231539&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081654</commentid>
    <comment_count>1</comment_count>
      <attachid>249828</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-03-31 10:02:19 -0700</bug_when>
    <thetext>Created attachment 249828
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081721</commentid>
    <comment_count>2</comment_count>
      <attachid>249828</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-31 12:04:29 -0700</bug_when>
    <thetext>Comment on attachment 249828
Patch

Clearing flags on attachment: 249828

Committed r182194: &lt;http://trac.webkit.org/changeset/182194&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081722</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-31 12:04:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249828</attachid>
            <date>2015-03-31 10:02:19 -0700</date>
            <delta_ts>2015-03-31 12:04:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143249-20150331100136.patch</filename>
            <type>text/plain</type>
            <size>25021</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgyMTY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggOTUzNDNkNzliMzBkZGZj
ZDIxNmVhMzZkYmFhOGIxMTg1MDA2NjRhMS4uYzVkYTI5ZWU2NTJmNGRlN2M0NzJkYTlhMmIxMjU0
NTVlOTRiNDczYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDYxIEBACisyMDE1LTAzLTMwICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW1dLMl1baU9TXSBFeHRlbmQg
UHJvY2Vzc1Rocm90dGxlciB1c2UgdG8gdGhlIE5ldHdvcmtQcm9jZXNzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDMyNDkKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzIwMjMxNTM5PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEV4dGVuZCBQcm9jZXNzVGhyb3R0bGVyIHVzZSB0byB0aGUgTmV0d29ya1By
b2Nlc3MgaW5zdGVhZCBvZiBvbmx5IHRoZQorICAgICAgICBXZWJQcm9jZXNzZXMuIFRoaXMgaXMg
bmVlZGVkIHNvIHRoYXQgdGhlIE5ldHdvcmtQcm9jZXNzIGdldHMgbm90aWZpZWQKKyAgICAgICAg
YmVmb3JlIHN1c3BlbnNpb24uIFdlIG5vdyB1c2UgdGhpcyBub3RpZmljYXRpb24gdG8gZnJlZS11
cCBtZW1vcnkKKyAgICAgICAgYmVmb3JlIHN1c3BlbmRpbmcgYnkgY2FsbGluZyB0aGUgY3JpdGlj
YWwgbWVtb3J5IHByZXNzdXJlIGhhbmRsZXIsIGFzCisgICAgICAgIHdlIGFscmVhZHkgZG8gZm9y
IFdlYlByb2Nlc3NlcyAocmRhcjovL3Byb2JsZW0vMjAyMzE1MzkpLiBJbiB0aGUKKyAgICAgICAg
ZnV0dXJlLCB0aGlzIGluZnJhc3RydWN0dXJlIHdpbGwgYmUgdXNlZCB0byBkZWxheSBzdXNwZW5z
aW9uIHVudGlsIHRoZQorICAgICAgICBwZW5kaW5nIFNRTCB0cmFuc2FjdGlvbnMgYXJlIGRvbmUg
YXMgd2VsbCAocmRhcjovL3Byb2JsZW0vMjAxODA3OTkpLgorCisgICAgICAgIFByZXZpb3VzbHks
IHRoZSBOZXR3b3JrUHJvY2Vzc1Byb3h5IHdvdWxkIGhvbGQgYSBmb3JlZ3JvdW5kIGFzc2VydGlv
bgorICAgICAgICBvbiBiZWhhbGYgb2YgdGhlIE5ldHdvcmtQcm9jZXNzIGJ1dCB3b3VsZCBuZXZl
ciByZWxlYXNlIHRoYXQgYXNzZXJ0aW9uLgorICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBjaGFu
Z2UgdGhpcyBzbyB0aGF0IFdlYlByb2Nlc3NQcm94aWVzIGhvbGQgYXNzZXJ0aW9ucworICAgICAg
ICBvbiBiZWhhbGYgb2YgdGhlIE5ldHdvcmtQcm9jZXNzLCBhbmQgcmVsZWFzZSB0aG9zZSBhc3Nl
cnRpb25zIGJlZm9yZQorICAgICAgICBzdXNwZW5kaW5nLiBBcyBhIHJlc3VsdCwgdGhlIE5ldHdv
cmtQcm9jZXNzIGdldHMgc3VzcGVuZGVkIHdoZW4gYWxsCisgICAgICAgIFdlYlByb2Nlc3NlcyBh
cmUgc3VzcGVuZGVkLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6cHJvY2Vzc1dpbGxTdXNwZW5k
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmNhbmNlbFByb2Nlc3NXaWxsU3Vz
cGVuZCk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1l
KToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAq
IE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLm1lc3NhZ2VzLmluOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpOZXR3b3JrUHJvY2Vzc1Byb3h5KToKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNoaW5nKToKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6c2VuZFByb2Nlc3NXaWxsU3VzcGVuZCk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OnNlbmRDYW5jZWxQcm9jZXNzV2ls
bFN1c3BlbmQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjpkaWRDYW5j
ZWxQcm9jZXNzU3VzcGVuc2lvbik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzUHJv
eHk6OnNlbmRQcm9jZXNzRGlkUmVzdW1lKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nl
c3NQcm94eTo6cHJvY2Vzc1JlYWR5VG9TdXNwZW5kKToKKyAgICAgICAgKiBVSVByb2Nlc3MvTmV0
d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5Lmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9j
ZXNzUHJveHk6OnRocm90dGxlcik6CisgICAgICAgICogVUlQcm9jZXNzL05ldHdvcmsvTmV0d29y
a1Byb2Nlc3NQcm94eS5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBVSVByb2Nlc3MvUHJvY2Vzc1Ro
cm90dGxlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NUaHJvdHRsZXI6OlByb2Nlc3NU
aHJvdHRsZXIpOgorICAgICAgICAoV2ViS2l0OjpQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0
VG9Qcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc1Rocm90dGxlcjo6ZGlkQ29ubm5l
Y3RUb1Byb2Nlc3MpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0
bGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXJDbGllbnQuaDogQWRk
ZWQuCisgICAgICAgIChXZWJLaXQ6OlByb2Nlc3NUaHJvdHRsZXJDbGllbnQ6On5Qcm9jZXNzVGhy
b3R0bGVyQ2xpZW50KToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQcm9jZXNzUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6
OmRpZEZpbmlzaExhdW5jaGluZyk6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6
aW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQWN0aXZpdHlUb2tlbik6CisgICAgICAgIChXZWJLaXQ6
OldlYlByb2Nlc3NQcm94eTo6c2VuZFByb2Nlc3NEaWRSZXN1bWUpOgorICAgICAgICAoV2ViS2l0
OjpXZWJQcm9jZXNzUHJveHk6OnByb2Nlc3NSZWFkeVRvU3VzcGVuZCk6CisgICAgICAgICogVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgorICAgICAgICAqIFdlYktpdDIueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajoKKwogMjAxNS0wMy0zMCAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBw
bGUuY29tPgogCiAgICAgICAgIFtpT1NdIFdlYkNvbnRlbnQgY3Jhc2hpbmcgYXQgV2ViQ29yZTog
V2ViQ29yZTo6UmFuZ2U6OmNvbGxlY3RTZWxlY3Rpb25SZWN0cy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAppbmRleCA5Njk3NzBhYjA1ZmE3
MzZlOGZhYTcwMDIxMTU5MGUxYmUwNTY5ZTRmLi5kMTA5M2UwYjRlZThjNWYwYzI4NzVlODI2MWYz
YmFhMGE5ZmYwMTUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0
d29ya1Byb2Nlc3MuY3BwCkBAIC01MDEsNiArNTAxLDIxIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6
OnRlcm1pbmF0ZSgpCiAgICAgQ2hpbGRQcm9jZXNzOjp0ZXJtaW5hdGUoKTsKIH0KIAordm9pZCBO
ZXR3b3JrUHJvY2Vzczo6cHJvY2Vzc1dpbGxTdXNwZW5kKCkKK3sKKyAgICBNZW1vcnlQcmVzc3Vy
ZUhhbmRsZXI6OnNpbmdsZXRvbigpLnJlbGVhc2VNZW1vcnkodHJ1ZSk7CisgICAgcGFyZW50UHJv
Y2Vzc0Nvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3NQcm94eTo6UHJv
Y2Vzc1JlYWR5VG9TdXNwZW5kKCksIDApOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpjYW5j
ZWxQcm9jZXNzV2lsbFN1c3BlbmQoKQoreworICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCkt
PnNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzUHJveHk6OkRpZENhbmNlbFByb2Nlc3NTdXNw
ZW5zaW9uKCksIDApOworfQorCit2b2lkIE5ldHdvcmtQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1l
KCkKK3sKK30KKwogI2lmICFQTEFURk9STShDT0NPQSkKIHZvaWQgTmV0d29ya1Byb2Nlc3M6Omlu
aXRpYWxpemVQcm9jZXNzKGNvbnN0IENoaWxkUHJvY2Vzc0luaXRpYWxpemF0aW9uUGFyYW1ldGVy
cyYpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5oIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
aAppbmRleCAyMzg0MjFlNmIzYTczMjc4Yzc5MzIzMDhiYzUzZmQyZGEyN2E5MWZiLi5kZDI1NzUz
NzIyMjUxYTNmMDVhNTE4NzFkZGI4OGJlZmVmYzljZTA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgKQEAgLTc3LDYgKzc3LDEwIEBAIHB1Ymxp
YzoKICAgICBEb3dubG9hZE1hbmFnZXImIGRvd25sb2FkTWFuYWdlcigpOwogICAgIGJvb2wgY2Fu
SGFuZGxlSFRUUFNTZXJ2ZXJUcnVzdEV2YWx1YXRpb24oKSBjb25zdCB7IHJldHVybiBtX2Nhbkhh
bmRsZUhUVFBTU2VydmVyVHJ1c3RFdmFsdWF0aW9uOyB9CiAKKyAgICB2b2lkIHByb2Nlc3NXaWxs
U3VzcGVuZCgpOworICAgIHZvaWQgY2FuY2VsUHJvY2Vzc1dpbGxTdXNwZW5kKCk7CisgICAgdm9p
ZCBwcm9jZXNzRGlkUmVzdW1lKCk7CisKICAgICAvLyBEaWFnbm9zdGljIG1lc3NhZ2VzIGxvZ2dp
bmcuCiAgICAgdm9pZCBsb2dEaWFnbm9zdGljTWVzc2FnZSh1aW50NjRfdCB3ZWJQYWdlSUQsIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgV2ViQ29yZTo6
U2hvdWxkU2FtcGxlKTsKICAgICB2b2lkIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdCh1
aW50NjRfdCB3ZWJQYWdlSUQsIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBk
ZXNjcmlwdGlvbiwgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLCBXZWJDb3Jl
OjpTaG91bGRTYW1wbGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nl
c3MvTmV0d29ya1Byb2Nlc3MubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgppbmRleCA1ZDJiOWU1OTM2ZTdhOTlkMWIz
MzQwNDU5YTJjODQyNTUyOTExZGZhLi42NjJiNTUzN2M2MWI3NzIwYWY1NTM2MzM3NzE5YjdlM2I3
ODQ0ZjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzcy5tZXNzYWdlcy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzcy5tZXNzYWdlcy5pbgpAQCAtNTcsNiArNTcsMTAgQEAgbWVzc2FnZXMgLT4g
TmV0d29ya1Byb2Nlc3MgTGVnYWN5UmVjZWl2ZXIgewogICAgIAogICAgIENsZWFyQ2FjaGVGb3JB
bGxPcmlnaW5zKHVpbnQzMl90IGNhY2hlc1RvQ2xlYXIpCiAgICAgU2V0Q2FjaGVNb2RlbCh1aW50
MzJfdCBjYWNoZU1vZGVsKTsKKworICAgIFByb2Nlc3NXaWxsU3VzcGVuZCgpCisgICAgQ2FuY2Vs
UHJvY2Vzc1dpbGxTdXNwZW5kKCkKKyAgICBQcm9jZXNzRGlkUmVzdW1lKCkKIH0KIAogI2VuZGlm
IC8vIEVOQUJMRShORVRXT1JLX1BST0NFU1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCmluZGV4IGY3ZWRkMTU4
ZmNkYjIxNTdjZWExNGY5Yjc0MmJmYjdmZDg1MzUxYmQuLmI0MTU2NTY0YThhNGI4MDA1NTdlNDJm
NWQ0YmNhMjZkMGZkYTk0MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9O
ZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCkBAIC02OCw2ICs2OCw3IEBAIE5l
dHdvcmtQcm9jZXNzUHJveHk6Ok5ldHdvcmtQcm9jZXNzUHJveHkoV2ViUHJvY2Vzc1Bvb2wmIHBy
b2Nlc3NQb29sKQogICAgIDogbV9wcm9jZXNzUG9vbChwcm9jZXNzUG9vbCkKICAgICAsIG1fbnVt
UGVuZGluZ0Nvbm5lY3Rpb25SZXF1ZXN0cygwKQogICAgICwgbV9jdXN0b21Qcm90b2NvbE1hbmFn
ZXJQcm94eSh0aGlzLCBwcm9jZXNzUG9vbCkKKyAgICAsIG1fdGhyb3R0bGVyKHN0ZDo6bWFrZV91
bmlxdWU8UHJvY2Vzc1Rocm90dGxlcj4odGhpcykpCiB7CiAgICAgY29ubmVjdCgpOwogfQpAQCAt
MjczLDcgKzI3NCw3IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6ZGlkRmluaXNoTGF1bmNo
aW5nKFByb2Nlc3NMYXVuY2hlciogbGF1bmNoZXIsIElQQzo6Q29uCiAgICAgCiAjaWYgUExBVEZP
Uk0oSU9TKQogICAgIGlmICh4cGNfY29ubmVjdGlvbl90IGNvbm5lY3Rpb24gPSB0aGlzLT5jb25u
ZWN0aW9uKCktPnhwY0Nvbm5lY3Rpb24oKSkKLSAgICAgICAgbV9hc3NlcnRpb24gPSBzdGQ6Om1h
a2VfdW5pcXVlPFByb2Nlc3NBc3NlcnRpb24+KHhwY19jb25uZWN0aW9uX2dldF9waWQoY29ubmVj
dGlvbiksIEFzc2VydGlvblN0YXRlOjpGb3JlZ3JvdW5kKTsKKyAgICAgICAgbV90aHJvdHRsZXIt
PmRpZENvbm5lY3RUb1Byb2Nlc3MoeHBjX2Nvbm5lY3Rpb25fZ2V0X3BpZChjb25uZWN0aW9uKSk7
CiAjZW5kaWYKIH0KIApAQCAtMzEwLDYgKzMxMSwzNCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzUHJv
eHk6OmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3Qg
UwogICAgIHBhZ2UtPmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlKG1lc3NhZ2UsIGRlc2Ny
aXB0aW9uLCB2YWx1ZSwgc2hvdWxkU2FtcGxlKTsKIH0KIAordm9pZCBOZXR3b3JrUHJvY2Vzc1By
b3h5OjpzZW5kUHJvY2Vzc1dpbGxTdXNwZW5kKCkKK3sKKyAgICBpZiAoY2FuU2VuZE1lc3NhZ2Uo
KSkKKyAgICAgICAgc2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OlByb2Nlc3NXaWxsU3Vz
cGVuZCgpLCAwKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpzZW5kQ2FuY2VsUHJv
Y2Vzc1dpbGxTdXNwZW5kKCkKK3sKKyAgICBpZiAoY2FuU2VuZE1lc3NhZ2UoKSkKKyAgICAgICAg
c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OkNhbmNlbFByb2Nlc3NXaWxsU3VzcGVuZCgp
LCAwKTsKK30KKwordm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpkaWRDYW5jZWxQcm9jZXNzU3Vz
cGVuc2lvbigpCit7CisgICAgbV90aHJvdHRsZXItPmRpZENhbmNlbFByb2Nlc3NTdXNwZW5zaW9u
KCk7Cit9CisKK3ZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6c2VuZFByb2Nlc3NEaWRSZXN1bWUo
KQoreworICAgIGlmIChjYW5TZW5kTWVzc2FnZSgpKQorICAgICAgICBzZW5kKE1lc3NhZ2VzOjpO
ZXR3b3JrUHJvY2Vzczo6UHJvY2Vzc0RpZFJlc3VtZSgpLCAwKTsKK30KKwordm9pZCBOZXR3b3Jr
UHJvY2Vzc1Byb3h5Ojpwcm9jZXNzUmVhZHlUb1N1c3BlbmQoKQoreworICAgIG1fdGhyb3R0bGVy
LT5wcm9jZXNzUmVhZHlUb1N1c3BlbmQoKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAK
ICNlbmRpZiAvLyBFTkFCTEUoTkVUV09SS19QUk9DRVNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCmluZGV4IDBjYmRk
Nzk0MTdhMGYxYjMxZmRlOTEyNzg3ZGU2YjljNTE5NmE1NzguLmQ2ZGI3ZTg2NDQzZjI5M2U2YmQ3
MDhiZmJlOGM2ZDMxNmQ0ZDE2OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKQEAgLTMxLDE1ICszMSwxMyBAQAog
I2luY2x1ZGUgIkNoaWxkUHJvY2Vzc1Byb3h5LmgiCiAjaW5jbHVkZSAiQ3VzdG9tUHJvdG9jb2xN
YW5hZ2VyUHJveHkuaCIKICNpbmNsdWRlICJQcm9jZXNzTGF1bmNoZXIuaCIKKyNpbmNsdWRlICJQ
cm9jZXNzVGhyb3R0bGVyLmgiCisjaW5jbHVkZSAiUHJvY2Vzc1Rocm90dGxlckNsaWVudC5oIgog
I2luY2x1ZGUgIldlYlByb2Nlc3NQcm94eU1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2Vic2l0ZURh
dGFUeXBlcy5oIgogI2luY2x1ZGUgPG1lbW9yeT4KICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KIAot
I2lmIFBMQVRGT1JNKElPUykKLSNpbmNsdWRlICJQcm9jZXNzQXNzZXJ0aW9uLmgiCi0jZW5kaWYK
LQogbmFtZXNwYWNlIFdlYkNvcmUgewogY2xhc3MgQXV0aGVudGljYXRpb25DaGFsbGVuZ2U7CiBj
bGFzcyBSZXNvdXJjZVJlcXVlc3Q7CkBAIC01NCw3ICs1Miw3IEBAIGNsYXNzIERvd25sb2FkUHJv
eHlNYXA7CiBjbGFzcyBXZWJQcm9jZXNzUG9vbDsKIHN0cnVjdCBOZXR3b3JrUHJvY2Vzc0NyZWF0
aW9uUGFyYW1ldGVyczsKIAotY2xhc3MgTmV0d29ya1Byb2Nlc3NQcm94eSA6IHB1YmxpYyBDaGls
ZFByb2Nlc3NQcm94eSB7CitjbGFzcyBOZXR3b3JrUHJvY2Vzc1Byb3h5IDogcHVibGljIENoaWxk
UHJvY2Vzc1Byb3h5LCBwdWJsaWMgUHJvY2Vzc1Rocm90dGxlckNsaWVudCB7CiBwdWJsaWM6CiAg
ICAgc3RhdGljIFBhc3NSZWZQdHI8TmV0d29ya1Byb2Nlc3NQcm94eT4gY3JlYXRlKFdlYlByb2Nl
c3NQb29sJik7CiAgICAgfk5ldHdvcmtQcm9jZXNzUHJveHkoKTsKQEAgLTcxLDYgKzY5LDE0IEBA
IHB1YmxpYzoKICAgICB2b2lkIHNldFByb2Nlc3NTdXBwcmVzc2lvbkVuYWJsZWQoYm9vbCk7CiAj
ZW5kaWYKIAorICAgIHZvaWQgc2VuZFByb2Nlc3NXaWxsU3VzcGVuZCgpIG92ZXJyaWRlOworICAg
IHZvaWQgc2VuZENhbmNlbFByb2Nlc3NXaWxsU3VzcGVuZCgpIG92ZXJyaWRlOworICAgIHZvaWQg
ZGlkQ2FuY2VsUHJvY2Vzc1N1c3BlbnNpb24oKTsKKyAgICB2b2lkIHByb2Nlc3NSZWFkeVRvU3Vz
cGVuZCgpOworICAgIHZvaWQgc2VuZFByb2Nlc3NEaWRSZXN1bWUoKSBvdmVycmlkZTsKKworICAg
IFByb2Nlc3NUaHJvdHRsZXImIHRocm90dGxlcigpIHsgcmV0dXJuICptX3Rocm90dGxlcjsgfQor
CiBwcml2YXRlOgogICAgIE5ldHdvcmtQcm9jZXNzUHJveHkoV2ViUHJvY2Vzc1Bvb2wmKTsKIApA
QCAtMTE0LDkgKzEyMCw3IEBAIHByaXZhdGU6CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RG93bmxv
YWRQcm94eU1hcD4gbV9kb3dubG9hZFByb3h5TWFwOwogICAgIEN1c3RvbVByb3RvY29sTWFuYWdl
clByb3h5IG1fY3VzdG9tUHJvdG9jb2xNYW5hZ2VyUHJveHk7Ci0jaWYgUExBVEZPUk0oSU9TKQot
ICAgIHN0ZDo6dW5pcXVlX3B0cjxQcm9jZXNzQXNzZXJ0aW9uPiBtX2Fzc2VydGlvbjsKLSNlbmRp
ZgorICAgIHN0ZDo6dW5pcXVlX3B0cjxQcm9jZXNzVGhyb3R0bGVyPiBtX3Rocm90dGxlcjsKIH07
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkubWVzc2FnZXMuaW4K
aW5kZXggMmQ5NTNkNDQxNjQ3YmNlMDVkMTM0OWUwNzE0OWY1ODg2Y2IzODliYy4uMjIwNDBlMjlj
ZTZjYzFhODBmOGQyOGQ5MWRmNjIzN2QwNzUzNzY2MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5tZXNzYWdlcy5pbgorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5Lm1l
c3NhZ2VzLmluCkBAIC0zMSw2ICszMSw5IEBAIG1lc3NhZ2VzIC0+IE5ldHdvcmtQcm9jZXNzUHJv
eHkgTGVnYWN5UmVjZWl2ZXIgewogICAgIERpZERlbGV0ZVdlYnNpdGVEYXRhKHVpbnQ2NF90IGNh
bGxiYWNrSUQpCiAgICAgRGlkRGVsZXRlV2Vic2l0ZURhdGFGb3JPcmlnaW5zKHVpbnQ2NF90IGNh
bGxiYWNrSUQpCiAKKyAgICBQcm9jZXNzUmVhZHlUb1N1c3BlbmQoKQorICAgIERpZENhbmNlbFBy
b2Nlc3NTdXNwZW5zaW9uKCkKKwogICAgICMgRGlhZ25vc3RpYyBtZXNzYWdlcyBsb2dnaW5nCiAg
ICAgTG9nRGlhZ25vc3RpY01lc3NhZ2UodWludDY0X3QgcGFnZUlELCBTdHJpbmcgbWVzc2FnZSwg
U3RyaW5nIGRlc2NyaXB0aW9uLCBib29sIHNob3VsZFNhbXBsZSkKICAgICBMb2dEaWFnbm9zdGlj
TWVzc2FnZVdpdGhSZXN1bHQodWludDY0X3QgcGFnZUlELCBTdHJpbmcgbWVzc2FnZSwgU3RyaW5n
IGRlc2NyaXB0aW9uLCB1aW50MzJfdCByZXN1bHQsIGJvb2wgc2hvdWxkU2FtcGxlKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXIuY3BwCmluZGV4IDQ2Y2Y1ZDc3
YzQyZjcyMmU4NjA1MzgyYTIzMWJjNzI4MjQ2MjcyNDguLmJkNmVlYTY3ZTJkNDIxOGUxZWQ2N2Rm
ODgzZjY0NjA4MmQ1NjIxMTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Q
cm9jZXNzVGhyb3R0bGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUHJvY2Vz
c1Rocm90dGxlci5jcHAKQEAgLTI2LDEzICsyNiwxMyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIlByb2Nlc3NUaHJvdHRsZXIuaCIKIAotI2luY2x1ZGUgIldlYlByb2Nlc3NQcm94
eS5oIgorI2luY2x1ZGUgIlByb2Nlc3NUaHJvdHRsZXJDbGllbnQuaCIKIAogbmFtZXNwYWNlIFdl
YktpdCB7CiAgICAgCiBzdGF0aWMgY29uc3QgdW5zaWduZWQgcHJvY2Vzc1N1c3BlbnNpb25UaW1l
b3V0ID0gMzA7CiAgICAgCi1Qcm9jZXNzVGhyb3R0bGVyOjpQcm9jZXNzVGhyb3R0bGVyKFdlYlBy
b2Nlc3NQcm94eSogcHJvY2VzcykKK1Byb2Nlc3NUaHJvdHRsZXI6OlByb2Nlc3NUaHJvdHRsZXIo
UHJvY2Vzc1Rocm90dGxlckNsaWVudCogcHJvY2VzcykKICAgICA6IG1fcHJvY2Vzcyhwcm9jZXNz
KQogICAgICwgbV9zdXNwZW5kVGltZXIoUnVuTG9vcDo6bWFpbigpLCB0aGlzLCAmUHJvY2Vzc1Ro
cm90dGxlcjo6c3VzcGVuZFRpbWVyRmlyZWQpCiAgICAgLCBtX2ZvcmVncm91bmRDb3VudGVyKFt0
aGlzXShib29sKSB7IHVwZGF0ZUFzc2VydGlvbigpOyB9KQpAQCAtODQsNyArODQsNyBAQCB2b2lk
IFByb2Nlc3NUaHJvdHRsZXI6OnVwZGF0ZUFzc2VydGlvbigpCiAgICAgdXBkYXRlQXNzZXJ0aW9u
Tm93KCk7CiB9CiAKLXZvaWQgUHJvY2Vzc1Rocm90dGxlcjo6ZGlkQ29ubm5lY3RUb1Byb2Nlc3Mo
cGlkX3QgcGlkKQordm9pZCBQcm9jZXNzVGhyb3R0bGVyOjpkaWRDb25uZWN0VG9Qcm9jZXNzKHBp
ZF90IHBpZCkKIHsKICAgICBtX3N1c3BlbmRUaW1lci5zdG9wKCk7CiAgICAgbV9hc3NlcnRpb24g
PSBzdGQ6Om1ha2VfdW5pcXVlPFByb2Nlc3NBbmRVSUFzc2VydGlvbj4ocGlkLCBhc3NlcnRpb25T
dGF0ZSgpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9Qcm9jZXNzVGhy
b3R0bGVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvUHJvY2Vzc1Rocm90dGxlci5oCmlu
ZGV4IGU4OGVlMTRiOWZmYTYzMGE5YmI2ODczNjE4ZTA3ZDRjZmI1NDRhYmUuLjNlNjhlODgwMDg3
YTgzNjQwZjdiMjgzMDhhNTgxOWZhZWZmMTgxZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9Qcm9jZXNzVGhyb3R0bGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1Byb2Nlc3NUaHJvdHRsZXIuaApAQCAtMzksOCArMzksOCBAQCB0eXBlZGVmIFJlZkNvdW50
ZXI6OlRva2VuPFVzZXJPYnNlcnZhYmxlUGFnZVRva2VuVHlwZT4gVXNlck9ic2VydmFibGVQYWdl
VG9rZW47CiBlbnVtIFByb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkVG9rZW5UeXBlIHsgfTsKIHR5
cGVkZWYgUmVmQ291bnRlcjo6VG9rZW48UHJvY2Vzc1N1cHByZXNzaW9uRGlzYWJsZWRUb2tlblR5
cGU+IFByb2Nlc3NTdXBwcmVzc2lvbkRpc2FibGVkVG9rZW47CiAKLWNsYXNzIFdlYlByb2Nlc3NQ
cm94eTsKLSAgICAKK2NsYXNzIFByb2Nlc3NUaHJvdHRsZXJDbGllbnQ7CisKIGNsYXNzIFByb2Nl
c3NUaHJvdHRsZXIgewogcHVibGljOgogICAgIGVudW0gRm9yZWdyb3VuZEFjdGl2aXR5VG9rZW5U
eXBlIHsgfTsKQEAgLTQ4LDEyICs0OCwxMiBAQCBwdWJsaWM6CiAgICAgZW51bSBCYWNrZ3JvdW5k
QWN0aXZpdHlUb2tlblR5cGUgeyB9OwogICAgIHR5cGVkZWYgUmVmQ291bnRlcjo6VG9rZW48QmFj
a2dyb3VuZEFjdGl2aXR5VG9rZW5UeXBlPiBCYWNrZ3JvdW5kQWN0aXZpdHlUb2tlbjsKIAotICAg
IFByb2Nlc3NUaHJvdHRsZXIoV2ViUHJvY2Vzc1Byb3h5Kik7CisgICAgUHJvY2Vzc1Rocm90dGxl
cihQcm9jZXNzVGhyb3R0bGVyQ2xpZW50Kik7CiAKICAgICBpbmxpbmUgRm9yZWdyb3VuZEFjdGl2
aXR5VG9rZW4gZm9yZWdyb3VuZEFjdGl2aXR5VG9rZW4oKSBjb25zdDsKICAgICBpbmxpbmUgQmFj
a2dyb3VuZEFjdGl2aXR5VG9rZW4gYmFja2dyb3VuZEFjdGl2aXR5VG9rZW4oKSBjb25zdDsKICAg
ICAKLSAgICB2b2lkIGRpZENvbm5uZWN0VG9Qcm9jZXNzKHBpZF90KTsKKyAgICB2b2lkIGRpZENv
bm5lY3RUb1Byb2Nlc3MocGlkX3QpOwogICAgIHZvaWQgcHJvY2Vzc1JlYWR5VG9TdXNwZW5kKCk7
CiAgICAgdm9pZCBkaWRDYW5jZWxQcm9jZXNzU3VzcGVuc2lvbigpOwogICAgIApAQCAtNjMsNyAr
NjMsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgdXBkYXRlQXNzZXJ0aW9uTm93KCk7CiAgICAgdm9p
ZCBzdXNwZW5kVGltZXJGaXJlZCgpOwogICAgIAotICAgIFdlYlByb2Nlc3NQcm94eSogbV9wcm9j
ZXNzOworICAgIFByb2Nlc3NUaHJvdHRsZXJDbGllbnQqIG1fcHJvY2VzczsKICAgICBzdGQ6OnVu
aXF1ZV9wdHI8UHJvY2Vzc0FuZFVJQXNzZXJ0aW9uPiBtX2Fzc2VydGlvbjsKICAgICBSdW5Mb29w
OjpUaW1lcjxQcm9jZXNzVGhyb3R0bGVyPiBtX3N1c3BlbmRUaW1lcjsKICAgICBSZWZDb3VudGVy
IG1fZm9yZWdyb3VuZENvdW50ZXI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvUHJvY2Vzc1Rocm90dGxlckNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1By
b2Nlc3NUaHJvdHRsZXJDbGllbnQuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZTEzNWFmMmNhNTZjZWUyNzVhNjUz
YmE0MjFjZDY1MmRiOTRmYmJmCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1Byb2Nlc3NUaHJvdHRsZXJDbGllbnQuaApAQCAtMCwwICsxLDQzIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
KyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
CisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBQcm9jZXNzVGhyb3R0bGVyQ2xpZW50X2gKKyNkZWZpbmUgUHJvY2Vzc1Ro
cm90dGxlckNsaWVudF9oCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBQcm9jZXNzVGhy
b3R0bGVyQ2xpZW50IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5Qcm9jZXNzVGhyb3R0bGVyQ2xp
ZW50KCkgeyB9CisKKyAgICB2aXJ0dWFsIHZvaWQgc2VuZFByb2Nlc3NXaWxsU3VzcGVuZCgpID0g
MDsKKyAgICB2aXJ0dWFsIHZvaWQgc2VuZENhbmNlbFByb2Nlc3NXaWxsU3VzcGVuZCgpID0gMDsK
KyAgICB2aXJ0dWFsIHZvaWQgc2VuZFByb2Nlc3NEaWRSZXN1bWUoKSA9IDA7Cit9OworCit9IC8v
IG5hbWVzcGFjZSBXZWJLaXQKKworI2VuZGlmIC8vIFByb2Nlc3NUaHJvdHRsZXJDbGllbnRfaAor
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3Bw
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcAppbmRleCBiZWY4
MGU1MGFkNGVhZDVlNzYyNWJhMDk0ZGE1NDYzYmQ5MDM5MTc1Li5mZTFkZmNlM2Y2M2VhMzgzMjYx
ZDFlZmM1NDczODg1OTI1ZThhNjIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKQEAgLTM5MiwxMCArMzkyLDEwIEBAIGJvb2wgV2ViUHJvY2Vzc1Bvb2w6
OnVzZXNOZXR3b3JrUHJvY2VzcygpIGNvbnN0CiB9CiAKICNpZiBFTkFCTEUoTkVUV09SS19QUk9D
RVNTKQotdm9pZCBXZWJQcm9jZXNzUG9vbDo6ZW5zdXJlTmV0d29ya1Byb2Nlc3MoKQorTmV0d29y
a1Byb2Nlc3NQcm94eSYgV2ViUHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkKIHsK
ICAgICBpZiAobV9uZXR3b3JrUHJvY2VzcykKLSAgICAgICAgcmV0dXJuOworICAgICAgICByZXR1
cm4gKm1fbmV0d29ya1Byb2Nlc3M7CiAKICAgICBtX25ldHdvcmtQcm9jZXNzID0gTmV0d29ya1By
b2Nlc3NQcm94eTo6Y3JlYXRlKCp0aGlzKTsKIApAQCAtNDM3LDYgKzQzNyw4IEBAIHZvaWQgV2Vi
UHJvY2Vzc1Bvb2w6OmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkKICNpZiBQTEFURk9STShDT0NPQSkK
ICAgICBtX25ldHdvcmtQcm9jZXNzLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzczo6U2V0
UU9TKG5ldHdvcmtQcm9jZXNzTGF0ZW5jeVFPUygpLCBuZXR3b3JrUHJvY2Vzc1Rocm91Z2hwdXRR
T1MoKSksIDApOwogI2VuZGlmCisKKyAgICByZXR1cm4gKm1fbmV0d29ya1Byb2Nlc3M7CiB9CiAK
IHZvaWQgV2ViUHJvY2Vzc1Bvb2w6Om5ldHdvcmtQcm9jZXNzQ3Jhc2hlZChOZXR3b3JrUHJvY2Vz
c1Byb3h5KiBuZXR3b3JrUHJvY2Vzc1Byb3h5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuaAppbmRleCAwY2Q2ODYzZjMzOTM4ZjZkNDFkMDU3YWI4NTI3YWY0NDY2OTRl
YTY0Li5kODJiOTk2NjllOTI4MDVjNzdlYzZhOWVlMTJlZTk0MTgzNzAzZmZiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuaApAQCAtMjkxLDcgKzI5MSw3IEBAIHB1
YmxpYzoKICAgICBib29sIHVzZXNOZXR3b3JrUHJvY2VzcygpIGNvbnN0OwogCiAjaWYgRU5BQkxF
KE5FVFdPUktfUFJPQ0VTUykKLSAgICB2b2lkIGVuc3VyZU5ldHdvcmtQcm9jZXNzKCk7CisgICAg
TmV0d29ya1Byb2Nlc3NQcm94eSYgZW5zdXJlTmV0d29ya1Byb2Nlc3MoKTsKICAgICBOZXR3b3Jr
UHJvY2Vzc1Byb3h5KiBuZXR3b3JrUHJvY2VzcygpIHsgcmV0dXJuIG1fbmV0d29ya1Byb2Nlc3Mu
Z2V0KCk7IH0KICAgICB2b2lkIG5ldHdvcmtQcm9jZXNzQ3Jhc2hlZChOZXR3b3JrUHJvY2Vzc1By
b3h5Kik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAK
aW5kZXggZTYxNTA0N2FhOTJmM2IxZGRkODA3MDljNDFiMGNmODM5ODlhOTQxMy4uM2RlMjE0ZTcx
ZjM3YTY0MjU0N2ExYjI5MjUzZDYzNzAxOWY0YzEzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKQEAgLTUzNSw4ICs1MzUsMTAgQEAgdm9pZCBXZWJQ
cm9jZXNzUHJveHk6OmRpZEZpbmlzaExhdW5jaGluZyhQcm9jZXNzTGF1bmNoZXIqIGxhdW5jaGVy
LCBJUEM6OkNvbm5lY3QKICNpZiBQTEFURk9STShJT1MpCiAgICAgeHBjX2Nvbm5lY3Rpb25fdCB4
cGNDb25uZWN0aW9uID0gY29ubmVjdGlvbigpLT54cGNDb25uZWN0aW9uKCk7CiAgICAgQVNTRVJU
KHhwY0Nvbm5lY3Rpb24pOwotICAgIG1fdGhyb3R0bGVyLT5kaWRDb25ubmVjdFRvUHJvY2Vzcyh4
cGNfY29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24pKTsKKyAgICBtX3Rocm90dGxlci0+
ZGlkQ29ubmVjdFRvUHJvY2Vzcyh4cGNfY29ubmVjdGlvbl9nZXRfcGlkKHhwY0Nvbm5lY3Rpb24p
KTsKICNlbmRpZgorCisgICAgaW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQWN0aXZpdHlUb2tlbigp
OwogfQogCiBXZWJGcmFtZVByb3h5KiBXZWJQcm9jZXNzUHJveHk6OndlYkZyYW1lKHVpbnQ2NF90
IGZyYW1lSUQpIGNvbnN0CkBAIC04NDUsOSArODQ3LDE5IEBAIHZvaWQgV2ViUHJvY2Vzc1Byb3h5
OjpzZW5kQ2FuY2VsUHJvY2Vzc1dpbGxTdXNwZW5kKCkKICAgICBpZiAoY2FuU2VuZE1lc3NhZ2Uo
KSkKICAgICAgICAgc2VuZChNZXNzYWdlczo6V2ViUHJvY2Vzczo6Q2FuY2VsUHJvY2Vzc1dpbGxT
dXNwZW5kKCksIDApOwogfQotICAgIAorCit2b2lkIFdlYlByb2Nlc3NQcm94eTo6aW5pdGlhbGl6
ZU5ldHdvcmtQcm9jZXNzQWN0aXZpdHlUb2tlbigpCit7CisjaWYgUExBVEZPUk0oSU9TKSAmJiBF
TkFCTEUoTkVUV09SS19QUk9DRVNTKQorICAgIGlmIChwcm9jZXNzUG9vbCgpLnVzZXNOZXR3b3Jr
UHJvY2VzcygpKQorICAgICAgICBtX3Rva2VuRm9yTmV0d29ya1Byb2Nlc3MgPSBwcm9jZXNzUG9v
bCgpLmVuc3VyZU5ldHdvcmtQcm9jZXNzKCkudGhyb3R0bGVyKCkuZm9yZWdyb3VuZEFjdGl2aXR5
VG9rZW4oKTsKKyNlbmRpZgorfQorCiB2b2lkIFdlYlByb2Nlc3NQcm94eTo6c2VuZFByb2Nlc3NE
aWRSZXN1bWUoKQogeworICAgIGluaXRpYWxpemVOZXR3b3JrUHJvY2Vzc0FjdGl2aXR5VG9rZW4o
KTsKKwogICAgIGlmIChjYW5TZW5kTWVzc2FnZSgpKQogICAgICAgICBzZW5kKE1lc3NhZ2VzOjpX
ZWJQcm9jZXNzOjpQcm9jZXNzRGlkUmVzdW1lKCksIDApOwogfQpAQCAtODU1LDYgKzg2Nyw5IEBA
IHZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpzZW5kUHJvY2Vzc0RpZFJlc3VtZSgpCiB2b2lkIFdlYlBy
b2Nlc3NQcm94eTo6cHJvY2Vzc1JlYWR5VG9TdXNwZW5kKCkKIHsKICAgICBtX3Rocm90dGxlci0+
cHJvY2Vzc1JlYWR5VG9TdXNwZW5kKCk7CisjaWYgUExBVEZPUk0oSU9TKSAmJiBFTkFCTEUoTkVU
V09SS19QUk9DRVNTKQorICAgIG1fdG9rZW5Gb3JOZXR3b3JrUHJvY2VzcyA9IG51bGxwdHI7Cisj
ZW5kaWYKIH0KIAogdm9pZCBXZWJQcm9jZXNzUHJveHk6OmRpZENhbmNlbFByb2Nlc3NTdXNwZW5z
aW9uKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAppbmRleCAx
OTI3NjY1YzZiN2M5ODdhYzQ5MjU0ZmM1NTc1ZmQ5MWIzYzQxZGRiLi5iMDMxMmIyYjI2NzQ5MTg5
Mzg4Zjk4ODVmZTI1YWRjYWMxNGUxYzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlByb2Nlc3NQcm94eS5oCkBAIC0zMyw2ICszMyw3IEBACiAjaW5jbHVkZSAiUGxhdGZvcm1Qcm9j
ZXNzSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIlBsdWdpbkluZm9TdG9yZS5oIgogI2luY2x1ZGUg
IlByb2Nlc3NMYXVuY2hlci5oIgorI2luY2x1ZGUgIlByb2Nlc3NUaHJvdHRsZXJDbGllbnQuaCIK
ICNpbmNsdWRlICJSZXNwb25zaXZlbmVzc1RpbWVyLmgiCiAjaW5jbHVkZSAiV2ViQ29ubmVjdGlv
blRvV2ViUHJvY2Vzcy5oIgogI2luY2x1ZGUgIldlYlBhZ2VQcm94eS5oIgpAQCAtNjMsNyArNjQs
NyBAQCBjbGFzcyBXZWJQYWdlR3JvdXA7CiBjbGFzcyBXZWJQcm9jZXNzUG9vbDsKIHN0cnVjdCBX
ZWJOYXZpZ2F0aW9uRGF0YVN0b3JlOwogICAgIAotY2xhc3MgV2ViUHJvY2Vzc1Byb3h5IDogcHVi
bGljIENoaWxkUHJvY2Vzc1Byb3h5LCBSZXNwb25zaXZlbmVzc1RpbWVyOjpDbGllbnQgeworY2xh
c3MgV2ViUHJvY2Vzc1Byb3h5IDogcHVibGljIENoaWxkUHJvY2Vzc1Byb3h5LCBSZXNwb25zaXZl
bmVzc1RpbWVyOjpDbGllbnQsIHB1YmxpYyBQcm9jZXNzVGhyb3R0bGVyQ2xpZW50IHsKIHB1Ymxp
YzoKICAgICB0eXBlZGVmIEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxXZWJCYWNrRm9yd2FyZExp
c3RJdGVtPj4gV2ViQmFja0ZvcndhcmRMaXN0SXRlbU1hcDsKICAgICB0eXBlZGVmIEhhc2hNYXA8
dWludDY0X3QsIFJlZlB0cjxXZWJGcmFtZVByb3h5Pj4gV2ViRnJhbWVQcm94eU1hcDsKQEAgLTE0
MiwxMSArMTQzLDExIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgd2luZG93U2VydmVyQ29ubmVjdGlv
blN0YXRlQ2hhbmdlZCgpOwogCi0gICAgdm9pZCBzZW5kUHJvY2Vzc1dpbGxTdXNwZW5kKCk7Cisg
ICAgdm9pZCBzZW5kUHJvY2Vzc1dpbGxTdXNwZW5kKCkgb3ZlcnJpZGU7CiAgICAgdm9pZCBwcm9j
ZXNzUmVhZHlUb1N1c3BlbmQoKTsKLSAgICB2b2lkIHNlbmRDYW5jZWxQcm9jZXNzV2lsbFN1c3Bl
bmQoKTsKKyAgICB2b2lkIHNlbmRDYW5jZWxQcm9jZXNzV2lsbFN1c3BlbmQoKSBvdmVycmlkZTsK
ICAgICB2b2lkIGRpZENhbmNlbFByb2Nlc3NTdXNwZW5zaW9uKCk7Ci0gICAgdm9pZCBzZW5kUHJv
Y2Vzc0RpZFJlc3VtZSgpOworICAgIHZvaWQgc2VuZFByb2Nlc3NEaWRSZXN1bWUoKSBvdmVycmlk
ZTsKIAogICAgIHZvaWQgc2V0SXNIb2xkaW5nTG9ja2VkRmlsZXMoYm9vbCk7CiAKQEAgLTIxMiw2
ICsyMTMsOCBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBjYW5UZXJtaW5hdGVDaGlsZFByb2Nlc3Mo
KTsKIAorICAgIHZvaWQgaW5pdGlhbGl6ZU5ldHdvcmtQcm9jZXNzQWN0aXZpdHlUb2tlbigpOwor
CiAgICAgUmVzcG9uc2l2ZW5lc3NUaW1lciBtX3Jlc3BvbnNpdmVuZXNzVGltZXI7CiAgICAgCiAg
ICAgUmVmUHRyPFdlYkNvbm5lY3Rpb25Ub1dlYlByb2Nlc3M+IG1fd2ViQ29ubmVjdGlvbjsKQEAg
LTIzNyw2ICsyNDAsOSBAQCBwcml2YXRlOgogICAgIGludCBtX251bWJlck9mVGltZXNTdWRkZW5U
ZXJtaW5hdGlvbldhc0Rpc2FibGVkOwogICAgIHN0ZDo6dW5pcXVlX3B0cjxQcm9jZXNzVGhyb3R0
bGVyPiBtX3Rocm90dGxlcjsKICAgICBQcm9jZXNzVGhyb3R0bGVyOjpCYWNrZ3JvdW5kQWN0aXZp
dHlUb2tlbiBtX3Rva2VuRm9ySG9sZGluZ0xvY2tlZEZpbGVzOworI2lmIFBMQVRGT1JNKElPUykg
JiYgRU5BQkxFKE5FVFdPUktfUFJPQ0VTUykKKyAgICBQcm9jZXNzVGhyb3R0bGVyOjpGb3JlZ3Jv
dW5kQWN0aXZpdHlUb2tlbiBtX3Rva2VuRm9yTmV0d29ya1Byb2Nlc3M7CisjZW5kaWYKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViS2l0
Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDBiZWZmZDg1MzJhOTgyN2M5ZjA4ZGMwNzA4ZjA1
ZDA2MmFiMjVmYzcuLjBkZjQ0M2FkNDg1ZDhlY2ZhMzMwYzRlZmJjMGFkZDg2YWY5MDZjODUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTExNzcsNiArMTE3Nyw3IEBACiAJCTdDRjQ3RkZFMTcyNzZBRTMwMDhBQ0I5MSAvKiBXS0J1
bmRsZVBhZ2VCYW5uZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA3Q0Y0N0ZGQzE3Mjc2QUUzMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVy
TWFjLm1tICovOyB9OwogCQk3Q0Y0N0ZGRjE3Mjc2QUUzMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdl
QmFubmVyTWFjLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA3Q0Y0N0ZGRDE3Mjc2QUUzMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVyTWFjLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJN0VDNEYwRkIx
OEU0QUNCQjAwODA1NkFGIC8qIE5ldHdvcmtQcm9jZXNzQ29jb2EubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA3RUM0RjBGOTE4RTRBOTQ1MDA4MDU2QUYg
LyogTmV0d29ya1Byb2Nlc3NDb2NvYS5tbSAqLzsgfTsKKwkJODMwNDhBRTYxQUNBNDVEQzAwODJD
ODMyIC8qIFByb2Nlc3NUaHJvdHRsZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzMDQ4QUU1MUFDQTQ1REMwMDgyQzgzMiAvKiBQcm9jZXNz
VGhyb3R0bGVyQ2xpZW50LmggKi87IH07CiAJCTgzNEIyNTBGMUE4MzFBOEQwMENGQjE1MCAvKiBO
ZXR3b3JrQ2FjaGVGaWxlU3lzdGVtUG9zaXguaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDgzNEIyNTBFMUE4MzFBOEQwMENGQjE1MCAvKiBOZXR3b3JrQ2Fj
aGVGaWxlU3lzdGVtUG9zaXguaCAqLzsgfTsKIAkJODM0QjI1MTIxQTg0MkM4NzAwQ0ZCMTUwIC8q
IE5ldHdvcmtDYWNoZVN0YXRpc3RpY3MuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzNEIyNTEwMUE4NDJDODcwMENGQjE1MCAvKiBOZXR3b3JrQ2FjaGVT
dGF0aXN0aWNzLmggKi87IH07CiAJCTgzNzJEQjI1MUE2NzRDOEYwMEM2OTdDNSAvKiBXS1BhZ2VE
aWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODM3MkRCMjQxQTY3NEM4RjAwQzY5N0M1IC8qIFdLUGFnZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKQEAgLTMzODcsNiArMzM4OCw3IEBACiAJCTdDRjQ3RkZDMTcyNzZBRTMwMDhBQ0I5
MSAvKiBXS0J1bmRsZVBhZ2VCYW5uZXJNYWMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5v
YmpjcHA7IHBhdGggPSBXS0J1bmRsZVBhZ2VCYW5uZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTdDRjQ3RkZEMTcyNzZBRTMwMDhBQ0I5MSAvKiBXS0J1bmRsZVBhZ2VCYW5u
ZXJNYWMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tCdW5kbGVQYWdlQmFu
bmVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTdFQzRGMEY5MThFNEE5NDUw
MDgwNTZBRiAvKiBOZXR3b3JrUHJvY2Vzc0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBuYW1lID0gTmV0d29ya1Byb2Nlc3NDb2NvYS5tbTsgcGF0aCA9IE5ldHdvcmtQ
cm9jZXNzL2NvY29hL05ldHdvcmtQcm9jZXNzQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTgzMDQ4QUU1MUFDQTQ1REMwMDgyQzgzMiAvKiBQcm9jZXNzVGhyb3R0bGVyQ2xp
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFByb2Nlc3NUaHJvdHRsZXJD
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0QjI1MEUxQTgzMUE4RDAw
Q0ZCMTUwIC8qIE5ldHdvcmtDYWNoZUZpbGVTeXN0ZW1Qb3NpeC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOZXR3b3JrQ2FjaGVGaWxlU3lzdGVtUG9zaXguaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM0QjI1MTAxQTg0MkM4NzAwQ0ZCMTUwIC8qIE5ldHdvcmtD
YWNoZVN0YXRpc3RpY3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmV0d29y
a0NhY2hlU3RhdGlzdGljcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4MzcyREIy
NDFBNjc0QzhGMDBDNjk3QzUgLyogV0tQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGll
bnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTYxNDUsNiArNjE0Nyw3IEBACiAJ
CQkJQkM1OTcwNzQxMTY1OTFEMDAwNTUxRkNBIC8qIFByb2Nlc3NNb2RlbC5oICovLAogCQkJCTg2
RTY3QTIyMTkwRjQxMTgwMDAwNEFCNyAvKiBQcm9jZXNzVGhyb3R0bGVyLmNwcCAqLywKIAkJCQk4
NkU2N0EyMTE5MEY0MTE4MDAwMDRBQjcgLyogUHJvY2Vzc1Rocm90dGxlci5oICovLAorCQkJCTgz
MDQ4QUU1MUFDQTQ1REMwMDgyQzgzMiAvKiBQcm9jZXNzVGhyb3R0bGVyQ2xpZW50LmggKi8sCiAJ
CQkJQkMxMTFCMDgxMTJGNUUzQzAwMzM3QkFCIC8qIFJlc3BvbnNpdmVuZXNzVGltZXIuY3BwICov
LAogCQkJCTFBMzAwNjZDMTExMEY0RjcwMDMxOTM3QyAvKiBSZXNwb25zaXZlbmVzc1RpbWVyLmgg
Ki8sCiAJCQkJNTFBNEQ1QTgxNkNBQzRGRjAwMEU2MTVFIC8qIFN0YXRpc3RpY3NSZXF1ZXN0LmNw
cCAqLywKQEAgLTc2MjAsNiArNzYyMyw3IEBACiAJCQkJQkNFMjMxNUQxMjJDMzBDQTAwRDVDMzVB
IC8qIEFQSVVSTFJlcXVlc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDOTBBMUQyMTIyREQ1NUUw
MENDOEM1MCAvKiBBUElVUkxSZXNwb25zZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjYxMTNFMjUx
MjZDRTE4MjAwNTdEMEE3IC8qIEFQSVVzZXJDb250ZW50VVJMUGF0dGVybi5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJODMwNDhBRTYxQUNBNDVEQzAwODJDODMyIC8qIFByb2Nlc3NUaHJvdHRsZXJDbGll
bnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1RTFBRkVEMTZCMjEwMTcwMDZDQzFGMiAvKiBBUElX
ZWJBcmNoaXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDNUUxQUZFRjE2QjIxMDI5MDA2Q0MxRjIg
LyogQVBJV2ViQXJjaGl2ZVJlc291cmNlLmggaW4gSGVhZGVycyAqLywKIAkJCQkxQTM2MzVBQTFB
MzE0NEEzMDBFRDYxOTcgLyogQVBJV2Vic2l0ZURhdGFTdG9yZS5oIGluIEhlYWRlcnMgKi8sCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>