<?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>41892</bug_id>
          
          <creation_ts>2010-07-08 13:00:21 -0700</creation_ts>
          <short_desc>Make object-literal parsing conformant with the spec.</short_desc>
          <delta_ts>2010-07-08 14:56:16 -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>Other</rep_platform>
          <op_sys>OS X 10.5</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="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>248463</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-08 13:00:21 -0700</bug_when>
    <thetext>Make object-literal parsing conformant with the spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248475</commentid>
    <comment_count>1</comment_count>
      <attachid>60939</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-08 13:08:56 -0700</bug_when>
    <thetext>Created attachment 60939
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>248568</commentid>
    <comment_count>2</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2010-07-08 14:56:16 -0700</bug_when>
    <thetext>Committed r62848</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60939</attachid>
            <date>2010-07-08 13:08:56 -0700</date>
            <delta_ts>2010-07-08 13:18:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-41892-20100708130854.patch</filename>
            <type>text/plain</type>
            <size>27650</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAzZWQ5NzkwZTNjNmZhM2E1NTBlODU5NTIzMWUzY2UxYWI5ODIwZjZjLi5h
ZWQ1MmE2OWVkZjA2OGEzNjdmZTZmMjUxZDI1NzMxZDkyYjY4OTJkIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsNTMgQEAKKzIwMTAtMDctMDggIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlIG9i
amVjdC1saXRlcmFsIHBhcnNpbmcgY29uZm9ybWFudCB3aXRoIHRoZSBzcGVjLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE4OTIKKworICAgICAgICBC
cmluZyBvdXIgcGFyc2luZyBvZiBvYmplY3QgbGl0ZXJhbHMgaW50byBjb25mb3JtYW5jZSB3aXRo
IHRoZSBFUzUgc3BlYy4KKyAgICAgICAgQmFzaWNhbGx5IGRpc2FsbG93IGNvbmZsaWN0aW5nIGFj
Y2Vzc29yIHZzLiBub3JtYWwgcHJvcGVydHkgZGVmaW5pdGlvbnMKKyAgICAgICAgVGhlIGJ1bGsg
b2YgdGhpcyBwYXRjaCBpcyBqdXN0IGZpZGRsaW5nIHRvIG1haW50YWluIHBlcmZvcm1hbmNlLgor
CisgICAgICAgICogcGFyc2VyL0FTVEJ1aWxkZXIuaDoKKyAgICAgICAgKEpTQzo6QVNUQnVpbGRl
cjo6Y3JlYXRlR2V0dGVyT3JTZXR0ZXJQcm9wZXJ0eSk6CisgICAgICAgIChKU0M6OkFTVEJ1aWxk
ZXI6OmNyZWF0ZVByb3BlcnR5KToKKyAgICAgICAgKEpTQzo6QVNUQnVpbGRlcjo6Z2V0TmFtZSk6
CisgICAgICAgIChKU0M6OkFTVEJ1aWxkZXI6OmdldFR5cGUpOgorICAgICAgICAqIHBhcnNlci9K
U1BhcnNlci5jcHA6CisgICAgICAgIChKU0M6OmpzUGFyc2UpOgorICAgICAgICAoSlNDOjpKU1Bh
cnNlcjo6SlNQYXJzZXIpOgorICAgICAgICAoSlNDOjpKU1BhcnNlcjo6cGFyc2VQcm9wZXJ0eSk6
CisgICAgICAgIChKU0M6OkpTUGFyc2VyOjpwYXJzZU9iamVjdExpdGVyYWwpOgorICAgICAgICAo
SlNDOjpKU1BhcnNlcjo6cGFyc2VTdHJpY3RPYmplY3RMaXRlcmFsKToKKyAgICAgICAgKiBwYXJz
ZXIvSlNQYXJzZXIuaDoKKyAgICAgICAgKiBwYXJzZXIvTGV4ZXIuY3BwOgorICAgICAgICAoSlND
OjpMZXhlcjo6Y2xlYXIpOgorICAgICAgICAqIHBhcnNlci9MZXhlci5oOgorICAgICAgICAoSlND
OjpMZXhlcjo6Y3VycmVudE9mZnNldCk6CisgICAgICAgIChKU0M6OkxleGVyOjpzZXRPZmZzZXQp
OgorICAgICAgICAgIEFkZCBsb2dpYyB0byBhbGxvdyB1cyB0byByb2xsIHRoZSBsZXhlciBiYWNr
IGluIHRoZSBpbnB1dCBzdHJlYW0uCisgICAgICAgICogcGFyc2VyL05vZGVzLmg6CisgICAgICAg
IChKU0M6OlByb3BlcnR5Tm9kZTo6KToKKyAgICAgICAgKEpTQzo6UHJvcGVydHlOb2RlOjp0eXBl
KToKKyAgICAgICAgKiBwYXJzZXIvUGFyc2VyLmNwcDoKKyAgICAgICAgKEpTQzo6UGFyc2VyOjpw
YXJzZSk6CisgICAgICAgICogcGFyc2VyL1NvdXJjZVByb3ZpZGVyLmg6CisgICAgICAgIChKU0M6
OlNvdXJjZVByb3ZpZGVyOjpTb3VyY2VQcm92aWRlcik6CisgICAgICAgIChKU0M6OlNvdXJjZVBy
b3ZpZGVyOjppc1ZhbGlkKToKKyAgICAgICAgKEpTQzo6U291cmNlUHJvdmlkZXI6OnNldFZhbGlk
KToKKyAgICAgICAgICBTb3VyY2VQcm92aWRlciBub3cgcmVjb3JkcyB3aGV0aGVyIHRoZSBpbnB1
dCB0ZXh0CisgICAgICAgICAgaGFzIGFscmVhZHkgYmVlbiB2YWxpZGF0ZWQuCisgICAgICAgICog
cGFyc2VyL1N5bnRheENoZWNrZXIuaDoKKyAgICAgICAgKEpTQzo6U3ludGF4Q2hlY2tlcjo6U3lu
dGF4Q2hlY2tlcik6CisgICAgICAgIChKU0M6OlN5bnRheENoZWNrZXI6OlByb3BlcnR5OjpQcm9w
ZXJ0eSk6CisgICAgICAgIChKU0M6OlN5bnRheENoZWNrZXI6OlByb3BlcnR5OjpvcGVyYXRvciEp
OgorICAgICAgICAoSlNDOjpTeW50YXhDaGVja2VyOjpjcmVhdGVQcm9wZXJ0eSk6CisgICAgICAg
IChKU0M6OlN5bnRheENoZWNrZXI6OmNyZWF0ZVByb3BlcnR5TGlzdCk6CisgICAgICAgIChKU0M6
OlN5bnRheENoZWNrZXI6OmNyZWF0ZUdldHRlck9yU2V0dGVyUHJvcGVydHkpOgorICAgICAgICAg
IFRoZSBTeW50YXhDaGVja2VyIG1vZGUgbm93IG5lZWRzIHRvIG1haW50YWluIGEgYml0IG1vcmUg
aW5mb3JtYXRpb24KKyAgICAgICAgICB0byBlbnN1cmUgdGhhdCB3ZSBjYW4gdmFsaWRhdGUgb2Jq
ZWN0IGxpdGVyYWxzIGNvcnJlY3RseS4KKwogMjAxMC0wNy0wOCAgWGFuIExvcGV6ICA8eGxvcGV6
QGlnYWxpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhLgpkaWZm
IC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0FTVEJ1aWxkZXIuaCBiL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9BU1RCdWlsZGVyLmgKaW5kZXggN2VlMTQwNTdlNzY1Y2MzNzRmNGNkMDEzM2Nl
YTkxNTQyNWJiYjg2YS4uOWQ1ZGUyZGViOGViNjMzOGNhYTM4MzMxYjczN2UwMmMwMGU5ODNiNSAx
MDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0FTVEJ1aWxkZXIuaAorKysgYi9KYXZh
U2NyaXB0Q29yZS9wYXJzZXIvQVNUQnVpbGRlci5oCkBAIC0yNDksMTYgKzI0OSw5IEBAIHB1Ymxp
YzoKICAgICAgICAgcmV0dXJuIEZ1bmN0aW9uQm9keU5vZGU6OmNyZWF0ZShtX2dsb2JhbERhdGEp
OwogICAgIH0KICAgICAKLSAgICBQcm9wZXJ0eU5vZGUqIGNyZWF0ZUdldHRlck9yU2V0dGVyUHJv
cGVydHkoY29uc3QgSWRlbnRpZmllciogZ2V0T3JTZXQsIGNvbnN0IElkZW50aWZpZXIqIG5hbWUs
IFBhcmFtZXRlck5vZGUqIHBhcmFtcywgRnVuY3Rpb25Cb2R5Tm9kZSogYm9keSwgaW50IG9wZW5C
cmFjZVBvcywgaW50IGNsb3NlQnJhY2VQb3MsIGludCBib2R5U3RhcnRMaW5lLCBpbnQgYm9keUVu
ZExpbmUpCisgICAgdGVtcGxhdGUgPGJvb2w+IFByb3BlcnR5Tm9kZSogY3JlYXRlR2V0dGVyT3JT
ZXR0ZXJQcm9wZXJ0eShQcm9wZXJ0eU5vZGU6OlR5cGUgdHlwZSwgY29uc3QgSWRlbnRpZmllciog
bmFtZSwgUGFyYW1ldGVyTm9kZSogcGFyYW1zLCBGdW5jdGlvbkJvZHlOb2RlKiBib2R5LCBpbnQg
b3BlbkJyYWNlUG9zLCBpbnQgY2xvc2VCcmFjZVBvcywgaW50IGJvZHlTdGFydExpbmUsIGludCBi
b2R5RW5kTGluZSkKICAgICB7CiAgICAgICAgIEFTU0VSVChuYW1lKTsKLSAgICAgICAgUHJvcGVy
dHlOb2RlOjpUeXBlIHR5cGU7Ci0gICAgICAgIGlmICgqZ2V0T3JTZXQgPT0gbV9nbG9iYWxEYXRh
LT5wcm9wZXJ0eU5hbWVzLT5nZXQpCi0gICAgICAgICAgICB0eXBlID0gUHJvcGVydHlOb2RlOjpH
ZXR0ZXI7Ci0gICAgICAgIGVsc2UgaWYgKCpnZXRPclNldCA9PSBtX2dsb2JhbERhdGEtPnByb3Bl
cnR5TmFtZXMtPnNldCkKLSAgICAgICAgICAgIHR5cGUgPSBQcm9wZXJ0eU5vZGU6OlNldHRlcjsK
LSAgICAgICAgZWxzZQotICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgIGJvZHktPnNldExv
Yyhib2R5U3RhcnRMaW5lLCBib2R5RW5kTGluZSk7CiAgICAgICAgIHJldHVybiBuZXcgKG1fZ2xv
YmFsRGF0YSkgUHJvcGVydHlOb2RlKG1fZ2xvYmFsRGF0YSwgKm5hbWUsIG5ldyAobV9nbG9iYWxE
YXRhKSBGdW5jRXhwck5vZGUobV9nbG9iYWxEYXRhLCBtX2dsb2JhbERhdGEtPnByb3BlcnR5TmFt
ZXMtPm51bGxJZGVudGlmaWVyLCBib2R5LCBtX2xleGVyLT5zb3VyY2VDb2RlKG9wZW5CcmFjZVBv
cywgY2xvc2VCcmFjZVBvcywgYm9keVN0YXJ0TGluZSksIHBhcmFtcyksIHR5cGUpOwogICAgIH0K
QEAgLTI2OSw4ICsyNjIsOCBAQCBwdWJsaWM6CiAgICAgQXJndW1lbnRMaXN0Tm9kZSogY3JlYXRl
QXJndW1lbnRzTGlzdChFeHByZXNzaW9uTm9kZSogYXJnKSB7IHJldHVybiBuZXcgKG1fZ2xvYmFs
RGF0YSkgQXJndW1lbnRMaXN0Tm9kZShtX2dsb2JhbERhdGEsIGFyZyk7IH0KICAgICBBcmd1bWVu
dExpc3ROb2RlKiBjcmVhdGVBcmd1bWVudHNMaXN0KEFyZ3VtZW50TGlzdE5vZGUqIGFyZ3MsIEV4
cHJlc3Npb25Ob2RlKiBhcmcpIHsgcmV0dXJuIG5ldyAobV9nbG9iYWxEYXRhKSBBcmd1bWVudExp
c3ROb2RlKG1fZ2xvYmFsRGF0YSwgYXJncywgYXJnKTsgfQogCi0gICAgUHJvcGVydHlOb2RlKiBj
cmVhdGVQcm9wZXJ0eShjb25zdCBJZGVudGlmaWVyKiBwcm9wZXJ0eU5hbWUsIEV4cHJlc3Npb25O
b2RlKiBub2RlLCBQcm9wZXJ0eU5vZGU6OlR5cGUgdHlwZSkgeyByZXR1cm4gbmV3IChtX2dsb2Jh
bERhdGEpIFByb3BlcnR5Tm9kZShtX2dsb2JhbERhdGEsICpwcm9wZXJ0eU5hbWUsIG5vZGUsIHR5
cGUpOyB9Ci0gICAgUHJvcGVydHlOb2RlKiBjcmVhdGVQcm9wZXJ0eShkb3VibGUgcHJvcGVydHlO
YW1lLCBFeHByZXNzaW9uTm9kZSogbm9kZSwgUHJvcGVydHlOb2RlOjpUeXBlIHR5cGUpIHsgcmV0
dXJuIG5ldyAobV9nbG9iYWxEYXRhKSBQcm9wZXJ0eU5vZGUobV9nbG9iYWxEYXRhLCBwcm9wZXJ0
eU5hbWUsIG5vZGUsIHR5cGUpOyB9CisgICAgdGVtcGxhdGUgPGJvb2w+IFByb3BlcnR5Tm9kZSog
Y3JlYXRlUHJvcGVydHkoY29uc3QgSWRlbnRpZmllciogcHJvcGVydHlOYW1lLCBFeHByZXNzaW9u
Tm9kZSogbm9kZSwgUHJvcGVydHlOb2RlOjpUeXBlIHR5cGUpIHsgcmV0dXJuIG5ldyAobV9nbG9i
YWxEYXRhKSBQcm9wZXJ0eU5vZGUobV9nbG9iYWxEYXRhLCAqcHJvcGVydHlOYW1lLCBub2RlLCB0
eXBlKTsgfQorICAgIHRlbXBsYXRlIDxib29sPiBQcm9wZXJ0eU5vZGUqIGNyZWF0ZVByb3BlcnR5
KEpTR2xvYmFsRGF0YSosIGRvdWJsZSBwcm9wZXJ0eU5hbWUsIEV4cHJlc3Npb25Ob2RlKiBub2Rl
LCBQcm9wZXJ0eU5vZGU6OlR5cGUgdHlwZSkgeyByZXR1cm4gbmV3IChtX2dsb2JhbERhdGEpIFBy
b3BlcnR5Tm9kZShtX2dsb2JhbERhdGEsIHByb3BlcnR5TmFtZSwgbm9kZSwgdHlwZSk7IH0KICAg
ICBQcm9wZXJ0eUxpc3ROb2RlKiBjcmVhdGVQcm9wZXJ0eUxpc3QoUHJvcGVydHlOb2RlKiBwcm9w
ZXJ0eSkgeyByZXR1cm4gbmV3IChtX2dsb2JhbERhdGEpIFByb3BlcnR5TGlzdE5vZGUobV9nbG9i
YWxEYXRhLCBwcm9wZXJ0eSk7IH0KICAgICBQcm9wZXJ0eUxpc3ROb2RlKiBjcmVhdGVQcm9wZXJ0
eUxpc3QoUHJvcGVydHlOb2RlKiBwcm9wZXJ0eSwgUHJvcGVydHlMaXN0Tm9kZSogdGFpbCkgeyBy
ZXR1cm4gbmV3IChtX2dsb2JhbERhdGEpIFByb3BlcnR5TGlzdE5vZGUobV9nbG9iYWxEYXRhLCBw
cm9wZXJ0eSwgdGFpbCk7IH0KIApAQCAtNTc2LDcgKzU2OSw5IEBAIHB1YmxpYzoKICAgICAgICAg
YXNzaWdubWVudFN0YWNrRGVwdGgtLTsKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9Ci0K
KyAgICAKKyAgICBjb25zdCBJZGVudGlmaWVyJiBnZXROYW1lKFByb3BlcnR5IHByb3BlcnR5KSB7
IHJldHVybiBwcm9wZXJ0eS0+bmFtZSgpOyB9CisgICAgUHJvcGVydHlOb2RlOjpUeXBlIGdldFR5
cGUoUHJvcGVydHkgcHJvcGVydHkpIHsgcmV0dXJuIHByb3BlcnR5LT50eXBlKCk7IH0KIHByaXZh
dGU6CiAgICAgc3RydWN0IFNjb3BlIHsKICAgICAgICAgU2NvcGUoSlNHbG9iYWxEYXRhKiBnbG9i
YWxEYXRhKQpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0pTUGFyc2VyLmNwcCBi
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9KU1BhcnNlci5jcHAKaW5kZXggZDljYWNjNzIyYzYwMzRm
NjY1NDcwNGM0ZmI2Nzc3ZmY1OTI2NzNhZi4uMTRlNWI1YzIzMTdkODE2ZWZjZmI4MzRiMWEwOGQx
ZWFjOGU4MzQ0MSAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0pTUGFyc2VyLmNw
cAorKysgYi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvSlNQYXJzZXIuY3BwCkBAIC0zMiw2ICszMiw3
IEBAIHVzaW5nIG5hbWVzcGFjZSBKU0M7CiAjaW5jbHVkZSAiSlNHbG9iYWxEYXRhLmgiCiAjaW5j
bHVkZSAiTm9kZUluZm8uaCIKICNpbmNsdWRlICJBU1RCdWlsZGVyLmgiCisjaW5jbHVkZSA8d3Rm
L0hhc2hGdW5jdGlvbnMuaD4KICNpbmNsdWRlIDx1dGlsaXR5PgogCiB1c2luZyBuYW1lc3BhY2Ug
c3RkOwpAQCAtNjMsNyArNjQsNyBAQCBzdGF0aWMgY29uc3QgcHRyZGlmZl90IGtNYXhQYXJzZXJT
dGFja1VzYWdlID0gMTI4ICogc2l6ZW9mKHZvaWQqKSAqIDEwMjQ7CiAKIGNsYXNzIEpTUGFyc2Vy
IHsKIHB1YmxpYzoKLSAgICBKU1BhcnNlcihMZXhlciosIEpTR2xvYmFsRGF0YSopOworICAgIEpT
UGFyc2VyKExleGVyKiwgSlNHbG9iYWxEYXRhKiwgU291cmNlUHJvdmlkZXIqKTsKICAgICBib29s
IHBhcnNlUHJvZ3JhbSgpOwogcHJpdmF0ZToKICAgICBzdHJ1Y3QgQWxsb3dJbk92ZXJyaWRlIHsK
QEAgLTE1MCw4ICsxNTEsOSBAQCBwcml2YXRlOgogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVp
bGRlcj4gQUxXQVlTX0lOTElORSBUcmVlRXhwcmVzc2lvbiBwYXJzZVByaW1hcnlFeHByZXNzaW9u
KFRyZWVCdWlsZGVyJik7CiAgICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBBTFdBWVNf
SU5MSU5FIFRyZWVFeHByZXNzaW9uIHBhcnNlQXJyYXlMaXRlcmFsKFRyZWVCdWlsZGVyJik7CiAg
ICAgdGVtcGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBBTFdBWVNfSU5MSU5FIFRyZWVFeHByZXNz
aW9uIHBhcnNlT2JqZWN0TGl0ZXJhbChUcmVlQnVpbGRlciYpOworICAgIHRlbXBsYXRlIDxjbGFz
cyBUcmVlQnVpbGRlcj4gQUxXQVlTX0lOTElORSBUcmVlRXhwcmVzc2lvbiBwYXJzZVN0cmljdE9i
amVjdExpdGVyYWwoVHJlZUJ1aWxkZXImKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxk
ZXI+IEFMV0FZU19JTkxJTkUgVHJlZUFyZ3VtZW50cyBwYXJzZUFyZ3VtZW50cyhUcmVlQnVpbGRl
ciYpOwotICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gQUxXQVlTX0lOTElORSBUcmVl
UHJvcGVydHkgcGFyc2VQcm9wZXJ0eShUcmVlQnVpbGRlciYpOworICAgIHRlbXBsYXRlIDxib29s
IHN0cmljdCwgY2xhc3MgVHJlZUJ1aWxkZXI+IEFMV0FZU19JTkxJTkUgVHJlZVByb3BlcnR5IHBh
cnNlUHJvcGVydHkoVHJlZUJ1aWxkZXImKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxk
ZXI+IEFMV0FZU19JTkxJTkUgVHJlZUZ1bmN0aW9uQm9keSBwYXJzZUZ1bmN0aW9uQm9keShUcmVl
QnVpbGRlciYpOwogICAgIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gQUxXQVlTX0lOTElO
RSBUcmVlRm9ybWFsUGFyYW1ldGVyTGlzdCBwYXJzZUZvcm1hbFBhcmFtZXRlcnMoVHJlZUJ1aWxk
ZXImLCBib29sJiB1c2VzQXJndW1lbnRzKTsKICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxk
ZXI+IEFMV0FZU19JTkxJTkUgVHJlZUV4cHJlc3Npb24gcGFyc2VWYXJEZWNsYXJhdGlvbkxpc3Qo
VHJlZUJ1aWxkZXImLCBpbnQmIGRlY2xhcmF0aW9ucywgY29uc3QgSWRlbnRpZmllciomIGxhc3RJ
ZGVudCwgVHJlZUV4cHJlc3Npb24mIGxhc3RJbml0aWFsaXplciwgaW50JiBpZGVudFN0YXJ0LCBp
bnQmIGluaXRTdGFydCwgaW50JiBpbml0RW5kKTsKQEAgLTE5NCwxNSArMTk2LDE2IEBAIHByaXZh
dGU6CiAgICAgaW50IG1fbGFzdFRva2VuRW5kOwogICAgIGludCBtX2Fzc2lnbm1lbnRDb3VudDsK
ICAgICBpbnQgbV9ub25MSFNDb3VudDsKKyAgICBib29sIG1fc3ludGF4QWxyZWFkeVZhbGlkYXRl
ZDsKIH07CiAKLWludCBqc1BhcnNlKEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSkKK2ludCBqc1Bh
cnNlKEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSwgY29uc3QgU291cmNlQ29kZSogc291cmNlKQog
ewotICAgIEpTUGFyc2VyIHBhcnNlcihnbG9iYWxEYXRhLT5sZXhlciwgZ2xvYmFsRGF0YSk7Cisg
ICAgSlNQYXJzZXIgcGFyc2VyKGdsb2JhbERhdGEtPmxleGVyLCBnbG9iYWxEYXRhLCBzb3VyY2Ut
PnByb3ZpZGVyKCkpOwogICAgIHJldHVybiBwYXJzZXIucGFyc2VQcm9ncmFtKCk7CiB9CiAKLUpT
UGFyc2VyOjpKU1BhcnNlcihMZXhlciogbGV4ZXIsIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0YSkK
K0pTUGFyc2VyOjpKU1BhcnNlcihMZXhlciogbGV4ZXIsIEpTR2xvYmFsRGF0YSogZ2xvYmFsRGF0
YSwgU291cmNlUHJvdmlkZXIqIHByb3ZpZGVyKQogICAgIDogbV9sZXhlcihsZXhlcikKICAgICAs
IG1fZW5kQWRkcmVzcygwKQogICAgICwgbV9lcnJvcihmYWxzZSkKQEAgLTIxMyw2ICsyMTYsNyBA
QCBKU1BhcnNlcjo6SlNQYXJzZXIoTGV4ZXIqIGxleGVyLCBKU0dsb2JhbERhdGEqIGdsb2JhbERh
dGEpCiAgICAgLCBtX2xhc3RUb2tlbkVuZCgwKQogICAgICwgbV9hc3NpZ25tZW50Q291bnQoMCkK
ICAgICAsIG1fbm9uTEhTQ291bnQoMCkKKyAgICAsIG1fc3ludGF4QWxyZWFkeVZhbGlkYXRlZChw
cm92aWRlci0+aXNWYWxpZCgpKQogewogICAgIG1fZW5kQWRkcmVzcyA9ICooZ2xvYmFsRGF0YS0+
c3RhY2tHdWFyZHMpOwogICAgIGlmICghbV9lbmRBZGRyZXNzKSB7CkBAIC0xMTQ1LDcgKzExNDks
NyBAQCB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9uIEpTUGFyc2Vy
OjpwYXJzZUJpbmFyeUV4cHJlc3Npb24oVHJlZQogfQogCiAKLXRlbXBsYXRlIDxjbGFzcyBUcmVl
QnVpbGRlcj4gVHJlZVByb3BlcnR5IEpTUGFyc2VyOjpwYXJzZVByb3BlcnR5KFRyZWVCdWlsZGVy
JiBjb250ZXh0KQordGVtcGxhdGUgPGJvb2wgY29tcGxldGUsIGNsYXNzIFRyZWVCdWlsZGVyPiBU
cmVlUHJvcGVydHkgSlNQYXJzZXI6OnBhcnNlUHJvcGVydHkoVHJlZUJ1aWxkZXImIGNvbnRleHQp
CiB7CiAgICAgYm9vbCB3YXNJZGVudCA9IGZhbHNlOwogICAgIHN3aXRjaCAodG9rZW4oKS5tX3R5
cGUpIHsKQEAgLTExNTgsNyArMTE2Miw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4g
VHJlZVByb3BlcnR5IEpTUGFyc2VyOjpwYXJzZVByb3BlcnR5KFRyZWVCdWlsZGVyJiBjCiAgICAg
ICAgICAgICBuZXh0KCk7CiAgICAgICAgICAgICBUcmVlRXhwcmVzc2lvbiBub2RlID0gcGFyc2VB
c3NpZ25tZW50RXhwcmVzc2lvbihjb250ZXh0KTsKICAgICAgICAgICAgIGZhaWxJZkZhbHNlKG5v
ZGUpOwotICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQuY3JlYXRlUHJvcGVydHkoaWRlbnQsIG5v
ZGUsIFByb3BlcnR5Tm9kZTo6Q29uc3RhbnQpOworICAgICAgICAgICAgcmV0dXJuIGNvbnRleHQu
dGVtcGxhdGUgY3JlYXRlUHJvcGVydHk8Y29tcGxldGU+KGlkZW50LCBub2RlLCBQcm9wZXJ0eU5v
ZGU6OkNvbnN0YW50KTsKICAgICAgICAgfQogICAgICAgICBmYWlsSWZGYWxzZSh3YXNJZGVudCk7
CiAgICAgICAgIG1hdGNoT3JGYWlsKElERU5UKTsKQEAgLTExNjgsOSArMTE3MiwxNSBAQCB0ZW1w
bGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBKU1BhcnNlcjo6cGFyc2VQcm9w
ZXJ0eShUcmVlQnVpbGRlciYgYwogICAgICAgICBpbnQgb3BlbkJyYWNlUG9zID0gMDsKICAgICAg
ICAgaW50IGNsb3NlQnJhY2VQb3MgPSAwOwogICAgICAgICBpbnQgYm9keVN0YXJ0TGluZSA9IDA7
Ci0gICAgICAgIGZhaWxJZkZhbHNlKCppZGVudCA9PSBtX2dsb2JhbERhdGEtPnByb3BlcnR5TmFt
ZXMtPmdldCB8fCAqaWRlbnQgPT0gbV9nbG9iYWxEYXRhLT5wcm9wZXJ0eU5hbWVzLT5zZXQpOwor
ICAgICAgICBQcm9wZXJ0eU5vZGU6OlR5cGUgdHlwZTsKKyAgICAgICAgaWYgKCppZGVudCA9PSBt
X2dsb2JhbERhdGEtPnByb3BlcnR5TmFtZXMtPmdldCkKKyAgICAgICAgICAgIHR5cGUgPSBQcm9w
ZXJ0eU5vZGU6OkdldHRlcjsKKyAgICAgICAgZWxzZSBpZiAoKmlkZW50ID09IG1fZ2xvYmFsRGF0
YS0+cHJvcGVydHlOYW1lcy0+c2V0KQorICAgICAgICAgICAgdHlwZSA9IFByb3BlcnR5Tm9kZTo6
U2V0dGVyOworICAgICAgICBlbHNlCisgICAgICAgICAgICBmYWlsKCk7CiAgICAgICAgIGZhaWxJ
ZkZhbHNlKHBhcnNlRnVuY3Rpb25JbmZvPEZ1bmN0aW9uTmVlZHNOYW1lPihjb250ZXh0LCBhY2Nl
c3Nvck5hbWUsIHBhcmFtZXRlcnMsIGJvZHksIG9wZW5CcmFjZVBvcywgY2xvc2VCcmFjZVBvcywg
Ym9keVN0YXJ0TGluZSkpOwotICAgICAgICByZXR1cm4gY29udGV4dC5jcmVhdGVHZXR0ZXJPclNl
dHRlclByb3BlcnR5KGlkZW50LCBhY2Nlc3Nvck5hbWUsIHBhcmFtZXRlcnMsIGJvZHksIG9wZW5C
cmFjZVBvcywgY2xvc2VCcmFjZVBvcywgYm9keVN0YXJ0TGluZSwgbV9sYXN0TGluZSk7CisgICAg
ICAgIHJldHVybiBjb250ZXh0LnRlbXBsYXRlIGNyZWF0ZUdldHRlck9yU2V0dGVyUHJvcGVydHk8
Y29tcGxldGU+KHR5cGUsIGFjY2Vzc29yTmFtZSwgcGFyYW1ldGVycywgYm9keSwgb3BlbkJyYWNl
UG9zLCBjbG9zZUJyYWNlUG9zLCBib2R5U3RhcnRMaW5lLCBtX2xhc3RMaW5lKTsKICAgICB9CiAg
ICAgY2FzZSBOVU1CRVI6IHsKICAgICAgICAgZG91YmxlIHByb3BlcnR5TmFtZSA9IHRva2VuKCku
bV9kYXRhLmRvdWJsZVZhbHVlOwpAQCAtMTE3OCw3ICsxMTg4LDcgQEAgdGVtcGxhdGUgPGNsYXNz
IFRyZWVCdWlsZGVyPiBUcmVlUHJvcGVydHkgSlNQYXJzZXI6OnBhcnNlUHJvcGVydHkoVHJlZUJ1
aWxkZXImIGMKICAgICAgICAgY29uc3VtZU9yRmFpbCgnOicpOwogICAgICAgICBUcmVlRXhwcmVz
c2lvbiBub2RlID0gcGFyc2VBc3NpZ25tZW50RXhwcmVzc2lvbihjb250ZXh0KTsKICAgICAgICAg
ZmFpbElmRmFsc2Uobm9kZSk7Ci0gICAgICAgIHJldHVybiBjb250ZXh0LmNyZWF0ZVByb3BlcnR5
KHByb3BlcnR5TmFtZSwgbm9kZSwgUHJvcGVydHlOb2RlOjpDb25zdGFudCk7CisgICAgICAgIHJl
dHVybiBjb250ZXh0LnRlbXBsYXRlIGNyZWF0ZVByb3BlcnR5PGNvbXBsZXRlPihtX2dsb2JhbERh
dGEsIHByb3BlcnR5TmFtZSwgbm9kZSwgUHJvcGVydHlOb2RlOjpDb25zdGFudCk7CiAgICAgfQog
ICAgIH0KICAgICBmYWlsKCk7CkBAIC0xMTg2LDYgKzExOTYsNyBAQCB0ZW1wbGF0ZSA8Y2xhc3Mg
VHJlZUJ1aWxkZXI+IFRyZWVQcm9wZXJ0eSBKU1BhcnNlcjo6cGFyc2VQcm9wZXJ0eShUcmVlQnVp
bGRlciYgYwogCiB0ZW1wbGF0ZSA8Y2xhc3MgVHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9uIEpT
UGFyc2VyOjpwYXJzZU9iamVjdExpdGVyYWwoVHJlZUJ1aWxkZXImIGNvbnRleHQpCiB7CisgICAg
aW50IHN0YXJ0T2Zmc2V0ID0gdG9rZW4oKS5tX2RhdGEuaW50VmFsdWU7CiAgICAgY29uc3VtZU9y
RmFpbChPUEVOQlJBQ0UpOwogCiAgICAgaWYgKG1hdGNoKENMT1NFQlJBQ0UpKSB7CkBAIC0xMTkz
LDIwICsxMjA0LDI3IEBAIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJlZUV4cHJlc3Np
b24gSlNQYXJzZXI6OnBhcnNlT2JqZWN0TGl0ZXJhbChUcmVlQnVpCiAgICAgICAgIHJldHVybiBj
b250ZXh0LmNyZWF0ZU9iamVjdExpdGVyYWwoKTsKICAgICB9CiAKLSAgICBUcmVlUHJvcGVydHkg
cHJvcGVydHkgPSBwYXJzZVByb3BlcnR5KGNvbnRleHQpOworICAgIFRyZWVQcm9wZXJ0eSBwcm9w
ZXJ0eSA9IHBhcnNlUHJvcGVydHk8ZmFsc2U+KGNvbnRleHQpOwogICAgIGZhaWxJZkZhbHNlKHBy
b3BlcnR5KTsKLQorICAgIGlmICghbV9zeW50YXhBbHJlYWR5VmFsaWRhdGVkICYmIGNvbnRleHQu
Z2V0VHlwZShwcm9wZXJ0eSkgIT0gUHJvcGVydHlOb2RlOjpDb25zdGFudCkgeworICAgICAgICBt
X2xleGVyLT5zZXRPZmZzZXQoc3RhcnRPZmZzZXQpOworICAgICAgICBuZXh0KCk7CisgICAgICAg
IHJldHVybiBwYXJzZVN0cmljdE9iamVjdExpdGVyYWwoY29udGV4dCk7CisgICAgfQogICAgIFRy
ZWVQcm9wZXJ0eUxpc3QgcHJvcGVydHlMaXN0ID0gY29udGV4dC5jcmVhdGVQcm9wZXJ0eUxpc3Qo
cHJvcGVydHkpOwogICAgIFRyZWVQcm9wZXJ0eUxpc3QgdGFpbCA9IHByb3BlcnR5TGlzdDsKLQog
ICAgIHdoaWxlIChtYXRjaCgnLCcpKSB7CiAgICAgICAgIG5leHQoKTsKICAgICAgICAgLy8gYWxs
b3cgZXh0cmEgY29tbWEsIHNlZSBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD01OTM5CiAgICAgICAgIGlmIChtYXRjaChDTE9TRUJSQUNFKSkKICAgICAgICAgICAgIGJyZWFr
OwotICAgICAgICBwcm9wZXJ0eSA9IHBhcnNlUHJvcGVydHkoY29udGV4dCk7CisgICAgICAgIHBy
b3BlcnR5ID0gcGFyc2VQcm9wZXJ0eTxmYWxzZT4oY29udGV4dCk7CiAgICAgICAgIGZhaWxJZkZh
bHNlKHByb3BlcnR5KTsKLQorICAgICAgICBpZiAoIW1fc3ludGF4QWxyZWFkeVZhbGlkYXRlZCAm
JiBjb250ZXh0LmdldFR5cGUocHJvcGVydHkpICE9IFByb3BlcnR5Tm9kZTo6Q29uc3RhbnQpIHsK
KyAgICAgICAgICAgIG1fbGV4ZXItPnNldE9mZnNldChzdGFydE9mZnNldCk7CisgICAgICAgICAg
ICBuZXh0KCk7CisgICAgICAgICAgICByZXR1cm4gcGFyc2VTdHJpY3RPYmplY3RMaXRlcmFsKGNv
bnRleHQpOworICAgICAgICB9CiAgICAgICAgIHRhaWwgPSBjb250ZXh0LmNyZWF0ZVByb3BlcnR5
TGlzdChwcm9wZXJ0eSwgdGFpbCk7CiAgICAgfQogCkBAIC0xMjE1LDYgKzEyMzMsNTIgQEAgdGVt
cGxhdGUgPGNsYXNzIFRyZWVCdWlsZGVyPiBUcmVlRXhwcmVzc2lvbiBKU1BhcnNlcjo6cGFyc2VP
YmplY3RMaXRlcmFsKFRyZWVCdWkKICAgICByZXR1cm4gY29udGV4dC5jcmVhdGVPYmplY3RMaXRl
cmFsKHByb3BlcnR5TGlzdCk7CiB9CiAKK3RlbXBsYXRlIDxjbGFzcyBUcmVlQnVpbGRlcj4gVHJl
ZUV4cHJlc3Npb24gSlNQYXJzZXI6OnBhcnNlU3RyaWN0T2JqZWN0TGl0ZXJhbChUcmVlQnVpbGRl
ciYgY29udGV4dCkKK3sKKyAgICBjb25zdW1lT3JGYWlsKE9QRU5CUkFDRSk7CisgICAgCisgICAg
aWYgKG1hdGNoKENMT1NFQlJBQ0UpKSB7CisgICAgICAgIG5leHQoKTsKKyAgICAgICAgcmV0dXJu
IGNvbnRleHQuY3JlYXRlT2JqZWN0TGl0ZXJhbCgpOworICAgIH0KKyAgICAKKyAgICBUcmVlUHJv
cGVydHkgcHJvcGVydHkgPSBwYXJzZVByb3BlcnR5PHRydWU+KGNvbnRleHQpOworICAgIGZhaWxJ
ZkZhbHNlKHByb3BlcnR5KTsKKyAgICAKKyAgICB0eXBlZGVmIEhhc2hNYXA8UmVmUHRyPFVTdHJp
bmc6OlJlcD4sIHVuc2lnbmVkLCBJZGVudGlmaWVyUmVwSGFzaD4gT2JqZWN0VmFsaWRhdGlvbk1h
cDsKKyAgICBPYmplY3RWYWxpZGF0aW9uTWFwIG9iamVjdFZhbGlkYXRvcjsKKyAgICAvLyBBZGQg
dGhlIGZpcnN0IHByb3BlcnR5CisgICAgaWYgKCFtX3N5bnRheEFscmVhZHlWYWxpZGF0ZWQpCisg
ICAgICAgIG9iamVjdFZhbGlkYXRvci5hZGQoY29udGV4dC5nZXROYW1lKHByb3BlcnR5KS51c3Ry
aW5nKCkucmVwKCksIGNvbnRleHQuZ2V0VHlwZShwcm9wZXJ0eSkpOworICAgIAorICAgIFRyZWVQ
cm9wZXJ0eUxpc3QgcHJvcGVydHlMaXN0ID0gY29udGV4dC5jcmVhdGVQcm9wZXJ0eUxpc3QocHJv
cGVydHkpOworICAgIFRyZWVQcm9wZXJ0eUxpc3QgdGFpbCA9IHByb3BlcnR5TGlzdDsKKyAgICB3
aGlsZSAobWF0Y2goJywnKSkgeworICAgICAgICBuZXh0KCk7CisgICAgICAgIC8vIGFsbG93IGV4
dHJhIGNvbW1hLCBzZWUgaHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTkz
OQorICAgICAgICBpZiAobWF0Y2goQ0xPU0VCUkFDRSkpCisgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgcHJvcGVydHkgPSBwYXJzZVByb3BlcnR5PHRydWU+KGNvbnRleHQpOworICAgICAgICBm
YWlsSWZGYWxzZShwcm9wZXJ0eSk7CisgICAgICAgIGlmICghbV9zeW50YXhBbHJlYWR5VmFsaWRh
dGVkKSB7CisgICAgICAgICAgICBzdGQ6OnBhaXI8T2JqZWN0VmFsaWRhdGlvbk1hcDo6aXRlcmF0
b3IsIGJvb2w+IHByb3BlcnR5RW50cnlJdGVyID0gb2JqZWN0VmFsaWRhdG9yLmFkZChjb250ZXh0
LmdldE5hbWUocHJvcGVydHkpLnVzdHJpbmcoKS5yZXAoKSwgY29udGV4dC5nZXRUeXBlKHByb3Bl
cnR5KSk7CisgICAgICAgICAgICBpZiAoIXByb3BlcnR5RW50cnlJdGVyLnNlY29uZCkgeworICAg
ICAgICAgICAgICAgIGlmICgoY29udGV4dC5nZXRUeXBlKHByb3BlcnR5KSAmIHByb3BlcnR5RW50
cnlJdGVyLmZpcnN0LT5zZWNvbmQpICE9IFByb3BlcnR5Tm9kZTo6Q29uc3RhbnQpIHsKKyAgICAg
ICAgICAgICAgICAgICAgLy8gQ2FuJ3QgaGF2ZSBtdWx0aXBsZSBnZXR0ZXJzIG9yIHNldHRlcnMg
d2l0aCB0aGUgc2FtZSBuYW1lLCBub3IgY2FuIHdlIGRlZmluZSAKKyAgICAgICAgICAgICAgICAg
ICAgLy8gYSBwcm9wZXJ0eSBhcyBib3RoIGFuIGFjY2Vzc29yIGFuZCBhIGNvbnN0YW50IHZhbHVl
CisgICAgICAgICAgICAgICAgICAgIGZhaWxJZlRydWUoY29udGV4dC5nZXRUeXBlKHByb3BlcnR5
KSAmIHByb3BlcnR5RW50cnlJdGVyLmZpcnN0LT5zZWNvbmQpOworICAgICAgICAgICAgICAgICAg
ICBmYWlsSWZUcnVlKChjb250ZXh0LmdldFR5cGUocHJvcGVydHkpIHwgcHJvcGVydHlFbnRyeUl0
ZXIuZmlyc3QtPnNlY29uZCkgJiBQcm9wZXJ0eU5vZGU6OkNvbnN0YW50KTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgdGFpbCA9IGNvbnRleHQu
Y3JlYXRlUHJvcGVydHlMaXN0KHByb3BlcnR5LCB0YWlsKTsKKyAgICB9CisgICAgCisgICAgY29u
c3VtZU9yRmFpbChDTE9TRUJSQUNFKTsKKyAgICAKKyAgICByZXR1cm4gY29udGV4dC5jcmVhdGVP
YmplY3RMaXRlcmFsKHByb3BlcnR5TGlzdCk7Cit9CisKIHRlbXBsYXRlIDxjbGFzcyBUcmVlQnVp
bGRlcj4gVHJlZUV4cHJlc3Npb24gSlNQYXJzZXI6OnBhcnNlQXJyYXlMaXRlcmFsKFRyZWVCdWls
ZGVyJiBjb250ZXh0KQogewogICAgIGNvbnN1bWVPckZhaWwoJ1snKTsKZGlmZiAtLWdpdCBhL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9KU1BhcnNlci5oIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0pT
UGFyc2VyLmgKaW5kZXggNTU0NTU2Zjc2NGFmZGY1MDRiOWNjOTA2Mzk3MWY3YTIyMzEzZjdlMy4u
YWM1YjE4Y2I3NjlmNDVlODE2YmRkNjgwNDM3MThmZTM2ZDYzZjUxNSAxMDA2NDQKLS0tIGEvSmF2
YVNjcmlwdENvcmUvcGFyc2VyL0pTUGFyc2VyLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L0pTUGFyc2VyLmgKQEAgLTMwLDYgKzMwLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAKIGNsYXNzIElk
ZW50aWZpZXI7CiBjbGFzcyBKU0dsb2JhbERhdGE7CitjbGFzcyBTb3VyY2VDb2RlOwogCiBlbnVt
IEpTVG9rZW5UeXBlIHsKICAgICBOVUxMVE9LRU4gPSAyNTgsCkBAIC0xMTgsNiArMTE5LDYgQEAg
c3RydWN0IEpTVG9rZW4gewogICAgIEpTVG9rZW5JbmZvIG1faW5mbzsKIH07CiAKLWludCBqc1Bh
cnNlKEpTR2xvYmFsRGF0YSopOworaW50IGpzUGFyc2UoSlNHbG9iYWxEYXRhKiwgY29uc3QgU291
cmNlQ29kZSopOwogfQogI2VuZGlmIC8vIEpTUGFyc2VyX2gKZGlmZiAtLWdpdCBhL0phdmFTY3Jp
cHRDb3JlL3BhcnNlci9MZXhlci5jcHAgYi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3Bw
CmluZGV4IDhjZGU1ZTE1YTU2Y2QyM2E3M2ZmODcxZTQzNzgyYjZmMTE2OWUyZjIuLmViMjdlOGZl
OWEzM2UxMDU4MGNlYzNhMWRiNmUyMmFiMmEwMjVlNTIgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRD
b3JlL3BhcnNlci9MZXhlci5jcHAKKysrIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVyLmNw
cApAQCAtMTExNyw3ICsxMTE3LDYgQEAgYm9vbCBMZXhlcjo6c2tpcFJlZ0V4cCgpCiB2b2lkIExl
eGVyOjpjbGVhcigpCiB7CiAgICAgbV9hcmVuYSA9IDA7Ci0gICAgbV9jb2RlV2l0aG91dEJPTXMu
Y2xlYXIoKTsKIAogICAgIFZlY3RvcjxjaGFyPiBuZXdCdWZmZXI4OwogICAgIG1fYnVmZmVyOC5z
d2FwKG5ld0J1ZmZlcjgpOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL0xleGVy
LmggYi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuaAppbmRleCBlN2FhYmMwNGFjOTY3NzNm
YzBkMTY2ZGU2NzkwMTdmY2ZmZDJjMzdkLi45MjkyYzIxMzYyM2FkZmIxMjMyYzVjMDI3YzkyMWJm
N2NhMGJlM2E4IDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuaAorKysg
Yi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuaApAQCAtNjEsNiArNjEsMTIgQEAgbmFtZXNw
YWNlIEpTQyB7CiAgICAgICAgIC8vIEZ1bmN0aW9ucyBmb3IgdXNlIGFmdGVyIHBhcnNpbmcuCiAg
ICAgICAgIGJvb2wgc2F3RXJyb3IoKSBjb25zdCB7IHJldHVybiBtX2Vycm9yOyB9CiAgICAgICAg
IHZvaWQgY2xlYXIoKTsKKyAgICAgICAgaW50IGN1cnJlbnRPZmZzZXQoKSB7IHJldHVybiBtX2Nv
ZGUgLSBtX2NvZGVTdGFydDsgfQorICAgICAgICB2b2lkIHNldE9mZnNldChpbnQgb2Zmc2V0KQor
ICAgICAgICB7CisgICAgICAgICAgICBtX2NvZGUgPSBtX2NvZGVTdGFydCArIG9mZnNldDsKKyAg
ICAgICAgICAgIG1fY3VycmVudCA9ICptX2NvZGU7CisgICAgICAgIH0KIAogICAgIHByaXZhdGU6
CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKU0dsb2JhbERhdGE7CkBAIC0xMTUsOCArMTIxLDYgQEAg
bmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIEpTR2xvYmFsRGF0YSogbV9nbG9iYWxEYXRhOwogCiAg
ICAgICAgIGNvbnN0IEhhc2hUYWJsZSBtX2tleXdvcmRUYWJsZTsKLQotICAgICAgICBWZWN0b3I8
VUNoYXI+IG1fY29kZVdpdGhvdXRCT01zOwogICAgIH07CiAKICAgICBpbmxpbmUgYm9vbCBMZXhl
cjo6aXNXaGl0ZVNwYWNlKGludCBjaCkKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9Ob2Rlcy5oIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgKaW5kZXggNTdjOGY0ZjE0
MmZjNDQ0MmM5YjVhM2E3ODAyNzEzODlkYTU5Mjc5My4uNjIwNjM4NDJiZTVkYmU0OWMzYjNkZjNl
MzA5OTEwMGViZTdmZWFhZCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVz
LmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgKQEAgLTQwNCwxMiArNDA0LDEz
IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgY2xhc3MgUHJvcGVydHlOb2RlIDogcHVibGljIFBh
cnNlckFyZW5hRnJlZWFibGUgewogICAgIHB1YmxpYzoKLSAgICAgICAgZW51bSBUeXBlIHsgQ29u
c3RhbnQsIEdldHRlciwgU2V0dGVyIH07CisgICAgICAgIGVudW0gVHlwZSB7IENvbnN0YW50ID0g
MSwgR2V0dGVyID0gMiwgU2V0dGVyID0gNCB9OwogCiAgICAgICAgIFByb3BlcnR5Tm9kZShKU0ds
b2JhbERhdGEqLCBjb25zdCBJZGVudGlmaWVyJiBuYW1lLCBFeHByZXNzaW9uTm9kZSogdmFsdWUs
IFR5cGUpOwogICAgICAgICBQcm9wZXJ0eU5vZGUoSlNHbG9iYWxEYXRhKiwgZG91YmxlIG5hbWUs
IEV4cHJlc3Npb25Ob2RlKiB2YWx1ZSwgVHlwZSk7CiAKICAgICAgICAgY29uc3QgSWRlbnRpZmll
ciYgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQorICAgICAgICBUeXBlIHR5cGUoKSBj
b25zdCB7IHJldHVybiBtX3R5cGU7IH0KIAogICAgIHByaXZhdGU6CiAgICAgICAgIGZyaWVuZCBj
bGFzcyBQcm9wZXJ0eUxpc3ROb2RlOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L1BhcnNlci5jcHAgYi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAppbmRleCBlMGE5
YjY3NmU3MTZkNjMwZmE3MDU5NjY4MjgwNDJmZmNjMTlmODgzLi4zYmQzNTJkYzhlMDUxMmQ3Nzhl
ZTBkOGNkYjA3YmMzMmNjMTgyNGQxIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
UGFyc2VyLmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcApAQCAtNTMs
NyArNTMsNyBAQCB2b2lkIFBhcnNlcjo6cGFyc2UoSlNHbG9iYWxEYXRhKiBnbG9iYWxEYXRhLCBp
bnQqIGVyckxpbmUsIFVTdHJpbmcqIGVyck1zZykKICAgICBMZXhlciYgbGV4ZXIgPSAqZ2xvYmFs
RGF0YS0+bGV4ZXI7CiAgICAgbGV4ZXIuc2V0Q29kZSgqbV9zb3VyY2UsIG1fYXJlbmEpOwogCi0g
ICAgaW50IHBhcnNlRXJyb3IgPSBqc1BhcnNlKGdsb2JhbERhdGEpOworICAgIGludCBwYXJzZUVy
cm9yID0ganNQYXJzZShnbG9iYWxEYXRhLCBtX3NvdXJjZSk7CiAgICAgaW50IGxpbmVOdW1iZXIg
PSBsZXhlci5saW5lTnVtYmVyKCk7CiAgICAgYm9vbCBsZXhFcnJvciA9IGxleGVyLnNhd0Vycm9y
KCk7CiAgICAgbGV4ZXIuY2xlYXIoKTsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9Tb3VyY2VQcm92aWRlci5oIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVy
LmgKaW5kZXggODdlYTk2MDhjY2NiNGRjNzZmYTcwY2RiOTQ1MTMwYjc1Yjg2YjczMy4uNmI5YzAy
OGRlZTcwMTUxOTdkNWZmZGFjMWM3OWRmMTRiZmRhNGM0NCAxMDA2NDQKLS0tIGEvSmF2YVNjcmlw
dENvcmUvcGFyc2VyL1NvdXJjZVByb3ZpZGVyLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L1NvdXJjZVByb3ZpZGVyLmgKQEAgLTM4LDYgKzM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAg
cHVibGljOgogICAgICAgICBTb3VyY2VQcm92aWRlcihjb25zdCBVU3RyaW5nJiB1cmwpCiAgICAg
ICAgICAgICA6IG1fdXJsKHVybCkKKyAgICAgICAgICAgICwgbV92YWxpZGF0ZWQoZmFsc2UpCiAg
ICAgICAgIHsKICAgICAgICAgfQogICAgICAgICB2aXJ0dWFsIH5Tb3VyY2VQcm92aWRlcigpIHsg
fQpAQCAtNDksOCArNTAsMTIgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIGNvbnN0IFVTdHJp
bmcmIHVybCgpIHsgcmV0dXJuIG1fdXJsOyB9CiAgICAgICAgIGludHB0cl90IGFzSUQoKSB7IHJl
dHVybiByZWludGVycHJldF9jYXN0PGludHB0cl90Pih0aGlzKTsgfQogCisgICAgICAgIGJvb2wg
aXNWYWxpZCgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsaWRhdGVkOyB9CisgICAgICAgIHZvaWQgc2V0
VmFsaWQoKSB7IG1fdmFsaWRhdGVkID0gdHJ1ZTsgfQorCiAgICAgcHJpdmF0ZToKICAgICAgICAg
VVN0cmluZyBtX3VybDsKKyAgICAgICAgYm9vbCBtX3ZhbGlkYXRlZDsKICAgICB9OwogCiAgICAg
Y2xhc3MgVVN0cmluZ1NvdXJjZVByb3ZpZGVyIDogcHVibGljIFNvdXJjZVByb3ZpZGVyIHsKZGlm
ZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL3BhcnNlci9TeW50YXhDaGVja2VyLmggYi9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvU3ludGF4Q2hlY2tlci5oCmluZGV4IGNhZDg5ZjZjYTJhOTk1YjhkMmIz
OTBiNDhkZDFjMDJmMmVhZTM1OTAuLmUwNWZhY2RlNmRjMmUwMGI0ODcyOGE5MzY0N2FmNjQxODRk
ZWZhOTYgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3BhcnNlci9TeW50YXhDaGVja2VyLmgK
KysrIGIvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1N5bnRheENoZWNrZXIuaApAQCAtMjksNyArMjks
NyBAQAogbmFtZXNwYWNlIEpTQyB7CiBjbGFzcyBTeW50YXhDaGVja2VyIHsKIHB1YmxpYzoKLSAg
ICBTeW50YXhDaGVja2VyKEpTR2xvYmFsRGF0YSosIExleGVyKikKKyAgICBTeW50YXhDaGVja2Vy
KEpTR2xvYmFsRGF0YSogLCBMZXhlciopCiAgICAgewogICAgIH0KIApAQCAtMzksNyArMzksMjUg
QEAgcHVibGljOgogICAgIHR5cGVkZWYgaW50IFNvdXJjZUVsZW1lbnRzOwogICAgIHR5cGVkZWYg
aW50IEFyZ3VtZW50czsKICAgICB0eXBlZGVmIGludCBDb21tYTsKLSAgICB0eXBlZGVmIGludCBQ
cm9wZXJ0eTsKKyAgICBzdHJ1Y3QgUHJvcGVydHkgeworICAgICAgICBBTFdBWVNfSU5MSU5FIFBy
b3BlcnR5KHZvaWQqID0gMCkKKyAgICAgICAgICAgIDogdHlwZSgoUHJvcGVydHlOb2RlOjpUeXBl
KTApCisgICAgICAgIHsKKyAgICAgICAgfQorICAgICAgICBBTFdBWVNfSU5MSU5FIFByb3BlcnR5
KGNvbnN0IElkZW50aWZpZXIqIGlkZW50LCBQcm9wZXJ0eU5vZGU6OlR5cGUgdHkpCisgICAgICAg
IDogbmFtZShpZGVudCkKKyAgICAgICAgLCB0eXBlKHR5KQorICAgICAgICB7CisgICAgICAgIH0K
KyAgICAgICAgQUxXQVlTX0lOTElORSBQcm9wZXJ0eShQcm9wZXJ0eU5vZGU6OlR5cGUgdHkpCisg
ICAgICAgICAgICA6IG5hbWUoMCkKKyAgICAgICAgICAgICwgdHlwZSh0eSkKKyAgICAgICAgewor
ICAgICAgICB9CisgICAgICAgIEFMV0FZU19JTkxJTkUgYm9vbCBvcGVyYXRvciEoKSB7IHJldHVy
biAhdHlwZTsgfQorICAgICAgICBjb25zdCBJZGVudGlmaWVyKiBuYW1lOworICAgICAgICBQcm9w
ZXJ0eU5vZGU6OlR5cGUgdHlwZTsKKyAgICB9OwogICAgIHR5cGVkZWYgaW50IFByb3BlcnR5TGlz
dDsKICAgICB0eXBlZGVmIGludCBFbGVtZW50TGlzdDsKICAgICB0eXBlZGVmIGludCBBcmd1bWVu
dHNMaXN0OwpAQCAtOTAsMTAgKzEwOCwyMSBAQCBwdWJsaWM6CiAgICAgaW50IGNyZWF0ZUFyZ3Vt
ZW50cyhpbnQpIHsgcmV0dXJuIDE7IH0KICAgICBpbnQgY3JlYXRlQXJndW1lbnRzTGlzdChpbnQp
IHsgcmV0dXJuIDE7IH0KICAgICBpbnQgY3JlYXRlQXJndW1lbnRzTGlzdChpbnQsIGludCkgeyBy
ZXR1cm4gMTsgfQotICAgIGludCBjcmVhdGVQcm9wZXJ0eShjb25zdCBJZGVudGlmaWVyKiwgaW50
LCBQcm9wZXJ0eU5vZGU6OlR5cGUpIHsgcmV0dXJuIDE7IH0KLSAgICBpbnQgY3JlYXRlUHJvcGVy
dHkoZG91YmxlLCBpbnQsIFByb3BlcnR5Tm9kZTo6VHlwZSkgeyByZXR1cm4gMTsgfQotICAgIGlu
dCBjcmVhdGVQcm9wZXJ0eUxpc3QoaW50KSB7IHJldHVybiAxOyB9Ci0gICAgaW50IGNyZWF0ZVBy
b3BlcnR5TGlzdChpbnQsIGludCkgeyByZXR1cm4gMTsgfQorICAgIHRlbXBsYXRlIDxib29sIGNv
bXBsZXRlPiBQcm9wZXJ0eSBjcmVhdGVQcm9wZXJ0eShjb25zdCBJZGVudGlmaWVyKiBuYW1lLCBp
bnQsIFByb3BlcnR5Tm9kZTo6VHlwZSB0eXBlKQorICAgIHsKKyAgICAgICAgQVNTRVJUKG5hbWUp
OworICAgICAgICBpZiAoIWNvbXBsZXRlKQorICAgICAgICAgICAgcmV0dXJuIFByb3BlcnR5KHR5
cGUpOworICAgICAgICByZXR1cm4gUHJvcGVydHkobmFtZSwgdHlwZSk7CisgICAgfQorICAgIHRl
bXBsYXRlIDxib29sIGNvbXBsZXRlPiBQcm9wZXJ0eSBjcmVhdGVQcm9wZXJ0eShKU0dsb2JhbERh
dGEqIGdsb2JhbERhdGEsIGRvdWJsZSBuYW1lLCBpbnQsIFByb3BlcnR5Tm9kZTo6VHlwZSB0eXBl
KQorICAgIHsKKyAgICAgICAgaWYgKCFjb21wbGV0ZSkKKyAgICAgICAgICAgIHJldHVybiBQcm9w
ZXJ0eSh0eXBlKTsKKyAgICAgICAgcmV0dXJuIFByb3BlcnR5KCZnbG9iYWxEYXRhLT5wYXJzZXIt
PmFyZW5hKCkuaWRlbnRpZmllckFyZW5hKCkubWFrZU51bWVyaWNJZGVudGlmaWVyKGdsb2JhbERh
dGEsIG5hbWUpLCB0eXBlKTsKKyAgICB9CisgICAgaW50IGNyZWF0ZVByb3BlcnR5TGlzdChQcm9w
ZXJ0eSkgeyByZXR1cm4gMTsgfQorICAgIGludCBjcmVhdGVQcm9wZXJ0eUxpc3QoUHJvcGVydHks
IGludCkgeyByZXR1cm4gMTsgfQogICAgIGludCBjcmVhdGVFbGVtZW50TGlzdChpbnQsIGludCkg
eyByZXR1cm4gMTsgfQogICAgIGludCBjcmVhdGVFbGVtZW50TGlzdChpbnQsIGludCwgaW50KSB7
IHJldHVybiAxOyB9CiAgICAgaW50IGNyZWF0ZUZvcm1hbFBhcmFtZXRlckxpc3QoY29uc3QgSWRl
bnRpZmllciYpIHsgcmV0dXJuIDE7IH0KQEAgLTEyNyw3ICsxNTYsMTMgQEAgcHVibGljOgogICAg
IGludCBjcmVhdGVEZWJ1Z2dlcihpbnQsIGludCkgeyByZXR1cm4gMTsgfQogICAgIGludCBjcmVh
dGVDb25zdFN0YXRlbWVudChpbnQsIGludCwgaW50KSB7IHJldHVybiAxOyB9CiAgICAgaW50IGFw
cGVuZENvbnN0RGVjbChpbnQsIGNvbnN0IElkZW50aWZpZXIqLCBpbnQpIHsgcmV0dXJuIDE7IH0K
LSAgICBpbnQgY3JlYXRlR2V0dGVyT3JTZXR0ZXJQcm9wZXJ0eShjb25zdCBJZGVudGlmaWVyKiwg
Y29uc3QgSWRlbnRpZmllciosIGludCwgaW50LCBpbnQsIGludCwgaW50LCBpbnQpIHsgcmV0dXJu
IDE7IH0KKyAgICB0ZW1wbGF0ZSA8Ym9vbCBzdHJpY3Q+IFByb3BlcnR5IGNyZWF0ZUdldHRlck9y
U2V0dGVyUHJvcGVydHkoUHJvcGVydHlOb2RlOjpUeXBlIHR5cGUsIGNvbnN0IElkZW50aWZpZXIq
IG5hbWUsIGludCwgaW50LCBpbnQsIGludCwgaW50LCBpbnQpCisgICAgeworICAgICAgICBBU1NF
UlQobmFtZSk7CisgICAgICAgIGlmICghc3RyaWN0KQorICAgICAgICAgICAgcmV0dXJuIFByb3Bl
cnR5KHR5cGUpOworICAgICAgICByZXR1cm4gUHJvcGVydHkobmFtZSwgdHlwZSk7CisgICAgfQog
CiAgICAgdm9pZCBhcHBlbmRTdGF0ZW1lbnQoaW50LCBpbnQpIHsgfQogICAgIHZvaWQgYWRkVmFy
KGNvbnN0IElkZW50aWZpZXIqLCBib29sKSB7IH0KQEAgLTE1MSw2ICsxODYsOCBAQCBwdWJsaWM6
CiAgICAgCiAgICAgdm9pZCBhc3NpZ25tZW50U3RhY2tBcHBlbmQoaW50LCBpbnQsIGludCwgaW50
LCBpbnQsIE9wZXJhdG9yKSB7IH0KICAgICBpbnQgY3JlYXRlQXNzaWdubWVudChpbnQsIGludCwg
aW50LCBpbnQsIGludCkgeyBBU1NFUlRfTk9UX1JFQUNIRUQoKTsgcmV0dXJuIDE7IH0KKyAgICBj
b25zdCBJZGVudGlmaWVyJiBnZXROYW1lKGNvbnN0IFByb3BlcnR5JiBwcm9wZXJ0eSkgeyBBU1NF
UlQocHJvcGVydHkubmFtZSk7IHJldHVybiAqcHJvcGVydHkubmFtZTsgfQorICAgIFByb3BlcnR5
Tm9kZTo6VHlwZSBnZXRUeXBlKGNvbnN0IFByb3BlcnR5JiBwcm9wZXJ0eSkgeyByZXR1cm4gcHJv
cGVydHkudHlwZTsgfQogfTsKIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
IGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDIyYjIyNGVkZjY1OGVhNjNlMGU4MTI0YWZl
YmZhMzNkYWQ1Njg0NDMuLjA5OTRmNmI1ZTU3ZDFiMGQ2MzAyZWE2MTJhMTE0ZWI2NjIyMzJhZGMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAxMC0wNy0wOCAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJA
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIE1ha2Ugb2JqZWN0LWxpdGVyYWwgcGFyc2luZyBjb25mb3JtYW50IHdpdGggdGhlIHNwZWMu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTg5Mgor
CisgICAgICAgIEFkZCB0ZXN0cyB0byBlbnN1cmUgY29ycmVjdCBwYXJzaW5nIG9mIG9iamVjdCBs
aXRlcmFscy4KKworICAgICAgICAqIGZhc3QvanMvb2JqZWN0LWxpdGVyYWwtc3ludGF4Lmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvanMvb2JqZWN0LWxpdGVyYWwtc3ludGF4LWV4cGVjdGVk
OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2pzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQu
dHh0OgorICAgICAgICAqIGZhc3QvanMvc2NyaXB0LXRlc3RzL29iamVjdC1saXRlcmFsLXN5bnRh
eC5qczogQWRkZWQuCisgICAgICAgICogZmFzdC9qcy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5bnRh
eC1jaGVjay5qczoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9u
cy50eHQ6CisKIDIwMTAtMDctMDggIEFuZHJlYXMgS2xpbmcgIDxhbmRyZWFzLmtsaW5nQG5va2lh
LmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2Zhc3QvanMvb2JqZWN0LWxpdGVyYWwtc3ludGF4Lmh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2pzL29iamVjdC1saXRlcmFsLXN5bnRheC5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmI3NzM5
MTAxNjllNDZiMjQzM2YyYjVjNDhjNDgwNTYyZWU0NWVkOWIKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9mYXN0L2pzL29iamVjdC1saXRlcmFsLXN5bnRheC5odG1sCkBAIC0wLDAgKzEs
MTMgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InJlc291cmNlcy9qcy10
ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2
IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJzY3JpcHQtdGVzdHMvb2JqZWN0LWxp
dGVyYWwtc3ludGF4LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvanMtdGVz
dC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvanMvcGFyc2VyLXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2pzL3BhcnNlci1zeW50YXgtY2hlY2stZXhwZWN0ZWQudHh0CmluZGV4IDgwNjY5
MDcwYjQyNzY5NGI1MDJiZmQyMDRkNDhlNzJlOWNkYzYyMDIuLjE4NzliYzFiNmI0OWEwZjI0Njcw
MWNhYzBkOGNkY2Q5OWIwODI3MDAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvanMvcGFy
c2VyLXN5bnRheC1jaGVjay1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9w
YXJzZXItc3ludGF4LWNoZWNrLWV4cGVjdGVkLnR4dApAQCAtMTg2LDggKzE4Niw4IEBAIFBBU1Mg
SW52YWxpZDogIlssIgogUEFTUyBJbnZhbGlkOiAiZnVuY3Rpb24gZigpIHsgWywgfSIKIFBBU1Mg
SW52YWxpZDogIihhLCkiCiBQQVNTIEludmFsaWQ6ICJmdW5jdGlvbiBmKCkgeyAoYSwpIH0iCi1Q
QVNTIFZhbGlkOiAgICIxICsge2dldCBnZXQoKXt9LCBzZXQgc2V0KGEpe30sIGdldDo0LCBzZXQ6
Z2V0LXNldCwgfSIKLVBBU1MgVmFsaWQ6ICAgImZ1bmN0aW9uIGYoKSB7IDEgKyB7Z2V0IGdldCgp
e30sIHNldCBzZXQoYSl7fSwgZ2V0OjQsIHNldDpnZXQtc2V0LCB9IH0iCitQQVNTIFZhbGlkOiAg
ICIxICsge2dldCBnZXQoKXt9LCBzZXQgc2V0KGEpe30sIGdldDE6NCwgc2V0MTpnZXQtc2V0LCB9
IgorUEFTUyBWYWxpZDogICAiZnVuY3Rpb24gZigpIHsgMSArIHtnZXQgZ2V0KCl7fSwgc2V0IHNl
dChhKXt9LCBnZXQxOjQsIHNldDE6Z2V0LXNldCwgfSB9IgogUEFTUyBJbnZhbGlkOiAiMSArIHth
IgogUEFTUyBJbnZhbGlkOiAiZnVuY3Rpb24gZigpIHsgMSArIHthIH0iCiBQQVNTIEludmFsaWQ6
ICIxICsge2E6IgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVzdHMv
b2JqZWN0LWxpdGVyYWwtc3ludGF4LmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVz
dHMvb2JqZWN0LWxpdGVyYWwtc3ludGF4LmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjMxMDUxNDRhMmI3NTI5ZmY5
MzZjNDg2M2I5MjAzNjBiZDZlZmQxZDkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9m
YXN0L2pzL3NjcmlwdC10ZXN0cy9vYmplY3QtbGl0ZXJhbC1zeW50YXguanMKQEAgLTAsMCArMSwy
NCBAQAorZGVzY3JpcHRpb24oIk1ha2Ugc3VyZSB0aGF0IHdlIGNvcnJlY3RseSBpZGVudGlmeSBw
YXJzZSBlcnJvcnMgaW4gb2JqZWN0IGxpdGVyYWxzIik7CisKK3Nob3VsZFRocm93KCIoe2E6MSwg
Z2V0IGEoKXt9fSkiKTsKK3Nob3VsZFRocm93KCIoe2E6MSwgc2V0IGEoKXt9fSkiKTsKK3Nob3Vs
ZFRocm93KCIoe2dldCBhKCl7fSwgYToxfSkiKTsKK3Nob3VsZFRocm93KCIoe3NldCBhKCl7fSwg
YToxfSkiKTsKK3Nob3VsZFRocm93KCIoe2dldCBhKCl7fSwgZ2V0IGEoKXt9fSkiKTsKK3Nob3Vs
ZFRocm93KCIoe3NldCBhKCl7fSwgc2V0IGEoKXt9fSkiKTsKK3Nob3VsZFRocm93KCIoe3NldCBh
KCl7fSwgZ2V0IGEoKXt9LCBzZXQgYSgpe319KSIpOworc2hvdWxkVGhyb3coIihmdW5jdGlvbigp
eyh7YToxLCBnZXQgYSgpe319KX0pIik7CitzaG91bGRUaHJvdygiKGZ1bmN0aW9uKCl7KHthOjEs
IHNldCBhKCl7fX0pfSkiKTsKK3Nob3VsZFRocm93KCIoZnVuY3Rpb24oKXsoe2dldCBhKCl7fSwg
YToxfSl9KSIpOworc2hvdWxkVGhyb3coIihmdW5jdGlvbigpeyh7c2V0IGEoKXt9LCBhOjF9KX0p
Iik7CitzaG91bGRUaHJvdygiKGZ1bmN0aW9uKCl7KHtnZXQgYSgpe30sIGdldCBhKCl7fX0pfSki
KTsKK3Nob3VsZFRocm93KCIoZnVuY3Rpb24oKXsoe3NldCBhKCl7fSwgc2V0IGEoKXt9fSl9KSIp
Oworc2hvdWxkVGhyb3coIihmdW5jdGlvbigpeyh7c2V0IGEoKXt9LCBnZXQgYSgpe30sIHNldCBh
KCl7fX0pfSkiKTsKK3Nob3VsZEJlVHJ1ZSgiKHthOjEsIGE6MSwgYToxfSksIHRydWUiKTsKK3No
b3VsZEJlVHJ1ZSgiKHtnZXQgYSgpe30sIHNldCBhKCl7fX0pLCB0cnVlIik7CitzaG91bGRCZVRy
dWUoIih7c2V0IGEoKXt9LCBnZXQgYSgpe319KSwgdHJ1ZSIpOworc2hvdWxkQmVUcnVlKCIoZnVu
Y3Rpb24oKXsoe2E6MSwgYToxLCBhOjF9KX0pLCB0cnVlIik7CitzaG91bGRCZVRydWUoIihmdW5j
dGlvbigpeyh7Z2V0IGEoKXt9LCBzZXQgYSgpe319KX0pLCB0cnVlIik7CitzaG91bGRCZVRydWUo
IihmdW5jdGlvbigpeyh7c2V0IGEoKXt9LCBnZXQgYSgpe319KX0pLCB0cnVlIik7CisKK3ZhciBz
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9q
cy9zY3JpcHQtdGVzdHMvcGFyc2VyLXN5bnRheC1jaGVjay5qcyBiL0xheW91dFRlc3RzL2Zhc3Qv
anMvc2NyaXB0LXRlc3RzL3BhcnNlci1zeW50YXgtY2hlY2suanMKaW5kZXggZGFhNDk3MTVkMDFh
ZWZiNTI4OGQ0YjE1YTIyZmZkZTY4NjdkZWE1Yy4uMWMxMzE2YTUzYzljY2I3YTg2ZTFmODM0YzY2
OGFlNzcxOWU1MmRkNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9qcy9zY3JpcHQtdGVz
dHMvcGFyc2VyLXN5bnRheC1jaGVjay5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L2pzL3Njcmlw
dC10ZXN0cy9wYXJzZXItc3ludGF4LWNoZWNrLmpzCkBAIC0xNTMsNyArMTUzLDcgQEAgdmFsaWQg
ICgiW10gaW4gWzUsNl0gKiBbLDUsXSAvIFssLDUsLF0gfHwgW2EsXSAmJiBuZXcgWyxiXSAlIFss
LF0iKTsKIGludmFsaWQoIls1LCIpOwogaW52YWxpZCgiWywiKTsKIGludmFsaWQoIihhLCkiKTsK
LXZhbGlkICAoIjEgKyB7Z2V0IGdldCgpe30sIHNldCBzZXQoYSl7fSwgZ2V0OjQsIHNldDpnZXQt
c2V0LCB9Iik7Cit2YWxpZCAgKCIxICsge2dldCBnZXQoKXt9LCBzZXQgc2V0KGEpe30sIGdldDE6
NCwgc2V0MTpnZXQtc2V0LCB9Iik7CiBpbnZhbGlkKCIxICsge2EiKTsKIGludmFsaWQoIjEgKyB7
YToiKTsKIGludmFsaWQoIjEgKyB7Z2V0IGwoIik7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9w
bGF0Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9jaHJvbWl1bS90ZXN0X2V4cGVjdGF0aW9ucy50eHQKaW5kZXggN2M4MzM2ZjNjODMyYjEy
NDMxN2Q0YWE3MjAwYjg2YzY1ZTlhNjdjZC4uYmI0ZjYzZTM4YjYwYjNmMTcxYjBjODliMTMzODQz
MjJkMjEyZmIxNSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vY2hyb21pdW0vdGVz
dF9leHBlY3RhdGlvbnMudHh0CisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2Nocm9taXVtL3Rl
c3RfZXhwZWN0YXRpb25zLnR4dApAQCAtMjkzMSwzICsyOTMxLDUgQEAgQlVHNDgyMzkgOiBmYXN0
L2pzL2Z1bmN0aW9uLWFwcGx5LW1hbnktYXJncy5odG1sID0gVEVYVAogCiAvLyBOZWVkcyByZWJh
c2VsaW5pbmcgYWZ0ZXIgaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvNjI2NjIvCiBC
VUc0ODQ1MiBMSU5VWCBNQUMgOiBzdmcvY3VzdG9tL3VzZS1mb250LWZhY2UtY3Jhc2guc3ZnID0g
SU1BR0UrVEVYVCBJTUFHRQorCitTS0lQIDogZmFzdC9qcy9vYmplY3QtbGl0ZXJhbC1zeW50YXgu
aHRtbAo=
</data>
<flag name="review"
          id="48791"
          type_id="1"
          status="+"
          setter="barraclough"
    />
          </attachment>
      

    </bug>

</bugzilla>