<?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>56691</bug_id>
          
          <creation_ts>2011-03-18 16:11:46 -0700</creation_ts>
          <short_desc>Web Inspector: Inspector does not always show correct transfer size (for compressed/chunked data)</short_desc>
          <delta_ts>2011-03-21 07:40:55 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>19793</blocked>
    
    <blocked>56602</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Vsevolod Vlasov">vsevik</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>pfeldman</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>369988</commentid>
    <comment_count>0</comment_count>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2011-03-18 16:11:46 -0700</bug_when>
    <thetext>Currently inspector uses content-Length headers and content size to guess transfer size.
This is not correct for gzippped/chunked data when server does not send Content-Length headers.
We should make it possible to pass real transfer data to inspector.

It is still responsibility of each port to provide valid transfer size data to ResourceLoader/ResourceHandleClient.
This is tracked in following bugs:
Safari: https://bugs.webkit.org/show_bug.cgi?id=19793
Chromium: https://bugs.webkit.org/show_bug.cgi?id=56602</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370328</commentid>
    <comment_count>1</comment_count>
      <attachid>86305</attachid>
    <who name="Vsevolod Vlasov">vsevik</who>
    <bug_when>2011-03-21 04:28:08 -0700</bug_when>
    <thetext>Created attachment 86305
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370375</commentid>
    <comment_count>2</comment_count>
      <attachid>86305</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-21 07:40:50 -0700</bug_when>
    <thetext>Comment on attachment 86305
Patch

Clearing flags on attachment: 86305

Committed r81580: &lt;http://trac.webkit.org/changeset/81580&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370376</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-21 07:40:55 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86305</attachid>
            <date>2011-03-21 04:28:08 -0700</date>
            <delta_ts>2011-03-21 07:40:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56691-20110321142806.patch</filename>
            <type>text/plain</type>
            <size>33822</size>
            <attacher name="Vsevolod Vlasov">vsevik</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODE1NzUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3MDM5NzI4YzBhZmJjN2M3ZTNiNmY0
