<?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>78300</bug_id>
          
          <creation_ts>2012-02-09 17:50:02 -0800</creation_ts>
          <short_desc>Update the scroll layer position on the main thread when we have slow repaint objects</short_desc>
          <delta_ts>2012-03-22 23:03:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>levin+threading</cc>
    
    <cc>ned</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>553650</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-02-09 17:50:02 -0800</bug_when>
    <thetext>Update the scroll layer position on the main thread when we have slow repaint objects</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553667</commentid>
    <comment_count>1</comment_count>
      <attachid>126416</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-02-09 18:01:25 -0800</bug_when>
    <thetext>Created attachment 126416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553679</commentid>
    <comment_count>2</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-02-09 18:10:48 -0800</bug_when>
    <thetext>Committed r107335: &lt;http://trac.webkit.org/changeset/107335&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>586095</commentid>
    <comment_count>3</comment_count>
    <who name="David Barr">davidbarr</who>
    <bug_when>2012-03-22 23:03:43 -0700</bug_when>
    <thetext>*** Bug 72945 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126416</attachid>
            <date>2012-02-09 18:01:25 -0800</date>
            <delta_ts>2012-02-09 18:06:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-78300-20120209180200.patch</filename>
            <type>text/plain</type>
            <size>18206</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3MzMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTUyOGZlODcxYWNmYzNh
