<?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>127355</bug_id>
          
          <creation_ts>2014-01-21 11:00:11 -0800</creation_ts>
          <short_desc>Keep CALayer implicit animation disabling code in a single place</short_desc>
          <delta_ts>2014-01-21 11:15:11 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>970323</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-01-21 11:00:11 -0800</bug_when>
    <thetext>It&apos;s currently scattered around in oddly named places.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970324</commentid>
    <comment_count>1</comment_count>
      <attachid>221762</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-01-21 11:04:40 -0800</bug_when>
    <thetext>Created attachment 221762
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970327</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-01-21 11:15:11 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/162453</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221762</attachid>
            <date>2014-01-21 11:04:40 -0800</date>
            <delta_ts>2014-01-21 11:07:27 -0800</delta_ts>
            <desc>patch</desc>
            <filename>layerimplicit.diff</filename>
            <type>text/plain</type>
            <size>29064</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZDVlYTNkLi4xZGY1Y2FjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTQtMDEtMjEgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgS2VlcCBDQUxheWVyIGltcGxpY2l0IGFuaW1hdGlvbiBkaXNhYmxpbmcgY29kZSBp
biBhIHNpbmdsZSBwbGFjZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTI3MzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgIEFk
ZCBDQUxheWVyV2ViQWRkaXRpb25zLntoLG1tfS4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2NhL21hYy9QbGF0Zm9ybUNBTGF5ZXJNYWMubW06CisgICAgICAgIChQbGF0Zm9ybUNBTGF5
ZXJNYWM6OmNvbW1vbkluaXQpOgorICAgICAgICBSZW1vdmUgbnVsbEFjdGlvbnNEaWN0aW9uYXJ5
KCkgYW5kIHVzZSBbQ0FMYXllcihXZWJBZGRpdGlvbnMpIHdlYl9kaXNhYmxlQWxsQWN0aW9uc10g
aW5zdGVhZC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9DQUxheWVyV2ViQWRk
aXRpb25zLmg6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9DQUxheWVy
V2ViQWRkaXRpb25zLm1tOiBBZGRlZC4KKyAgICAgICAgKC1bQ0FMYXllciB3ZWJfZGlzYWJsZUFs
bEFjdGlvbnNdKToKKyAgICAgICAgQWRkZWQuIERpc2FibGUgYWxsIGltcGxpY2l0IGFjdGlvbnMg
b24gdGhlIGxheWVyLgorCiAyMDE0LTAxLTE1ICBGcsOpZMOpcmljIFdhbmcgIDxmcmVkLndhbmdA
ZnJlZS5mcj4KIAogICAgICAgICBbU1ZHXSBBY2NlcHQgSFRNTCBhbmQgTWF0aE1MIG5hbWVzcGFj
ZXMgYXMgdmFsaWQgcmVxdWlyZWRFeHRlbnNpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNjRhMTE0NS4uNTc4NzQ5NSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpA
QCAtMTA1OCw2ICsxMDU4LDggQEAKIAkJMkQ5QTI0NzUxNUI5QzJFMzAwRDM0NTI3IC8qIERPTURP
TVNlY3VyaXR5UG9saWN5SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJEOUEyNDcxMTVCOUMyOTUwMEQzNDUyNyAvKiBET01ET01TZWN1cml0
eVBvbGljeUludGVybmFsLmggKi87IH07CiAJCTJEOUEyNDc2MTVCOUMyRjQwMEQzNDUyNyAvKiBE
T01ET01TZWN1cml0eVBvbGljeS5oIGluIENvcHkgR2VuZXJhdGVkIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkQ5QTI0NzAxNUI5QzI5NTAwRDM0NTI3IC8qIERP
TURPTVNlY3VyaXR5UG9saWN5LmggKi87IH07CiAJCTJEOUYwRTEzMTRGRjFDQkYwMEJBMEZGNyAv
KiBsaW5lYXJTUkdCLmljYyBpbiBSZXNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMkQ5RjBFMTIxNEZGMUNCRjAwQkEwRkY3IC8qIGxpbmVhclNSR0IuaWNjICovOyB9
OworCQkyREJBREUwQjE4OEU1OTE1MDA0RDc5ODEgLyogQ0FMYXllcldlYkFkZGl0aW9ucy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkRCQURFMDkxODhF
NTkxNTAwNEQ3OTgxIC8qIENBTGF5ZXJXZWJBZGRpdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkyREJBREUwQzE4OEU1OTE1MDA0RDc5ODEg
LyogQ0FMYXllcldlYkFkZGl0aW9ucy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJEQkFERTBBMTg4RTU5MTUwMDRENzk4MSAvKiBDQUxheWVyV2ViQWRk
aXRpb25zLm1tICovOyB9OwogCQkyREYyRTlENTE2NkUzOTc1MDAzNUJFRjIgLyogQ29uc29sZUFQ
SVR5cGVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAy
REYyRTlENDE2NkUzOTc0MDAzNUJFRjIgLyogQ29uc29sZUFQSVR5cGVzLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMkUwODg4RDQxMTQ4ODQ4QTAw
QUY0MjY1IC8qIEpTRE9NRm9ybURhdGEuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkUwODg4RDIxMTQ4ODQ4QTAwQUY0MjY1IC8qIEpTRE9NRm9ybURh
dGEuY3BwICovOyB9OwogCQkyRTA4ODhENTExNDg4NDhBMDBBRjQyNjUgLyogSlNET01Gb3JtRGF0
YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUwODg4
RDMxMTQ4ODQ4QTAwQUY0MjY1IC8qIEpTRE9NRm9ybURhdGEuaCAqLzsgfTsKQEAgLTc5MjUsNiAr
NzkyNyw4IEBACiAJCTJEOUEyNDcxMTVCOUMyOTUwMEQzNDUyNyAvKiBET01ET01TZWN1cml0eVBv
bGljeUludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERPTURPTVNl
Y3VyaXR5UG9saWN5SW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMkQ5
QTI0NzIxNUI5QzJDNzAwRDM0NTI3IC8qIERPTURPTVNlY3VyaXR5UG9saWN5Lm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRE9NRE9NU2VjdXJpdHlQb2xpY3kubW07
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJEOUYwRTEyMTRGRjFDQkYwMEJBMEZGNyAv
KiBsaW5lYXJTUkdCLmljYyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IGZpbGU7IHBhdGggPSBsaW5lYXJTUkdCLmljYzsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKKwkJMkRCQURFMDkxODhFNTkxNTAwNEQ3OTgxIC8qIENBTGF5ZXJXZWJBZGRpdGlv
bnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0FMYXllcldlYkFkZGl0aW9u
cy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkyREJBREUwQTE4OEU1OTE1MDA0RDc5
ODEgLyogQ0FMYXllcldlYkFkZGl0aW9ucy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IENBTGF5ZXJXZWJBZGRpdGlvbnMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTJERjJFOUQ0MTY2RTM5NzQwMDM1QkVGMiAvKiBDb25zb2xlQVBJVHlwZXMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29uc29sZUFQSVR5cGVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMDg4OEMzMTE0ODgzQTkwMEFGNDI2NSAvKiBET01G
b3JtRGF0YS5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gRE9NRm9ybURhdGEuaWRsOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRTA4ODhEMjExNDg4NDhBMDBBRjQyNjUgLyogSlNE
T01Gb3JtRGF0YS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RP
TUZvcm1EYXRhLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE5ODc2LDYgKzE5
ODgwLDggQEAKIAkJQjI3NTM1NDkwQjA1MzgxNDAwMkNFNjRGIC8qIG1hYyAqLyA9IHsKIAkJCWlz
YSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMkRCQURFMDkxODhFNTkxNTAwNEQ3
OTgxIC8qIENBTGF5ZXJXZWJBZGRpdGlvbnMuaCAqLywKKwkJCQkyREJBREUwQTE4OEU1OTE1MDA0
RDc5ODEgLyogQ0FMYXllcldlYkFkZGl0aW9ucy5tbSAqLywKIAkJCQlFREUzQTRGRjBDN0E0MzA2
MDA5NTZBMzcgLyogQ29sb3JNYWMuaCAqLywKIAkJCQlCMjc1MzU0QTBCMDUzODE0MDAyQ0U2NEYg
LyogQ29sb3JNYWMubW0gKi8sCiAJCQkJMzdDMjM2MEUxMDk3RUU3NzAwRUY5RjcyIC8qIENvbXBs
ZXhUZXh0Q29udHJvbGxlci5jcHAgKi8sCkBAIC0yNDQwOCw2ICsyNDQxNCw3IEBACiAJCQkJQUI0
Q0I0RUIwQjhCREEzRDAwOUY0MEIwIC8qIEpTSFRNTFNlbGVjdEVsZW1lbnRDdXN0b20uaCBpbiBI
ZWFkZXJzICovLAogCQkJCUU0NDYxNDNDMENENjg5Q0MwMEZBREE3NSAvKiBKU0hUTUxTb3VyY2VF
bGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzhFMDkzRjE3RDE2RTFDMDA0MjBBQTEgLyog
UlRDRFRNRlNlbmRlckhhbmRsZXJDbGllbnQuaCBpbiBIZWFkZXJzICovLAorCQkJCTJEQkFERTBC
MTg4RTU5MTUwMDRENzk4MSAvKiBDQUxheWVyV2ViQWRkaXRpb25zLmggaW4gSGVhZGVycyAqLywK
IAkJCQk5NzUyRDM4RTE0MTMxMDRCMDAzMzA1QkQgLyogSlNIVE1MU3BhbkVsZW1lbnQuaCBpbiBI
ZWFkZXJzICovLAogCQkJCUE4MEU3QjBFMEExOUQ2MDYwMDdGQjhDNSAvKiBKU0hUTUxTdHlsZUVs
ZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDQTE2OUEzMEJGRDU1QjQwMDE5Q0E3NiAvKiBK
U0hUTUxUYWJsZUNhcHRpb25FbGVtZW50LmggaW4gSGVhZGVycyAqLywKQEAgLTI3OTE1LDYgKzI3
OTIyLDcgQEAKIAkJCQk1OTgzNjVFNDEzNTVGNjA0MDAxQjE4NUQgLyogSlNQb3NpdGlvbkNhbGxi
YWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUZFODBEQTcxMEU5QzQ3MkYwMDBENkY3NSAvKiBK
U1Bvc2l0aW9uRXJyb3IuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTk4MzY1RTYxMzU1RjYwRDAw
MUIxODVEIC8qIEpTUG9zaXRpb25FcnJvckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTJEQkFERTBDMTg4RTU5MTUwMDRENzk4MSAvKiBDQUxheWVyV2ViQWRkaXRpb25zLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJNjVERjMxRkYwOUQxQ0M2MDAwMEJFMzI1IC8qIEpTUHJvY2Vzc2luZ0lu
c3RydWN0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUU0NDYxM0VEMENENjgxQkEwMEZBREE3
NSAvKiBKU1Byb2dyZXNzRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjY1OEZGQTExNTIy
RUYzQTAwREQ1NTk1IC8qIEpTUmFkaW9Ob2RlTGlzdC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9ybUNB
TGF5ZXJNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxh
dGZvcm1DQUxheWVyTWFjLm1tCmluZGV4IGFmZTU5M2YuLmE2NTI2NTdjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvUGxhdGZvcm1DQUxheWVyTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9QbGF0Zm9y
bUNBTGF5ZXJNYWMubW0KQEAgLTMxLDYgKzMxLDcgQEAKIAogI2ltcG9ydCAiQW5pbWF0aW9uVXRp
bGl0aWVzLmgiCiAjaW1wb3J0ICJCbG9ja0V4Y2VwdGlvbnMuaCIKKyNpbXBvcnQgIkNBTGF5ZXJX
ZWJBZGRpdGlvbnMuaCIKICNpbXBvcnQgIkdyYXBoaWNzQ29udGV4dC5oIgogI2ltcG9ydCAiR3Jh
cGhpY3NMYXllckNBLmgiCiAjaW1wb3J0ICJMZW5ndGhGdW5jdGlvbnMuaCIKQEAgLTE1MywzMSAr
MTU0LDYgQEAgdm9pZCBQbGF0Zm9ybUNBTGF5ZXJNYWM6OnNldE93bmVyKFBsYXRmb3JtQ0FMYXll
ckNsaWVudCogb3duZXIpCiAgICAgICAgIFtzdGF0aWNfY2FzdDxXZWJBbmltYXRpb25EZWxlZ2F0
ZSo+KG1fZGVsZWdhdGUuZ2V0KCkpIHNldE93bmVyOnRoaXNdOyAgICAgICAgCiB9CiAKLXN0YXRp
YyBOU0RpY3Rpb25hcnkgKm51bGxBY3Rpb25zRGljdGlvbmFyeSgpCi17Ci0gICAgTlNOdWxsICpu
dWxsVmFsdWUgPSBbTlNOdWxsIG51bGxdOwotICAgIE5TRGljdGlvbmFyeSAqYWN0aW9ucyA9IFtO
U0RpY3Rpb25hcnkgZGljdGlvbmFyeVdpdGhPYmplY3RzQW5kS2V5czoKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbFZhbHVlLCBAImFuY2hvclBvaW50IiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbFZhbHVlLCBAImFuY2hvclBvaW50WiIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG51bGxWYWx1ZSwgQCJiYWNrZ3JvdW5kQ29sb3IiLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBudWxsVmFsdWUsIEAiYm9yZGVyQ29sb3IiLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBudWxsVmFsdWUsIEAiYm9yZGVyV2lkdGgiLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBudWxsVmFsdWUsIEAiYm91bmRzIiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbFZhbHVlLCBAImNvbnRlbnRzIiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbnVsbFZhbHVlLCBAImNvbnRlbnRzUmVjdCIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG51bGxWYWx1ZSwgQCJjb250ZW50c1NjYWxlIiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbFZhbHVlLCBAImNvcm5lclJhZGl1cyIsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG51bGxWYWx1ZSwgQCJvcGFjaXR5IiwKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbnVsbFZhbHVlLCBAInBvc2l0aW9uIiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbnVsbFZhbHVlLCBAInNoYWRvd0NvbG9yIiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbnVsbFZhbHVlLCBAInN1YmxheWVyVHJhbnNmb3JtIiwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbnVsbFZhbHVlLCBAInN1YmxheWVycyIsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG51bGxWYWx1ZSwgQCJ0cmFuc2Zvcm0iLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBudWxsVmFsdWUsIEAielBvc2l0aW9uIiwKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgbmlsXTsKLSAgICByZXR1cm4gYWN0aW9uczsKLX0KLQogc3RhdGljIE5TU3RyaW5n
ICp0b0NBRmlsdGVyVHlwZShQbGF0Zm9ybUNBTGF5ZXI6OkZpbHRlclR5cGUgdHlwZSkKIHsKICAg
ICBzd2l0Y2ggKHR5cGUpIHsKQEAgLTI0Myw3ICsyMTksNyBAQCB2b2lkIFBsYXRmb3JtQ0FMYXll
ck1hYzo6Y29tbW9uSW5pdCgpCiAgICAgW21fbGF5ZXIuZ2V0KCkgc2V0VmFsdWU6W05TVmFsdWUg
dmFsdWVXaXRoUG9pbnRlcjp0aGlzXSBmb3JLZXk6cGxhdGZvcm1DQUxheWVyUG9pbnRlcl07CiAg
ICAgCiAgICAgLy8gQ2xlYXIgYWxsIHRoZSBpbXBsaWNpdCBhbmltYXRpb25zIG9uIHRoZSBDQUxh
eWVyCi0gICAgW21fbGF5ZXIuZ2V0KCkgc2V0U3R5bGU6W05TRGljdGlvbmFyeSBkaWN0aW9uYXJ5
V2l0aE9iamVjdDpudWxsQWN0aW9uc0RpY3Rpb25hcnkoKSBmb3JLZXk6QCJhY3Rpb25zIl1dOwor
ICAgIFttX2xheWVyIHdlYl9kaXNhYmxlQWxsQWN0aW9uc107CiAKICAgICAvLyBTbyB0aGF0IHRo
ZSBzY3JvbGxpbmcgdGhyZWFkJ3MgcGVyZm9ybWFuY2UgbG9nZ2luZyBjb2RlIGNhbiBmaW5kIGFs
bCB0aGUgdGlsZXMsIG1hcmsgdGhpcyBhcyBiZWluZyBhIHRpbGUuCiAgICAgaWYgKG1fbGF5ZXJU
eXBlID09IExheWVyVHlwZVRpbGVkQmFja2luZ1RpbGVMYXllcikKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9DQUxheWVyV2ViQWRkaXRpb25zLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ0FMYXllcldlYkFkZGl0aW9ucy5o
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkyOTcyNDkKLS0tIC9kZXYvbnVs
bAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ0FMYXllcldlYkFk
ZGl0aW9ucy5oCkBAIC0wLDAgKzEsMzcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMsIDIw
MTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKKyNpZm5kZWYgQ0FMYXllcldlYkFkZGl0
aW9uc19oCisjZGVmaW5lIENBTGF5ZXJXZWJBZGRpdGlvbnNfaAorCisjaW1wb3J0IDxRdWFydHpD
b3JlL1F1YXJ0ekNvcmUuaD4KKworQGludGVyZmFjZSBDQUxheWVyIChXZWJBZGRpdGlvbnMpCisK
Ky0gKHZvaWQpd2ViX2Rpc2FibGVBbGxBY3Rpb25zOworCitAZW5kCisKKyNlbmRpZiAvLyBDQUxh
eWVyV2ViQWRkaXRpb25zX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL21hYy9DQUxheWVyV2ViQWRkaXRpb25zLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0NBTGF5ZXJXZWJBZGRpdGlvbnMubW0KbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMC4uMzVjOTIyYgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9DQUxheWVyV2ViQWRkaXRpb25zLm1tCkBAIC0wLDAg
KzEsNTggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMsIDIwMTQgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuIAorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2ltcG9ydCAiQ0FMYXllcldl
YkFkZGl0aW9ucy5oIgorCitAaW1wbGVtZW50YXRpb24gQ0FMYXllciAoV2ViQWRkaXRpb25zKQor
CistICh2b2lkKXdlYl9kaXNhYmxlQWxsQWN0aW9ucworeworICAgIE5TTnVsbCAqbnVsbFZhbHVl
ID0gW05TTnVsbCBudWxsXTsKKyAgICBzZWxmLnN0eWxlID0gQHsKKyAgICAgICAgQCJhY3Rpb25z
IiA6IEB7CisgICAgICAgICAgICBAImFuY2hvclBvaW50IiA6IG51bGxWYWx1ZSwKKyAgICAgICAg
ICAgIEAiYW5jaG9yUG9pbnRaIiA6IG51bGxWYWx1ZSwKKyAgICAgICAgICAgIEAiYmFja2dyb3Vu
ZENvbG9yIiA6IG51bGxWYWx1ZSwKKyAgICAgICAgICAgIEAiYm9yZGVyQ29sb3IiIDogbnVsbFZh
bHVlLAorICAgICAgICAgICAgQCJib3JkZXJXaWR0aCIgOiBudWxsVmFsdWUsCisgICAgICAgICAg
ICBAImJvdW5kcyIgOiBudWxsVmFsdWUsCisgICAgICAgICAgICBAImNvbnRlbnRzIiA6IG51bGxW
YWx1ZSwKKyAgICAgICAgICAgIEAiY29udGVudHNSZWN0IiA6IG51bGxWYWx1ZSwKKyAgICAgICAg
ICAgIEAiY29udGVudHNTY2FsZSIgOiBudWxsVmFsdWUsCisgICAgICAgICAgICBAImNvcm5lclJh
ZGl1cyIgOiBudWxsVmFsdWUsCisgICAgICAgICAgICBAIm9wYWNpdHkiIDogbnVsbFZhbHVlLAor
ICAgICAgICAgICAgQCJwb3NpdGlvbiIgOiBudWxsVmFsdWUsCisgICAgICAgICAgICBAInNoYWRv
d0NvbG9yIiA6IG51bGxWYWx1ZSwKKyAgICAgICAgICAgIEAic3VibGF5ZXJUcmFuc2Zvcm0iIDog
bnVsbFZhbHVlLAorICAgICAgICAgICAgQCJzdWJsYXllcnMiIDogbnVsbFZhbHVlLAorICAgICAg
ICAgICAgQCJ0cmFuc2Zvcm0iIDogbnVsbFZhbHVlLAorICAgICAgICAgICAgQCJ6UG9zaXRpb24i
IDogbnVsbFZhbHVlCisgICAgICAgIH0KKyAgICB9OworfQorCitAZW5kCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
ZjFmNGJmMi4uYzFjNWFhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE0LTAxLTIx
ICBUaW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEtlZXAg
Q0FMYXllciBpbXBsaWNpdCBhbmltYXRpb24gZGlzYWJsaW5nIGNvZGUgaW4gYSBzaW5nbGUgcGxh
Y2UKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzM1
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2hh
cmVkL21hYy9SZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFwcGxpZXIuaDoKKyAgICAgICAgKiBTaGFy
ZWQvbWFjL1JlbW90ZUxheWVyVHJlZVByb3BlcnR5QXBwbGllci5tbToKKyAgICAgICAgUmVtb3Zl
IGRpc2FibGVBY3Rpb25zRm9yTGF5ZXIuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL21hYy9X
S1ZpZXcubW06CisgICAgICAgICgtW1dLVmlldyBfcm9vdExheWVyXSk6CisgICAgICAgIERpc2Fi
bGUgYWN0aW9ucyBvbiB0aGUgcm9vdCBsYXllci4gSXQgZG9lc24ndCBuZWVkIHRoZW0sIGFuZCBj
dXJyZW50bHkKKyAgICAgICAgaXNuJ3QgYWZmZWN0ZWQgYnkgaW1wbGljaXQgYW5pbWF0aW9ucywg
YnV0IGZ1dHVyZSBwYXRjaGVzIHdoaWNoIGFuaW1hdGUKKyAgICAgICAgdGhlIHJvb3QgbGF5ZXIg
d2lsbCBiZW5lZml0IGZyb20gdGhpcy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvUmVtb3Rl
TGF5ZXJUcmVlSG9zdC5tbToKKyAgICAgICAgKFdlYktpdDo6UmVtb3RlTGF5ZXJUcmVlSG9zdDo6
Y3JlYXRlTGF5ZXIpOgorICAgICAgICBVc2Ugd2ViX2Rpc2FibGVBbGxBY3Rpb25zIGluc3RlYWQg
b2YgZGlzYWJsZUFjdGlvbnNGb3JMYXllci4KKworICAgICAgICAqIFdlYktpdDIueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1BsYXRm
b3JtQ0FMYXllclJlbW90ZUN1c3RvbS5tbTogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViUGFnZS9tYWMvUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLmNwcC4KKyAg
ICAgICAgKFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbTo6UGxhdGZvcm1DQUxheWVyUmVtb3Rl
Q3VzdG9tKToKKyAgICAgICAgKFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbTo6flBsYXRmb3Jt
Q0FMYXllclJlbW90ZUN1c3RvbSk6CisgICAgICAgIChQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0
b206Omhvc3RpbmdDb250ZXh0SUQpOgorICAgICAgICBVc2Ugd2ViX2Rpc2FibGVBbGxBY3Rpb25z
IGluc3RlYWQgb2YgZGlzYWJsZUFjdGlvbnNGb3JMYXllci4KKyAgICAgICAgVGhpcyByZXF1aXJl
cyBtYWtpbmcgdGhpcyBmaWxlIE9iai1DKysgYnV0IHRoYXQncyBPSyBzaW5jZSBpdCdzIE1hYy9p
T1Mgb25seS4KKwogMjAxNC0wMS0xNSAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGln
YWxpYS5jb20+CiAKICAgICAgICAgW0dUS10gV2ViIHByb2Nlc3Mgc29tZXRpbWVzIGNyYXNoZXMg
d2hlbiBwcmludGluZyBpbiBzeW5jaHJvbm91cyBtb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9TaGFyZWQvbWFjL1JlbW90ZUxheWVyVHJlZVByb3BlcnR5QXBwbGllci5oIGIvU291cmNl
L1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFwcGxpZXIuaAppbmRl
eCA2YWEwMjJiLi4xMzMzODc3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFj
L1JlbW90ZUxheWVyVHJlZVByb3BlcnR5QXBwbGllci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlUHJvcGVydHlBcHBsaWVyLmgKQEAgLTM1LDcgKzM1LDYg
QEAgY2xhc3MgUmVtb3RlTGF5ZXJUcmVlUHJvcGVydHlBcHBsaWVyIHsKIHB1YmxpYzoKICAgICB0
eXBlZGVmIEhhc2hNYXA8V2ViQ29yZTo6R3JhcGhpY3NMYXllcjo6UGxhdGZvcm1MYXllcklELCBD
QUxheWVyICo+IFJlbGF0ZWRMYXllck1hcDsKICAgICBzdGF0aWMgdm9pZCBhcHBseVByb3BlcnRp
ZXNUb0xheWVyKENBTGF5ZXIgKiwgUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OkxheWVyUHJv
cGVydGllcywgUmVsYXRlZExheWVyTWFwKTsKLSAgICBzdGF0aWMgdm9pZCBkaXNhYmxlQWN0aW9u
c0ZvckxheWVyKENBTGF5ZXIgKik7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvUmVtb3RlTGF5ZXJUcmVlUHJvcGVydHlB
cHBsaWVyLm1tIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVQcm9w
ZXJ0eUFwcGxpZXIubW0KaW5kZXggNDhmMzFmYS4uZWEzNWE3NiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFwcGxpZXIubW0KKysr
IGIvU291cmNlL1dlYktpdDIvU2hhcmVkL21hYy9SZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFwcGxp
ZXIubW0KQEAgLTE4NywzMCArMTg3LDQgQEAgdm9pZCBSZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFw
cGxpZXI6OmFwcGx5UHJvcGVydGllc1RvTGF5ZXIoQ0FMYXllciAqbGF5ZXIsIFJlbW8KICAgICAg
ICAgdXBkYXRlQ3VzdG9tQXBwZWFyYW5jZShsYXllciwgcHJvcGVydGllcy5jdXN0b21BcHBlYXJh
bmNlKTsKIH0KIAotdm9pZCBSZW1vdGVMYXllclRyZWVQcm9wZXJ0eUFwcGxpZXI6OmRpc2FibGVB
Y3Rpb25zRm9yTGF5ZXIoQ0FMYXllciAqbGF5ZXIpCi17Ci0gICAgTlNOdWxsICpudWxsVmFsdWUg
PSBbTlNOdWxsIG51bGxdOwotICAgIGxheWVyLnN0eWxlID0gQHsKLSAgICAgICAgQCJhY3Rpb25z
IiA6IEB7Ci0gICAgICAgICAgICBAImFuY2hvclBvaW50IiA6IG51bGxWYWx1ZSwKLSAgICAgICAg
ICAgIEAiYW5jaG9yUG9pbnRaIiA6IG51bGxWYWx1ZSwKLSAgICAgICAgICAgIEAiYmFja2dyb3Vu
ZENvbG9yIiA6IG51bGxWYWx1ZSwKLSAgICAgICAgICAgIEAiYm9yZGVyQ29sb3IiIDogbnVsbFZh
bHVlLAotICAgICAgICAgICAgQCJib3JkZXJXaWR0aCIgOiBudWxsVmFsdWUsCi0gICAgICAgICAg
ICBAImJvdW5kcyIgOiBudWxsVmFsdWUsCi0gICAgICAgICAgICBAImNvbnRlbnRzIiA6IG51bGxW
YWx1ZSwKLSAgICAgICAgICAgIEAiY29udGVudHNSZWN0IiA6IG51bGxWYWx1ZSwKLSAgICAgICAg
ICAgIEAiY29udGVudHNTY2FsZSIgOiBudWxsVmFsdWUsCi0gICAgICAgICAgICBAImNvcm5lclJh
ZGl1cyIgOiBudWxsVmFsdWUsCi0gICAgICAgICAgICBAIm9wYWNpdHkiIDogbnVsbFZhbHVlLAot
ICAgICAgICAgICAgQCJwb3NpdGlvbiIgOiBudWxsVmFsdWUsCi0gICAgICAgICAgICBAInNoYWRv
d0NvbG9yIiA6IG51bGxWYWx1ZSwKLSAgICAgICAgICAgIEAic3VibGF5ZXJUcmFuc2Zvcm0iIDog
bnVsbFZhbHVlLAotICAgICAgICAgICAgQCJzdWJsYXllcnMiIDogbnVsbFZhbHVlLAotICAgICAg
ICAgICAgQCJ0cmFuc2Zvcm0iIDogbnVsbFZhbHVlLAotICAgICAgICAgICAgQCJ6UG9zaXRpb24i
IDogbnVsbFZhbHVlCi0gICAgICAgIH0KLSAgICB9OwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJL
aXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5t
bSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvbWFjL1dLVmlldy5tbQppbmRleCBjYjc0
ZTAzLi4zMzYwYTFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL21h
Yy9XS1ZpZXcubW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9tYWMvV0tWaWV3
Lm1tCkBAIC0yNDc2LDEzICsyNDc2LDE0IEBAIHN0YXRpYyBOU1N0cmluZyAqIGNvbnN0IGJhY2tp
bmdQcm9wZXJ0eU9sZFNjYWxlRmFjdG9yS2V5ID0gQCJOU0JhY2tpbmdQcm9wZXJ0eU9sCiAgICAg
ICAgIGlmICghX2RhdGEtPl9sYXllckhvc3RpbmdWaWV3KSB7CiAgICAgICAgICAgICAvLyBDcmVh
dGUgYW4gTlNWaWV3IHRoYXQgd2lsbCBob3N0IG91ciBsYXllciB0cmVlLgogICAgICAgICAgICAg
X2RhdGEtPl9sYXllckhvc3RpbmdWaWV3ID0gYWRvcHROUyhbW1dLRmxpcHBlZFZpZXcgYWxsb2Nd
IGluaXRXaXRoRnJhbWU6W3NlbGYgYm91bmRzXV0pOwotICAgICAgICAgICAgW19kYXRhLT5fbGF5
ZXJIb3N0aW5nVmlldy5nZXQoKSBzZXRBdXRvcmVzaXppbmdNYXNrOk5TVmlld1dpZHRoU2l6YWJs
ZSB8IE5TVmlld0hlaWdodFNpemFibGVdOworICAgICAgICAgICAgW19kYXRhLT5fbGF5ZXJIb3N0
aW5nVmlldyBzZXRBdXRvcmVzaXppbmdNYXNrOk5TVmlld1dpZHRoU2l6YWJsZSB8IE5TVmlld0hl
aWdodFNpemFibGVdOwogCiAKICAgICAgICAgICAgIFtzZWxmIGFkZFN1YnZpZXc6X2RhdGEtPl9s
YXllckhvc3RpbmdWaWV3LmdldCgpIHBvc2l0aW9uZWQ6TlNXaW5kb3dCZWxvdyByZWxhdGl2ZVRv
Om5pbF07CiAKICAgICAgICAgICAgIC8vIENyZWF0ZSBhIHJvb3QgbGF5ZXIgdGhhdCB3aWxsIGJh
Y2sgdGhlIE5TVmlldy4KICAgICAgICAgICAgIFJldGFpblB0cjxDQUxheWVyPiBsYXllciA9IGFk
b3B0TlMoW1tDQUxheWVyIGFsbG9jXSBpbml0XSk7CisgICAgICAgICAgICBbbGF5ZXIgd2ViX2Rp
c2FibGVBbGxBY3Rpb25zXTsKICNpZm5kZWYgTkRFQlVHCiAgICAgICAgICAgICBbbGF5ZXIgc2V0
TmFtZTpAIkhvc3Rpbmcgcm9vdCBsYXllciJdOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1JlbW90ZUxheWVyVHJlZUhvc3QubW0gYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvbWFjL1JlbW90ZUxheWVyVHJlZUhvc3QubW0KaW5kZXggNDY0NDkxNC4u
Yzc5OTc2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9SZW1vdGVM
YXllclRyZWVIb3N0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvUmVtb3Rl
TGF5ZXJUcmVlSG9zdC5tbQpAQCAtMzIsNiArMzIsNyBAQAogI2ltcG9ydCAiU2hhcmVhYmxlQml0
bWFwLmgiCiAjaW1wb3J0ICJXZWJQYWdlUHJveHkuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NQcm94
eS5oIgorI2ltcG9ydCA8V2ViQ29yZS9DQUxheWVyV2ViQWRkaXRpb25zLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1BsYXRmb3JtTGF5ZXIuaD4KICNpbXBvcnQgPFdlYktpdFN5c3RlbUludGVyZmFjZS5o
PgogCkBAIC0xMjEsNyArMTIyLDcgQEAgQ0FMYXllciAqUmVtb3RlTGF5ZXJUcmVlSG9zdDo6Y3Jl
YXRlTGF5ZXIoUmVtb3RlTGF5ZXJUcmVlVHJhbnNhY3Rpb246OkxheWVyQ3JlYXQKICAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgfQogCi0gICAgUmVtb3RlTGF5ZXJUcmVlUHJvcGVy
dHlBcHBsaWVyOjpkaXNhYmxlQWN0aW9uc0ZvckxheWVyKGxheWVyLmdldCgpKTsKKyAgICBbbGF5
ZXIgd2ViX2Rpc2FibGVBbGxBY3Rpb25zXTsKIAogICAgIHJldHVybiBsYXllci5nZXQoKTsKIH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpp
bmRleCA1YzE5NmRjLi41MzlhMWQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQy
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC00MDUsNyArNDA1LDcgQEAKIAkJMkQ4MTlCQTEx
ODYyODAwRTAwMUYwM0QxIC8qIFZpZXdHZXN0dXJlR2VvbWV0cnlDb2xsZWN0b3JNZXNzYWdlUmVj
ZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkQ4MTlCOUYxODYyODAwRTAwMUYwM0QxIC8qIFZpZXdHZXN0dXJlR2VvbWV0cnlDb2xsZWN0b3JN
ZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwogCQkyRDgxOUJBMjE4NjI4MDBFMDAxRjAzRDEgLyog
Vmlld0dlc3R1cmVHZW9tZXRyeUNvbGxlY3Rvck1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDgxOUJBMDE4NjI4MDBFMDAxRjAzRDEgLyog
Vmlld0dlc3R1cmVHZW9tZXRyeUNvbGxlY3Rvck1lc3NhZ2VzLmggKi87IH07CiAJCTJEODcwRDEw
MTYyMzRGRkUwMDBBM0YyMCAvKiBQREZQbHVnaW4ubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDg3MEQwRTE2MjJCN0Y5MDAwQTNGMjAgLyogUERGUGx1
Z2luLm1tICovOyB9OwotCQkyRDg3MTAxNjE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZvcm1DQUxh
eWVyUmVtb3RlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDJEODcxMDE0MTgyODQxNUQwMDE4RkEwMSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1v
dGVDdXN0b20uY3BwICovOyB9OworCQkyRDg3MTAxNjE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZv
cm1DQUxheWVyUmVtb3RlQ3VzdG9tLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMkQ4NzEwMTQxODI4NDE1RDAwMThGQTAxIC8qIFBsYXRmb3JtQ0FMYXll
clJlbW90ZUN1c3RvbS5tbSAqLzsgfTsKIAkJMkQ4NzEwMTcxODI4NDE1RDAwMThGQTAxIC8qIFBs
YXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMkQ4NzEwMTUxODI4NDE1RDAwMThGQTAxIC8qIFBsYXRmb3JtQ0FM
YXllclJlbW90ZUN1c3RvbS5oICovOyB9OwogCQkyRDg5NDlGMDE4MjA0NEY2MDBFODk4QUEgLyog
UGxhdGZvcm1DQUxheWVyUmVtb3RlVGlsZWRCYWNraW5nLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDJEODk0OUVFMTgyMDQ0RjYwMEU4OThBQSAvKiBQ
bGF0Zm9ybUNBTGF5ZXJSZW1vdGVUaWxlZEJhY2tpbmcuY3BwICovOyB9OwogCQkyRDg5NDlGMTE4
MjA0NEY2MDBFODk4QUEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlVGlsZWRCYWNraW5nLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRDg5NDlFRjE4MjA0
NEY2MDBFODk4QUEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlVGlsZWRCYWNraW5nLmggKi87IH07
CkBAIC0yMDQ0LDcgKzIwNDQsNyBAQAogCQkyRDgxOUJBMDE4NjI4MDBFMDAxRjAzRDEgLyogVmll
d0dlc3R1cmVHZW9tZXRyeUNvbGxlY3Rvck1lc3NhZ2VzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFZpZXdHZXN0dXJlR2VvbWV0cnlDb2xsZWN0b3JNZXNzYWdlcy5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDg3MEQwRDE2MjJCN0Y5MDAwQTNGMjAgLyogUERG
UGx1Z2luLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFBERlBsdWdpbi5oOyBw
YXRoID0gUERGL1BERlBsdWdpbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDg3
MEQwRTE2MjJCN0Y5MDAwQTNGMjAgLyogUERGUGx1Z2luLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAub2JqY3BwOyBuYW1lID0gUERGUGx1Z2luLm1tOyBwYXRoID0gUERGL1BERlBsdWdpbi5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMkQ4NzEwMTQxODI4NDE1RDAwMThGQTAx
IC8qIFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0b20uY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkyRDg3MTAxNDE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZv
cm1DQUxheWVyUmVtb3RlQ3VzdG9tLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3Bw
OyBwYXRoID0gUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkyRDg3MTAxNTE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZvcm1DQUxheWVy
UmVtb3RlQ3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBsYXRmb3Jt
Q0FMYXllclJlbW90ZUN1c3RvbS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRDg5
NDlFRTE4MjA0NEY2MDBFODk4QUEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlVGlsZWRCYWNraW5n
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsYXRmb3JtQ0FMYXll
clJlbW90ZVRpbGVkQmFja2luZy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJE
ODk0OUVGMTgyMDQ0RjYwMEU4OThBQSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVUaWxlZEJhY2tp
bmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1DQUxheWVyUmVt
b3RlVGlsZWRCYWNraW5nLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC01NDk0LDcg
KzU0OTQsNyBAQAogCQkJCTJEQTA0OUI2MTgwQ0NEMEEwMEFBRkE5RSAvKiBHcmFwaGljc0xheWVy
Q0FSZW1vdGUuaCAqLywKIAkJCQkyREEwNDlCMTE4MENDQ0QzMDBBQUZBOUUgLyogUGxhdGZvcm1D
QUxheWVyUmVtb3RlLmNwcCAqLywKIAkJCQkyREEwNDlCMjE4MENDQ0QzMDBBQUZBOUUgLyogUGxh
dGZvcm1DQUxheWVyUmVtb3RlLmggKi8sCi0JCQkJMkQ4NzEwMTQxODI4NDE1RDAwMThGQTAxIC8q
IFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5jcHAgKi8sCisJCQkJMkQ4NzEwMTQxODI4NDE1
RDAwMThGQTAxIC8qIFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5tbSAqLywKIAkJCQkyRDg3
MTAxNTE4Mjg0MTVEMDAxOEZBMDEgLyogUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLmggKi8s
CiAJCQkJMkQ4OTQ5RUUxODIwNDRGNjAwRTg5OEFBIC8qIFBsYXRmb3JtQ0FMYXllclJlbW90ZVRp
bGVkQmFja2luZy5jcHAgKi8sCiAJCQkJMkQ4OTQ5RUYxODIwNDRGNjAwRTg5OEFBIC8qIFBsYXRm
b3JtQ0FMYXllclJlbW90ZVRpbGVkQmFja2luZy5oICovLApAQCAtNzkwMiw3ICs3OTAyLDcgQEAK
IAkJCQlGMDM2OTc4NTE1RjRCRTZCMDBDM0E4MEUgLyogV0tDb2xvclBpY2tlclJlc3VsdExpc3Rl
bmVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQTI4NEQ2MTQ5MkYyQzcwMDFGOTA0MiAvKiBX
S0Nvbm5lY3Rpb24ubW0gaW4gU291cmNlcyAqLywKIAkJCQlCQzRBNjI5NjE0NzMxM0EwMDA2QzY4
MUEgLyogV0tDb25uZWN0aW9uUmVmLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTJEODcxMDE2MTgy
ODQxNUQwMDE4RkEwMSAvKiBQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0b20uY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJMkQ4NzEwMTYxODI4NDE1RDAwMThGQTAxIC8qIFBsYXRmb3JtQ0FMYXllclJl
bW90ZUN1c3RvbS5tbSBpbiBTb3VyY2VzICovLAogCQkJCUJDQjlFMjRDMTEyMEUxNUMwMEExMzdF
MCAvKiBXS0NvbnRleHQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFBNTU1RjUxMjhDNkM0NzAw
OUFCQ0VDIC8qIFdLQ29udGV4dE1lbnVJdGVtLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlGQjVG
Mzk0MTY5RTZBODAwMDJDMjVCRiAvKiBXS0NvbnRleHRQcml2YXRlTWFjLm1tIGluIFNvdXJjZXMg
Ki8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1Bs
YXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvbWFjL1BsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5jcHAKZGVsZXRlZCBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAzOWU5YjEuLjAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9QbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0b20uY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsNzMgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKLSAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAotICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0KLSNpZiBV
U0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCi0KLSNpbXBvcnQgIlBsYXRmb3JtQ0FMYXllclJl
bW90ZUN1c3RvbS5oIgotCi0jaW1wb3J0ICJMYXllckhvc3RpbmdDb250ZXh0LmgiCi0jaW1wb3J0
ICJSZW1vdGVMYXllclRyZWVDb250ZXh0LmgiCi0jaW1wb3J0ICJSZW1vdGVMYXllclRyZWVQcm9w
ZXJ0eUFwcGxpZXIuaCIKLSNpbXBvcnQgIldlYlByb2Nlc3MuaCIKLSNpbXBvcnQgPFdlYkNvcmUv
R3JhcGhpY3NMYXllckNBLmg+Ci0jaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3JtQ0FMYXllck1hYy5o
PgotI2ltcG9ydCA8V2ViQ29yZS9Tb2Z0TGlua2luZy5oPgotI2ltcG9ydCA8d3RmL1JldGFpblB0
ci5oPgotCi11c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKLXVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7
Ci0KLVBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbTo6UGxhdGZvcm1DQUxheWVyUmVtb3RlQ3Vz
dG9tKFBsYXRmb3JtTGF5ZXIqIGN1c3RvbUxheWVyLCBQbGF0Zm9ybUNBTGF5ZXJDbGllbnQqIG93
bmVyLCBSZW1vdGVMYXllclRyZWVDb250ZXh0KiBjb250ZXh0KQotICAgIDogUGxhdGZvcm1DQUxh
eWVyUmVtb3RlKExheWVyVHlwZUN1c3RvbSwgb3duZXIsIGNvbnRleHQpCi17Ci0gICAgc3dpdGNo
IChjb250ZXh0LT5sYXllckhvc3RpbmdNb2RlKCkpIHsKLSAgICBjYXNlIExheWVySG9zdGluZ01v
ZGVEZWZhdWx0OgotICAgICAgICBtX2xheWVySG9zdGluZ0NvbnRleHQgPSBMYXllckhvc3RpbmdD
b250ZXh0OjpjcmVhdGVGb3JQb3J0KFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbXBvc2l0aW5nUmVu
ZGVyU2VydmVyUG9ydCgpKTsKLSAgICAgICAgYnJlYWs7Ci0jaWYgSEFWRShMQVlFUl9IT1NUSU5H
X0lOX1dJTkRPV19TRVJWRVIpCi0gICAgY2FzZSBMYXllckhvc3RpbmdNb2RlSW5XaW5kb3dTZXJ2
ZXI6Ci0gICAgICAgIG1fbGF5ZXJIb3N0aW5nQ29udGV4dCA9IExheWVySG9zdGluZ0NvbnRleHQ6
OmNyZWF0ZUZvcldpbmRvd1NlcnZlcigpOwotICAgICAgICBicmVhazsKLSNlbmRpZgotICAgIH0K
LQotICAgIG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+c2V0Um9vdExheWVyKGN1c3RvbUxheWVyKTsK
LQotICAgIG1fcGxhdGZvcm1MYXllciA9IGN1c3RvbUxheWVyOwotICAgIFJlbW90ZUxheWVyVHJl
ZVByb3BlcnR5QXBwbGllcjo6ZGlzYWJsZUFjdGlvbnNGb3JMYXllcihjdXN0b21MYXllcik7Ci19
Ci0KLVBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbTo6flBsYXRmb3JtQ0FMYXllclJlbW90ZUN1
c3RvbSgpCi17Ci19Ci0KLXVpbnQzMl90IFBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbTo6aG9z
dGluZ0NvbnRleHRJRCgpCi17Ci0gICAgcmV0dXJuIG1fbGF5ZXJIb3N0aW5nQ29udGV4dC0+Y29u
dGV4dElEKCk7Ci19Ci0KLSNlbmRpZiAvLyBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1BsYXRmb3Jt
Q0FMYXllclJlbW90ZUN1c3RvbS5tbSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAuLjFmNjliZjUKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1BsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbS5tbQpA
QCAtMCwwICsxLDc0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIFVTRShBQ0NFTEVSQVRF
RF9DT01QT1NJVElORykKKworI2ltcG9ydCAiUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tLmgi
CisKKyNpbXBvcnQgIkxheWVySG9zdGluZ0NvbnRleHQuaCIKKyNpbXBvcnQgIlJlbW90ZUxheWVy
VHJlZUNvbnRleHQuaCIKKyNpbXBvcnQgIlJlbW90ZUxheWVyVHJlZVByb3BlcnR5QXBwbGllci5o
IgorI2ltcG9ydCAiV2ViUHJvY2Vzcy5oIgorI2ltcG9ydCA8V2ViQ29yZS9DQUxheWVyV2ViQWRk
aXRpb25zLmg+CisjaW1wb3J0IDxXZWJDb3JlL0dyYXBoaWNzTGF5ZXJDQS5oPgorI2ltcG9ydCA8
V2ViQ29yZS9QbGF0Zm9ybUNBTGF5ZXJNYWMuaD4KKyNpbXBvcnQgPFdlYkNvcmUvU29mdExpbmtp
bmcuaD4KKyNpbXBvcnQgPHd0Zi9SZXRhaW5QdHIuaD4KKwordXNpbmcgbmFtZXNwYWNlIFdlYkNv
cmU7Cit1c2luZyBuYW1lc3BhY2UgV2ViS2l0OworCitQbGF0Zm9ybUNBTGF5ZXJSZW1vdGVDdXN0
b206OlBsYXRmb3JtQ0FMYXllclJlbW90ZUN1c3RvbShQbGF0Zm9ybUxheWVyKiBjdXN0b21MYXll
ciwgUGxhdGZvcm1DQUxheWVyQ2xpZW50KiBvd25lciwgUmVtb3RlTGF5ZXJUcmVlQ29udGV4dCog
Y29udGV4dCkKKyAgICA6IFBsYXRmb3JtQ0FMYXllclJlbW90ZShMYXllclR5cGVDdXN0b20sIG93
bmVyLCBjb250ZXh0KQoreworICAgIHN3aXRjaCAoY29udGV4dC0+bGF5ZXJIb3N0aW5nTW9kZSgp
KSB7CisgICAgY2FzZSBMYXllckhvc3RpbmdNb2RlRGVmYXVsdDoKKyAgICAgICAgbV9sYXllckhv
c3RpbmdDb250ZXh0ID0gTGF5ZXJIb3N0aW5nQ29udGV4dDo6Y3JlYXRlRm9yUG9ydChXZWJQcm9j
ZXNzOjpzaGFyZWQoKS5jb21wb3NpdGluZ1JlbmRlclNlcnZlclBvcnQoKSk7CisgICAgICAgIGJy
ZWFrOworI2lmIEhBVkUoTEFZRVJfSE9TVElOR19JTl9XSU5ET1dfU0VSVkVSKQorICAgIGNhc2Ug
TGF5ZXJIb3N0aW5nTW9kZUluV2luZG93U2VydmVyOgorICAgICAgICBtX2xheWVySG9zdGluZ0Nv
bnRleHQgPSBMYXllckhvc3RpbmdDb250ZXh0OjpjcmVhdGVGb3JXaW5kb3dTZXJ2ZXIoKTsKKyAg
ICAgICAgYnJlYWs7CisjZW5kaWYKKyAgICB9CisKKyAgICBtX2xheWVySG9zdGluZ0NvbnRleHQt
PnNldFJvb3RMYXllcihjdXN0b21MYXllcik7CisKKyAgICBtX3BsYXRmb3JtTGF5ZXIgPSBjdXN0
b21MYXllcjsKKyAgICBbY3VzdG9tTGF5ZXIgd2ViX2Rpc2FibGVBbGxBY3Rpb25zXTsKK30KKwor
UGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tOjp+UGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9t
KCkKK3sKK30KKwordWludDMyX3QgUGxhdGZvcm1DQUxheWVyUmVtb3RlQ3VzdG9tOjpob3N0aW5n
Q29udGV4dElEKCkKK3sKKyAgICByZXR1cm4gbV9sYXllckhvc3RpbmdDb250ZXh0LT5jb250ZXh0
SUQoKTsKK30KKworI2VuZGlmIC8vIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElORykK
</data>
<flag name="review"
          id="245720"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>