ZGI3ZjA5MTBmZmY4MGJkNjFhLi5lNTQ5NDBkNjMxOTUyOTE4NzU5NzAzNDIzYjhmYzU4ZGY5Y2M1
NzhiIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDMtMTggIFZzZXZvbG9kIFZsYXNvdiAg
PHZzZXZpa0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogSW5zcGVjdG9yIGRvZXMgbm90IGFsd2F5cyBz
aG93IGNvcnJlY3QgdHJhbnNmZXIgc2l6ZSAoZm9yIGNvbXByZXNzZWQvY2h1bmtlZCBkYXRhKQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTY2OTEKKwor
ICAgICAgICBBZGRlZCBhIHRlc3QgZm9yIHRyYW5zZmVyIHNpemUgZm9yIGNodW5rZWQgZW5jb2Rp
bmcgdHlwZS4KKworICAgICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29y
ay1zaXplLWNodW5rZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9pbnNwZWN0
b3IvbmV0d29yay9uZXR3b3JrLXNpemUtZXhwZWN0ZWQtY2h1bmtlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvcmVzb3VyY2VzL3Jlc291cmNlLnBo
cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQ6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3RrL1NraXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Nr
aXBwZWQ6CisgICAgICAgICogcGxhdGZvcm0vcXQvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0Zm9y
bS93aW4vU2tpcHBlZDoKKwogMjAxMS0wMy0yMSAgSnVsaWVuIENoYWZmcmFpeCAgPGpjaGFmZnJh
aXhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay1z
aXplLWNodW5rZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdv
cmsvbmV0d29yay1zaXplLWNodW5rZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hZTMyYmZlNWY5NTAzNDRm
NGRmYTg5NmQ0OGI2NWJkODdmYzI0YmIzCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9uZXR3b3JrLXNpemUtY2h1bmtlZC5odG1sCkBA
IC0wLDAgKzEsMzggQEAKKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vaW5zcGVjdG9y
LXRlc3QuanMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2Z1bmN0aW9uIGxvYWRJbWFnZXMoKQorewor
ICAgIHZhciBpbWFnZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpOworICAgIGltYWdl
Lm9ubG9hZCA9IHJlc291cmNlTG9hZGVkOworICAgIGltYWdlLnNldEF0dHJpYnV0ZSgic3JjIiwg
InJlc291cmNlcy9yZXNvdXJjZS5waHA/dHlwZT1pbWFnZSZzaXplPTUwMCZnemlwPXRydWUmY2h1
bmtlZD10cnVlIik7CisgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChpbWFnZSk7Cit9CisK
K2Z1bmN0aW9uIHJlc291cmNlTG9hZGVkKCkKK3sKKyAgICBjb25zb2xlLmxvZygiRG9uZS4iKTsK
K30KKworZnVuY3Rpb24gdGVzdCgpCit7CisgICAgSW5zcGVjdG9yVGVzdC5hZGRTbmlmZmVyKFdl
Ykluc3BlY3Rvci5Db25zb2xlVmlldy5wcm90b3R5cGUsICJhZGRNZXNzYWdlIiwgc3RlcDIpOwor
ICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoImxvYWRJbWFnZXMoKSIpOworCisgICAg
ZnVuY3Rpb24gc3RlcDIoKQorICAgIHsKKyAgICAgICAgdmFyIHJlc291cmNlMSA9IFdlYkluc3Bl
Y3Rvci5wYW5lbHMubmV0d29yay5yZXNvdXJjZXNbV2ViSW5zcGVjdG9yLnBhbmVscy5uZXR3b3Jr
LnJlc291cmNlcy5sZW5ndGggLSAxXTsKKyAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQo
cmVzb3VyY2UxLnVybCk7CisgICAgICAgIEluc3BlY3RvclRlc3QuYWRkUmVzdWx0KCJyZXNvdXJj
ZVNpemU6ICIgKyByZXNvdXJjZTEucmVzb3VyY2VTaXplKTsKKyAgICAgICAgSW5zcGVjdG9yVGVz
dC5hZGRSZXN1bHQoInRyYW5zZmVyU2l6ZTogIiArIHJlc291cmNlMS50cmFuc2ZlclNpemUpOwor
CisgICAgICAgIEluc3BlY3RvclRlc3QuY29tcGxldGVUZXN0KCk7CisgICAgfQorfQorPC9zY3Jp
cHQ+Cis8L2hlYWQ+Cis8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+Cis8cD5UZXN0cyBuZXR3b3Jr
IHJlc291cmNlIHNpemUgcmVwb3J0aW5nIGZvciBjaHVua2VkIHRyYW5zZmVyIGVuY29kaW5nLjwv
cD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay1zaXplLWV4cGVjdGVkLWNodW5rZWQudHh0IGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9uZXR3b3JrLXNpemUtZXhwZWN0
ZWQtY2h1bmtlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWRiOWIwM2MyMTk5YWRiNDllNTA5NzJlZjU2ZDMw
MDMyNTE4YjUyNAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMvaW5z
cGVjdG9yL25ldHdvcmsvbmV0d29yay1zaXplLWV4cGVjdGVkLWNodW5rZWQudHh0CkBAIC0wLDAg
KzEsOCBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDIyOiBEb25lLgorVGVzdHMgbmV0d29yayBy
ZXNvdXJjZSBzaXplIHJlcG9ydGluZy4KKworCitodHRwOi8vMTI3LjAuMC4xOjgwMDAvaW5zcGVj
dG9yL25ldHdvcmsvcmVzb3VyY2VzL3Jlc291cmNlLnBocD90eXBlPWltYWdlJnNpemU9NTAwJmd6
aXA9dHJ1ZSVjaHVua2VkPXRydWUKK3Jlc291cmNlU2l6ZTogNTAwCit0cmFuc2ZlclNpemU6IDIw
OAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rvci9uZXR3b3Jr
L3Jlc291cmNlcy9yZXNvdXJjZS5waHAgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL2luc3BlY3Rv
ci9uZXR3b3JrL3Jlc291cmNlcy9yZXNvdXJjZS5waHAKaW5kZXggYjgyYWI1YjVjYzdkNzYyZDk1
OTA1ZjZmMDkyOTdiMjFhN2U2MDk4YS4uNDE1NGM4ZTA1ZjZhN2Q1MjcyNTZhZTM4Y2EzYzQxZGVk
MzJlYTRkMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0
d29yay9yZXNvdXJjZXMvcmVzb3VyY2UucGhwCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL25ldHdvcmsvcmVzb3VyY2VzL3Jlc291cmNlLnBocApAQCAtNiw2ICs2LDcgQEAK
ICAgICAkZ3ppcCA9ICRfR0VUWyJnemlwIl07CiAgICAgJGpzZGVsYXkgPSAkX0dFVFsianNkZWxh
eSJdOwogICAgICRqc2NvbnRlbnQgPSAkX0dFVFsianNjb250ZW50Il07CisgICAgJGNodW5rZWQg
PSAkX0dFVFsiY2h1bmtlZCJdOwogCiAgICAgIyBFbmFibGUgZ3ppcCBjb21wcmVzc2lvbiBpZiBu
ZWVkZWQKICAgICBpZiAoJGd6aXApCkBAIC02NywxNiArNjgsMzAgQEAgX19mb28oPD9waHAgZWNo
bygkanNkZWxheSk/Pik7CiAgICAgICAgICRkYXRhX2xlbiA9IHN0cmxlbigkZGF0YSk7CiAgICAg
ICAgIHByaW50KCRkYXRhKTsKICAgICAgICAgaWYgKCRzaXplKSB7CisgICAgICAgICAgICBpZiAo
JGNodW5rZWQpIHsKKyAgICAgICAgICAgICAgICBvYl9mbHVzaCgpOworICAgICAgICAgICAgICAg
IGZsdXNoKCk7CisgICAgICAgICAgICB9CiAgICAgICAgICAgICBmb3IgKCRpID0gMDsgJHNpemUg
JiYgJGkgPCAkc2l6ZSAtICRkYXRhX2xlbjsgKyskaSkKICAgICAgICAgICAgICAgICBlY2hvKCI9
Iik7CiAgICAgICAgIH0KICAgICB9IGVsc2UgewogICAgICAgICAjIEdlbmVyYXRlIGR1bW15IHRl
eHQvaHRtbC4KICAgICAgICAgaWYgKCRzaXplKSB7Ci0gICAgICAgICAgICBmb3IgKCRpID0gMDsg
JGkgPCAkc2l6ZTsgKyskaSkKKyAgICAgICAgICAgIGZvciAoJGkgPSAwOyAkaSA8ICRzaXplOyAr
KyRpKSB7CisgICAgICAgICAgICAgICAgaWYgKCRjaHVua2VkICYmICgxID09ICRpKSkgeworICAg
ICAgICAgICAgICAgICAgICBvYl9mbHVzaCgpOworICAgICAgICAgICAgICAgICAgICBmbHVzaCgp
OworICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBlY2hvKCIqIik7CisgICAgICAg
ICAgICB9CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBlY2hvKCJIZWxsbyB3b3JsZCIp
OworICAgICAgICAgICAgZWNobygiSGVsbG8gIik7CisgICAgICAgICAgICBpZiAoJGNodW5rZWQp
IHsKKyAgICAgICAgICAgICAgICBvYl9mbHVzaCgpOworICAgICAgICAgICAgICAgIGZsdXNoKCk7
CisgICAgICAgICAgICB9CisgICAgICAgICAgICBlY2hvKCJ3b3JsZCIpOwogICAgICAgICB9CiAg
ICAgfQogPz4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3Rf
ZXhwZWN0YXRpb25zLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rlc3RfZXhw
ZWN0YXRpb25zLnR4dAppbmRleCA2MmUyMTcxYWNjN2I1NTZlNmI0NTVkNTY0N2U4OTZhM2ZmNjNl
N2M4Li45M2IwZTIwOGM2Njg4ODljNjRmMDdkODQ4MTdmNmVmNjBkNjg3YzY1IDEwMDc1NQotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVzdF9leHBlY3RhdGlvbnMudHh0CkBA
IC02NjMsNiArNjYzLDEwIEBAIEJVR1dLNTY0NTQgV0lOIExJTlVYIDogaW5zcGVjdG9yL2VsZW1l
bnRzL211dGF0ZS11bmtub3duLW5vZGUuaHRtbCA9IFBBU1MgVEVYVAogCiBCVUdfUEZFTERNQU4g
U0tJUCA6IGh0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay10aW1pbmcuaHRtbCA9
IEZBSUwKIEJVR19QRkVMRE1BTiBTS0lQIDogaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9u
ZXR3b3JrLXNpemUuaHRtbCA9IEZBSUwKKworLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU2NjAyCitCVUdfVlNFVklLIFNLSVAgOiBodHRwL3Rlc3RzL2luc3BlY3Rv
ci9uZXR3b3JrL25ldHdvcmstc2l6ZS1jaHVua2VkLmh0bWwgPSBGQUlMCisKIEJVR0pBTUVTUiBX
SU4gTElOVVggOiBpbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy1kaXNhYmxlLXRoZW4tZGVsZXRlLmh0
bWwgPSBUSU1FT1VUIFBBU1MKIAogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQK
aW5kZXggZTJkZmFhZjE0NzQ4YWY1MmE2ZjQyMjc3MjRjMWVkOWM3YzQ0ODFiYS4uMjhlNTI2OGU4
MGQxZDRkNTBlNmJjZWRkOTkyMGFhZDQwOWYxNjkxYSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBw
ZWQKQEAgLTEzMzEsMyArMTMzMSw2IEBAIHN2Zy9XM0MtSTE4Ti90ZXh0LWRpckxUUi11Yk92ZXJy
aWRlLnN2Zwogc3ZnL1czQy1JMThOL3RzcGFuLWRpckxUUi11YkVtYmVkLWluLXJ0bC1jb250ZXh0
LnN2Zwogc3ZnL1czQy1JMThOL3RzcGFuLWRpckxUUi11Yk5vbmUtaW4tcnRsLWNvbnRleHQuc3Zn
CiBzdmcvVzNDLUkxOE4vdHNwYW4tZGlyTFRSLXViT3ZlcnJpZGUtaW4tcnRsLWNvbnRleHQuc3Zn
CisKKyMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU2NjkxCitodHRw
L3Rlc3RzL2luc3BlY3Rvci9uZXR3b3JrL25ldHdvcmstc2l6ZS1jaHVua2VkLmh0bWwKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1NraXBwZWQKaW5kZXggMjIxOTE0MTExMmU0ODZiNzdkY2NiMzQ2YjY0ODJmYzJm
OWEzNDFhNC4uZDMwNmRjNmZjMmU3Mzc1MWQzZTM0ODMyMmZkNTdhNzc5MDhkNGQzZCAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vbWFjL1NraXBwZWQKQEAgLTMyNSwzICszMjUsNiBAQCBjb21wb3NpdGluZy90cmFu
c2l0aW9ucy9zaW5ndWxhci1zY2FsZS10cmFuc2l0aW9uLmh0bWwKIAogIyBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTY2ODUKIHdlYmFyY2hpdmUvdGVzdC1saW5rLXJl
bC1pY29uLmh0bWwKKworIyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NTY2OTEKK2h0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay1zaXplLWNodW5rZWQu
aHRtbApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZCBiL0xheW91
dFRlc3RzL3BsYXRmb3JtL3F0L1NraXBwZWQKaW5kZXggY2I1YjAyZTg0MmIzYmE4YjU1MDdlMDc3
ODdiNWNmMDZjYzlkMGJjYy4uNGMyY2Q5ODMxYzdiZWJiZGQ0ZGVhYmY2MzM0OTBlMDRhMjllYjVm
MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vcXQvU2tpcHBlZAorKysgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9xdC9Ta2lwcGVkCkBAIC0zMjM3LDMgKzMyMzcsNiBAQCBodHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L2Jhc2ljLWF1dGguaHRtbAogCiAjIExheW91dFRlc3RDb250cm9s
bGVyOjpjbGVhckFwcGxpY2F0aW9uQ2FjaGVGb3JPcmlnaW4gaXMgbm90IGltcGxlbWVudGVkCiBo
dHRwL3Rlc3RzL2FwcGNhY2hlL29yaWdpbi1kZWxldGUuaHRtbAorCisjIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjY5MQoraHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0
d29yay9uZXR3b3JrLXNpemUtY2h1bmtlZC5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS93aW4vU2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCmlu
ZGV4IDBjMTVkZGQ1NTEyZTVlZjZlOThmZWQ4MjFkOGQxMDVjZDhjNGYyZjQuLjUzM2Q0Y2Q2ZThk
OTM1ZjY3NWRmOWIxMTE3ZjgxMTlmZmQ4ODMwYjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Bs
YXRmb3JtL3dpbi9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVk
CkBAIC00OCw2ICs0OCw5IEBAIGh0dHAvdGVzdHMvaW5zcGVjdG9yL2NvbnNvbGUtd2Vic29ja2V0
LWVycm9yLmh0bWwKIGh0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay1zaXplLmh0
bWwKIGh0dHAvdGVzdHMvaW5zcGVjdG9yL25ldHdvcmsvbmV0d29yay10aW1pbmcuaHRtbAogCisj
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTc5MworaHR0cC90ZXN0
cy9pbnNwZWN0b3IvbmV0d29yay9uZXR3b3JrLXNpemUtY2h1bmtlZC5odG1sCisKICMgRmFpbHMg
PHJkYXI6Ly9wcm9ibGVtLzU2NzQyODk+CiBtZWRpYS92aWRlby1zZWVrLXBhc3QtZW5kLXBhdXNl
ZC5odG1sCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyZjAzNjkzMjMxMWViYWM3ZWQzMTQyNjFmM2M0YWE2OGVi
ZmFhZDRlLi44NTMyNWJiZWNiMDMyNDU4M2ExNTYxZjNlYzI1MTVmNDdhZjAwYmM0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsNDUgQEAKKzIwMTEtMDMtMTggIFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZp
a0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgV2ViIEluc3BlY3RvcjogSW5zcGVjdG9yIGRvZXMgbm90IGFsd2F5cyBzaG93IGNv
cnJlY3QgdHJhbnNmZXIgc2l6ZSAoZm9yIGNvbXByZXNzZWQvY2h1bmtlZCBkYXRhKQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTY2OTEKKworICAgICAg
ICBBZGRlZCB0cmFuc2ZlciBzaXplIHN1cHBvcnQgaW4gaW5zcGVjdG9yIGZvciBjb21wcmVzc2Vk
IGRhdGEuCisKKyAgICAgICAgVGVzdDogaHR0cC90ZXN0cy9pbnNwZWN0b3IvbmV0d29yay9uZXR3
b3JrLXNpemUtY2h1bmtlZC5odG1sCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmlk
bDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZUNvbnRl
bnRMZW5ndGhJbXBsKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uLmg6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJl
Y2VpdmVDb250ZW50TGVuZ3RoKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUmVzb3Vy
Y2VBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JSZXNvdXJjZUFnZW50Ojpk
aWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUmVzb3VyY2VB
Z2VudDo6ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JSZXNvdXJjZUFnZW50Lmg6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3
b3JrTWFuYWdlci5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5OZXR3b3JrRGlzcGF0Y2hlci5w
cm90b3R5cGUuZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgpOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvUmVzb3VyY2UuanM6CisgICAgICAgIChXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJv
dG90eXBlLmdldCB0cmFuc2ZlclNpemUpOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlJlc291cmNl
LnByb3RvdHlwZS5pbmNyZWFzZVRyYW5zZmVyU2l6ZSk6CisgICAgICAgICogbG9hZGVyL1Jlc291
cmNlTG9hZE5vdGlmaWVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlTG9hZE5vdGlm
aWVyOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUxvYWROb3Rp
Zmllcjo6ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aCk6CisgICAgICAgIChXZWJDb3Jl
OjpSZXNvdXJjZUxvYWROb3RpZmllcjo6c2VuZFJlbWFpbmluZ0RlbGVnYXRlTWVzc2FnZXMpOgor
ICAgICAgICAqIGxvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oOgorICAgICAgICAqIGxvYWRl
ci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
QXBwbGljYXRpb25DYWNoZUdyb3VwOjpkaWRSZWNlaXZlRGF0YSk6CisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW06CisgICAgICAgICgtW1dlYkNvcmVS
ZXNvdXJjZUhhbmRsZUFzRGVsZWdhdGUgY29ubmVjdGlvbjpkaWRSZWNlaXZlRGF0YTpsZW5ndGhS
ZWNlaXZlZDpdKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlI
YW5kbGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlFOZXR3b3JrUmVwbHlIYW5kbGVyOjpmb3J3
YXJkRGF0YSk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxl
U291cC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpnb3RDaHVua0NhbGxiYWNrKToKKyAgICAgICAg
KiBwbGF0Zm9ybS9uZXR3b3JrL3dpbi9SZXNvdXJjZUhhbmRsZVdpbi5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6b25SZXF1ZXN0Q29tcGxldGUpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVzb3VyY2VIYW5kbGU6OmZpbGVMb2FkVGltZXIpOgorCiAyMDExLTAzLTIxICBQaGls
aXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBVbnJldmlld2Vk
LCBHVEsgZGlzdGNoZWNrIGJ1aWxkIGZpeC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3IuanNvbiBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3IuanNvbgppbmRleCA0NzY1MGZkOWJmMWVjNDI5YTZjZWRmODFmNGY3Zjk0NDQyYWU1MzJiLi45
ZDMzNjRmOTk5ZTU5MzZmYTEzZWU3MDVjMTU2ODAyNGY5ODU4YmY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KKysrIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvci5qc29uCkBAIC0zMjMsNiArMzIzLDcgQEAKICAgICAgICAgICAg
ICAgICAicGFyYW1ldGVycyI6IFsKICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJpZGVu
dGlmaWVyIiwgInR5cGUiOiAiaW50ZWdlciIgfSwKICAgICAgICAgICAgICAgICAgICAgeyAibmFt
ZSI6ICJ0aW1lIiwgInR5cGUiOiAibnVtYmVyIiB9LAorICAgICAgICAgICAgICAgICAgICB7ICJu
YW1lIjogImRhdGFMZW5ndGgiLCAidHlwZSI6ICJpbnRlZ2VyIiB9LAogICAgICAgICAgICAgICAg
ICAgICB7ICJuYW1lIjogImxlbmd0aFJlY2VpdmVkIiwgInR5cGUiOiAiaW50ZWdlciIgfQogICAg
ICAgICAgICAgICAgIF0KICAgICAgICAgICAgIH0sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCmluZGV4IGE3YWYyZTkwMzQ2
ZmM0NDNlMDM3N2VmMDcyY2FlNDQzOGU3YzUzYjguLmVlNWFmNWZmMjY1Y2Q4NjBkMGRhN2I3YzE5
ODVjNDVhMDE3YzZkZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JJbnN0cnVtZW50YXRpb24uY3BwCkBAIC00NTksMTAgKzQ1OSwxMCBAQCB2b2lkIElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKGNv
bnN0IEluc3BlY3RvcklucwogICAgIH0KIH0KIAotdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoSW1wbChJbnNwZWN0b3JBZ2VudCogaW5zcGVjdG9y
QWdlbnQsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGxlbmd0aFJlY2VpdmVkKQordm9p
ZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoSW1wbChJ
bnNwZWN0b3JBZ2VudCogaW5zcGVjdG9yQWdlbnQsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwg
aW50IGRhdGFMZW5ndGgsIGludCBsZW5ndGhSZWNlaXZlZCkKIHsKICAgICBpZiAoSW5zcGVjdG9y
UmVzb3VyY2VBZ2VudCogcmVzb3VyY2VBZ2VudCA9IHJldHJpZXZlUmVzb3VyY2VBZ2VudChpbnNw
ZWN0b3JBZ2VudCkpCi0gICAgICAgIHJlc291cmNlQWdlbnQtPmRpZFJlY2VpdmVDb250ZW50TGVu
Z3RoKGlkZW50aWZpZXIsIGxlbmd0aFJlY2VpdmVkKTsKKyAgICAgICAgcmVzb3VyY2VBZ2VudC0+
ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoaWRlbnRpZmllciwgZGF0YUxlbmd0aCwgbGVuZ3RoUmVj
ZWl2ZWQpOwogfQogCiB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkRmluaXNoTG9h
ZGluZ0ltcGwoSW5zcGVjdG9yQWdlbnQqIGluc3BlY3RvckFnZW50LCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGRvdWJsZSBmaW5pc2hUaW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCmluZGV4IDI3NTljMTIwMGJkNWY4M2Qw
MTc2ZjMyOGNhMmM3NTAyZTFlZDBmMjcuLmZjNTZlZWJlMTczMzRiZGM2M2U1NWUwMGRlNmIzM2I0
ODZkZGZlODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJ
bnN0cnVtZW50YXRpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uLmgKQEAgLTExOCw3ICsxMTgsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGlj
IHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlRGF0YShjb25zdCBJbnNwZWN0b3JJbnN0cnVtZW50YXRp
b25Db29raWUmKTsKICAgICBzdGF0aWMgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIHdp
bGxSZWNlaXZlUmVzb3VyY2VSZXNwb25zZShGcmFtZSosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIHN0YXRpYyB2b2lkIGRpZFJlY2VpdmVS
ZXNvdXJjZVJlc3BvbnNlKGNvbnN0IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSYsIHVu
c2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRnJhbWUq
LCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBsZW5ndGhSZWNlaXZlZCk7CisgICAgc3Rh
dGljIHZvaWQgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRnJhbWUqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoLCBpbnQgbGVuZ3RoUmVjZWl2ZWQpOwogICAgIHN0YXRp
YyB2b2lkIGRpZEZpbmlzaExvYWRpbmcoRnJhbWUqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIs
IGRvdWJsZSBmaW5pc2hUaW1lKTsKICAgICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9hZGluZyhGcmFt
ZSosIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgY29uc3QgUmVzb3VyY2VFcnJvciYpOwogICAg
IHN0YXRpYyB2b2lkIHJlc291cmNlUmV0cmlldmVkQnlYTUxIdHRwUmVxdWVzdChTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIHNv
dXJjZVN0cmluZywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgc2VuZFVSTCwgdW5z
aWduZWQgc2VuZExpbmVOdW1iZXIpOwpAQCAtMjM1LDcgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAg
c3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlRGF0YUltcGwoY29uc3QgSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uQ29va2llJik7CiAgICAgc3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bkNvb2tpZSB3aWxsUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKEluc3BlY3RvckFnZW50Kiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAg
c3RhdGljIHZvaWQgZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9uc2VJbXBsKGNvbnN0IEluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbkNvb2tpZSYsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgRG9jdW1l
bnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7Ci0gICAgc3RhdGljIHZvaWQgZGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGhJbXBsKEluc3BlY3RvckFnZW50KiwgdW5zaWduZWQgbG9uZyBp
ZGVudGlmaWVyLCBpbnQgbGVuZ3RoUmVjZWl2ZWQpOworICAgIHN0YXRpYyB2b2lkIGRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoSW1wbChJbnNwZWN0b3JBZ2VudCosIHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgaW50IGRhdGFMZW5ndGgsIGludCBsZW5ndGhSZWNlaXZlZCk7CiAgICAgc3RhdGljIHZv
aWQgZGlkRmluaXNoTG9hZGluZ0ltcGwoSW5zcGVjdG9yQWdlbnQqLCB1bnNpZ25lZCBsb25nIGlk
ZW50aWZpZXIsIGRvdWJsZSBmaW5pc2hUaW1lKTsKICAgICBzdGF0aWMgdm9pZCBkaWRGYWlsTG9h
ZGluZ0ltcGwoSW5zcGVjdG9yQWdlbnQqLCB1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGNvbnN0
IFJlc291cmNlRXJyb3ImKTsKICAgICBzdGF0aWMgdm9pZCByZXNvdXJjZVJldHJpZXZlZEJ5WE1M
SHR0cFJlcXVlc3RJbXBsKEluc3BlY3RvckFnZW50KiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVy
LCBjb25zdCBTdHJpbmcmIHNvdXJjZVN0cmluZywgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0
cmluZyYgc2VuZFVSTCwgdW5zaWduZWQgc2VuZExpbmVOdW1iZXIpOwpAQCAtNjc2LDExICs2NzYs
MTEgQEAgaW5saW5lIHZvaWQgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlUmVz
b3VyY2VSZXNwb25zZShjb25zdCBJbnNwZWN0b3IKICNlbmRpZgogfQogCi1pbmxpbmUgdm9pZCBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKEZyYW1lKiBm
cmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgbGVuZ3RoUmVjZWl2ZWQpCitpbmxp
bmUgdm9pZCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3Ro
KEZyYW1lKiBmcmFtZSwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCwg
aW50IGxlbmd0aFJlY2VpdmVkKQogewogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgaWYgKElu
c3BlY3RvckFnZW50KiBpbnNwZWN0b3JBZ2VudCA9IGluc3BlY3RvckFnZW50V2l0aEZyb250ZW5k
Rm9yRnJhbWUoZnJhbWUpKQotICAgICAgICBkaWRSZWNlaXZlQ29udGVudExlbmd0aEltcGwoaW5z
cGVjdG9yQWdlbnQsIGlkZW50aWZpZXIsIGxlbmd0aFJlY2VpdmVkKTsKKyAgICAgICAgZGlkUmVj
ZWl2ZUNvbnRlbnRMZW5ndGhJbXBsKGluc3BlY3RvckFnZW50LCBpZGVudGlmaWVyLCBkYXRhTGVu
Z3RoLCBsZW5ndGhSZWNlaXZlZCk7CiAjZW5kaWYKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuY3BwCmluZGV4IGVlMzViZTI5NWE1
Nzk2MTQyMWZkNzZmN2FhOTg0M2MwOTMwYmY2NWYuLjJiYzgyYTMzOGQ5Mzg5MDIxNjM4MWQ5NmFi
MDRmNWI5MDQ3YTJiNTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JSZXNvdXJjZUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yUmVzb3VyY2VBZ2VudC5jcHAKQEAgLTM3OCwxMiArMzc4LDEyIEBAIHZvaWQgSW5zcGVj
dG9yUmVzb3VyY2VBZ2VudDo6ZGlkUmVjZWl2ZVJlc3BvbnNlKHVuc2lnbmVkIGxvbmcgaWRlbnRp
ZmllciwgRG9jdW1lCiAgICAgLy8gSWYgd2UgcmV2YWxpZGF0ZWQgdGhlIHJlc291cmNlIGFuZCBn
b3QgTm90IG1vZGlmaWVkLCBzZW5kIGNvbnRlbnQgbGVuZ3RoIGZvbGxvd2luZyBkaWRSZWNlaXZl
UmVzcG9uc2UKICAgICAvLyBhcyB0aGVyZSB3aWxsIGJlIG5vIGNhbGxzIHRvIGRpZFJlY2VpdmVD
b250ZW50TGVuZ3RoIGZyb20gdGhlIG5ldHdvcmsgc3RhY2suCiAgICAgaWYgKGNhY2hlZFJlc291
cmNlU2l6ZSAmJiByZXNwb25zZS5odHRwU3RhdHVzQ29kZSgpID09IDMwNCkKLSAgICAgICAgZGlk
UmVjZWl2ZUNvbnRlbnRMZW5ndGgoaWRlbnRpZmllciwgY2FjaGVkUmVzb3VyY2VTaXplKTsKKyAg
ICAgICAgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoaWRlbnRpZmllciwgY2FjaGVkUmVzb3VyY2VT
aXplLCAwKTsKIH0KIAotdm9pZCBJbnNwZWN0b3JSZXNvdXJjZUFnZW50OjpkaWRSZWNlaXZlQ29u
dGVudExlbmd0aCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBsZW5ndGhSZWNlaXZlZCkK
K3ZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgodW5z
aWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0aCwgaW50IGxlbmd0aFJlY2VpdmVk
KQogewotICAgIG1fZnJvbnRlbmQtPmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHN0YXRpY19jYXN0
PGludD4oaWRlbnRpZmllciksIGN1cnJlbnRUaW1lKCksIGxlbmd0aFJlY2VpdmVkKTsKKyAgICBt
X2Zyb250ZW5kLT5kaWRSZWNlaXZlQ29udGVudExlbmd0aChzdGF0aWNfY2FzdDxpbnQ+KGlkZW50
aWZpZXIpLCBjdXJyZW50VGltZSgpLCBkYXRhTGVuZ3RoLCBsZW5ndGhSZWNlaXZlZCk7CiB9CiAK
IHZvaWQgSW5zcGVjdG9yUmVzb3VyY2VBZ2VudDo6ZGlkRmluaXNoTG9hZGluZyh1bnNpZ25lZCBs
b25nIGlkZW50aWZpZXIsIGRvdWJsZSBmaW5pc2hUaW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclJlc291cmNlQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JSZXNvdXJjZUFnZW50LmgKaW5kZXggMDdjNWRjMmFkYjk2NzMy
ZDM1NzkzMGE1ZDU0MzcwNGJlM2FkZWE1Yy4uNmM0ZTA1YjBjNGYyYTAyYTg1MmU5ZTdlODQyODhl
NzE5Y2U5ZTUwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clJlc291cmNlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
UmVzb3VyY2VBZ2VudC5oCkBAIC05Miw3ICs5Miw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHdpbGxT
ZW5kUmVxdWVzdCh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIFJlc291cmNlUmVxdWVzdCYsIGNv
bnN0IFJlc291cmNlUmVzcG9uc2UmIHJlZGlyZWN0UmVzcG9uc2UpOwogICAgIHZvaWQgbWFya1Jl
c291cmNlQXNDYWNoZWQodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyKTsKICAgICB2b2lkIGRpZFJl
Y2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIERvY3VtZW50TG9hZGVyKiBs
YW9kZXIsIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGRpZFJlY2VpdmVDb250
ZW50TGVuZ3RoKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGxlbmd0aFJlY2VpdmVkKTsK
KyAgICB2b2lkIGRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmll
ciwgaW50IGRhdGFMZW5ndGgsIGludCBsZW5ndGhSZWNlaXZlZCk7CiAgICAgdm9pZCBkaWRGaW5p
c2hMb2FkaW5nKHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgZG91YmxlIGZpbmlzaFRpbWUpOwog
ICAgIHZvaWQgZGlkRmFpbExvYWRpbmcodW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBS
ZXNvdXJjZUVycm9yJik7CiAgICAgdm9pZCBkaWRMb2FkUmVzb3VyY2VGcm9tTWVtb3J5Q2FjaGUo
RG9jdW1lbnRMb2FkZXIqLCBjb25zdCBDYWNoZWRSZXNvdXJjZSopOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9OZXR3b3JrTWFuYWdlci5qcyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvTmV0d29ya01hbmFnZXIuanMKaW5kZXggODQ5
MmI5ZTM3YmFjNWQ4ODA5OTViY2RlZDEwZTAwYmIxYTc0NWZlMi4uNWZjODVjYTYyNGZkYTExZjVj
ZTI1ZGJiZmEyNTk5NWFlM2EwZDc4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL2Zyb250LWVuZC9OZXR3b3JrTWFuYWdlci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvZnJvbnQtZW5kL05ldHdvcmtNYW5hZ2VyLmpzCkBAIC0xODYsMTMgKzE4NiwxNSBAQCBX
ZWJJbnNwZWN0b3IuTmV0d29ya0Rpc3BhdGNoZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlz
Ll9yZXNvdXJjZVRyZWVNb2RlbC5hZGRSZXNvdXJjZVRvRnJhbWUocmVzb3VyY2UubG9hZGVyLmZy
YW1lSWQsIHJlc291cmNlKTsKICAgICB9LAogCi0gICAgZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGg6
IGZ1bmN0aW9uKGlkZW50aWZpZXIsIHRpbWUsIGxlbmd0aFJlY2VpdmVkKQorICAgIGRpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoOiBmdW5jdGlvbihpZGVudGlmaWVyLCB0aW1lLCBkYXRhTGVuZ3RoLCBs
ZW5ndGhSZWNlaXZlZCkKICAgICB7CiAgICAgICAgIHZhciByZXNvdXJjZSA9IHRoaXMuX2luZmxp
Z2h0UmVzb3VyY2VzQnlJZFtpZGVudGlmaWVyXTsKICAgICAgICAgaWYgKCFyZXNvdXJjZSkKICAg
ICAgICAgICAgIHJldHVybjsKIAotICAgICAgICByZXNvdXJjZS5yZXNvdXJjZVNpemUgKz0gbGVu
Z3RoUmVjZWl2ZWQ7CisgICAgICAgIHJlc291cmNlLnJlc291cmNlU2l6ZSArPSBkYXRhTGVuZ3Ro
OworICAgICAgICBpZiAobGVuZ3RoUmVjZWl2ZWQgIT0gLTEpCisgICAgICAgICAgICByZXNvdXJj
ZS5pbmNyZWFzZVRyYW5zZmVyU2l6ZShsZW5ndGhSZWNlaXZlZCk7CiAgICAgICAgIHJlc291cmNl
LmVuZFRpbWUgPSB0aW1lOwogCiAgICAgICAgIHRoaXMuX3VwZGF0ZVJlc291cmNlKHJlc291cmNl
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3Vy
Y2UuanMgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1Jlc291cmNlLmpzCmlu
ZGV4IDZjZjViOWNjNmI2N2VlZjVkZGYyMWQ2NWY0ZDAzNGJhYTBjMDJiZWMuLjJiZjVkOWZkYzg1
ZjY2YzAzOTU2YjQ1MjJlM2QzZDM2YTRjMDFiYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvUmVzb3VyY2UuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9SZXNvdXJjZS5qcwpAQCAtMjQxLDcgKzI0MSwxMCBAQCBXZWJJbnNw
ZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewogICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAg
ICAgIGlmICh0aGlzLnN0YXR1c0NvZGUgPT09IDMwNCkgLy8gTm90IG1vZGlmaWVkCiAgICAgICAg
ICAgICByZXR1cm4gdGhpcy5fcmVzcG9uc2VIZWFkZXJzU2l6ZTsKLSAgICAgICAgLy8gRklYTUU6
IFdlIHByZWZlciB1c2luZyBDb250ZW50LUxlbmd0aCBvdmVyIHJlc291cmNlU2l6ZSBhcworICAg
ICAgICBpZiAodGhpcy5fdHJhbnNmZXJTaXplICE9PSB1bmRlZmluZWQpCisgICAgICAgICAgICBy
ZXR1cm4gdGhpcy5fdHJhbnNmZXJTaXplOworICAgICAgICAvLyBJZiB3ZSBkaWQgbm90IHJlY2Vp
dmUgYWN0dWFsIHRyYW5zZmVyIHNpemUgZnJvbSBuZXR3b3JrCisgICAgICAgIC8vIHN0YWNrLCB3
ZSBwcmVmZXIgdXNpbmcgQ29udGVudC1MZW5ndGggb3ZlciByZXNvdXJjZVNpemUgYXMKICAgICAg
ICAgLy8gcmVzb3VyY2VTaXplIG1heSBkaWZmZXIgZnJvbSBhY3R1YWwgdHJhbnNmZXIgc2l6ZSBp
ZiBwbGF0Zm9ybSdzCiAgICAgICAgIC8vIG5ldHdvcmsgc3RhY2sgcGVyZm9ybWVkIGRlY29kaW5n
IChlLmcuIGd6aXAgZGVjb21wcmVzc2lvbikuCiAgICAgICAgIC8vIFRoZSBDb250ZW50LUxlbmd0
aCwgdGhvdWdoLCBpcyBleHBlY3RlZCB0byBjb21lIGZyb20gcmF3CkBAIC0yNDksMTEgKzI1Miwx
NiBAQCBXZWJJbnNwZWN0b3IuUmVzb3VyY2UucHJvdG90eXBlID0gewogICAgICAgICAvLyBUaGlz
IHdvbid0IHdvcmsgZm9yIGNodW5rZWQgY29udGVudCBlbmNvZGluZywgc28gZmFsbCBiYWNrIHRv
CiAgICAgICAgIC8vIHJlc291cmNlU2l6ZSB3aGVuIHdlIGRvbid0IGhhdmUgQ29udGVudC1MZW5n
dGguIFRoaXMgc3RpbGwgd29uJ3QKICAgICAgICAgLy8gd29yayBmb3IgY2h1bmtzIHdpdGggbm9u
LXRyaXZpYWwgZW5jb2RpbmdzLiBXZSBuZWVkIGEgd2F5IHRvCi0gICAgICAgIC8vIGdldCBhY3Rh
dWwgdHJhbnNmZXIgc2l6ZSBmcm9tIHRoZSBuZXR3b3JrIHN0YWNrLgorICAgICAgICAvLyBnZXQg
YWN0dWFsIHRyYW5zZmVyIHNpemUgZnJvbSB0aGUgbmV0d29yayBzdGFjay4KICAgICAgICAgdmFy
IGJvZHlTaXplID0gTnVtYmVyKHRoaXMucmVzcG9uc2VIZWFkZXJzWyJDb250ZW50LUxlbmd0aCJd
IHx8IHRoaXMucmVzb3VyY2VTaXplKTsKICAgICAgICAgcmV0dXJuIHRoaXMuX3Jlc3BvbnNlSGVh
ZGVyc1NpemUgKyBib2R5U2l6ZTsKICAgICB9LAogCisgICAgaW5jcmVhc2VUcmFuc2ZlclNpemU6
IGZ1bmN0aW9uKHgpCisgICAgeworICAgICAgICB0aGlzLl90cmFuc2ZlclNpemUgPSAodGhpcy5f
dHJhbnNmZXJTaXplIHx8IDApICsgeDsKKyAgICB9LAorCiAgICAgZ2V0IGV4cGVjdGVkQ29udGVu
dExlbmd0aCgpCiAgICAgewogICAgICAgICByZXR1cm4gdGhpcy5fZXhwZWN0ZWRDb250ZW50TGVu
Z3RoIHx8IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2Fk
Tm90aWZpZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1Jlc291cmNlTG9hZE5vdGlmaWVy
LmNwcAppbmRleCBjOTI4NTU3MTJkYmEwNjdhZjA5MjE5MmY2NDdmY2YyZDc4ZWZmNWQwLi40ZDZj
ZTRhZmUyOWI0YWFhYmU4MzhkMmRjYjk2MzE3ZjBmYjVjNjk3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5jcHAKQEAgLTc0LDEyICs3NCwxMiBAQCB2
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlUmVzcG9uc2UoUmVzb3VyY2VMb2Fk
ZXIqIGxvYWRlciwgY29uc3QgUmVzbwogICAgIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKGxv
YWRlci0+ZG9jdW1lbnRMb2FkZXIoKSwgbG9hZGVyLT5pZGVudGlmaWVyKCksIHIpOwogfQogCi12
b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUxvYWRlciog
bG9hZGVyLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoLCBpbnQgbGVuZ3RoUmVjZWl2ZWQp
Cit2b2lkIFJlc291cmNlTG9hZE5vdGlmaWVyOjpkaWRSZWNlaXZlRGF0YShSZXNvdXJjZUxvYWRl
ciogbG9hZGVyLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCwgaW50IGxlbmd0aFJl
Y2VpdmVkKQogewogICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpKQotICAgICAg
ICBwYWdlLT5wcm9ncmVzcygpLT5pbmNyZW1lbnRQcm9ncmVzcyhsb2FkZXItPmlkZW50aWZpZXIo
KSwgZGF0YSwgbGVuZ3RoKTsKKyAgICAgICAgcGFnZS0+cHJvZ3Jlc3MoKS0+aW5jcmVtZW50UHJv
Z3Jlc3MobG9hZGVyLT5pZGVudGlmaWVyKCksIGRhdGEsIGRhdGFMZW5ndGgpOwogCi0gICAgZGlz
cGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChsb2FkZXItPmRvY3VtZW50TG9hZGVyKCksIGxv
YWRlci0+aWRlbnRpZmllcigpLCBsZW5ndGhSZWNlaXZlZCk7CisgICAgZGlzcGF0Y2hEaWRSZWNl
aXZlQ29udGVudExlbmd0aChsb2FkZXItPmRvY3VtZW50TG9hZGVyKCksIGxvYWRlci0+aWRlbnRp
ZmllcigpLCBkYXRhTGVuZ3RoLCBsZW5ndGhSZWNlaXZlZCk7CiB9CiAKIHZvaWQgUmVzb3VyY2VM
b2FkTm90aWZpZXI6OmRpZEZpbmlzaExvYWQoUmVzb3VyY2VMb2FkZXIqIGxvYWRlciwgZG91Ymxl
IGZpbmlzaFRpbWUpCkBAIC0xMzIsMTEgKzEzMiwxMSBAQCB2b2lkIFJlc291cmNlTG9hZE5vdGlm
aWVyOjpkaXNwYXRjaERpZFJlY2VpdmVSZXNwb25zZShEb2N1bWVudExvYWRlciogbG9hZGVyLCB1
bgogICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZVJlc291cmNlUmVzcG9u
c2UoY29va2llLCBpZGVudGlmaWVyLCBsb2FkZXIsIHIpOwogfQogCi12b2lkIFJlc291cmNlTG9h
ZE5vdGlmaWVyOjpkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERvY3VtZW50TG9hZGVy
KiBsb2FkZXIsIHVuc2lnbmVkIGxvbmcgaWRlbnRpZmllciwgaW50IGxlbmd0aCkKK3ZvaWQgUmVz
b3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1l
bnRMb2FkZXIqIGxvYWRlciwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgZGF0YUxlbmd0
aCwgaW50IGxlbmd0aFJlY2VpdmVkKQogewotICAgIG1fZnJhbWUtPmxvYWRlcigpLT5jbGllbnQo
KS0+ZGlzcGF0Y2hEaWRSZWNlaXZlQ29udGVudExlbmd0aChsb2FkZXIsIGlkZW50aWZpZXIsIGxl
bmd0aCk7CisgICAgbV9mcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpLT5kaXNwYXRjaERpZFJlY2Vp
dmVDb250ZW50TGVuZ3RoKGxvYWRlciwgaWRlbnRpZmllciwgZGF0YUxlbmd0aCk7CiAKLSAgICBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKG1fZnJhbWUs
IGlkZW50aWZpZXIsIGxlbmd0aCk7CisgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRS
ZWNlaXZlQ29udGVudExlbmd0aChtX2ZyYW1lLCBpZGVudGlmaWVyLCBkYXRhTGVuZ3RoLCBsZW5n
dGhSZWNlaXZlZCk7CiB9CiAKIHZvaWQgUmVzb3VyY2VMb2FkTm90aWZpZXI6OmRpc3BhdGNoRGlk
RmluaXNoTG9hZGluZyhEb2N1bWVudExvYWRlciogbG9hZGVyLCB1bnNpZ25lZCBsb25nIGlkZW50
aWZpZXIsIGRvdWJsZSBmaW5pc2hUaW1lKQpAQCAtMTYwLDcgKzE2MCw3IEBAIHZvaWQgUmVzb3Vy
Y2VMb2FkTm90aWZpZXI6OnNlbmRSZW1haW5pbmdEZWxlZ2F0ZU1lc3NhZ2VzKERvY3VtZW50TG9h
ZGVyKiBsb2FkZXIsCiAgICAgICAgIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNlKGxvYWRlciwg
aWRlbnRpZmllciwgcmVzcG9uc2UpOwogCiAgICAgaWYgKGxlbmd0aCA+IDApCi0gICAgICAgIGRp
c3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgobG9hZGVyLCBpZGVudGlmaWVyLCBsZW5ndGgp
OworICAgICAgICBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKGxvYWRlciwgaWRlbnRp
ZmllciwgbGVuZ3RoLCAwKTsKIAogICAgIGlmIChlcnJvci5pc051bGwoKSkKICAgICAgICAgZGlz
cGF0Y2hEaWRGaW5pc2hMb2FkaW5nKGxvYWRlciwgaWRlbnRpZmllciwgMCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvUmVzb3VyY2VMb2FkTm90aWZpZXIuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3RpZmllci5oCmluZGV4IGE2ZDkyZmI3ZGQ0YzJl
ODU1MjQ3NTI1YzM4NzU1YmFjMDEwZTMxOTQuLmYwM2VmYTM1M2FjY2JhZDFlNGVmNjVkZjAxYTcy
ZmM5YjI2MTU3OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxv
YWROb3RpZmllci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9SZXNvdXJjZUxvYWROb3Rp
Zmllci5oCkBAIC01MywxNCArNTMsMTQgQEAgcHVibGljOgogCiAgICAgdm9pZCB3aWxsU2VuZFJl
cXVlc3QoUmVzb3VyY2VMb2FkZXIqLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJl
c3BvbnNlJiByZWRpcmVjdFJlc3BvbnNlKTsKICAgICB2b2lkIGRpZFJlY2VpdmVSZXNwb25zZShS
ZXNvdXJjZUxvYWRlciosIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKTsKLSAgICB2b2lkIGRpZFJl
Y2VpdmVEYXRhKFJlc291cmNlTG9hZGVyKiwgY29uc3QgY2hhciosIGludCwgaW50IGxlbmd0aFJl
Y2VpdmVkKTsKKyAgICB2b2lkIGRpZFJlY2VpdmVEYXRhKFJlc291cmNlTG9hZGVyKiwgY29uc3Qg
Y2hhciosIGludCBkYXRhTGVuZ3RoLCBpbnQgbGVuZ3RoUmVjZWl2ZWQpOwogICAgIHZvaWQgZGlk
RmluaXNoTG9hZChSZXNvdXJjZUxvYWRlciosIGRvdWJsZSBmaW5pc2hUaW1lKTsKICAgICB2b2lk
IGRpZEZhaWxUb0xvYWQoUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUVycm9yJik7CiAK
ICAgICB2b2lkIGFzc2lnbklkZW50aWZpZXJUb0luaXRpYWxSZXF1ZXN0KHVuc2lnbmVkIGxvbmcg
aWRlbnRpZmllciwgRG9jdW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKTsKICAg
ICB2b2lkIGRpc3BhdGNoV2lsbFNlbmRSZXF1ZXN0KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQg
bG9uZyBpZGVudGlmaWVyLCBSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBSZXNvdXJjZVJlc3BvbnNl
JiByZWRpcmVjdFJlc3BvbnNlKTsKICAgICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZVJlc3BvbnNl
KERvY3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBjb25zdCBSZXNvdXJj
ZVJlc3BvbnNlJik7Ci0gICAgdm9pZCBkaXNwYXRjaERpZFJlY2VpdmVDb250ZW50TGVuZ3RoKERv
Y3VtZW50TG9hZGVyKiwgdW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBpbnQgbGVuZ3RoKTsKKyAg
ICB2b2lkIGRpc3BhdGNoRGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgoRG9jdW1lbnRMb2FkZXIqLCB1
bnNpZ25lZCBsb25nIGlkZW50aWZpZXIsIGludCBkYXRhTGVuZ3RoLCBpbnQgbGVuZ3RoUmVjZWl2
ZWQpOwogICAgIHZvaWQgZGlzcGF0Y2hEaWRGaW5pc2hMb2FkaW5nKERvY3VtZW50TG9hZGVyKiwg
dW5zaWduZWQgbG9uZyBpZGVudGlmaWVyLCBkb3VibGUgZmluaXNoVGltZSk7CiAgICAgdm9pZCBk
aXNwYXRjaFRyYW5zZmVyTG9hZGluZ1Jlc291cmNlRnJvbVBhZ2UodW5zaWduZWQgbG9uZywgRG9j
dW1lbnRMb2FkZXIqLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBQYWdlKik7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlR3JvdXAu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91
cC5jcHAKaW5kZXggYjMzMTQyNTI3OTQzMTg5MWU0OWE4ODE5NTk2MWJhM2NmYTA2M2U4ZC4uZDMw
NzVlNGMwOWIzZjIxNmJjNjg3MTBiZDY5NjM0OWE1M2MwNmI4MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVHcm91cC5jcHAK
QEAgLTU1NSw4ICs1NTUsMTAgQEAgdm9pZCBBcHBsaWNhdGlvbkNhY2hlR3JvdXA6OmRpZFJlY2Vp
dmVSZXNwb25zZShSZXNvdXJjZUhhbmRsZSogaGFuZGxlLCBjb25zdCBSZXMKIAogdm9pZCBBcHBs
aWNhdGlvbkNhY2hlR3JvdXA6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiBoYW5kbGUs
IGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgsIGludCBsZW5ndGhSZWNlaXZlZCkKIHsKKyAg
ICBVTlVTRURfUEFSQU0obGVuZ3RoUmVjZWl2ZWQpOworCiAjaWYgRU5BQkxFKElOU1BFQ1RPUikK
LSAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFJlY2VpdmVDb250ZW50TGVuZ3RoKG1f
ZnJhbWUsIG1fY3VycmVudFJlc291cmNlSWRlbnRpZmllciwgbGVuZ3RoUmVjZWl2ZWQpOworICAg
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZUNvbnRlbnRMZW5ndGgobV9mcmFt
ZSwgbV9jdXJyZW50UmVzb3VyY2VJZGVudGlmaWVyLCBsZW5ndGgsIDApOwogI2VuZGlmCiAKICAg
ICBpZiAoaGFuZGxlID09IG1fbWFuaWZlc3RIYW5kbGUpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvbWFjL1Jlc291cmNlSGFuZGxlTWFjLm1tIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW0KaW5kZXgg
Nzg5MjYxOThlODNjZTAyOTYwODYyODBkMGY2ODVlNzFmNTMyMDViYi4uM2JhYjdiNjEyMmNlYWVj
Nzk2YTA1ZmEwNjJmYzYwZTQ3NjlmNDNiNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW0KKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9tYWMvUmVzb3VyY2VIYW5kbGVNYWMubW0KQEAgLTkxMyw2ICs5
MTMsNyBAQCBTdHJpbmcgUmVzb3VyY2VIYW5kbGU6OnByaXZhdGVCcm93c2luZ1N0b3JhZ2VTZXNz
aW9uSWRlbnRpZmllckRlZmF1bHRCYXNlKCkKIC0gKHZvaWQpY29ubmVjdGlvbjooTlNVUkxDb25u
ZWN0aW9uICopY29ubmVjdGlvbiBkaWRSZWNlaXZlRGF0YTooTlNEYXRhICopZGF0YSBsZW5ndGhS
ZWNlaXZlZDoobG9uZyBsb25nKWxlbmd0aFJlY2VpdmVkCiB7CiAgICAgVU5VU0VEX1BBUkFNKGNv
bm5lY3Rpb24pOworICAgIFVOVVNFRF9QQVJBTShsZW5ndGhSZWNlaXZlZCk7CiAKICAgICBMT0co
TmV0d29yaywgIkhhbmRsZSAlcCBkZWxlZ2F0ZSBjb25uZWN0aW9uOiVwIGRpZFJlY2VpdmVEYXRh
OiVwIGxlbmd0aFJlY2VpdmVkOiVsbGQiLCBtX2hhbmRsZSwgY29ubmVjdGlvbiwgZGF0YSwgbGVu
Z3RoUmVjZWl2ZWQpOwogCkBAIC05MjIsNyArOTIzLDEwIEBAIFN0cmluZyBSZXNvdXJjZUhhbmRs
ZTo6cHJpdmF0ZUJyb3dzaW5nU3RvcmFnZVNlc3Npb25JZGVudGlmaWVyRGVmYXVsdEJhc2UoKQog
ICAgIC8vIEhvd2V2ZXIsIHdpdGggdG9kYXkncyBjb21wdXRlcnMgYW5kIG5ldHdvcmtpbmcgc3Bl
ZWRzLCB0aGlzIHdvbid0IGhhcHBlbiBpbiBwcmFjdGljZS4KICAgICAvLyBDb3VsZCBiZSBhbiBp
c3N1ZSB3aXRoIGEgZ2lhbnQgbG9jYWwgZmlsZS4KICAgICBDYWxsYmFja0d1YXJkIGd1YXJkOwot
ICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkUmVjZWl2ZURhdGEobV9oYW5kbGUsIChjb25zdCBj
aGFyKilbZGF0YSBieXRlc10sIFtkYXRhIGxlbmd0aF0sIHN0YXRpY19jYXN0PGludD4obGVuZ3Ro
UmVjZWl2ZWQpKTsKKyAgICAvLyBGSVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE5NzkzCisgICAgLy8gLTEgbWVhbnMgd2UgZG8gbm90IHByb3ZpZGUgYW55IGRh
dGEgYWJvdXQgdHJhbnNmZXIgc2l6ZSB0byBpbnNwZWN0b3Igc28gaXQgd291bGQgdXNlCisgICAg
Ly8gQ29udGVudC1MZW5ndGggaGVhZGVycyBvciBjb250ZW50IHNpemUgdG8gc2hvdyB0cmFuc2Zl
ciBzaXplLgorICAgIG1faGFuZGxlLT5jbGllbnQoKS0+ZGlkUmVjZWl2ZURhdGEobV9oYW5kbGUs
IChjb25zdCBjaGFyKilbZGF0YSBieXRlc10sIFtkYXRhIGxlbmd0aF0sIC0xKTsKIH0KIAogLSAo
dm9pZCljb25uZWN0aW9uOihOU1VSTENvbm5lY3Rpb24gKiljb25uZWN0aW9uIHdpbGxTdG9wQnVm
ZmVyaW5nRGF0YTooTlNEYXRhICopZGF0YQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9xdC9RTmV0d29ya1JlcGx5SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVyLmNwcAppbmRleCA5MWJh
MDAzYTRmMDJlMjkyYTAzMjJjYTQ1NzFmMjg0YzgxZGQ0MTYyLi4yNzk4YjYyOWQxYjlmMjRmNDgw
YjE2YjliNmU0YTVhNjJkODZkM2E1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL3F0L1FOZXR3b3JrUmVwbHlIYW5kbGVyLmNwcApAQCAtNDc4LDgg
KzQ3OCwxMSBAQCB2b2lkIFFOZXR3b3JrUmVwbHlIYW5kbGVyOjpmb3J3YXJkRGF0YSgpCiAgICAg
aWYgKCFjbGllbnQpCiAgICAgICAgIHJldHVybjsKIAorICAgIC8vIEZJWE1FOiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTMKKyAgICAvLyAtMSBtZWFucyB3ZSBk
byBub3QgcHJvdmlkZSBhbnkgZGF0YSBhYm91dCB0cmFuc2ZlciBzaXplIHRvIGluc3BlY3RvciBz
byBpdCB3b3VsZCB1c2UKKyAgICAvLyBDb250ZW50LUxlbmd0aCBoZWFkZXJzIG9yIGNvbnRlbnQg
c2l6ZSB0byBzaG93IHRyYW5zZmVyIHNpemUuCiAgICAgaWYgKCFkYXRhLmlzRW1wdHkoKSkKLSAg
ICAgICAgY2xpZW50LT5kaWRSZWNlaXZlRGF0YShtX3Jlc291cmNlSGFuZGxlLCBkYXRhLmNvbnN0
RGF0YSgpLCBkYXRhLmxlbmd0aCgpLCBkYXRhLmxlbmd0aCgpIC8qRml4TWUqLyk7CisgICAgICAg
IGNsaWVudC0+ZGlkUmVjZWl2ZURhdGEobV9yZXNvdXJjZUhhbmRsZSwgZGF0YS5jb25zdERhdGEo
KSwgZGF0YS5sZW5ndGgoKSwgLTEpOwogfQogCiB2b2lkIFFOZXR3b3JrUmVwbHlIYW5kbGVyOjp1
cGxvYWRQcm9ncmVzcyhxaW50NjQgYnl0ZXNTZW50LCBxaW50NjQgYnl0ZXNUb3RhbCkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhhbmRs
ZVNvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNl
SGFuZGxlU291cC5jcHAKaW5kZXggZDQxMGZhMzhkZmZmZDIzNzQ2ZDE2ZDAyN2M2NTI0MDNmMDky
YTA4ZS4uZTVkYTBlMzY1NmM5OTdmMmJiMmJmNjZhODJhN2EzYjU3Y2I4MmIwNiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNl
SGFuZGxlU291cC5jcHAKQEAgLTM2NCw3ICszNjQsMTAgQEAgc3RhdGljIHZvaWQgZ290Q2h1bmtD
YWxsYmFjayhTb3VwTWVzc2FnZSogbXNnLCBTb3VwQnVmZmVyKiBjaHVuaywgZ3BvaW50ZXIgZGF0
YSkKIAogICAgIEFTU0VSVCghZC0+bV9yZXNwb25zZS5pc051bGwoKSk7CiAKLSAgICBjbGllbnQt
PmRpZFJlY2VpdmVEYXRhKGhhbmRsZS5nZXQoKSwgY2h1bmstPmRhdGEsIGNodW5rLT5sZW5ndGgs
IGNodW5rLT5sZW5ndGgpOworICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTk3OTMKKyAgICAvLyAtMSBtZWFucyB3ZSBkbyBub3QgcHJvdmlkZSBh
bnkgZGF0YSBhYm91dCB0cmFuc2ZlciBzaXplIHRvIGluc3BlY3RvciBzbyBpdCB3b3VsZCB1c2UK
KyAgICAvLyBDb250ZW50LUxlbmd0aCBoZWFkZXJzIG9yIGNvbnRlbnQgc2l6ZSB0byBzaG93IHRy
YW5zZmVyIHNpemUuCisgICAgY2xpZW50LT5kaWRSZWNlaXZlRGF0YShoYW5kbGUuZ2V0KCksIGNo
dW5rLT5kYXRhLCBjaHVuay0+bGVuZ3RoLCAtMSk7CiB9CiAKIHN0YXRpYyBTb3VwU2Vzc2lvbiog
Y3JlYXRlU291cFNlc3Npb24oKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay93aW4vUmVzb3VyY2VIYW5kbGVXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay93aW4vUmVzb3VyY2VIYW5kbGVXaW4uY3BwCmluZGV4IGY1MDU0MGMxY2RiNDVj
NDM4MTZlYjJhNjM1NDU4MjBiNjgyZTY2MGIuLmRjNWFkYzhjMjNhZmNkMzI2OWIzOWZmYjM5OGU5
ZjA0NTQxOWZkYTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsv
d2luL1Jlc291cmNlSGFuZGxlV2luLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9u
ZXR3b3JrL3dpbi9SZXNvdXJjZUhhbmRsZVdpbi5jcHAKQEAgLTI0Miw4ICsyNDIsMTEgQEAgYm9v
bCBSZXNvdXJjZUhhbmRsZTo6b25SZXF1ZXN0Q29tcGxldGUoKQogICAgICAgICAgICAgICAgIHJl
c291cmNlSGFuZGxlQ2xpZW50LT5kaWRSZWNlaXZlUmVzcG9uc2UodGhpcywgcmVzcG9uc2UpOwog
ICAgICAgICB9CiAKKyAgICAgICAgLy8gRklYTUU6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xOTc5MworICAgICAgICAvLyAtMSBtZWFucyB3ZSBkbyBub3QgcHJvdmlk
ZSBhbnkgZGF0YSBhYm91dCB0cmFuc2ZlciBzaXplIHRvIGluc3BlY3RvciBzbyBpdCB3b3VsZCB1
c2UKKyAgICAgICAgLy8gQ29udGVudC1MZW5ndGggaGVhZGVycyBvciBjb250ZW50IHNpemUgdG8g
c2hvdyB0cmFuc2ZlciBzaXplLgogICAgICAgICBpZiAoUmVzb3VyY2VIYW5kbGVDbGllbnQqIHJl
c291cmNlSGFuZGxlQ2xpZW50ID0gY2xpZW50KCkpCi0gICAgICAgICAgICByZXNvdXJjZUhhbmRs
ZUNsaWVudC0+ZGlkUmVjZWl2ZURhdGEodGhpcywgYnVmZmVyLCBidWZmZXJzLmR3QnVmZmVyTGVu
Z3RoLCAwKTsKKyAgICAgICAgICAgIHJlc291cmNlSGFuZGxlQ2xpZW50LT5kaWRSZWNlaXZlRGF0
YSh0aGlzLCBidWZmZXIsIGJ1ZmZlcnMuZHdCdWZmZXJMZW5ndGgsIC0xKTsKICAgICAgICAgYnVm
ZmVycy5kd0J1ZmZlckxlbmd0aCA9IGJ1ZmZlclNpemU7CiAgICAgfQogCkBAIC0zODUsOCArMzg4
LDExIEBAIHZvaWQgUmVzb3VyY2VIYW5kbGU6OmZpbGVMb2FkVGltZXIoVGltZXI8UmVzb3VyY2VI
YW5kbGU+KikKICAgICAgICAgY29uc3QgaW50IGJ1ZmZlclNpemUgPSA4MTkyOwogICAgICAgICBj
aGFyIGJ1ZmZlcltidWZmZXJTaXplXTsKICAgICAgICAgcmVzdWx0ID0gUmVhZEZpbGUoZmlsZUhh
bmRsZSwgJmJ1ZmZlciwgYnVmZmVyU2l6ZSwgJmJ5dGVzUmVhZCwgMCk7CisgICAgICAgIC8vIEZJ
WE1FOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk3OTMKKyAgICAg
ICAgLy8gLTEgbWVhbnMgd2UgZG8gbm90IHByb3ZpZGUgYW55IGRhdGEgYWJvdXQgdHJhbnNmZXIg
c2l6ZSB0byBpbnNwZWN0b3Igc28gaXQgd291bGQgdXNlCisgICAgICAgIC8vIENvbnRlbnQtTGVu
Z3RoIGhlYWRlcnMgb3IgY29udGVudCBzaXplIHRvIHNob3cgdHJhbnNmZXIgc2l6ZS4KICAgICAg
ICAgaWYgKHJlc3VsdCAmJiBieXRlc1JlYWQpCi0gICAgICAgICAgICBjbGllbnQoKS0+ZGlkUmVj
ZWl2ZURhdGEodGhpcywgYnVmZmVyLCBieXRlc1JlYWQsIDApOworICAgICAgICAgICAgY2xpZW50
KCktPmRpZFJlY2VpdmVEYXRhKHRoaXMsIGJ1ZmZlciwgYnl0ZXNSZWFkLCAtMSk7CiAgICAgICAg
IC8vIENoZWNrIGZvciBlbmQgb2YgZmlsZS4KICAgICB9IHdoaWxlIChyZXN1bHQgJiYgYnl0ZXNS
ZWFkKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCBhZDY0NmNlNGYzMTY3MDg3NDli
OTA0MWEyNmZkOTcxYTc1MTFmYzEzLi5lYjI3MDRiNTczYzJkODgyYTc5Y2FjMjRiNTliOTRiYzUw
ZjhkY2ZlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEx
LTAzLTE4ICBWc2V2b2xvZCBWbGFzb3YgIDx2c2V2aWtAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IElu
c3BlY3RvciBkb2VzIG5vdCBhbHdheXMgc2hvdyBjb3JyZWN0IHRyYW5zZmVyIHNpemUgKGZvciBj
b21wcmVzc2VkL2NodW5rZWQgZGF0YSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTU2NjkxCisKKyAgICAgICAgQWRkZWQgdHJhbnNmZXIgc2l6ZSBzdXBw
b3J0IGluIGluc3BlY3RvciBmb3IgY29tcHJlc3NlZCBkYXRhLgorCisgICAgICAgICogc3JjL1Jl
c291cmNlSGFuZGxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlSW50ZXJu
YWw6OmRpZFJlY2VpdmVEYXRhKToKKyAgICAgICAgKiBzcmMvV2ViRGV2VG9vbHNBZ2VudEltcGwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJEZXZUb29sc0FnZW50SW1wbDo6ZGlkUmVjZWl2ZURh
dGEpOgorCiAyMDExLTAzLTIwICBCaWxsIEJ1ZGdlICA8YmJ1ZGdlQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvUmVzb3VyY2VIYW5kbGUuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvUmVzb3VyY2VIYW5kbGUuY3BwCmluZGV4IDcyZjYwYmIzN2YwZWQzZjk5ZTcxOWViYWE2
ZmMxZTA5ODMzOGNkOTUuLjg5MGJjZWUyMTk5OTE4NTkwOTVkYzA0ZTMzNjMyNmY4OTRmMzk4YjIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1Jlc291cmNlSGFuZGxlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9SZXNvdXJjZUhhbmRsZS5jcHAKQEAg
LTE1OSwxOCArMTU5LDE2IEBAIHZvaWQgUmVzb3VyY2VIYW5kbGVJbnRlcm5hbDo6ZGlkUmVjZWl2
ZVJlc3BvbnNlKFdlYlVSTExvYWRlciosIGNvbnN0IFdlYlVSTFJlc3BvCiAgICAgbV9jbGllbnQt
PmRpZFJlY2VpdmVSZXNwb25zZShtX293bmVyLCByZXNwb25zZS50b1Jlc291cmNlUmVzcG9uc2Uo
KSk7CiB9CiAKLXZvaWQgUmVzb3VyY2VIYW5kbGVJbnRlcm5hbDo6ZGlkUmVjZWl2ZURhdGEoCi0g
ICAgV2ViVVJMTG9hZGVyKiwgY29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCit2b2lk
IFJlc291cmNlSGFuZGxlSW50ZXJuYWw6OmRpZFJlY2VpdmVEYXRhKFdlYlVSTExvYWRlciosIGNv
bnN0IGNoYXIqIGRhdGEsIGludCBkYXRhTGVuZ3RoKQogewogICAgIEFTU0VSVChtX2NsaWVudCk7
CiAgICAgaWYgKG1fc3RhdGUgIT0gQ29ubmVjdGlvblN0YXRlUmVjZWl2ZWRSZXNwb25zZSAmJiBt
X3N0YXRlICE9IENvbm5lY3Rpb25TdGF0ZVJlY2VpdmluZ0RhdGEpCiAgICAgICAgIENSQVNIKCk7
CiAgICAgbV9zdGF0ZSA9IENvbm5lY3Rpb25TdGF0ZVJlY2VpdmluZ0RhdGE7CiAKLSAgICAvLyBG
SVhNRSh5dXJ5cyk6IGl0IGxvb2tzIGxpa2UgbGVuZ3RoUmVjZWl2ZWQgaXMgYWx3YXlzIHRoZSBz
YW1lIGFzCi0gICAgLy8gZGF0YUxlbmd0aCBhbmQgdGhhdCB0aGUgbGF0dGVyIHBhcmFtZXRlciBj
YW4gYmUgZWxpbWluYXRlZC4KLSAgICAvLyBTZWUgV2ViS2l0IGJ1ZzogaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMxMDE5Ci0gICAgbV9jbGllbnQtPmRpZFJlY2VpdmVE
YXRhKG1fb3duZXIsIGRhdGEsIGRhdGFMZW5ndGgsIGRhdGFMZW5ndGgpOworICAgIC8vIEZJWE1F
KHZzZXZpayk6IEFkZCB0cmFuc2ZlciBzaXplIHN1cHBvcnQgdG8gY2hyb21pdW0gcG9ydAorICAg
IC8vIFNlZSBXZWJLaXQgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9NTY2MDIKKyAgICBtX2NsaWVudC0+ZGlkUmVjZWl2ZURhdGEobV9vd25lciwgZGF0YSwgZGF0
YUxlbmd0aCwgLTEpOwogfQogCiB2b2lkIFJlc291cmNlSGFuZGxlSW50ZXJuYWw6OmRpZFJlY2Vp
dmVDYWNoZWRNZXRhZGF0YShXZWJVUkxMb2FkZXIqLCBjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0
YUxlbmd0aCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRv
b2xzQWdlbnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xz
QWdlbnRJbXBsLmNwcAppbmRleCA2MmE5ZDk1M2ViZmJmNGJjZGVlZThiYmU3YTM3MGJmZWJhZGVh
YjgyLi5jMzZhNjJiNmY3YTI4OWQ4MjdlZWE4MjBiOGY5MDQ1MDkxYzI2ZWYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0FnZW50SW1wbC5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2VG9vbHNBZ2VudEltcGwuY3BwCkBA
IC0yODQsNyArMjg0LDcgQEAgdm9pZCBXZWJEZXZUb29sc0FnZW50SW1wbDo6d2lsbFNlbmRSZXF1
ZXN0KHVuc2lnbmVkIGxvbmcgcmVzb3VyY2VJZCwgV2ViVVJMUmVxdWUKIAogdm9pZCBXZWJEZXZU
b29sc0FnZW50SW1wbDo6ZGlkUmVjZWl2ZURhdGEodW5zaWduZWQgbG9uZyByZXNvdXJjZUlkLCBp
bnQgbGVuZ3RoKQogewotICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUmVjZWl2ZUNv
bnRlbnRMZW5ndGgobWFpbkZyYW1lKCksIHJlc291cmNlSWQsIGxlbmd0aCk7CisgICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uOjpkaWRSZWNlaXZlQ29udGVudExlbmd0aChtYWluRnJhbWUoKSwg
cmVzb3VyY2VJZCwgbGVuZ3RoLCAtMSk7CiB9CiAKIHZvaWQgV2ViRGV2VG9vbHNBZ2VudEltcGw6
OmRpZFJlY2VpdmVSZXNwb25zZSh1bnNpZ25lZCBsb25nIHJlc291cmNlSWQsIGNvbnN0IFdlYlVS
TFJlc3BvbnNlJiByZXNwb25zZSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>