ODY1ODJmZGVhYmFjYmRhOGNlZDgzY2M0Zi4uZjIyOGQ2ZjE5OGMyMjYyYTY5NjA4ZDBiNGQ3NzAx
M2FjMWZlZWEwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDYyIEBACiAyMDEyLTAyLTA5ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgVXBkYXRlIHRoZSBz
Y3JvbGwgbGF5ZXIgcG9zaXRpb24gb24gdGhlIG1haW4gdGhyZWFkIHdoZW4gd2UgaGF2ZSBzbG93
IHJlcGFpbnQgb2JqZWN0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NzgzMDAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzEwNzEwNzU0PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gd2UgaGF2ZSBz
bG93IHJlcGFpbnQgb2JqZWN0cyAoYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZCksIHdlIG5l
ZWQgdG8gdXBkYXRlIHRoZQorICAgICAgICBzY3JvbGwgbGF5ZXIgcG9zaXRpb24gb24gdGhlIG1h
aW4gdGhyZWFkLCBvdGhlcndpc2UgdGhlIHdlYiBwYWdlIHdpbGwgYXBwZWFyIHRvIGppZ2dsZS4K
KyAgICAKKyAgICAgICAgKiBwYWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpG
cmFtZVZpZXc6OmFkZFNsb3dSZXBhaW50T2JqZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1l
Vmlldzo6cmVtb3ZlU2xvd1JlcGFpbnRPYmplY3QpOgorICAgICAgICBDYWxsIFNjcm9sbGluZ0Nv
b3JkaW5hdG9yOjpmcmFtZVZpZXdIYXNTbG93UmVwYWludE9iamVjdHNEaWRDaGFuZ2UgaWYgbmVl
ZGVkLgorCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZy
YW1lVmlldzo6aGFzU2xvd1JlcGFpbnRPYmplY3RzKToKKyAgICAgICAgQWRkIG5ldyBnZXR0ZXIu
CisKKyAgICAgICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdDb29yZGluYXRvcjo6ZnJhbWVWaWV3SGFzU2xvd1Jl
cGFpbnRPYmplY3RzRGlkQ2hhbmdlKToKKyAgICAgICAgQ2FsbCBTY3JvbGxpbmdUcmVlTm9kZTo6
c2hvdWxkVXBkYXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZC4KKworICAgICAgICAo
V2ViQ29yZTo6U2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0
aW9uQW5kU2Nyb2xsTGF5ZXJQb3NpdGlvbik6CisgICAgICAgIE5ldyBmdW5jdGlvbiB0aGF0IHdp
bGwgdXBkYXRlIGJvdGggdGhlIG1haW4gZnJhbWUgc2Nyb2xsIHBvc2l0aW9uIGFuZCB0aGUgc2Ny
b2xsIGxheWVyIHBvc2l0aW9uLgorCisgICAgICAgICogcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
VHJlZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlOjp1cGRhdGVNYWluRnJh
bWVTY3JvbGxQb3NpdGlvbkFuZFNjcm9sbExheWVyUG9zaXRpb24pOgorICAgICAgICBEaXNwYXRj
aCBhIGNhbGwgdG8gU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBv
c2l0aW9uQW5kU2Nyb2xsTGF5ZXJQb3NpdGlvbiBvbiB0aGUgbWFpbiB0aHJlYWQuCisKKyAgICAg
ICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlTm9kZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpTY3JvbGxpbmdUcmVlTm9kZTo6U2Nyb2xsaW5nVHJlZU5vZGUpOgorICAgICAgICBJbml0
aWFsaXplIG1fc2hvdWxkVXBkYXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZC4KKwor
ICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZU5vZGU6OnVwZGF0ZSk6CisgICAgICAgIFNl
dCBtX3Nob3VsZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQuCisKKyAgICAg
ICAgKiBwYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU3RhdGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6U2Nyb2xsaW5nVHJlZVN0YXRlOjpTY3JvbGxpbmdUcmVlU3RhdGUpOgorICAgICAgICBJ
bml0aWFsaXplIG1fc2hvdWxkVXBkYXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZC4K
KworICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsaW5nVHJlZVN0YXRlOjpzZXRTaG91bGRVcGRhdGVT
Y3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkKToKKyAgICAgICAgVXBkYXRlIG1fc2hvdWxk
VXBkYXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZCBpZiBuZWVkZWQuCisKKyAgICAg
ICAgKiBwYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xsaW5nVHJlZU5vZGVNYWMubW06CisgICAgICAg
IChXZWJDb3JlOjpTY3JvbGxpbmdUcmVlTm9kZU1hYzo6c2V0U2Nyb2xsUG9zaXRpb24pOgorICAg
ICAgICBBc3NlcnQgdGhhdCB3ZSdyZSBub3Qgc3VwcG9zZWQgdG8gdXBkYXRlIHRoZSBzY3JvbGwg
bGF5ZXIgcG9zaXRpb24gb24gdGhlIG1haW4gdGhyZWFkLgorCisgICAgICAgIChXZWJDb3JlOjpT
Y3JvbGxpbmdUcmVlTm9kZU1hYzo6c2Nyb2xsQnkpOgorICAgICAgICBJZiB3ZSdyZSBzdXBwb3Nl
ZCB0byB1cGRhdGUgdGhlIHNjcm9sbCBsYXllciBwb3NpdGlvbiBvbiB0aGUgbWFpbiB0aHJlYWQs
IAorICAgICAgICBjYWxsIFNjcm9sbGluZ1RyZWU6OnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0
aW9uQW5kU2Nyb2xsTGF5ZXJQb3NpdGlvbi4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJM
YXllckNvbXBvc2l0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJDb21wb3Np
dG9yOjpmcmFtZVZpZXdEaWRTY3JvbGwpOgorICAgICAgICBJZiB0aGUgZnJhbWUgdmlldyBoYXMg
aXRzIHNjcm9sbGluZyBjb29yZGluYXRlZCBieSBhIHNjcm9sbGluZyBjb29yZGluYXRvciwgZG9u
J3QgdXBkYXRlIHRoZSBzY3JvbGwgbGF5ZXIgcG9zaXRpb24uCisKKzIwMTItMDItMDkgIEFuZGVy
cyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwogICAgICAgICBGcmFtZVZpZXc6OmFk
ZFNsb3dSZXBhaW50T2JqZWN0KCkgZG9lc24ndCB1cGRhdGUgbV9jYW5CbGl0T25TY3JvbGwgY29y
cmVjdGx5CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03
ODI5MQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggODNhMjNkNTEzNmJhMWM0NjY2
OGE1ZTQ5Mzg3NmRhMjA1MThmMTFjYS4uZDZiMzFhM2E3YzFkZjQ0NmFkMmNjZmRlNmU0NWZhYzJm
NGIzYzk2YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMTMyOCwxNiArMTMyOCwz
MiBAQCB2b2lkIEZyYW1lVmlldzo6c2V0Q2Fubm90QmxpdFRvV2luZG93KCkKIAogdm9pZCBGcmFt
ZVZpZXc6OmFkZFNsb3dSZXBhaW50T2JqZWN0KCkKIHsKLSAgICBpZiAoIW1fc2xvd1JlcGFpbnRP
YmplY3RDb3VudCsrKQorICAgIGlmICghbV9zbG93UmVwYWludE9iamVjdENvdW50KyspIHsKICAg
ICAgICAgdXBkYXRlQ2FuQmxpdE9uU2Nyb2xsUmVjdXJzaXZlbHkoKTsKKworI2lmIEVOQUJMRShU
SFJFQURFRF9TQ1JPTExJTkcpCisgICAgICAgIGlmIChQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFn
ZSgpKSB7CisgICAgICAgICAgICBpZiAoU2Nyb2xsaW5nQ29vcmRpbmF0b3IqIHNjcm9sbGluZ0Nv
b3JkaW5hdG9yID0gcGFnZS0+c2Nyb2xsaW5nQ29vcmRpbmF0b3IoKSkKKyAgICAgICAgICAgICAg
ICBzY3JvbGxpbmdDb29yZGluYXRvci0+ZnJhbWVWaWV3SGFzU2xvd1JlcGFpbnRPYmplY3RzRGlk
Q2hhbmdlKHRoaXMpOworICAgICAgICB9CisjZW5kaWYKKyAgICB9CiB9CiAKIHZvaWQgRnJhbWVW
aWV3OjpyZW1vdmVTbG93UmVwYWludE9iamVjdCgpCiB7CiAgICAgQVNTRVJUKG1fc2xvd1JlcGFp
bnRPYmplY3RDb3VudCA+IDApOwogICAgIG1fc2xvd1JlcGFpbnRPYmplY3RDb3VudC0tOwotICAg
IGlmICghbV9zbG93UmVwYWludE9iamVjdENvdW50KQorICAgIGlmICghbV9zbG93UmVwYWludE9i
amVjdENvdW50KSB7CiAgICAgICAgIHVwZGF0ZUNhbkJsaXRPblNjcm9sbFJlY3Vyc2l2ZWx5KCk7
CisKKyNpZiBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKQorICAgICAgICBpZiAoUGFnZSogcGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKSkgeworICAgICAgICAgICAgaWYgKFNjcm9sbGluZ0Nvb3JkaW5h
dG9yKiBzY3JvbGxpbmdDb29yZGluYXRvciA9IHBhZ2UtPnNjcm9sbGluZ0Nvb3JkaW5hdG9yKCkp
CisgICAgICAgICAgICAgICAgc2Nyb2xsaW5nQ29vcmRpbmF0b3ItPmZyYW1lVmlld0hhc1Nsb3dS
ZXBhaW50T2JqZWN0c0RpZENoYW5nZSh0aGlzKTsKKyAgICAgICAgfQorI2VuZGlmCisgICAgfQog
fQogCiB2b2lkIEZyYW1lVmlldzo6YWRkRml4ZWRPYmplY3QoKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3
LmgKaW5kZXggNTFmZTdjMzcwOGEwM2I5NTU3YjJkMDYyNGU4ZDA5ZWYyZDk0ZGQ0YS4uNzViZmVl
Y2U1Y2YxZjlhZGVlNTlhMjMwYzI5MGEyYmQ0YzlmZGI3NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGFnZS9GcmFtZVZpZXcuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmll
dy5oCkBAIC0xODQsNiArMTg0LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBhZGRTbG93UmVwYWlu
dE9iamVjdCgpOwogICAgIHZvaWQgcmVtb3ZlU2xvd1JlcGFpbnRPYmplY3QoKTsKKyAgICBib29s
IGhhc1Nsb3dSZXBhaW50T2JqZWN0cygpIGNvbnN0IHsgcmV0dXJuIG1fc2xvd1JlcGFpbnRPYmpl
Y3RDb3VudDsgfQogCiAgICAgdm9pZCBhZGRGaXhlZE9iamVjdCgpOwogICAgIHZvaWQgcmVtb3Zl
Rml4ZWRPYmplY3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmNwcAppbmRleCAxOWYyZDYyYWIyNmI2YTg4MjgxODlmZjE0
Y2E1NTJjMzZhNzNjODExLi42MjA2YmJkZDQyNTNhYmFlZGExNTAxNjg4NzBiZTJlZDZiOGM4MWZk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29y
ZGluYXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5n
Q29vcmRpbmF0b3IuY3BwCkBAIC0zNSw2ICszNSw4IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2lu
Y2x1ZGUgIlBsYXRmb3JtV2hlZWxFdmVudC5oIgogI2luY2x1ZGUgIlJlZ2lvbi5oIgorI2luY2x1
ZGUgIlJlbmRlckxheWVyQ29tcG9zaXRvci5oIgorI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKICNp
bmNsdWRlICJTY3JvbGxBbmltYXRvci5oIgogI2luY2x1ZGUgIlNjcm9sbGluZ1RocmVhZC5oIgog
I2luY2x1ZGUgIlNjcm9sbGluZ1RyZWUuaCIKQEAgLTEzNCw2ICsxMzYsMTggQEAgdm9pZCBTY3Jv
bGxpbmdDb29yZGluYXRvcjo6ZnJhbWVWaWV3V2hlZWxFdmVudEhhbmRsZXJDb3VudENoYW5nZWQo
RnJhbWVWaWV3KikKICAgICByZWNvbXB1dGVXaGVlbEV2ZW50SGFuZGxlckNvdW50KCk7CiB9CiAK
K3ZvaWQgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OmZyYW1lVmlld0hhc1Nsb3dSZXBhaW50T2JqZWN0
c0RpZENoYW5nZShGcmFtZVZpZXcqIGZyYW1lVmlldykKK3sKKyAgICBBU1NFUlQoaXNNYWluVGhy
ZWFkKCkpOworICAgIEFTU0VSVChtX3BhZ2UpOworCisgICAgaWYgKCFjb29yZGluYXRlc1Njcm9s
bGluZ0ZvckZyYW1lVmlldyhmcmFtZVZpZXcpKQorICAgICAgICByZXR1cm47CisKKyAgICBtX3Nj
cm9sbGluZ1RyZWVTdGF0ZS0+c2V0U2hvdWxkVXBkYXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFp
blRocmVhZChmcmFtZVZpZXctPmhhc1Nsb3dSZXBhaW50T2JqZWN0cygpKTsKKyAgICBzY2hlZHVs
ZVRyZWVTdGF0ZUNvbW1pdCgpOworfQorCiB2b2lkIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOjp1cGRh
dGVNYWluRnJhbWVTY3JvbGxQb3NpdGlvbihjb25zdCBJbnRQb2ludCYgc2Nyb2xsUG9zaXRpb24p
CiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKQEAgLTE1MCw2ICsxNjQsMjUgQEAgdm9p
ZCBTY3JvbGxpbmdDb29yZGluYXRvcjo6dXBkYXRlTWFpbkZyYW1lU2Nyb2xsUG9zaXRpb24oY29u
c3QgSW50UG9pbnQmIHNjcm9sbFAKICAgICBmcmFtZVZpZXctPnNldENvbnN0cmFpbnNTY3JvbGxp
bmdUb0NvbnRlbnRFZGdlKHRydWUpOwogfQogCit2b2lkIFNjcm9sbGluZ0Nvb3JkaW5hdG9yOjp1
cGRhdGVNYWluRnJhbWVTY3JvbGxQb3NpdGlvbkFuZFNjcm9sbExheWVyUG9zaXRpb24oY29uc3Qg
SW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKQoreworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0g
bV9wYWdlLT5tYWluRnJhbWUoKS0+dmlldygpOworCisgICAgUmVuZGVyVmlldyogcmVuZGVyVmll
dyA9IG1fcGFnZS0+bWFpbkZyYW1lKCktPmNvbnRlbnRSZW5kZXJlcigpOworICAgIGlmICghcmVu
ZGVyVmlldykKKyAgICAgICAgcmV0dXJuOworCisgICAgR3JhcGhpY3NMYXllciogc2Nyb2xsTGF5
ZXIgPSByZW5kZXJWaWV3LT5jb21wb3NpdG9yKCktPnNjcm9sbExheWVyKCk7CisgICAgaWYgKCFz
Y3JvbGxMYXllcikKKyAgICAgICAgcmV0dXJuOworCisgICAgZnJhbWVWaWV3LT5zZXRDb25zdHJh
aW5zU2Nyb2xsaW5nVG9Db250ZW50RWRnZShmYWxzZSk7CisgICAgZnJhbWVWaWV3LT5zY3JvbGxU
b09mZnNldFdpdGhvdXRBbmltYXRpb24oc2Nyb2xsUG9zaXRpb24pOworICAgIGZyYW1lVmlldy0+
c2V0Q29uc3RyYWluc1Njcm9sbGluZ1RvQ29udGVudEVkZ2UodHJ1ZSk7CisKKyAgICBzY3JvbGxM
YXllci0+c2V0UG9zaXRpb24oLWZyYW1lVmlldy0+c2Nyb2xsUG9zaXRpb24oKSk7Cit9CisKIHZv
aWQgU2Nyb2xsaW5nQ29vcmRpbmF0b3I6OnJlY29tcHV0ZVdoZWVsRXZlbnRIYW5kbGVyQ291bnQo
KQogewogICAgIHVuc2lnbmVkIHdoZWVsRXZlbnRIYW5kbGVyQ291bnQgPSAwOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaCBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmgKaW5k
ZXggZWI1OTdiOGIwYzViNTgwZjYzYWJjYjRiMDQ5ZjllYzEyOGJiMDdkMi4uZjBhMzE1YjkxOTll
MGM2OTc2OTkxOWRmYWRkMDM1ZTQ0ZDY3ZjE2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nQ29vcmRpbmF0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdDb29yZGluYXRvci5oCkBAIC03MSw2ICs3MSw5IEBA
IHB1YmxpYzoKICAgICAvLyBmcmFtZSB2aWV3J3MgdW5kZXJseWluZyBkb2N1bWVudC4KICAgICB2
b2lkIGZyYW1lVmlld1doZWVsRXZlbnRIYW5kbGVyQ291bnRDaGFuZ2VkKEZyYW1lVmlldyopOwog
CisgICAgLy8gU2hvdWxkIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc2xvdyByZXBhaW50IG9iamVj
dHMgY291bnRlciBjaGFuZ2VzIGJldHdlZW4gemVybyBhbmQgb25lLgorICAgIHZvaWQgZnJhbWVW
aWV3SGFzU2xvd1JlcGFpbnRPYmplY3RzRGlkQ2hhbmdlKEZyYW1lVmlldyopOworCiAgICAgLy8g
U2hvdWxkIGJlIGNhbGxlZCB3aGVuZXZlciB0aGUgc2Nyb2xsIGxheWVyIGZvciB0aGUgZ2l2ZW4g
ZnJhbWUgdmlldyBjaGFuZ2VzLgogICAgIHZvaWQgZnJhbWVWaWV3U2Nyb2xsTGF5ZXJEaWRDaGFu
Z2UoRnJhbWVWaWV3KiwgY29uc3QgR3JhcGhpY3NMYXllciopOwogCkBAIC04Myw2ICs4Niw5IEBA
IHB1YmxpYzoKICAgICAvLyBEaXNwYXRjaGVkIGJ5IHRoZSBzY3JvbGxpbmcgdHJlZSB3aGVuZXZl
ciB0aGUgbWFpbiBmcmFtZSBzY3JvbGwgcG9zaXRpb24gY2hhbmdlcy4KICAgICB2b2lkIHVwZGF0
ZU1haW5GcmFtZVNjcm9sbFBvc2l0aW9uKGNvbnN0IEludFBvaW50Jik7CiAKKyAgICAvLyBEaXNw
YXRjaGVkIGJ5IHRoZSBzY3JvbGxpbmcgdHJlZSB3aGVuZXZlciB0aGUgbWFpbiBmcmFtZSBzY3Jv
bGwgcG9zaXRpb24gY2hhbmdlcyBhbmQgdGhlIHNjcm9sbCBsYXllciBwb3NpdGlvbiBuZWVkcyB0
byBiZSB1cGRhdGVkIGFzIHdlbGwuCisgICAgdm9pZCB1cGRhdGVNYWluRnJhbWVTY3JvbGxQb3Np
dGlvbkFuZFNjcm9sbExheWVyUG9zaXRpb24oY29uc3QgSW50UG9pbnQmKTsKKwogcHJpdmF0ZToK
ICAgICBleHBsaWNpdCBTY3JvbGxpbmdDb29yZGluYXRvcihQYWdlKik7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5jcHAKaW5kZXggYmMxYzUwZDlm
MjFlODM5MmI3Njk5NWM1M2FiMGI2OWIzOWQ5ZjcxNy4uNGUzNWM2YjBiNzVjNDg1YzA2ZDc4Nzc3
MWJjZGZlZGJhMDJjZjhkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxp
bmcvU2Nyb2xsaW5nVHJlZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcv
U2Nyb2xsaW5nVHJlZS5jcHAKQEAgLTEyMCw2ICsxMjAsMTkgQEAgdm9pZCBTY3JvbGxpbmdUcmVl
Ojp1cGRhdGVNYWluRnJhbWVTY3JvbGxQb3NpdGlvbihjb25zdCBJbnRQb2ludCYgc2Nyb2xsUG9z
aXRpb24KICAgICBjYWxsT25NYWluVGhyZWFkKGJpbmQoJlNjcm9sbGluZ0Nvb3JkaW5hdG9yOjp1
cGRhdGVNYWluRnJhbWVTY3JvbGxQb3NpdGlvbiwgbV9zY3JvbGxpbmdDb29yZGluYXRvci5nZXQo
KSwgc2Nyb2xsUG9zaXRpb24pKTsKIH0KIAordm9pZCBTY3JvbGxpbmdUcmVlOjp1cGRhdGVNYWlu
RnJhbWVTY3JvbGxQb3NpdGlvbkFuZFNjcm9sbExheWVyUG9zaXRpb24oY29uc3QgSW50UG9pbnQm
IHNjcm9sbFBvc2l0aW9uKQoreworICAgIGlmICghbV9zY3JvbGxpbmdDb29yZGluYXRvcikKKyAg
ICAgICAgcmV0dXJuOworCisgICAgeworICAgICAgICBNdXRleExvY2tlciBsb2NrKG1fbXV0ZXgp
OworICAgICAgICBtX21haW5GcmFtZVNjcm9sbFBvc2l0aW9uID0gc2Nyb2xsUG9zaXRpb247Cisg
ICAgfQorCisgICAgY2FsbE9uTWFpblRocmVhZChiaW5kKCZTY3JvbGxpbmdDb29yZGluYXRvcjo6
dXBkYXRlTWFpbkZyYW1lU2Nyb2xsUG9zaXRpb25BbmRTY3JvbGxMYXllclBvc2l0aW9uLCBtX3Nj
cm9sbGluZ0Nvb3JkaW5hdG9yLmdldCgpLCBzY3JvbGxQb3NpdGlvbikpOworfQorCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoVEhSRUFERURfU0NST0xMSU5HKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5o
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZS5oCmluZGV4IDc2
Y2JmZGEwYTQ5MzcxNTY1NWYxMTU0Yjk3YjI1NDY4ZGYwZjdhYjguLjc1MmE3ZjBkNTg2ZTk2NWY4
NTVlZDNiYTFlMjhmYWY2MWE2NzZmN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlLmgKQEAgLTY0LDYgKzY0LDcgQEAgcHVibGljOgogICAgIHZvaWQg
Y29tbWl0TmV3VHJlZVN0YXRlKFBhc3NPd25QdHI8U2Nyb2xsaW5nVHJlZVN0YXRlPik7CiAKICAg
ICB2b2lkIHVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0aW9uKGNvbnN0IEludFBvaW50JiBzY3Jv
bGxQb3NpdGlvbik7CisgICAgdm9pZCB1cGRhdGVNYWluRnJhbWVTY3JvbGxQb3NpdGlvbkFuZFNj
cm9sbExheWVyUG9zaXRpb24oY29uc3QgSW50UG9pbnQmIHNjcm9sbFBvc2l0aW9uKTsKIAogcHJp
dmF0ZToKICAgICBleHBsaWNpdCBTY3JvbGxpbmdUcmVlKFNjcm9sbGluZ0Nvb3JkaW5hdG9yKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVl
Tm9kZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlTm9k
ZS5jcHAKaW5kZXggMDlmZTZkM2Q5YjBjMDJkMzViMGM5ZTRhZjAzNTEzNTZmMjdlM2FjYS4uODYy
NmI4OWZmMzM5NDdlMGQxM2JhNzZiNjcyNDBlYmE1ZWRjM2EyZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZU5vZGUuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVOb2RlLmNwcApAQCAtMzQsNiAr
MzQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFNjcm9sbGluZ1RyZWVOb2RlOjpTY3JvbGxp
bmdUcmVlTm9kZShTY3JvbGxpbmdUcmVlKiBzY3JvbGxpbmdUcmVlKQogICAgIDogbV9zY3JvbGxp
bmdUcmVlKHNjcm9sbGluZ1RyZWUpCisgICAgLCBtX3Nob3VsZFVwZGF0ZVNjcm9sbExheWVyUG9z
aXRpb25Pbk1haW5UaHJlYWQoZmFsc2UpCiAgICAgLCBtX2hvcml6b250YWxTY3JvbGxFbGFzdGlj
aXR5KFNjcm9sbEVsYXN0aWNpdHlOb25lKQogICAgICwgbV92ZXJ0aWNhbFNjcm9sbEVsYXN0aWNp
dHkoU2Nyb2xsRWxhc3RpY2l0eU5vbmUpCiAgICAgLCBtX2hhc0VuYWJsZWRIb3Jpem9udGFsU2Ny
b2xsYmFyKGZhbHNlKQpAQCAtNTMsNiArNTQsOSBAQCB2b2lkIFNjcm9sbGluZ1RyZWVOb2RlOjp1
cGRhdGUoU2Nyb2xsaW5nVHJlZVN0YXRlKiBzdGF0ZSkKICAgICBpZiAoc3RhdGUtPmNoYW5nZWRQ
cm9wZXJ0aWVzKCkgJiBTY3JvbGxpbmdUcmVlU3RhdGU6OkNvbnRlbnRzU2l6ZSkKICAgICAgICAg
bV9jb250ZW50c1NpemUgPSBzdGF0ZS0+Y29udGVudHNTaXplKCk7CiAKKyAgICBpZiAoc3RhdGUt
PmNoYW5nZWRQcm9wZXJ0aWVzKCkgJiBTY3JvbGxpbmdUcmVlU3RhdGU6OlNob3VsZFVwZGF0ZVNj
cm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQpCisgICAgICAgIG1fc2hvdWxkVXBkYXRlU2Ny
b2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZCA9IHN0YXRlLT5zaG91bGRVcGRhdGVTY3JvbGxM
YXllclBvc2l0aW9uT25NYWluVGhyZWFkKCk7CisKICAgICBpZiAoc3RhdGUtPmNoYW5nZWRQcm9w
ZXJ0aWVzKCkgJiBTY3JvbGxpbmdUcmVlU3RhdGU6Okhvcml6b250YWxTY3JvbGxFbGFzdGljaXR5
KQogICAgICAgICBtX2hvcml6b250YWxTY3JvbGxFbGFzdGljaXR5ID0gc3RhdGUtPmhvcml6b250
YWxTY3JvbGxFbGFzdGljaXR5KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
c2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVOb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9s
bGluZy9TY3JvbGxpbmdUcmVlTm9kZS5oCmluZGV4IDg0ZDYwYWM2NzY4YjYzODNhODJmNjJmOTAx
YjkyZGY1YTVlN2MzODguLmYwYmZhMTRlMzE3NDcxZjUxNzcyNDVmMjJkM2JkZDk4MThiM2QxMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVO
b2RlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZU5v
ZGUuaApAQCAtNTIsNiArNTIsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgU2Nyb2xsaW5nVHJlZSogc2Ny
b2xsaW5nVHJlZSgpIGNvbnN0IHsgcmV0dXJuIG1fc2Nyb2xsaW5nVHJlZTsgfQogICAgIGNvbnN0
IEludFJlY3QmIHZpZXdwb3J0UmVjdCgpIGNvbnN0IHsgcmV0dXJuIG1fdmlld3BvcnRSZWN0OyB9
CiAgICAgY29uc3QgSW50U2l6ZSYgY29udGVudHNTaXplKCkgY29uc3QgeyByZXR1cm4gbV9jb250
ZW50c1NpemU7IH0KKyAgICBib29sIHNob3VsZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1h
aW5UaHJlYWQoKSBjb25zdCB7IHJldHVybiBtX3Nob3VsZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRp
b25Pbk1haW5UaHJlYWQ7IH0KIAogcHJpdmF0ZToKICAgICBTY3JvbGxpbmdUcmVlKiBtX3Njcm9s
bGluZ1RyZWU7CkBAIC01OSw2ICs2MCw4IEBAIHByaXZhdGU6CiAgICAgSW50UmVjdCBtX3ZpZXdw
b3J0UmVjdDsKICAgICBJbnRTaXplIG1fY29udGVudHNTaXplOwogCisgICAgYm9vbCBtX3Nob3Vs
ZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQ7CisKICAgICBTY3JvbGxFbGFz
dGljaXR5IG1faG9yaXpvbnRhbFNjcm9sbEVsYXN0aWNpdHk7CiAgICAgU2Nyb2xsRWxhc3RpY2l0
eSBtX3ZlcnRpY2FsU2Nyb2xsRWxhc3RpY2l0eTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTdGF0ZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL3Njcm9sbGluZy9TY3JvbGxpbmdUcmVlU3RhdGUuY3BwCmluZGV4IDc5YWY2NzQ0
OGU0MzI4NWYyZTg2NzZkYjBlNGIyYjUyMDUzNjgxZmIuLmViZjY0OGQyYjFmOTY3M2U3N2E0OTVl
NWE1NGMxM2FmOTMwYmI2MjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xs
aW5nL1Njcm9sbGluZ1RyZWVTdGF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3Jv
bGxpbmcvU2Nyb2xsaW5nVHJlZVN0YXRlLmNwcApAQCAtMzgsNiArMzgsNyBAQCBQYXNzT3duUHRy
PFNjcm9sbGluZ1RyZWVTdGF0ZT4gU2Nyb2xsaW5nVHJlZVN0YXRlOjpjcmVhdGUoKQogU2Nyb2xs
aW5nVHJlZVN0YXRlOjpTY3JvbGxpbmdUcmVlU3RhdGUoKQogICAgIDogbV9jaGFuZ2VkUHJvcGVy
dGllcygwKQogICAgICwgbV93aGVlbEV2ZW50SGFuZGxlckNvdW50KDApCisgICAgLCBtX3Nob3Vs
ZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQoZmFsc2UpCiAgICAgLCBtX2hv
cml6b250YWxTY3JvbGxFbGFzdGljaXR5KFNjcm9sbEVsYXN0aWNpdHlOb25lKQogICAgICwgbV92
ZXJ0aWNhbFNjcm9sbEVsYXN0aWNpdHkoU2Nyb2xsRWxhc3RpY2l0eU5vbmUpCiAgICAgLCBtX2hh
c0VuYWJsZWRIb3Jpem9udGFsU2Nyb2xsYmFyKGZhbHNlKQpAQCAtODUsNiArODYsMTUgQEAgdm9p
ZCBTY3JvbGxpbmdUcmVlU3RhdGU6OnNldFdoZWVsRXZlbnRIYW5kbGVyQ291bnQodW5zaWduZWQg
d2hlZWxFdmVudEhhbmRsZXJDb3UKICAgICBtX2NoYW5nZWRQcm9wZXJ0aWVzIHw9IFdoZWVsRXZl
bnRIYW5kbGVyQ291bnQ7CiB9CiAKK3ZvaWQgU2Nyb2xsaW5nVHJlZVN0YXRlOjpzZXRTaG91bGRV
cGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkKGJvb2wgc2hvdWxkVXBkYXRlU2Ny
b2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZCkKK3sKKyAgICBpZiAobV9zaG91bGRVcGRhdGVT
Y3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkID09IHNob3VsZFVwZGF0ZVNjcm9sbExheWVy
UG9zaXRpb25Pbk1haW5UaHJlYWQpCisgICAgICAgIHJldHVybjsKKworICAgIG1fc2hvdWxkVXBk
YXRlU2Nyb2xsTGF5ZXJQb3NpdGlvbk9uTWFpblRocmVhZCA9IHNob3VsZFVwZGF0ZVNjcm9sbExh
eWVyUG9zaXRpb25Pbk1haW5UaHJlYWQ7CisgICAgbV9jaGFuZ2VkUHJvcGVydGllcyB8PSBTaG91
bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkOworfQorCiB2b2lkIFNjcm9s
bGluZ1RyZWVTdGF0ZTo6c2V0SG9yaXpvbnRhbFNjcm9sbEVsYXN0aWNpdHkoU2Nyb2xsRWxhc3Rp
Y2l0eSBob3Jpem9udGFsU2Nyb2xsRWxhc3RpY2l0eSkKIHsKICAgICBpZiAobV9ob3Jpem9udGFs
U2Nyb2xsRWxhc3RpY2l0eSA9PSBob3Jpem9udGFsU2Nyb2xsRWxhc3RpY2l0eSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL1Njcm9sbGluZ1RyZWVTdGF0ZS5oIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVN0YXRlLmgKaW5kZXgg
MGIzNWQ2OWY1YzQyNzBmOTViNDIxMWZhMjc3MDE0YzVjOTI1ZWVlOS4uOTdjYzc3YTk0Y2YyOGY3
YmJlYWM4YmQ2NTg2MTNiZWRlYjljZDFmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVN0YXRlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9zY3JvbGxpbmcvU2Nyb2xsaW5nVHJlZVN0YXRlLmgKQEAgLTU0LDExICs1NCwxMiBAQCBwdWJs
aWM6CiAgICAgICAgIENvbnRlbnRzU2l6ZSA9IDEgPDwgMSwKICAgICAgICAgTm9uRmFzdFNjcm9s
bGFibGVSZWdpb24gPSAxIDw8IDIsCiAgICAgICAgIFdoZWVsRXZlbnRIYW5kbGVyQ291bnQgPSAx
IDw8IDMsCi0gICAgICAgIEhvcml6b250YWxTY3JvbGxFbGFzdGljaXR5ID0gMSA8PCA0LAotICAg
ICAgICBWZXJ0aWNhbFNjcm9sbEVsYXN0aWNpdHkgPSAxIDw8IDUsCi0gICAgICAgIEhhc0VuYWJs
ZWRIb3Jpem9udGFsU2Nyb2xsYmFyID0gMSA8PCA2LAotICAgICAgICBIYXNFbmFibGVkVmVydGlj
YWxTY3JvbGxiYXIgPSAxIDw8IDcsCi0gICAgICAgIFNjcm9sbExheWVyID0gMSA8PCA4LAorICAg
ICAgICBTaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkID0gMSA8PCA0
LAorICAgICAgICBIb3Jpem9udGFsU2Nyb2xsRWxhc3RpY2l0eSA9IDEgPDwgNSwKKyAgICAgICAg
VmVydGljYWxTY3JvbGxFbGFzdGljaXR5ID0gMSA8PCA2LAorICAgICAgICBIYXNFbmFibGVkSG9y
aXpvbnRhbFNjcm9sbGJhciA9IDEgPDwgNywKKyAgICAgICAgSGFzRW5hYmxlZFZlcnRpY2FsU2Ny
b2xsYmFyID0gMSA8PCA4LAorICAgICAgICBTY3JvbGxMYXllciA9IDEgPDwgOSwKICAgICB9Owog
CiAgICAgYm9vbCBoYXNDaGFuZ2VkUHJvcGVydGllcygpIGNvbnN0IHsgcmV0dXJuIG1fY2hhbmdl
ZFByb3BlcnRpZXM7IH0KQEAgLTc2LDYgKzc3LDkgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIHdo
ZWVsRXZlbnRIYW5kbGVyQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3doZWVsRXZlbnRIYW5kbGVy
Q291bnQ7IH0KICAgICB2b2lkIHNldFdoZWVsRXZlbnRIYW5kbGVyQ291bnQodW5zaWduZWQpOwog
CisgICAgYm9vbCBzaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhyZWFkKCkg
Y29uc3QgeyByZXR1cm4gbV9zaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWluVGhy
ZWFkOyB9CisgICAgdm9pZCBzZXRTaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWlu
VGhyZWFkKGJvb2wpOworCiAgICAgU2Nyb2xsRWxhc3RpY2l0eSBob3Jpem9udGFsU2Nyb2xsRWxh
c3RpY2l0eSgpIGNvbnN0IHsgcmV0dXJuIG1faG9yaXpvbnRhbFNjcm9sbEVsYXN0aWNpdHk7IH0K
ICAgICB2b2lkIHNldEhvcml6b250YWxTY3JvbGxFbGFzdGljaXR5KFNjcm9sbEVsYXN0aWNpdHkp
OwogCkBAIC0xMDYsNiArMTEwLDggQEAgcHJpdmF0ZToKIAogICAgIHVuc2lnbmVkIG1fd2hlZWxF
dmVudEhhbmRsZXJDb3VudDsKIAorICAgIGJvb2wgbV9zaG91bGRVcGRhdGVTY3JvbGxMYXllclBv
c2l0aW9uT25NYWluVGhyZWFkOworCiAgICAgU2Nyb2xsRWxhc3RpY2l0eSBtX2hvcml6b250YWxT
Y3JvbGxFbGFzdGljaXR5OwogICAgIFNjcm9sbEVsYXN0aWNpdHkgbV92ZXJ0aWNhbFNjcm9sbEVs
YXN0aWNpdHk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5nL21h
Yy9TY3JvbGxpbmdUcmVlTm9kZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uvc2Nyb2xsaW5n
L21hYy9TY3JvbGxpbmdUcmVlTm9kZU1hYy5tbQppbmRleCA3YTllMDMzZTY5YWU5MDhlZTczNWYw
NWJmNGFjOTU5YjhmZjI1YjQyLi5iZmIwOTZhMjQ1ZTJkOTUzOTk4MmIzYmFkMWMxNmQzNWRmMDI0
NGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL3Njcm9sbGluZy9tYWMvU2Nyb2xs
aW5nVHJlZU5vZGVNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9zY3JvbGxpbmcvbWFj
L1Njcm9sbGluZ1RyZWVOb2RlTWFjLm1tCkBAIC0xMzQsMTQgKzEzNCwyMiBAQCBJbnRQb2ludCBT
Y3JvbGxpbmdUcmVlTm9kZU1hYzo6c2Nyb2xsUG9zaXRpb24oKSBjb25zdAogCiB2b2lkIFNjcm9s
bGluZ1RyZWVOb2RlTWFjOjpzZXRTY3JvbGxQb3NpdGlvbihjb25zdCBJbnRQb2ludCYgcG9zaXRp
b24pCiB7CisgICAgQVNTRVJUKCFzaG91bGRVcGRhdGVTY3JvbGxMYXllclBvc2l0aW9uT25NYWlu
VGhyZWFkKCkpOworCiAgICAgbV9zY3JvbGxMYXllci5nZXQoKS5wb3NpdGlvbiA9IENHUG9pbnRN
YWtlKC1wb3NpdGlvbi54KCksIC1wb3NpdGlvbi55KCkpOwogfQogCi12b2lkIFNjcm9sbGluZ1Ry
ZWVOb2RlTWFjOjpzY3JvbGxCeShjb25zdCBJbnRTaXplICZvZmZzZXQpCit2b2lkIFNjcm9sbGlu
Z1RyZWVOb2RlTWFjOjpzY3JvbGxCeShjb25zdCBJbnRTaXplJiBvZmZzZXQpCiB7Ci0gICAgc2V0
U2Nyb2xsUG9zaXRpb24oc2Nyb2xsUG9zaXRpb24oKSArIG9mZnNldCk7CisgICAgSW50UG9pbnQg
bmV3U2Nyb2xsUG9zaXRpb24gPSBzY3JvbGxQb3NpdGlvbigpICsgb2Zmc2V0OworCisgICAgaWYg
KHNob3VsZFVwZGF0ZVNjcm9sbExheWVyUG9zaXRpb25Pbk1haW5UaHJlYWQoKSkgeworICAgICAg
ICBzY3JvbGxpbmdUcmVlKCktPnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0aW9uQW5kU2Nyb2xs
TGF5ZXJQb3NpdGlvbihuZXdTY3JvbGxQb3NpdGlvbik7CisgICAgICAgIHJldHVybjsKKyAgICB9
CiAKLSAgICBzY3JvbGxpbmdUcmVlKCktPnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0aW9uKHNj
cm9sbFBvc2l0aW9uKCkpOworICAgIHNldFNjcm9sbFBvc2l0aW9uKG5ld1Njcm9sbFBvc2l0aW9u
KTsKKyAgICBzY3JvbGxpbmdUcmVlKCktPnVwZGF0ZU1haW5GcmFtZVNjcm9sbFBvc2l0aW9uKG5l
d1Njcm9sbFBvc2l0aW9uKTsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQ29tcG9zaXRvci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAppbmRleCAz
MmQwZmI3ZjQ5MTJmZWFhMDNmZTFhYWY2MmQ1NTFkZDJkMzRmNDk0Li42ZDQ2NjhiNzM0MTJlMGM0
NDQyMmY1N2UwZDM2N2Q3MDAzNTRkOTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJDb21wb3NpdG9yLmNwcApAQCAtOTgzLDggKzk4MywxOSBAQCB2b2lk
IFJlbmRlckxheWVyQ29tcG9zaXRvcjo6ZnJhbWVWaWV3RGlkU2Nyb2xsKCkKICAgICBpZiAoUmVu
ZGVyTGF5ZXJCYWNraW5nKiBiYWNraW5nID0gcm9vdFJlbmRlckxheWVyKCktPmJhY2tpbmcoKSkK
ICAgICAgICAgYmFja2luZy0+Z3JhcGhpY3NMYXllcigpLT52aXNpYmxlUmVjdENoYW5nZWQoKTsK
IAotICAgIGlmIChtX3Njcm9sbExheWVyKQotICAgICAgICBtX3Njcm9sbExheWVyLT5zZXRQb3Np
dGlvbihGbG9hdFBvaW50KC1zY3JvbGxQb3NpdGlvbi54KCksIC1zY3JvbGxQb3NpdGlvbi55KCkp
KTsKKyAgICBpZiAoIW1fc2Nyb2xsTGF5ZXIpCisgICAgICAgIHJldHVybjsKKworI2lmIEVOQUJM
RShUSFJFQURFRF9TQ1JPTExJTkcpCisgICAgLy8gSWYgdGhlcmUncyBhIHNjcm9sbGluZyBjb29y
ZGluYXRvciB0aGF0IG1hbmFnZXMgc2Nyb2xsaW5nIGZvciB0aGlzIGZyYW1lIHZpZXcsCisgICAg
Ly8gaXQgd2lsbCBhbHNvIG1hbmFnZSB1cGRhdGluZyB0aGUgc2Nyb2xsIGxheWVyIHBvc2l0aW9u
LgorICAgIGlmIChTY3JvbGxpbmdDb29yZGluYXRvciogc2Nyb2xsaW5nQ29vcmRpbmF0b3IgPSB0
aGlzLT5zY3JvbGxpbmdDb29yZGluYXRvcigpKSB7CisgICAgICAgIGlmIChzY3JvbGxpbmdDb29y
ZGluYXRvci0+Y29vcmRpbmF0ZXNTY3JvbGxpbmdGb3JGcmFtZVZpZXcoZnJhbWVWaWV3KSkKKyAg
ICAgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5kaWYKKworICAgIG1fc2Nyb2xsTGF5ZXItPnNl
dFBvc2l0aW9uKEZsb2F0UG9pbnQoLXNjcm9sbFBvc2l0aW9uLngoKSwgLXNjcm9sbFBvc2l0aW9u
LnkoKSkpOwogfQogCiBTdHJpbmcgUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpsYXllclRyZWVBc1Rl
eHQoYm9vbCBzaG93RGVidWdJbmZvKQo=
</data>
<flag name="review"
          id="128223"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>