summaryrefslogtreecommitdiffstats
path: root/website
diff options
context:
space:
mode:
authorDavid Fugate <dfugate@microsoft.com>2012-03-06 08:51:41 -0800
committerDavid Fugate <dfugate@microsoft.com>2012-03-06 08:51:41 -0800
commit5882a21142a1541aa8ab61d41eecb26d2b22bd60 (patch)
tree7e7dca2e3ef40566d3cc92d72fb6ed9fda1de02e /website
parent23598a3c67a68ccf563f28ad071deb0ef4ace3c6 (diff)
https://bugs.ecmascript.org/show_bug.cgi?id=287 is fixed (completely?).
Diffstat (limited to 'website')
-rw-r--r--website/json/ch10.json2
-rw-r--r--website/json/ch15.json2
-rw-r--r--website/json/default.json2
-rw-r--r--website/json/testcases_bestPractice.json2
-rw-r--r--website/json/testcases_ch07.json2
-rw-r--r--website/json/testcases_ch08.json2
-rw-r--r--website/json/testcases_ch09.json2
-rw-r--r--website/json/testcases_ch10.json2
-rw-r--r--website/json/testcases_ch11.json2
-rw-r--r--website/json/testcases_ch12.json2
-rw-r--r--website/json/testcases_ch13.json2
-rw-r--r--website/json/testcases_ch14.json2
-rw-r--r--website/json/testcases_ch15.json2
-rw-r--r--website/json/testcases_intl402.json2
14 files changed, 14 insertions, 14 deletions
diff --git a/website/json/ch10.json b/website/json/ch10.json
index 849054bdd..a3f7b88ba 100644
--- a/website/json/ch10.json
+++ b/website/json/ch10.json
@@ -1 +1 @@
-{"testsCollection":{"name":"Chapter - ch10","numTests":"372","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBEZWZpbmluZyBmdW5jdGlvbiBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24KICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gMTsKfQppZih0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIicpOwoK","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Defining function by a FunctionDeclaration","path":"TestCases/ch10/10.1/S10.1.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbgogKi8KCi8vQ0hFQ0sjMQp2YXIgeD1mdW5jdGlvbiBmMSgpe3JldHVybiAxO30oKTsKaWYoeCE9PTEpCiAgJEVSUk9SKCcjMTogQ3JlYXRlIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwoKLy9DSEVDSyMyCnZhciB5PWZ1bmN0aW9uICAoKXtyZXR1cm4gMjt9KCk7CmlmKHkhPT0yKXsKICAkRVJST1IoJyMyOiBDcmVhdGUgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwp9CgovL0NIRUNLIzIKdmFyIHogPSAoZnVuY3Rpb24oKXtyZXR1cm4gMzt9KSgpOwppZih6IT09Myl7CiAgJEVSUk9SKCcjMzogQ3JlYXRlIGFuIGFub255bW91cyBmdW5jdGlvbiBkeW5hbWljYWxseSBlaXRoZXIgYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gd3JhcHBlZCBpbiBhIGdyb3VwIG9wZXJhdG9yJyk7Cn0KCg==","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using a FunctionExpression","path":"TestCases/ch10/10.1/S10.1.1_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyB0aGUgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0IGFzIGEgY29uc3RydWN0b3IKICovCgovL0NIRUNLIzEKdmFyIHg9bmV3IGZ1bmN0aW9uIGYxKCl7cmV0dXJuIDE7fTsKaWYodHlwZW9mKHguY29uc3RydWN0b3IpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoeC5jb25zdHJ1Y3RvcikhPT0iZnVuY3Rpb24iJyk7Cgo=","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using the built-in Function object as a constructor","path":"TestCases/ch10/10.1/S10.1.1_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIEZ1bmN0aW9uIG9iamVjdHMuIEludGVybmFsIGZ1bmN0aW9ucwogKiBhcmUgYnVpbHQtaW4gb2JqZWN0cyBvZiB0aGUgbGFuZ3VhZ2UsIHN1Y2ggYXMgcGFyc2VJbnQgYW5kIE1hdGguZXhwCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlcyBvZiBwYXJzZUludCBhbmQgTWF0aC5leHAKICovCgovL0NIRUNLIzEKaWYodHlwZW9mKE1hdGguZXhwKSE9PSJmdW5jdGlvbiIpCiAgJEVSUk9SKCcjMTogdHlwZW9mKE1hdGguZXhwKDEwKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKE1hdGguZXhwKCkpKTsKCi8vQ0hFQ0sjMgppZih0eXBlb2YocGFyc2VJbnQpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMyOiB0eXBlb2YocGFyc2VJbnQoKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKHBhcnNlSW50KCkpKTsKICAKCg==","commentary":"There are two types of Function objects. Internal functions\nare built-in objects of the language, such as parseInt and Math.exp","description":"Checking types of parseInt and Math.exp","path":"TestCases/ch10/10.1/S10.1.1_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBmdW5jdGlvbiBwYXJhbWV0ZXIgaXMgcG9zc2libGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKGEpewogIGRlbGV0ZSBhOwogIHJldHVybiBhOwp9CmlmIChmMSgxKSAhPT0gMSkKICAkRVJST1IoJyMxOiBGdW5jdGlvbiBwYXJhbWV0ZXIgd2FzIGRlbGV0ZWQnKTsKCgo=","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking if deleting function parameter is possible","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW50aW9uIHdoaWNoIHJldHVybnMgcHJvcGVydHkgImFyZ3VtZW50cyIKICovCgp2YXIgQVJHX1NUUklORyA9ICJ2YWx1ZSBvZiB0aGUgYXJndW1lbnQgcHJvcGVydHkiOwoKZnVuY3Rpb24gZjEoKSB7CiAgdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuYXJndW1lbnRzID0gQVJHX1NUUklORzsKICByZXR1cm4gYXJndW1lbnRzOwp9CiAgCi8vQ0hFQ0sjMQppZiAoKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGggIT09IDUpCiAgJEVSUk9SKCcjMTogKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGg9PT01LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMiAgCmlmICgobmV3IGYxKDEsMiwzLDQsNSkpWzNdICE9PSA0KQogICRFUlJPUignIzI6IChuZXcgZjEoMSwyLDMsNCw1KSlbM109PT00LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMwp2YXIgeCA9IG5ldyBmMSgxLDIsMyw0LDUpOyAKaWYgKGRlbGV0ZSB4WzNdICE9PSB0cnVlKQogICRFUlJPUignIzMuMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0nKTsKICAKaWYgKHhbM10gPT09IDQpCiAgJEVSUk9SKCcjMy4yOiBGdW5jdGlvbiBwYXJhbWV0ZXJzIGhhdmUgYXR0cmlidXRlIHtEb250RGVsZXRlfScpOwoK","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking funtion which returns property \"arguments\"","path":"TestCases/ch10/10.1/S10.1.6_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW5jdGlvbiB3aGljaCByZXR1cm5zICJ0aGlzIgogKiBAbm9TdHJpY3QKICovCgpmdW5jdGlvbiBmMSgpIHsKICBpZiAoZGVsZXRlIGFyZ3VtZW50cykgewogICAgJEVSUk9SKCIjMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0iICsgYXJndW1lbnRzKTsKICB9CiAgcmV0dXJuIGFyZ3VtZW50czsKfQoKZjEoKTsKCg==","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking function which returns \"this\"","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdGhpcyB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhlY3V0aW9uY29udGV4dCBpcyBpbW11dGFibGUKICoKICogQHBhdGggY2gxMC8xMC4xL1MxMC4xLjdfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIGRlbGV0aW5nICJ0aGlzIiBmYWlscwogKi8KCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIHRoaXMgIT09IHRydWUpCiAgJEVSUk9SKCcjMTogVGhlIHRoaXMgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGFuIGV4ZWN1dGlvbmNvbnRleHQgaXMgaW1tdXRhYmxlLiBBY3R1YWw6IHRoaXMgd2FzIGRlbGV0ZWQnKTsKICAKCg==","commentary":"The this value associated with an executioncontext is immutable","description":"Checking if deleting \"this\" fails","path":"TestCases/ch10/10.1/S10.1.7_A1_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAndXNlICBzdHJpY3QnOyB3aGljaCBjb250YWlucyB0d28gc3BhY2UgYmV0d2VlbiAndXNlJyBhbmQgJ3N0cmljdCcNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2UgIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is 'use strict'; which contains two space between 'use' and 'strict'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVXNlIFN0cmljdCBEaXJlY3RpdmUgUHJvbG9ndWUgaXMgJydVU0UgU1RSSUNUJzsnIGluIHdoaWNoIGFsbCBjaGFyYWN0ZXJzIGFyZSB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVU0UgU1RSSUNUIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''USE STRICT';' in which all characters are uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBjb2RlIHdpdGggYSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoIid1c2Ugc3RyaWN0JzsgdmFyIHB1YmxpYyA9IDE7IHZhciBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9IDI7Iik7DQoNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvciAmJiB0eXBlb2YgcHVibGljID09PSAidW5kZWZpbmVkIiAmJg0KICAgICAgICAgICAgICAgIHR5cGVvZiBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9PT0gInVuZGVmaW5lZCI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Eval code is strict code with a Use Strict Directive at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgJ3VzZSBzdHJpY3QnOyB2YXIgYW5vdGhlclZhcmlhYmxlTm90UmVzZXJ2ZVdvcmQgPSAyOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgdmFyIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID0gMjsgJ3VzZSBzdHJpY3QnOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGNhbGwgdG8gZXZhbCBmdW5jdGlvbiBpcyBjb250YWluZWQgaW4gYSBTdHJpY3QgTW9kZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgJ3VzZSBzdHJpY3QnOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The call to eval function is contained in a Strict Mode block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGlzIHN0cmljdCBmdW5jdGlvbiBjb2RlIGlmIEZ1bmN0aW9uRGVjbGFyYXRpb24gaXMgY29udGFpbmVkIGluIHVzZSBzdHJpY3QNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a FunctionDeclaration is strict function code if FunctionDeclaration is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkV4cHJlc3Npb24gaXMgc3RyaWN0IGZ1bmN0aW9uIGNvZGUgaWYgRnVuY3Rpb25FeHByZXNzaW9uIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0DQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a FunctionExpression is strict function code if FunctionExpression is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgicHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDExOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB2YXIgdGVtcCA9IG9iai5hY2NQcm9wZXJ0eSA9PT0gMTE7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgImFjY1Byb3BlcnR5Iiwgew0KICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yICYmIGRhdGEgPT09ICJkYXRhIjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBmdW5jdGlvbiBmdW4oKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0Ig0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCAiYWNjUHJvcGVydHkiLCB7DQogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciB0ZW1wID0gb2JqLmFjY1Byb3BlcnR5ID09PSAxMTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICB2YXIgZGF0YSA9ICJkYXRhIjsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KDQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jayhnZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoInB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIHJldHVybiBvYmouYWNjUHJvcGVydHkgPT09IDExICYmIHB1YmxpYyA9PT0gMTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears in the middle of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jayhzZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIHZhciBkYXRhOw0KDQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgdmFyIF8xMF8xXzFfMjhfcyA9IHthOjEsIGE6Mn07DQogICAgICAgICAgICAgICAgZGF0YSA9IHZhbHVlOw0KICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICByZXR1cm4gZGF0YT09PSJvdmVycmlkZURhdGEiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the end of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGJ1aWx0LWluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0IGNvZGUNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIGZ1bk9iaiA9IG5ldyBGdW5jdGlvbigiYSIsICJldmFsKCdwdWJsaWMgPSAxOycpOyIpOw0KICAgICAgICBmdW5PYmooKTsNCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The built-in Function constructor is contained in use strict code","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiDQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJyB1c2Ugc3RyaWN0JzsnIHdoaWNoIHRoZSBmaXJzdCBjaGFyYWN0ZXIgaXMgc3BhY2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICIgdXNlIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KDQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is '' use strict';' which the first character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgIid1c2Ugc3RyaWN0JzsgZXZhbCgncHVibGljID0gMTsnKTsiKTsNCiAgICAgICAgICAgIGZ1bk9iaigpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7ICd1c2Ugc3RyaWN0JzsgYW5vdGhlclZhcmlhYmxlID0gMjsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7IGFub3RoZXJWYXJpYWJsZSA9IDI7ICd1c2Ugc3RyaWN0JzsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QgJzsnIHdoaWNoIHRoZSBsYXN0IGNoYXJhY3RlciBpcyBzcGFjZQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QgIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict ';' which the last character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGNvZGUNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCnZhciBwdWJsaWMgPSAxOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the start of the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIGludGVyZmFjZSA9IDI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgaW50ZXJmYWNlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgZGlyZWN0aXZlIHByb2xvZ3VlDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the directive prologue","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgY29kZQ0KICogQG5vU3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQoidXNlIHN0cmljdCI7DQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ1VzZSBzdHJpY3QnOycgaW4gd2hpY2ggdGhlIGZpcnN0IGNoYXJhY3RlciBpcyB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVc2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''Use strict';' in which the first character is uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgY2FsbGVyIHN1cHBsaWVzIGZld2VyIHBhcmFtZXRlciB2YWx1ZXMgdGhhbiB0aGVyZSBhcmUKICogZm9ybWFsIHBhcmFtZXRlcnMsIHRoZSBleHRyYSBmb3JtYWwgcGFyYW1ldGVycyBoYXZlIHZhbHVlIHVuZGVmaW5lZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTEuanMKICogQGRlc2NyaXB0aW9uIENhbGxpbmcgZnVuY3Rpb24gZXhjbHVkaW5nIGEgZmV3IHBhcmFtZXRlcnMKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoYSwgYil7CiAgcmV0dXJuIChiID09PSB1bmRlZmluZWQpOwp9CmlmKCEoZjEoMSwgMikgPT09IGZhbHNlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSwgMikgPT09IGZhbHNlJyk7Cn0gZWxzZSBpZighKGYxKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSkgPT09IHRydWUnKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKGEsIGIsIGMpewogIHJldHVybiAoYiA9PT0gdW5kZWZpbmVkKSAmJiAoYyA9PT0gdW5kZWZpbmVkKTsKfQppZighKGYyKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMjogZjIoMSwgMikgPT09IHRydWUnKTsKfQoK","commentary":"If the caller supplies fewer parameter values than there are\nformal parameters, the extra formal parameters have value undefined","description":"Calling function excluding a few parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycyBzaGFyZSB0aGUgc2FtZSBuYW1lLCBoZW5jZQogKiB0aGUgc2FtZSBwcm9wZXJ0eSwgdGhlIGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaXMgZ2l2ZW4gdGhlIHZhbHVlIHRoYXQgd2FzCiAqIHN1cHBsaWVkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXIgd2l0aCB0aGlzIG5hbWUKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgaW5pdGlhbGl6ZWQgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywgd2hpY2ggaGF2ZSB0aGUgc2FtZSBuYW1lCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSh4LCB4KSB7CiAgcmV0dXJuIHg7Cn0KaWYoIShmMSgxLCAyKSA9PT0gMikpIHsKICAkRVJST1IoIiMxOiBmMSgxLCAyKSA9PT0gMiIpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoeCwgeCwgeCl7CiAgcmV0dXJuIHgqeCp4Owp9CmlmKCEoZjIoMSwgMiwgMykgPT09IDI3KSl7CiAgJEVSUk9SKCJmMigxLCAyLCAzKSA9PT0gMjciKTsKfQoKLy9DSEVDSyMzCmZ1bmN0aW9uIGYzKHgsIHgpIHsKICByZXR1cm4gJ2EnICsgeDsKfQppZighKGYzKDEsIDIpID09PSAnYTInKSl7CiAgJEVSUk9SKCIjMzogZjMoMSwgMikgPT09ICdhMiciKTsKfQoK","commentary":"If two or more formal parameters share the same name, hence\nthe same property, the corresponding property is given the value that was\nsupplied for the last parameter with this name","description":"Creating functions initialized with two or more formal parameters, which have the same name","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgdmFsdWUgb2YgdGhpcyBsYXN0IHBhcmFtZXRlciAod2hpY2ggaGFzIHRoZSBzYW1lCiAqIG5hbWUgYXMgc29tZSBwcmV2aW91cyBwYXJhbWV0ZXJzIGRvKSB3YXMgbm90IHN1cHBsaWVkIGJ5IHRoZQogKiBjYWxsZXIsIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywKICogdGhhdCBoYXZlIHRoZSBzYW1lIG5hbWUuIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBleGNsdWRpbmcgYSBmZXcgbGFzdCBwYXJhbWV0ZXJzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgsIGEsIGIsIHgpewogIHJldHVybiB4Owp9CmlmKCEoZjEoMSwgMikgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUignIzE6IGYxKDEsIDIpID09PSB1bmRlZmluZWQnKTsKfQoK","commentary":"If the value of this last parameter (which has the same\nname as some previous parameters do) was not supplied by the\ncaller, the value of the corresponding property is undefined","description":"Creating functions with two or more formal parameters,\nthat have the same name. Calling this function excluding a few last parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIHBhc3NlZCBwYXJhbWV0ZXIKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHJldHVybiB4OwoKICBmdW5jdGlvbiB4KCl7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYoIShmMSgpLmNvbnN0cnVjdG9yLnByb3RvdHlwZSA9PT0gRnVuY3Rpb24ucHJvdG90eXBlKSl7CiAgJEVSUk9SKCcjMTogZjEoKSByZXR1cm5zIGZ1bmN0aW9uJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICByZXR1cm4gdHlwZW9mIHg7CgogIGZ1bmN0aW9uIHgoKXsKICAgIHJldHVybiA3OwogIH0KfQppZighKGYyKCkgPT09ICJmdW5jdGlvbiIpKXsKICAkRVJST1IoJyMyOiBmMigpID09PSAiZnVuY3Rpb24iJyk7Cn0KCi8vQ0hFQ0sjMwpmdW5jdGlvbiBmMygpIHsKICByZXR1cm4gdHlwZW9mIGFyZ3VtZW50czsKICBmdW5jdGlvbiBhcmd1bWVudHMoKSB7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYgKCEoZjMoKSA9PT0gImZ1bmN0aW9uIikpewogICRFUlJPUignIzM6IGYzKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with passed parameter","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIGRlY2xhcmVkIHZhcmlhYmxlCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjEoKS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgPT09IEZ1bmN0aW9uLnByb3RvdHlwZSkpewogICRQUklOVCgnIzE6IGYxKCkgcmV0dXJucyBmdW5jdGlvbicpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoKXsKICB2YXIgeDsKICAKICByZXR1cm4gdHlwZW9mIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjIoKSA9PT0gImZ1bmN0aW9uIikpewogICRQUklOVCgnIzI6IGYyKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with declared variable","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB2YXJpYWJsZSBleGlzdGVuY2Ugb25seQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgpID09PSAidW5kZWZpbmVkIikpewogICRQUklOVCgnIzE6IGYxKCkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMigpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKCkgPT09IHVuZGVmaW5lZCkpewogICRQUklOVCgnIzE6IGYyKCkgPT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking variable existence only","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgdGhlIHZhcmlhYmxlIG9iamVjdCBwcm9wZXJ0eSB3aXRoIGZvcm1hbCBwYXJhbWV0ZXIKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoeCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHR5cGVvZiB4Owp9CgppZighKGYxKCkgPT09ICJ1bmRlZmluZWQiKSl7CiAgJFBSSU5UKCcjMTogZjEoMSkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICB2YXIgeDsKICAKICByZXR1cm4geDsKfQoKaWYoIShmMigpID09PSB1bmRlZmluZWQpKXsKICAkUFJJTlQoJyMxOiBmMigxKSA9PT0gdW5kZWZpbmVkJyk7Cn0KCg==","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb2YgdGhlIHZhcmlhYmxlIG9iamVjdCB3aXRoIHRoZQogKiBuYW1lIG9mIGEgZGVjbGFyZWQgdmFyaWFibGUsIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYW5kIGl0cyBhdHRyaWJ1dGVzCiAqIGFyZSBub3QgY2hhbmdlZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTUuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZXhpc3RlbmNlIG9mIHRoZSB2YXJpYWJsZSBvYmplY3QgcHJvcGVydHkgd2l0aCBmb3JtYWwgcGFyYW1ldGVyCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgxKSA9PT0gIm51bWJlciIpKXsKICAkUFJJTlQoJyMxOiBmMSgxKSA9PT0gIm51bWJlciInKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKHgpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKDEpID09PSAxKSl7CiAgJFBSSU5UKCcjMTogZjIoMSkgPT09IDEnKTsKfQoK","commentary":"If there is already a property of the variable object with the\nname of a declared variable, the value of the property and its attributes\nare not changed","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.2_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKE5hTikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBOYU4gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBUeXBlRXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKHVuZGVmaW5lZCkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdW5kZWZpbmVkID0gMTI7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgVHlwZUVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoT2JqZWN0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBvYmpCYWsgPSBPYmplY3Q7DQoNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE9iamVjdCA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBPYmplY3QgPSBvYmpCYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Object)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIG51bUJhayA9IE51bWJlcjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE51bWJlciA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBOdW1iZXIgPSBudW1CYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Number)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHggPSAxOwogIGZ1bmN0aW9uIGYyKCl7CiAgICByZXR1cm4geDsKICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09IDEpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gMCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7CiAgCiAgdmFyIHggPSAxOwp9CgppZighKGYxKCkgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9CgoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAxKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB2YXIgeCA9IDE7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHdpdGgobXlPYmopewogICAgICByZXR1cm4geDsKICAgIH0KICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09ICJvYmoiKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gIm9iaiIpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7CgogIHZhciB4ID0gMTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB3aXRoKG15T2JqKXsKICAgIHJldHVybiB4OwogIH0KfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQppZiAoIE5hTiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyCmlmICggSW5maW5pdHkgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjogSW5maW5pdHkgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMzCmlmICggdW5kZWZpbmVkID09PSBudWxsICkgewogICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjNAppZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzUKaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHsKICAkRVJST1IoIiM1OiBwYXJzZUludCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzYKaWYgKCBwYXJzZUZsb2F0ID09PSBudWxsICkgewogICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM3CmlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyM4CmlmICggaXNGaW5pdGUgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjODogaXNGaW5pdGUgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM5CmlmICggZGVjb2RlVVJJID09PSBudWxsICkgewogICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzEwCmlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxMQppZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxMTogZW5jb2RlVVJJID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTIKaWYgKCBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMTMKaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE0CmlmICggRnVuY3Rpb24gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTQ6IEZ1bmN0aW9uID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTUKaWYgKCBTdHJpbmcgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE2CmlmICggTnVtYmVyID09PSBudWxsICkgewogICRFUlJPUigiIzE2OiBOdW1iZXIgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxNwppZiAoIEFycmF5ID09PSBudWxsICkgewogICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggRGF0ZSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxODogRGF0ZSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE5CmlmICggUmVnRXhwID09PSBudWxsICkgewogICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMAppZiAoIEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzIxCmlmICggRXZhbEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIxOiBFdmFsRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMgppZiAoIFJhbmdlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMwppZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI0CmlmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjQ6IFN5bnRheEVycm9yID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMjUKaWYgKCBUeXBlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI2CmlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7Cn0KCgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMjcKaWYgKCBNYXRoID09PSBudWxsICkgewogICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7Cn0KCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBpZiAoIE5hTiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE6IE5hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyCiAgaWYgKCBJbmZpbml0eSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI6IEluZmluaXR5ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzMKICBpZiAoIHVuZGVmaW5lZCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzQKICBpZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM0OiBldmFsID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzUKICBpZiAoIHBhcnNlSW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjNTogcGFyc2VJbnQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNgogIGlmICggcGFyc2VGbG9hdCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNwogIGlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM3OiBpc05hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyM4CiAgaWYgKCBpc0Zpbml0ZSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzg6IGlzRmluaXRlID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzkKICBpZiAoIGRlY29kZVVSSSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMAogIGlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTA6IGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMQogIGlmICggZW5jb2RlVVJJID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTE6IGVuY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMgogIGlmICggZW5jb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEzCiAgaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMxMzogT2JqZWN0ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE0CiAgaWYgKCBGdW5jdGlvbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE0OiBGdW5jdGlvbiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNQogIGlmICggU3RyaW5nID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNgogIGlmICggTnVtYmVyID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTY6IEZ1bmN0aW9uID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE3CiAgaWYgKCBBcnJheSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxOAogIGlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzIwOiBCb29sZWFuID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE4CiAgaWYgKCBEYXRlID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTg6IERhdGUgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMTkKICBpZiAoIFJlZ0V4cCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjAKICBpZiAoIEVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjA6IEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIxCiAgaWYgKCBFdmFsRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyMTogRXZhbEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIyCiAgaWYgKCBSYW5nZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjMKICBpZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjM6IFJlZmVyZW5jZUVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzI0CiAgaWYgKCBTeW50YXhFcnJvciA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI0OiBTeW50YXhFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNQogIGlmICggVHlwZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNgogIGlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyNjogVVJJRXJyb3IgPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzI3CiAgaWYgKCBNYXRoID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjc6IE1hdGggPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIFZhbHVlIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxXG4nKwonaWYgKCBOYU4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMlxuJysKJ2lmICggSW5maW5pdHkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyOiBJbmZpbml0eSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMzXG4nKwonaWYgKCB1bmRlZmluZWQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMzOiB1bmRlZmluZWQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIEZ1bmN0aW9uIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyM0XG4nKwonaWYgKCBldmFsID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM1XG4nKwonaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzU6IHBhcnNlSW50ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzZcbicrCidpZiAoIHBhcnNlRmxvYXQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM2OiBwYXJzZUZsb2F0ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzdcbicrCidpZiAoIGlzTmFOID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjOFxuJysKJ2lmICggaXNGaW5pdGUgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM4OiBpc0Zpbml0ZSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM5XG4nKwonaWYgKCBkZWNvZGVVUkkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM5OiBkZWNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTBcbicrCidpZiAoIGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTFcbicrCidpZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzExOiBlbmNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTJcbicrCidpZiAoIGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEyOiBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIENvbnN0cnVjdG9yIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxM1xuJysKJ2lmICggT2JqZWN0ID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxNFxuJysKJ2lmICggRnVuY3Rpb24gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNDogRnVuY3Rpb24gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTVcbicrCidpZiAoIFN0cmluZyA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE1OiBTdHJpbmcgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTZcbicrCidpZiAoIE51bWJlciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE2OiBGdW5jdGlvbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxN1xuJysKJ2lmICggQXJyYXkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNzogQXJyYXkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMThcbicrCidpZiAoIEJvb2xlYW4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxOFxuJysKJ2lmICggRGF0ZSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE4OiBEYXRlID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzE5XG4nKwonaWYgKCBSZWdFeHAgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOTogUmVnRXhwID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIwXG4nKwonaWYgKCBFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMVxuJysKJ2lmICggRXZhbEVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjE6IEV2YWxFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMlxuJysKJ2lmICggUmFuZ2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIyOiBSYW5nZUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIzXG4nKwonaWYgKCBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyNFxuJysKJ2lmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyNDogU3ludGF4RXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjVcbicrCidpZiAoIFR5cGVFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI1OiBUeXBlRXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjZcbicrCidpZiAoIFVSSUVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIE90aGVyIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMyN1xuJysKJ2lmICggTWF0aCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdOYU4nICkgewogICAgJEVSUk9SKCIjMTogJ05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgJEVSUk9SKCIjMTogJ0luZmluaXR5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICd1bmRlZmluZWQnICkgewogICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdldmFsJyApIHsKICAgICRFUlJPUigiIzE6ICdldmFsJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAkRVJST1IoIiMxOiAncGFyc2VJbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ3BhcnNlRmxvYXQnICkgewogICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2lzTmFOJyApIHsKICAgICRFUlJPUigiIzE6ICdpc05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgJEVSUk9SKCIjMTogJ2lzRmluaXRlJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUkknICkgewogICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICRFUlJPUigiIzE6ICdkZWNvZGVVUklDb21wb25lbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAkRVJST1IoIiMxOiAnZW5jb2RlVVJJJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdlbmNvZGVVUklDb21wb25lbnQnICkgewogICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdPYmplY3QnICkgewogICAgJEVSUk9SKCIjMTogJ3Byb3BlcnR5ICdPYmplY3QnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgJEVSUk9SKCIjMTogJ0Z1bmN0aW9uJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdTdHJpbmcnICkgewogICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnTnVtYmVyJyApIHsKICAgICRFUlJPUigiIzE6ICdOdW1iZXInIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICRFUlJPUigiIzE6ICdBcnJheScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnQm9vbGVhbicgKSB7CiAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRGF0ZScgKSB7CiAgICAkRVJST1IoIiMxOiAnRGF0ZScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWdFeHAnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Vycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRXZhbEVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFdmFsRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1JhbmdlRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JlZmVyZW5jZUVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnU3ludGF4RXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1N5bnRheEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1R5cGVFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnVVJJRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdNYXRoJyApIHsKICAgICRFUlJPUigiIzE6ICdNYXRoJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ05hTicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgICAkRVJST1IoIiMxOiAnSW5maW5pdHknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAndW5kZWZpbmVkJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ2V2YWwnICkgewogICAgICAkRVJST1IoIiMxOiAnZXZhbCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwYXJzZUludCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUZsb2F0JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNOYU4nICkgewogICAgICAkRVJST1IoIiMxOiAnaXNOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgICAkRVJST1IoIiMxOiAnaXNGaW5pdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUklDb21wb25lbnQnICkgewogICAgICAkRVJST1IoIiMxOiAnZGVjb2RlVVJJQ29tcG9uZW50JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAgICRFUlJPUigiIzE6ICdlbmNvZGVVUkknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZW5jb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ09iamVjdCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwcm9wZXJ0eSAnT2JqZWN0JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgICAkRVJST1IoIiMxOiAnRnVuY3Rpb24nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnU3RyaW5nJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdOdW1iZXInICkgewogICAgICAkRVJST1IoIiMxOiAnTnVtYmVyJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0FycmF5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Jvb2xlYW4nICkgewogICAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdEYXRlJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0RhdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1JlZ0V4cCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFdmFsRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnRXZhbEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnUmFuZ2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdSZWZlcmVuY2VFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdTeW50YXhFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdTeW50YXhFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnVHlwZUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1VSSUVycm9yJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSAKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ01hdGgnICkgewogICAgICAkRVJST1IoIiMxOiAnTWF0aCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0KICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdOYU5cJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdJbmZpbml0eVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0luZmluaXR5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwndW5kZWZpbmVkXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwndW5kZWZpbmVkXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdldmFsXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZXZhbFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ3BhcnNlSW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VJbnRcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdwYXJzZUZsb2F0XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VGbG9hdFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ2lzTmFOXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnaXNOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdpc0Zpbml0ZVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ2lzRmluaXRlXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdPYmplY3RcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdPYmplY3RcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdGdW5jdGlvblwnKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRnVuY3Rpb25cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTdHJpbmdcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdTdHJpbmdcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdOdW1iZXJcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOdW1iZXJcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdBcnJheVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0FycmF5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnQm9vbGVhblwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0Jvb2xlYW5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdEYXRlXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRGF0ZVwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZ0V4cFwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1JlZ0V4cFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ0Vycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdFdmFsRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdFdmFsRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdSYW5nZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmFuZ2VFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZmVyZW5jZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmVmZXJlbmNlRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTeW50YXhFcnJvclwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1N5bnRheEVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVHlwZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnVHlwZUVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVVJJRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdVUklFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdNYXRoXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnTWF0aFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRBMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSZWN1cnNpdmUgZnVuY3Rpb24gY2FsbAogKi8KCnZhciB5OwoKZnVuY3Rpb24gZihhKXsKICB2YXIgeDsKICAKICBpZiAoYSA9PT0gMSkgCiAgICByZXR1cm4geDsKICBlbHNlIHsKICAgIGlmKHggPT09IHVuZGVmaW5lZCkgewogICAgICB4ID0gMDsKICAgIH0gZWxzZSB7CiAgICAgIHggPSAxOwogICAgfQogICAgcmV0dXJuIGYoMSk7CiAgfQp9Cgp5ID0gZigwKTsKCmlmKCEoeSA9PT0gdW5kZWZpbmVkKSl7CiAgJEVSUk9SKCIjMTogUmVjdXJzaXZlIGZ1bmN0aW9uIGNhbGxzIHNoYXJlcyBleGVjdXRpb24gY29udGV4dCIpOwp9Cgo=","commentary":"Every function call enters a new execution context","description":"Recursive function call","path":"TestCases/ch10/10.4/S10.4A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gU2VxdWVuY2Ugb2YgZnVuY3Rpb24gY2FsbHMKICovCgp2YXIgeTsKCmZ1bmN0aW9uIGYoKXsKICB2YXIgeDsKICAKICBpZih4ID09PSB1bmRlZmluZWQpIHsKICAgIHggPSAwOwogIH0gZWxzZSB7CiAgICB4ID0gMTsKICB9CiAgCiAgcmV0dXJuIHg7Cn0KCnkgPSBmKCk7CnkgPSBmKCk7CgppZighKHkgPT09IDApKXsKICAkRVJST1IoIiMxOiBTZXF1ZW5jZWQgZnVuY3Rpb24gY2FsbHMgc2hhcmVzIGV4ZWN1dGlvbiBjb250ZXh0Iik7Cn0KCg==","commentary":"Every function call enters a new execution context","description":"Sequence of function calls","path":"TestCases/ch10/10.4/S10.4_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHZhciB4ID0gMSwgZmFpbHMKICogQG5vU3RyaWN0CiAqLwoKdmFyIHggPSAxOwoKaWYgKHRoaXMueCAhPT0gMSkgewogICRFUlJPUigiIzE6IHZhcmlhYmxlIHggaXMgYSBwcm9wZXJ0eSBvZiBnbG9iYWwgb2JqZWN0Iik7Cn0KCmlmKGRlbGV0ZSB0aGlzLnggIT09IGZhbHNlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as var x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHggPSAxLCBmYWlscwogKiBAbm9TdHJpY3QKICovCgp4ID0gMTsKCmlmICh0aGlzLnggIT09IDEpIHsKICAkRVJST1IoIiMxOiB2YXJpYWJsZSB4IGlzIGEgcHJvcGVydHkgb2YgZ2xvYmFsIG9iamVjdCIpOwp9CgppZihkZWxldGUgdGhpcy54ICE9PSB0cnVlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dA0KICovDQoNCnZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHRyeSB7DQoNCiAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgIHZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIxIjsNCiAgICBpZihfZXZhbCgiXCdzdHJcJyA9PT0gX18xMF80XzJfMV8xXzEiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgIGV2YWwoIlwnc3RyMVwnID09PSBfXzEwXzRfMl8xXzFfMSIpID09PSB0cnVlKSB7ICAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQogICAgcmV0dXJuIGZhbHNlOw0KICB9IGZpbmFsbHkgew0KICAgIGRlbGV0ZSB0aGlzLl9fMTBfNF8yXzFfMV8xOw0KICB9DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0yLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAobmVzdGVkIGZ1bmN0aW9uKQ0KICovDQoNCnZhciBfXzEwXzRfMl8xXzIgPSAic3RyIjsNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KDQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfMiA9ICJzdHIxIjsNCiAgICAgICAgICAgIGZ1bmN0aW9uIGZvbygpIHsNCiAgICAgICAgICAgICAgICB2YXIgX18xMF80XzJfMV8yID0gInN0cjIiOw0KICAgICAgICAgICAgICAgIGlmKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzIiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8yIikgPT09IHRydWUpIHsgICAvLyBkaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZvbygpOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV8xXzI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (nested function)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0zLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoY2F0Y2ggYmxvY2spDQogKi8NCg0KdmFyIF9fMTBfNF8yXzFfMyA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9ldmFsID0gZXZhbDsNCiAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMSI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIHRocm93ICJlcnJvciI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBjYXRjaCAoZSkgew0KICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMiI7DQogICAgICAgICAgICAgICAgaWYgKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzMiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8zIikgPT09IHRydWUpIHsgIC8vIGRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzM7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (catch block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS00LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAod2l0aCBibG9jaykNCiAqLw0KDQp2YXIgX18xMF80XzJfMV80ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvID0gbmV3IE9iamVjdCgpOw0KICAgICAgICAgICAgby5fXzEwXzRfMl8xXzQgPSAic3RyMiI7DQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNCA9ICJzdHIxIjsNCiAgICAgICAgICAgIHdpdGggKG8pIHsNCiAgICAgICAgICAgICAgICBpZiAoX2V2YWwoIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNCIpID09PSB0cnVlICYmICAvLyBpbmRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIGV2YWwoIlwnc3RyMlwnID09PSBfXzEwXzRfMl8xXzQiKSA9PT0gdHJ1ZSkgeyAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV80Ow0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Indirect call to eval has context set to global context (with block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS01LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoaW5zaWRlIGFub3RoZXIgZXZhbCkNCiAqLw0KDQp2YXIgX18xMF80XzJfMV81ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNSA9ICJzdHIxIjsNCiAgICAgICAgICAgIHZhciByID0gZXZhbCgiXA0KICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOyBcDQogICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzUgPSBcJ3N0cjJcJzsgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZhbChcIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNSBcIikgJiYgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKFwiXCdzdHIyXCcgPT09IF9fMTBfNF8yXzFfNVwiKVwNCiAgICAgICAgICAgICAgICAgICAgICAgICIpOw0KICAgICAgICAgICAgcmV0dXJuIHI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzU7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (inside another eval)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1jLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBEaXJlY3QgdmFsIGNvZGUgaW4gbm9uLXN0cmljdCBtb2RlIC0gY2FuIGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIGNhbGxpbmcgY29udGV4dA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciB4ID0gMDsNCiAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyKCkgew0KICAgICBldmFsKCJ2YXIgeCA9IDEiKTsNCiAgICAgaWYgKHggPT09IDEpDQogICAgICAgIHJldHVybiB0cnVlOw0KICAgICB9ICgpOw0KICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Direct val code in non-strict mode - can instantiate variable in calling context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBTdHJpY3QgbW9kZSBldmFsIGNvZGUgY2Fubm90IGluc3RhbnRpYXRlIGZ1bmN0aW9ucyBpbiB0aGUgdmFyaWFibGUgZW52aXJvbm1lbnQgb2YgdGhlIGNhbGxlciB0byBldmFsDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZXZhbCgiKGZ1bmN0aW9uIGZ1bih4KXsgcmV0dXJuIHggfSkoMTApIik7DQogICAgICAgIHJldHVybiB0eXBlb2YgKGZ1bikgPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIERpcmVjdCBldmFsIGNvZGUgaW4gc3RyaWN0IG1vZGUgLSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdmFyIF8xMF80XzJfM19jXzFfcyA9IDA7DQogIGZ1bmN0aW9uIF8xMF80XzJfM19jXzFfc0Z1bmMoKSB7DQogICAgIGV2YWwoIid1c2Ugc3RyaWN0Jzt2YXIgXzEwXzRfMl8zX2NfMV9zID0gMSIpOw0KICAgICByZXR1cm4gXzEwXzRfMl8zX2NfMV9zPT09MDsNCiAgfSANCiAgcmV0dXJuIF8xMF80XzJfM19jXzFfc0Z1bmMoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Direct eval code in strict mode - cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIENhbGxpbmcgY29kZSBpbiBzdHJpY3QgbW9kZSAtIGV2YWwgY2Fubm90IGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGluZyBjb250ZXh0DQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciBfMTBfNF8yXzNfY18yX3MgPSAwOw0KICBmdW5jdGlvbiBfMTBfNF8yXzNfY18yX3NGdW5jKCkgew0KICAgICAndXNlIHN0cmljdCc7DQogICAgIGV2YWwoInZhciBfMTBfNF8yXzNfY18yX3MgPSAxIik7DQogICAgIHJldHVybiBfMTBfNF8yXzNfY18yX3M9PT0wOw0KICB9DQogIHJldHVybiBfMTBfNF8yXzNfY18yX3NGdW5jKCk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Calling code in strict mode - eval cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0xZ3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgdGhhdCBpbnZva2VkIHRoZSBldmFsIGlmIHRoZSBjb2RlIG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgaXMgc3RyaWN0IGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpldmFsKCJ2YXIgeCA9IDc7Iik7DQp4ID0gOTsNCnRocm93IE5vdEVhcmx5RXJyb3I7DQo=","commentary":"","description":"Strict Mode - eval code cannot instantiate variable in the variable environment of the calling context that invoked the eval if the code of the calling context is strict code","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGV2YWwoImZ1bmN0aW9uIF8xMF80XzJfMV8yX2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfMl9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwgd2hpY2ggaXMgY29udGFpbmVkIGluIHN0cmljdCBtb2RlIGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICAgICAgICBldmFsKCIndXNlIHN0cmljdCc7IGZ1bmN0aW9uIF8xMF80XzJfMV80X2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfNF9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval which is contained in strict mode code","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4yL1MxMC40LjIuMV9BMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyaWN0IGluZGlyZWN0IGV2YWwgc2hvdWxkIG5vdCBsZWFrIHRvcCBsZXZlbAogKiBkZWNsYXJhdGlvbnMgaW50byB0aGUgZ2xvYmFsIHNjb3BlCiAqIEBvbmx5U3RyaWN0CiAqLwoKInVzZSBzdHJpY3QiOwppZiAoISgnZm9vJyBpbiB0aGlzKSkgewogICgxLGV2YWwpKCcidXNlIHN0cmljdCI7IHZhciBmb28gPSA4ODsnKTsKICBpZiAoJ2ZvbycgaW4gdGhpcykgewogICAgJEVSUk9SKCJTdHJpY3QgaW5kaXJlY3QgZXZhbCBsZWFrZWQgYSB0b3AgbGV2ZWwgZGVjbGFyYXRpb24iKTsKICB9Cn0K","commentary":"","description":"Strict indirect eval should not leak top level\ndeclarations into the global scope","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKdmFyIHggPSAxOwp2YXIgeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB4ID0gMTsKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp2YXIgeCA9IDE7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnRoaXMueSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp2YXIgeSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnggPSAxOwp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOyAKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKZnVuY3Rpb24gZigpewogIHZhciBpOwogIHZhciBqOwogIHN0cjEgPSAnJzsKICBzdHIyID0gJyc7CiAgdmFyIHggPSAxOwogIHZhciB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqIEBub1N0cmljdAogKi8KCmZ1bmN0aW9uIGYoKXsKICB2YXIgaTsKICB2YXIgajsKICBzdHIxID0gJyc7CiAgc3RyMiA9ICcnOwoKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQoKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CgogIHRoaXMueCA9IDE7CiAgdGhpcy55ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","noStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICB2YXIgeCA9IDE7CiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIHRoaXMueSA9IDI7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7IAp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCgogIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB2YXIgeCA9IDE7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CiAgCiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHRoaXMueSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB2YXIgeSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHZhciB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB4ID0gMTsKICB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T9.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKDEpID09PSAnbnVtYmVyJyAmJiBiYXIuY2FsbCgxKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (Number)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMzsNCg0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDBncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQppZiAoKCJhYiIucmVwbGFjZSgiYiIsIGYpIT09ImFhIikgfHwgKHghPT11bmRlZmluZWQpKSB7DQogICAgICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMzsNCg0KZnVuY3Rpb24gZigpIHsNCiAgICB4ID0gdGhpczsNCiAgICByZXR1cm4gImEiOw0KfQ0KDQpyZXR1cm4gKGZ1bmN0aW9uKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuICJhYiIucmVwbGFjZSgiYiIsIGYpPT09ImFhIjt9KCkpICYmICh4PT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDFncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCg0KaWYgKCAoIShmdW5jdGlvbigpIHsidXNlIHN0cmljdCI7IHJldHVybiAiYWIiLnJlcGxhY2UoImIiLCBmKT09PSJhYSI7fSgpKSkgfHwgKHghPT1mbkdsb2JhbE9iamVjdCgpKSkgew0KICAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSk9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDJncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KaWYgKCAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSkhPT0iYWEiKSB8fCAoeCE9PXVuZGVmaW5lZCkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpICE9PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpID09PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCnJldHVybiBmKCkgIT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCmlmIChmKCkgPT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZXZhbCgidHlwZW9mIHRoaXMiKSA9PT0gInVuZGVmaW5lZCIpICYmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCnJldHVybiBteV9ldmFsKCJ0aGlzIikgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCmlmIChteV9ldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoc3RyaW5nKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKCcxJykgPT09ICdzdHJpbmcnICYmIGJhci5jYWxsKCcxJykgPT09ICdvYmplY3QnOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"this is not coerced to an object in strict mode (string)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG15X2V2YWwgPSBldmFsOw0KcmV0dXJuIG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG15X2V2YWwgPSBldmFsOw0KaWYgKG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpICkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAodW5kZWZpbmVkKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KICByZXR1cm4gZm9vLmNhbGwodW5kZWZpbmVkKSA9PT0gJ3VuZGVmaW5lZCcgJiYgYmFyLmNhbGwoKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (undefined)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoYm9vbGVhbikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gYmFyKCkNCiAgew0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KDQogIHJldHVybiBmb28uY2FsbCh0cnVlKSA9PT0gJ2Jvb2xlYW4nICYmIGJhci5jYWxsKHRydWUpID09PSAnb2JqZWN0JzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (boolean)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQppZiAoISAoKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICBmdW5jdGlvbiBmKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICBmdW5jdGlvbiBmKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYxKCkgew0KICAgIHZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYxKCkgew0KICAgIHZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICByZXR1cm4gKChmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICByZXR1cm4gKChmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICBmdW5jdGlvbiBmKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICBmdW5jdGlvbiBmKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgIHZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgIHZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoZnVuY3Rpb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9IA0KDQogIGZ1bmN0aW9uIGJhcigpDQogIHsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gZm9vYmFyKCkNCiAgew0KICB9DQoNCiAgcmV0dXJuIGZvby5jYWxsKGZvb2JhcikgPT09ICdmdW5jdGlvbicgJiYgYmFyLmNhbGwoZm9vYmFyKSA9PT0gJ2Z1bmN0aW9uJzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (function)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gKChmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gKChmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQppZiAoISAoKGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KcmV0dXJuIG8uZm9vPT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCnJldHVybiBvLmZvbz09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCmlmIChvLmZvbyE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KcmV0dXJuIHg9PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KaWYgKHghPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0IDogZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9IH0pOw0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQppZiAoby5mb28hPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCnJldHVybiB4PT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCmlmICh4IT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCnJldHVybiBmb28oKT09PXVuZGVmaW5lZDsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCmlmIChmb28oKSE9PXVuZGVmaW5lZCl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZXZhbCgiZigpOyIpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISBldmFsKCJmKCk7Iikpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZm5HbG9iYWxPYmplY3QoKS5mID0gZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKEZ1bmN0aW9uKCJyZXR1cm4gZigpOyIpKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkgIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIChuZXcgRnVuY3Rpb24oInJldHVybiBmKCk7IikpKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghICggKG5ldyBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSkgKCkgKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KcmV0dXJuIGYuYXBwbHkobnVsbCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KaWYgKCEgZi5hcHBseShudWxsKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkodW5kZWZpbmVkKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiBmLmFwcGx5KG8pOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghIGYuYXBwbHkobykpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGYoKSB7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiBmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCmlmIChmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpICE9PSBmbkdsb2JhbE9iamVjdCgpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQpyZXR1cm4gZi5jYWxsKG51bGwpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQppZiAoISBmLmNhbGwobnVsbCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKHVuZGVmaW5lZCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIGYuY2FsbChvKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgZi5jYWxsKG8pKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSA9PT0gZm5HbG9iYWxPYmplY3QoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KaWYgKGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCnJldHVybiBmLmJpbmQobnVsbCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCmlmICghIChmLmJpbmQobnVsbCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKHVuZGVmaW5lZCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gZi5iaW5kKG8pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoZi5iaW5kKG8pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZigpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQpyZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQppZiAoZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgIT09IGZuR2xvYmFsT2JqZWN0KCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmZ1bmN0aW9uIGZvbygpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gZigpO30NCnJldHVybiBmb28oKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmZ1bmN0aW9uIGZvbygpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gZigpO30NCmlmICghIGZvbygpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZXZhbCgiZigpOyIpO30pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZXZhbCgiZigpOyIpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZm5HbG9iYWxPYmplY3QoKS5mID0gZnVuY3Rpb24oKSB7cmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHtyZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7cmV0dXJuIEZ1bmN0aW9uKCJcInVzZSBzdHJpY3RcIjtyZXR1cm4gZigpOyIpKCk7fSkoKSkgKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkgIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBuZXcgRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO3JldHVybiBmKCk7IikoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHtyZXR1cm4gbmV3IEZ1bmN0aW9uKCJcInVzZSBzdHJpY3RcIjtyZXR1cm4gZigpOyIpKCk7fSkoKSkgKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5hcHBseShudWxsKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5hcHBseShudWxsKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpfTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkodW5kZWZpbmVkKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7IH0pKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCmlmICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7fSkoKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbCgpOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbCgpO30pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwobnVsbCk7IH0pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwobnVsbCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpO30pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpO30pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKCkoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKCkoKTsgfSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZChudWxsKSgpOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZChudWxsKSgpOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTsgfSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9gs.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgovKioKICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy9TMTAuNC4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBXaGVuIGNhbGxpbmcgYSBzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIGFzIGEKICogZnVuY3Rpb24sICJ0aGlzIiBzaG91bGQgYmUgYm91bmQgdG8gdW5kZWZpbmVkLgogKiBAb25seVN0cmljdAogKi8KCiJ1c2Ugc3RyaWN0IjsKdmFyIHRoYXQgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpOwppZiAodGhhdCAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogInRoaXMiIGxlYWtlZCBhczogJyArIHRoYXQpOwp9Cgo=","commentary":"","description":"When calling a strict anonymous function as a\nfunction, \"this\" should be bound to undefined.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/S10.4.3_A1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgb2JqZWN0IGlzIGltbXV0YWJsZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICAoZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoImFyZ3VtZW50cyA9IDEwIik7DQogICAgICAgICAgICB9KSgzMCk7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiAoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgY2Fubm90IGJlIGFzc2lnbmVkIHRvIGluIGEgc3RyaWN0IGZ1bmN0aW9uDQogKiBAb25seVN0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCg0KZnVuY3Rpb24gZl8xMF81XzFfZ3MoKXsNCiAgICBhcmd1bWVudHMgPSA3Ow0KfQ0KDQo=","commentary":"","description":"Strict Mode - arguments cannot be assigned to in a strict function","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpcyBpbW11dGFibGUgaW4gZXZhbCdlZCBmdW5jdGlvbnMNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBldmFsKCIoZnVuY3Rpb24gXzEwXzVfN19iXzFfZnVuKCkgeyBhcmd1bWVudHMgPSAxMDt9ICgpKTsiKTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable in eval'ed functions","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpbmRleCBhc3NpZ25tZW50IGlzIGFsbG93ZWQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGZ1bmN0aW9uIF8xMF81XzdfYl8yX2Z1bigpIHsNCiAgICAgICAgICAgIGFyZ3VtZW50c1s3XSA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1s3XSA9PT0gMTI7DQogICAgICAgIH07DQoNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl8yX2Z1bigzMCk7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - arguments object index assignment is allowed","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gQWRkaW5nIHByb3BlcnR5IHRvIHRoZSBhcmd1bWVudHMgb2JqZWN0IHN1Y2Nlc3NmdWwgdW5kZXIgc3RyaWN0IG1vZGUgDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICBmdW5jdGlvbiBfMTBfNV83X2JfM19mdW4oKSB7DQogICAgICAgICAgICBhcmd1bWVudHNbMV0gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHNbMF0gPSAzMCAmJiBhcmd1bWVudHNbMV0gPT09IDEyOw0KICAgICAgICB9Ow0KDQogICAgICAgIHJldHVybiBfMTBfNV83X2JfM19mdW4oMzApOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Adding property to the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRGVsZXRpbmcgcHJvcGVydHkgb2YgdGhlIGFyZ3VtZW50cyBvYmplY3Qgc3VjY2Vzc2Z1bCB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgZnVuY3Rpb24gXzEwXzVfN19iXzRfZnVuKCkgew0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzEgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIGFyZ3VtZW50c1sxXSA9PT0gMTI7DQogICAgICAgICAgICBkZWxldGUgYXJndW1lbnRzWzFdOw0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzIgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIHR5cGVvZiBhcmd1bWVudHNbMV0gPT09ICJ1bmRlZmluZWQiOw0KICAgICAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80XzEgJiYgXzEwXzVfN19iXzRfMjsNCiAgICAgICAgfTsNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80X2Z1bigzMCwgMTIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Deleting property of the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gcmVtYWlucyBzYW1lIGFmdGVyIGNoYW5naW5nIGFjdHVhbCBwYXJhbWV0ZXJzIGluIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICBhID0gMTsgYiA9ICdzdHInOyBjID0gMi4xOw0KICAgIHJldHVybiAoYXJndW1lbnRzWzBdID09PSAxMCAmJiBhcmd1bWVudHNbMV0gPT09ICdzc3MnICYmIGFyZ3VtZW50c1syXSA9PT0gMSk7DQogIH0NCiAgcmV0dXJuIGZvbygxMCwgJ3NzcycsIDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] remains same after changing actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIGNoYW5nZSB3aXRoIGFjdHVhbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgZnVuY3Rpb24gZm9vKGEsYixjKQ0KICB7DQogICAgYSA9IDE7IGIgPSAnc3RyJzsgYyA9IDIuMTsNCiAgICBpZihhcmd1bWVudHNbMF0gPT09IDEgJiYgYXJndW1lbnRzWzFdID09PSAnc3RyJyAmJiBhcmd1bWVudHNbMl0gPT09IDIuMSkNCiAgICAgIHJldHVybiB0cnVlOyAgIA0KICB9DQogIHJldHVybiBmb28oMTAsJ3NzcycsMSk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments[i] change with actual parameters","path":"TestCases/ch10/10.6/10.6-10-c-ii-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gZG9lc24ndCBtYXAgdG8gYWN0dWFsIHBhcmFtZXRlcnMgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsgICAgDQogICAgYXJndW1lbnRzWzBdID0gMTsgYXJndW1lbnRzWzFdID0gJ3N0cic7IGFyZ3VtZW50c1syXSA9IDIuMTsNCiAgICByZXR1cm4gMTAgPT09IGEgJiYgJ3NzcycgPT09IGIgJiYgMSA9PT0gYzsNCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] doesn't map to actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIG1hcCB0byBhY3R1YWwgcGFyYW1ldGVyDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgIGFyZ3VtZW50c1swXSA9IDE7IGFyZ3VtZW50c1sxXSA9ICdzdHInOyBhcmd1bWVudHNbMl0gPSAyLjE7DQogICAgaWYoMSA9PT0gYSAmJiAnc3RyJyA9PT0gYiAmJiAyLjEgPT09IGMpDQogICAgICByZXR1cm4gdHJ1ZTsgICANCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] map to actual parameter","path":"TestCases/ch10/10.6/10.6-10-c-ii-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTEtYi0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgaW5kZXggcHJvcGVydHkgJzAnIGFzIGl0cyBvd24gcHJvcGVydHksIGl0IHNob3VsZGUgYmUgd3JpdGFibGUsIGVudW1lcmFibGUsIGNvbmZpZ3VyYWJsZSBhbmQgZG9lcyBub3QgaW52b2tlIHRoZSBzZXR0ZXIgZGVmaW5lZCBvbiBPYmplY3QucHJvdG90eXBlWzBdIChTdGVwIDExLmIpDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgdmFyIGdldEZ1bmMgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAiMCIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGdldEZ1bmMsDQogICAgICAgICAgICAgICAgc2V0OiBzZXRGdW5jLA0KICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIHZhciBhcmdPYmogPSAoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzIH0pKDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5VmFsdWUgPSBmYWxzZTsNCiAgICAgICAgICAgIHZlcmlmeVZhbHVlID0gKGFyZ09ialswXSA9PT0gMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiMCIgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCIwIikpIHsNCiAgICAgICAgICAgICAgICAgICAgdmVyaWZ5RW51bWVyYWJsZSA9IHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09ialswXSA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmpbMF0gPT09IDEwMDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5Q29uZmlndXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBkZWxldGUgYXJnT2JqWzBdOw0KICAgICAgICAgICAgdmVyaWZ5Q29uZmlndXJhYmxlID0gYXJnT2JqLmhhc093blByb3BlcnR5KCIwIik7DQoNCiAgICAgICAgICAgIHJldHVybiB2ZXJpZnlWYWx1ZSAmJiB2ZXJpZnlXcml0YWJsZSAmJiB2ZXJpZnlFbnVtZXJhYmxlICYmICF2ZXJpZnlDb25maWd1cmFibGUgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbMF07DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has index property '0' as its own property, it shoulde be writable, enumerable, configurable and does not invoke the setter defined on Object.prototype[0] (Step 11.b)","path":"TestCases/ch10/10.6/10.6-11-b-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZWUgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlZTsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing callee property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-12-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMi5qcw0KICogQGRlc2NyaXB0aW9uIGFyZ3VtZW50cy5jYWxsZWUgaGFzIGNvcnJlY3QgYXR0cmlidXRlcw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZWUiKTsNCiAgaWYoZGVzYy5jb25maWd1cmFibGUgPT09IHRydWUgJiYNCiAgICAgZGVzYy5lbnVtZXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLndyaXRhYmxlID09PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ2dldCcpID09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3B1dCcpID09IGZhbHNlKQ0KICAgIHJldHVybiB0cnVlOyAgIA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee has correct attributes","path":"TestCases/ch10/10.6/10.6-12-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZXIgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlcjsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing caller property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-13-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW4gbm9uLXN0cmljdCBtb2RlLCBhcmd1bWVudHMgb2JqZWN0IHNob3VsZCBoYXZlIGl0cyBvd24gJ2NhbGxlZScgcHJvcGVydHkgZGVmaW5lZCAoU3RlcCAxMy5hKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNhbGxlZSIsIHsNCiAgICAgICAgICAgICAgICB2YWx1ZTogMSwNCiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIGFyZ09iaiA9IChmdW5jdGlvbiAoKSB7IHJldHVybiBhcmd1bWVudHMgfSkoKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2ZXJpZnlWYWx1ZSA9IHR5cGVvZiBhcmdPYmouY2FsbGVlID09PSAiZnVuY3Rpb24iOw0KICAgICAgICAgICAgDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09iai5jYWxsZWUgPSAxMDAxOw0KICAgICAgICAgICAgdmVyaWZ5V3JpdGFibGUgPSAoYXJnT2JqLmNhbGxlZSA9PT0gMTAwMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiY2FsbGVlIiAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5jYWxsZWU7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZTsNCiAgICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgICAgIGRlbGV0ZSBPYmplY3QucHJvdG90eXBlLmNhbGxlZTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)","path":"TestCases/ch10/10.6/10.6-13-a-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0yLmpzDQogKiBAZGVzY3JpcHRpb24gQSBkaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgICAgICANCiAgICAgICAgYXJndW1lbnRzLmNhbGxlZS5jYWxsZXIodHJ1ZSk7DQogICAgfQ0KICAgIA0KICAgIHRlc3QxKCk7DQogICAgcmV0dXJuIGNhbGxlZDsgICANCn0NCg0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"A direct call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0zLmpzDQogKiBAZGVzY3JpcHRpb24gQW4gaW5kaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgICAgICANCiAgICAgICB2YXIgZXhwbGljaXQgPSBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcjsNCiAgICAgICBleHBsaWNpdCh0cnVlKTsNCiAgICB9DQogICAgDQogICAgdGVzdDEoKTsNCiAgICByZXR1cm4gY2FsbGVkOyAgIA0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"An indirect call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVyIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZXI7DQogIH0NCiAgY2F0Y2ggKGUpIHsNCiAgICBpZihlIGluc3RhbmNlb2YgVHlwZUVycm9yKQ0KICAgICAgcmV0dXJuIHRydWU7DQogIH0NCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Accessing caller property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVyIik7DQogIHJldHVybiBkZXNjIT09IHVuZGVmaW5lZDsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"arguments.caller exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgIA0KICAndXNlIHN0cmljdCc7ICAgIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZXIiKTsNCiAgDQogIHJldHVybiAoZGVzYy5jb25maWd1cmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCd2YWx1ZScpID09IGZhbHNlICAmJiANCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdzZXQnKSA9PSB0cnVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgDQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.caller is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVlIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQogIGNhdGNoIChlKSB7DQogICAgcmV0dXJuIChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Accessing callee property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVlIik7DQogIHJldHVybiBkZXNjICE9PSB1bmRlZmluZWQ7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.callee is exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogICd1c2Ugc3RyaWN0JzsgICAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImNhbGxlZSIpOw0KICByZXR1cm4gKGRlc2MuY29uZmlndXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgPT0gZmFsc2UgJiYNCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3NldCcpID09IHRydWUpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSAnY2FsbGVlJyBleGlzdHMgYW5kICdjYWxsZXInIGV4aXN0cyB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBhcmdPYmogPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzOw0KICAgICAgICB9ICgpOw0KICAgICAgICByZXR1cm4gYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKSAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlciIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - 'callee' exists and 'caller' exists under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVyJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfYl8xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9iXzEpICYmIF8xMF82XzE0X2JfMSA9PT0gImNhbGxlciIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZXIiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'caller' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZXInIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlciA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVlJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfY18xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9jXzEpICYmIF8xMF82XzE0X2NfMSA9PT0gImNhbGxlZSIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'callee' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZWUnIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlZSA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbiwgYnV0IGRvZXMgbm90IHRocm93IGFuIGVhcmx5IGVycm9yDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGZfMTBfNl8xX2dzKCl7DQogICAgcmV0dXJuIGFyZ3VtZW50cy5jYWxsZWU7DQp9DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function, but does not throw an early error","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbg0KICogQG9ubHlTdHJpY3QNCiAqIEBuZWdhdGl2ZSAuDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZl8xMF82XzFfZ3MoKXsNCiAgICByZXR1cm4gYXJndW1lbnRzLmNhbGxlZTsNCn0NCmZfMTBfNl8xX2dzKCk7DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function","negative":".","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNS0xLmpzDQogKiBAZGVzY3JpcHRpb24gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBBcmd1bWVudHMgaXMgc2V0IHRvIE9iamVjdCBwcm90b3R5cGUgb2JqZWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgaWYoT2JqZWN0LmdldFByb3RvdHlwZU9mKGFyZ3VtZW50cykgPT09IE9iamVjdC5nZXRQcm90b3R5cGVPZih7fSkpDQogICAgcmV0dXJuIHRydWU7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"[[Prototype]] property of Arguments is set to Object prototype object","path":"TestCases/ch10/10.6/10.6-5-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0xLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCBwcm9wZXJ0eSBvZiBhcmd1bWVudHMgb2JqZWN0IGV4aXN0cw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJsZW5ndGgiKTsNCiAgcmV0dXJuIGRlc2MgIT09IHVuZGVmaW5lZA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length property of arguments object exists","path":"TestCases/ch10/10.6/10.6-6-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0yLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBoYXMgY29ycmVjdCBhdHRyaWJ1dGVzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImxlbmd0aCIpOw0KICBpZihkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gdHJ1ZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2Mud3JpdGFibGUgPT09IHRydWUgKQ0KICAgIHJldHVybiB0cnVlOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object has correct attributes","path":"TestCases/ch10/10.6/10.6-6-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0zLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBleGlzdHMNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgdmFyIGFyZ3VtZW50cz0gdW5kZWZpbmVkOw0KCXJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBhcmd1bWVudHMubGVuZ3RoICE9PSB1bmRlZmluZWR9KSgpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object for 0 argument function exists","path":"TestCases/ch10/10.6/10.6-6-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi00LmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBjYWxsIGlzIDAgZXZlbiB3aXRoIGZvcm1hbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgIHZhciBhcmd1bWVudHM9IHVuZGVmaW5lZDsNCglyZXR1cm4gKGZ1bmN0aW9uIChhLGIsYykge3JldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAwfSkoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"'length' property of arguments object for 0 argument function call is 0 even with formal parameters","path":"TestCases/ch10/10.6/10.6-6-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNy0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgbGVuZ3RoIGFzIGl0cyBvd24gcHJvcGVydHkgYW5kIGRvZXMgbm90IGludm9rZSB0aGUgc2V0dGVyIGRlZmluZWQgb24gT2JqZWN0LnByb3RvdHlwZS5sZW5ndGggKFN0ZXAgNykNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdmFyIGRhdGEgPSAiZGF0YSI7DQogICAgICAgICAgICB2YXIgZ2V0RnVuYyA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gMTI7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAibGVuZ3RoIiwgew0KICAgICAgICAgICAgICAgIGdldDogZ2V0RnVuYywNCiAgICAgICAgICAgICAgICBzZXQ6IHNldEZ1bmMsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2YXIgYXJnT2JqID0gKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGFyZ3VtZW50cyB9KSgpOw0KICAgICAgICAgICAgdmVyaWZ5VmFsdWUgPSAoYXJnT2JqLmxlbmd0aCA9PT0gMCk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlXcml0YWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgYXJnT2JqLmxlbmd0aCA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmoubGVuZ3RoID09PSAxMDAxKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gYXJnT2JqKSB7DQogICAgICAgICAgICAgICAgaWYgKHAgPT09ICJsZW5ndGgiKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5sZW5ndGg7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZSAmJiBkYXRhID09PSAiZGF0YSI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgT2JqZWN0LnByb3RvdHlwZS5sZW5ndGg7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)","path":"TestCases/ch10/10.6/10.6-7-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBXaGVuIGNvbnRyb2wgZW50ZXJzIGFuIGV4ZWN1dGlvbiBjb250ZXh0IGZvciBmdW5jdGlvbiBjb2RlLAogKiBhbiBhcmd1bWVudHMgb2JqZWN0IGlzIGNyZWF0ZWQgYW5kIGluaXRpYWxpc2VkCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMS5qcwogKiBAZGVzY3JpcHRpb24gRXhlY3V0aW5nIGZ1bmN0aW9uIHdoaWNoIHVzZXMgYXJndW1lbnRzIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYxKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYyKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"When control enters an execution context for function code,\nan arguments object is created and initialised","description":"Executing function which uses arguments object","path":"TestCases/ch10/10.6/S10.6_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdmFsdWUgb2YgdGhlIGludGVybmFsIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgdGhlCiAqIGNyZWF0ZWQgYXJndW1lbnRzIG9iamVjdCBpcyB0aGUgb3JpZ2luYWwgT2JqZWN0IHByb3RvdHlwZSBvYmplY3QsIHRoZSBvbmUKICogdGhhdCBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBPYmplY3QucHJvdG90eXBlCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZT09PU9iamVjdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTsKfQp0cnl7CiAgaWYoZjEoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMxOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTt9Owp0cnl7CiAgaWYoZjIoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMyOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzI6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"The value of the internal [[Prototype]] property of the\ncreated arguments object is the original Object prototype object, the one\nthat is the initial value of Object.prototype","description":"Checking arguments.constructor.prototype===Object.prototype","path":"TestCases/ch10/10.6/S10.6_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.callee property","path":"TestCases/ch10/10.6/S10.6_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJjYWxsZWUiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgY2FsbGVlIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAiY2FsbGVlIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.callee property fails","path":"TestCases/ch10/10.6/S10.6_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMuY2FsbGVlIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiAoZGVsZXRlIGFyZ3VtZW50cy5jYWxsZWUpOwp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBjYWxsZWUgaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmNhbGxlZSk7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.callee property fails","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5jYWxsZWUgcHJvcGVydHkKICogQG5vU3RyaWN0CiAqLwoKdmFyIHN0ciA9ICJzb21ldGhpbmcgZGlmZmVyZW50IjsKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgYXJndW1lbnRzLmNhbGxlZSA9IHN0cjsKICByZXR1cm4gYXJndW1lbnRzOwp9Cgp0cnl7CiAgaWYoZjEoKS5jYWxsZWUgIT09IHN0cil7CiAgICAkRVJST1IoIiMxOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IFJlYWRPbmx5IH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgICBhcmd1bWVudHMuY2FsbGVlID0gc3RyOwogICAgcmV0dXJuIGFyZ3VtZW50czsKICB9CnRyeXsKICBpZihmMigpLmNhbGxlZSAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgY2FsbGVlIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Overriding arguments.callee property","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBjYWxsZWUgaXMgdGhlCiAqIEZ1bmN0aW9uIG9iamVjdCBiZWluZyBleGVjdXRlZAogKgogKiBAcGF0aCBjaDEwLzEwLjYvUzEwLjZfQTQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHRoYXQgYXJndW1lbnRzLmNhbGxlZSA9PT0gZnVuY3Rpb24gb2JqZWN0CiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuY2FsbGVlOwp9Cgp0cnl7CiAgaWYoZjEgIT09IGYxKCkpewogICAgJEVSUk9SKCcjMTogYXJndW1lbnRzLmNhbGxlZSA9PT0gZjEnKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZTt9OwoKdHJ5ewogIGlmKGYyICE9PSBmMigpKXsKICAgICRFUlJPUignIzI6IGFyZ3VtZW50cy5jYWxsZWUgPT09IGYyJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBleGlzdHMiKTsKfQoK","commentary":"The initial value of the created property callee is the\nFunction object being executed","description":"Checking that arguments.callee === function object","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJsZW5ndGgiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAibGVuZ3RoIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGxlbmd0aCBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYyKCkpewogICAgJEVSUk9SKCIjMjogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5sZW5ndGggcHJvcGVydHkKICovCgp2YXIgc3RyID0gInNvbWV0aGluZyBkaWZmZXJlbnQiOwovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICBhcmd1bWVudHMubGVuZ3RoID0gc3RyOwogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICBpZihmMSgpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICAgIGFyZ3VtZW50cy5sZW5ndGggPSBzdHI7CiAgICByZXR1cm4gYXJndW1lbnRzOwogIH07CnRyeXsKICBpZihmMigpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Overriding arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBsZW5ndGggaXMgdGhlIG51bWJlcgogKiBvZiBhY3R1YWwgcGFyYW1ldGVyIHZhbHVlcyBzdXBwbGllZCBieSB0aGUgY2FsbGVyCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNi5qcwogKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGZ1bmN0aW9uLCB0aGF0IHJldHVybmVkIGFyZ3VtZW50cy5sZW5ndGgKICovCgpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMubGVuZ3RoOwp9CgovL0NIRUNLIzEKaWYoIShmMSgpID09PSAwKSl7CiAgJEVSUk9SKCcjMTogYXJndW1lbnQubGVuZ3RoID09PSAwJyk7Cn0KCi8vQ0hFQ0sjMgppZighKGYxKDApID09PSAxKSl7CiAgJEVSUk9SKCcjMjogYXJndW1lbnQubGVuZ3RoID09PSAxJyk7Cn0KCi8vQ0hFQ0sjMwppZighKGYxKDAsIDEpID09PSAyKSl7CiAgJEVSUk9SKCcjMzogYXJndW1lbnQubGVuZ3RoID09PSAyJyk7Cn0KCi8vQ0hFQ0sjNAppZighKGYxKDAsIDEsIDIpID09PSAzKSl7CiAgJEVSUk9SKCcjNDogYXJndW1lbnQubGVuZ3RoID09PSAzJyk7Cn0KCi8vQ0hFQ0sjNQppZighKGYxKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjNTogYXJndW1lbnQubGVuZ3RoID09PSA0Jyk7Cn0KCnZhciBmMiA9IGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fTsKCi8vQ0hFQ0sjNgppZighKGYyKCkgPT09IDApKXsKICAkRVJST1IoJyM2OiBhcmd1bWVudC5sZW5ndGggPT09IDAnKTsKfQoKLy9DSEVDSyM3CmlmKCEoZjIoMCkgPT09IDEpKXsKICAkRVJST1IoJyM3OiBhcmd1bWVudC5sZW5ndGggPT09IDEnKTsKfQoKLy9DSEVDSyM4CmlmKCEoZjIoMCwgMSkgPT09IDIpKXsKICAkRVJST1IoJyM4OiBhcmd1bWVudC5sZW5ndGggPT09IDInKTsKfQoKLy9DSEVDSyM5CmlmKCEoZjIoMCwgMSwgMikgPT09IDMpKXsKICAkRVJST1IoJyM5OiBhcmd1bWVudC5sZW5ndGggPT09IDMnKTsKfQoKLy9DSEVDSyMxMAppZighKGYyKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjMTA6IGFyZ3VtZW50Lmxlbmd0aCA9PT0gNCcpOwp9Cgo=","commentary":"The initial value of the created property length is the number\nof actual parameter values supplied by the caller","description":"Create function, that returned arguments.length","path":"TestCases/ch10/10.6/S10.6_A6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHZXQgYXJndW1lbnRzIG9mIGZ1bmN0aW9uCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNy5qcwogKiBAZGVzY3JpcHRpb24gVXNlIHByb3BlcnR5IGFyZ3VtZW50cwogKi8KCmZ1bmN0aW9uIGYxKCkgewogIHJldHVybiBhcmd1bWVudHM7Cn0KICAKLy9DSEVDSyMxLTUKZm9yKHZhciBpID0gMTsgaSA8IDU7IGkrKyl7ICAKaWYgKGYxKDEsMiwzLDQsNSlbaV0gIT09IChpKzEpKQogICRFUlJPUigiIyIraSsiOiBSZXR1cm5pbmcgZnVuY3Rpb24ncyBhcmd1bWVudHMgd29yayB3cm9uZywgZjEoMSwyLDMsNCw1KVsiK2krIl0gIT09ICIrKGkrMSkpOwp9Cgo=","commentary":"Get arguments of function","description":"Use property arguments","path":"TestCases/ch10/10.6/S10.6_A7.js"}]}} \ No newline at end of file
+{"testsCollection":{"name":"Chapter - ch10","numTests":"372","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBEZWZpbmluZyBmdW5jdGlvbiBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24KICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gMTsKfQppZih0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIicpOwoK","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Defining function by a FunctionDeclaration","path":"TestCases/ch10/10.1/S10.1.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbgogKi8KCi8vQ0hFQ0sjMQp2YXIgeD1mdW5jdGlvbiBmMSgpe3JldHVybiAxO30oKTsKaWYoeCE9PTEpCiAgJEVSUk9SKCcjMTogQ3JlYXRlIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwoKLy9DSEVDSyMyCnZhciB5PWZ1bmN0aW9uICAoKXtyZXR1cm4gMjt9KCk7CmlmKHkhPT0yKXsKICAkRVJST1IoJyMyOiBDcmVhdGUgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwp9CgovL0NIRUNLIzIKdmFyIHogPSAoZnVuY3Rpb24oKXtyZXR1cm4gMzt9KSgpOwppZih6IT09Myl7CiAgJEVSUk9SKCcjMzogQ3JlYXRlIGFuIGFub255bW91cyBmdW5jdGlvbiBkeW5hbWljYWxseSBlaXRoZXIgYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gd3JhcHBlZCBpbiBhIGdyb3VwIG9wZXJhdG9yJyk7Cn0KCg==","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using a FunctionExpression","path":"TestCases/ch10/10.1/S10.1.1_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyB0aGUgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0IGFzIGEgY29uc3RydWN0b3IKICovCgovL0NIRUNLIzEKdmFyIHg9bmV3IGZ1bmN0aW9uIGYxKCl7cmV0dXJuIDE7fTsKaWYodHlwZW9mKHguY29uc3RydWN0b3IpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoeC5jb25zdHJ1Y3RvcikhPT0iZnVuY3Rpb24iJyk7Cgo=","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using the built-in Function object as a constructor","path":"TestCases/ch10/10.1/S10.1.1_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIEZ1bmN0aW9uIG9iamVjdHMuIEludGVybmFsIGZ1bmN0aW9ucwogKiBhcmUgYnVpbHQtaW4gb2JqZWN0cyBvZiB0aGUgbGFuZ3VhZ2UsIHN1Y2ggYXMgcGFyc2VJbnQgYW5kIE1hdGguZXhwCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlcyBvZiBwYXJzZUludCBhbmQgTWF0aC5leHAKICovCgovL0NIRUNLIzEKaWYodHlwZW9mKE1hdGguZXhwKSE9PSJmdW5jdGlvbiIpCiAgJEVSUk9SKCcjMTogdHlwZW9mKE1hdGguZXhwKDEwKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKE1hdGguZXhwKCkpKTsKCi8vQ0hFQ0sjMgppZih0eXBlb2YocGFyc2VJbnQpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMyOiB0eXBlb2YocGFyc2VJbnQoKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKHBhcnNlSW50KCkpKTsKICAKCg==","commentary":"There are two types of Function objects. Internal functions\nare built-in objects of the language, such as parseInt and Math.exp","description":"Checking types of parseInt and Math.exp","path":"TestCases/ch10/10.1/S10.1.1_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBmdW5jdGlvbiBwYXJhbWV0ZXIgaXMgcG9zc2libGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKGEpewogIGRlbGV0ZSBhOwogIHJldHVybiBhOwp9CmlmIChmMSgxKSAhPT0gMSkKICAkRVJST1IoJyMxOiBGdW5jdGlvbiBwYXJhbWV0ZXIgd2FzIGRlbGV0ZWQnKTsKCgo=","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking if deleting function parameter is possible","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW50aW9uIHdoaWNoIHJldHVybnMgcHJvcGVydHkgImFyZ3VtZW50cyIKICovCgp2YXIgQVJHX1NUUklORyA9ICJ2YWx1ZSBvZiB0aGUgYXJndW1lbnQgcHJvcGVydHkiOwoKZnVuY3Rpb24gZjEoKSB7CiAgdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuYXJndW1lbnRzID0gQVJHX1NUUklORzsKICByZXR1cm4gYXJndW1lbnRzOwp9CiAgCi8vQ0hFQ0sjMQppZiAoKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGggIT09IDUpCiAgJEVSUk9SKCcjMTogKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGg9PT01LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMiAgCmlmICgobmV3IGYxKDEsMiwzLDQsNSkpWzNdICE9PSA0KQogICRFUlJPUignIzI6IChuZXcgZjEoMSwyLDMsNCw1KSlbM109PT00LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMwp2YXIgeCA9IG5ldyBmMSgxLDIsMyw0LDUpOyAKaWYgKGRlbGV0ZSB4WzNdICE9PSB0cnVlKQogICRFUlJPUignIzMuMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0nKTsKICAKaWYgKHhbM10gPT09IDQpCiAgJEVSUk9SKCcjMy4yOiBGdW5jdGlvbiBwYXJhbWV0ZXJzIGhhdmUgYXR0cmlidXRlIHtEb250RGVsZXRlfScpOwoK","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking funtion which returns property \"arguments\"","path":"TestCases/ch10/10.1/S10.1.6_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW5jdGlvbiB3aGljaCByZXR1cm5zICJ0aGlzIgogKiBAbm9TdHJpY3QKICovCgpmdW5jdGlvbiBmMSgpIHsKICBpZiAoZGVsZXRlIGFyZ3VtZW50cykgewogICAgJEVSUk9SKCIjMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0iICsgYXJndW1lbnRzKTsKICB9CiAgcmV0dXJuIGFyZ3VtZW50czsKfQoKZjEoKTsKCg==","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking function which returns \"this\"","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdGhpcyB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhlY3V0aW9uY29udGV4dCBpcyBpbW11dGFibGUKICoKICogQHBhdGggY2gxMC8xMC4xL1MxMC4xLjdfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIGRlbGV0aW5nICJ0aGlzIiBmYWlscwogKi8KCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIHRoaXMgIT09IHRydWUpCiAgJEVSUk9SKCcjMTogVGhlIHRoaXMgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGFuIGV4ZWN1dGlvbmNvbnRleHQgaXMgaW1tdXRhYmxlLiBBY3R1YWw6IHRoaXMgd2FzIGRlbGV0ZWQnKTsKICAKCg==","commentary":"The this value associated with an executioncontext is immutable","description":"Checking if deleting \"this\" fails","path":"TestCases/ch10/10.1/S10.1.7_A1_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAndXNlICBzdHJpY3QnOyB3aGljaCBjb250YWlucyB0d28gc3BhY2UgYmV0d2VlbiAndXNlJyBhbmQgJ3N0cmljdCcNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2UgIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is 'use strict'; which contains two space between 'use' and 'strict'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVXNlIFN0cmljdCBEaXJlY3RpdmUgUHJvbG9ndWUgaXMgJydVU0UgU1RSSUNUJzsnIGluIHdoaWNoIGFsbCBjaGFyYWN0ZXJzIGFyZSB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVU0UgU1RSSUNUIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''USE STRICT';' in which all characters are uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBjb2RlIHdpdGggYSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoIid1c2Ugc3RyaWN0JzsgdmFyIHB1YmxpYyA9IDE7IHZhciBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9IDI7Iik7DQoNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvciAmJiB0eXBlb2YgcHVibGljID09PSAidW5kZWZpbmVkIiAmJg0KICAgICAgICAgICAgICAgIHR5cGVvZiBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9PT0gInVuZGVmaW5lZCI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Eval code is strict code with a Use Strict Directive at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgJ3VzZSBzdHJpY3QnOyB2YXIgYW5vdGhlclZhcmlhYmxlTm90UmVzZXJ2ZVdvcmQgPSAyOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgdmFyIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID0gMjsgJ3VzZSBzdHJpY3QnOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGNhbGwgdG8gZXZhbCBmdW5jdGlvbiBpcyBjb250YWluZWQgaW4gYSBTdHJpY3QgTW9kZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgJ3VzZSBzdHJpY3QnOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The call to eval function is contained in a Strict Mode block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGlzIHN0cmljdCBmdW5jdGlvbiBjb2RlIGlmIEZ1bmN0aW9uRGVjbGFyYXRpb24gaXMgY29udGFpbmVkIGluIHVzZSBzdHJpY3QNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a FunctionDeclaration is strict function code if FunctionDeclaration is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkV4cHJlc3Npb24gaXMgc3RyaWN0IGZ1bmN0aW9uIGNvZGUgaWYgRnVuY3Rpb25FeHByZXNzaW9uIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0DQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a FunctionExpression is strict function code if FunctionExpression is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgicHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDExOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB2YXIgdGVtcCA9IG9iai5hY2NQcm9wZXJ0eSA9PT0gMTE7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgImFjY1Byb3BlcnR5Iiwgew0KICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yICYmIGRhdGEgPT09ICJkYXRhIjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBmdW5jdGlvbiBmdW4oKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0Ig0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCAiYWNjUHJvcGVydHkiLCB7DQogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciB0ZW1wID0gb2JqLmFjY1Byb3BlcnR5ID09PSAxMTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICB2YXIgZGF0YSA9ICJkYXRhIjsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KDQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jayhnZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoInB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIHJldHVybiBvYmouYWNjUHJvcGVydHkgPT09IDExICYmIHB1YmxpYyA9PT0gMTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears in the middle of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jayhzZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIHZhciBkYXRhOw0KDQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgdmFyIF8xMF8xXzFfMjhfcyA9IHthOjEsIGE6Mn07DQogICAgICAgICAgICAgICAgZGF0YSA9IHZhbHVlOw0KICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICByZXR1cm4gZGF0YT09PSJvdmVycmlkZURhdGEiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the end of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGJ1aWx0LWluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0IGNvZGUNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIGZ1bk9iaiA9IG5ldyBGdW5jdGlvbigiYSIsICJldmFsKCdwdWJsaWMgPSAxOycpOyIpOw0KICAgICAgICBmdW5PYmooKTsNCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The built-in Function constructor is contained in use strict code","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiDQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJyB1c2Ugc3RyaWN0JzsnIHdoaWNoIHRoZSBmaXJzdCBjaGFyYWN0ZXIgaXMgc3BhY2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICIgdXNlIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KDQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is '' use strict';' which the first character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgIid1c2Ugc3RyaWN0JzsgZXZhbCgncHVibGljID0gMTsnKTsiKTsNCiAgICAgICAgICAgIGZ1bk9iaigpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7ICd1c2Ugc3RyaWN0JzsgYW5vdGhlclZhcmlhYmxlID0gMjsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7IGFub3RoZXJWYXJpYWJsZSA9IDI7ICd1c2Ugc3RyaWN0JzsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QgJzsnIHdoaWNoIHRoZSBsYXN0IGNoYXJhY3RlciBpcyBzcGFjZQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QgIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict ';' which the last character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGNvZGUNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCnZhciBwdWJsaWMgPSAxOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the start of the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIGludGVyZmFjZSA9IDI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgaW50ZXJmYWNlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgZGlyZWN0aXZlIHByb2xvZ3VlDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the directive prologue","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgY29kZQ0KICogQG5vU3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQoidXNlIHN0cmljdCI7DQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ1VzZSBzdHJpY3QnOycgaW4gd2hpY2ggdGhlIGZpcnN0IGNoYXJhY3RlciBpcyB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVc2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''Use strict';' in which the first character is uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgY2FsbGVyIHN1cHBsaWVzIGZld2VyIHBhcmFtZXRlciB2YWx1ZXMgdGhhbiB0aGVyZSBhcmUKICogZm9ybWFsIHBhcmFtZXRlcnMsIHRoZSBleHRyYSBmb3JtYWwgcGFyYW1ldGVycyBoYXZlIHZhbHVlIHVuZGVmaW5lZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTEuanMKICogQGRlc2NyaXB0aW9uIENhbGxpbmcgZnVuY3Rpb24gZXhjbHVkaW5nIGEgZmV3IHBhcmFtZXRlcnMKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoYSwgYil7CiAgcmV0dXJuIChiID09PSB1bmRlZmluZWQpOwp9CmlmKCEoZjEoMSwgMikgPT09IGZhbHNlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSwgMikgPT09IGZhbHNlJyk7Cn0gZWxzZSBpZighKGYxKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSkgPT09IHRydWUnKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKGEsIGIsIGMpewogIHJldHVybiAoYiA9PT0gdW5kZWZpbmVkKSAmJiAoYyA9PT0gdW5kZWZpbmVkKTsKfQppZighKGYyKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMjogZjIoMSwgMikgPT09IHRydWUnKTsKfQoK","commentary":"If the caller supplies fewer parameter values than there are\nformal parameters, the extra formal parameters have value undefined","description":"Calling function excluding a few parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycyBzaGFyZSB0aGUgc2FtZSBuYW1lLCBoZW5jZQogKiB0aGUgc2FtZSBwcm9wZXJ0eSwgdGhlIGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaXMgZ2l2ZW4gdGhlIHZhbHVlIHRoYXQgd2FzCiAqIHN1cHBsaWVkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXIgd2l0aCB0aGlzIG5hbWUKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgaW5pdGlhbGl6ZWQgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywgd2hpY2ggaGF2ZSB0aGUgc2FtZSBuYW1lCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSh4LCB4KSB7CiAgcmV0dXJuIHg7Cn0KaWYoIShmMSgxLCAyKSA9PT0gMikpIHsKICAkRVJST1IoIiMxOiBmMSgxLCAyKSA9PT0gMiIpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoeCwgeCwgeCl7CiAgcmV0dXJuIHgqeCp4Owp9CmlmKCEoZjIoMSwgMiwgMykgPT09IDI3KSl7CiAgJEVSUk9SKCJmMigxLCAyLCAzKSA9PT0gMjciKTsKfQoKLy9DSEVDSyMzCmZ1bmN0aW9uIGYzKHgsIHgpIHsKICByZXR1cm4gJ2EnICsgeDsKfQppZighKGYzKDEsIDIpID09PSAnYTInKSl7CiAgJEVSUk9SKCIjMzogZjMoMSwgMikgPT09ICdhMiciKTsKfQoK","commentary":"If two or more formal parameters share the same name, hence\nthe same property, the corresponding property is given the value that was\nsupplied for the last parameter with this name","description":"Creating functions initialized with two or more formal parameters, which have the same name","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgdmFsdWUgb2YgdGhpcyBsYXN0IHBhcmFtZXRlciAod2hpY2ggaGFzIHRoZSBzYW1lCiAqIG5hbWUgYXMgc29tZSBwcmV2aW91cyBwYXJhbWV0ZXJzIGRvKSB3YXMgbm90IHN1cHBsaWVkIGJ5IHRoZQogKiBjYWxsZXIsIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywKICogdGhhdCBoYXZlIHRoZSBzYW1lIG5hbWUuIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBleGNsdWRpbmcgYSBmZXcgbGFzdCBwYXJhbWV0ZXJzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgsIGEsIGIsIHgpewogIHJldHVybiB4Owp9CmlmKCEoZjEoMSwgMikgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUignIzE6IGYxKDEsIDIpID09PSB1bmRlZmluZWQnKTsKfQoK","commentary":"If the value of this last parameter (which has the same\nname as some previous parameters do) was not supplied by the\ncaller, the value of the corresponding property is undefined","description":"Creating functions with two or more formal parameters,\nthat have the same name. Calling this function excluding a few last parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIHBhc3NlZCBwYXJhbWV0ZXIKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHJldHVybiB4OwoKICBmdW5jdGlvbiB4KCl7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYoIShmMSgpLmNvbnN0cnVjdG9yLnByb3RvdHlwZSA9PT0gRnVuY3Rpb24ucHJvdG90eXBlKSl7CiAgJEVSUk9SKCcjMTogZjEoKSByZXR1cm5zIGZ1bmN0aW9uJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICByZXR1cm4gdHlwZW9mIHg7CgogIGZ1bmN0aW9uIHgoKXsKICAgIHJldHVybiA3OwogIH0KfQppZighKGYyKCkgPT09ICJmdW5jdGlvbiIpKXsKICAkRVJST1IoJyMyOiBmMigpID09PSAiZnVuY3Rpb24iJyk7Cn0KCi8vQ0hFQ0sjMwpmdW5jdGlvbiBmMygpIHsKICByZXR1cm4gdHlwZW9mIGFyZ3VtZW50czsKICBmdW5jdGlvbiBhcmd1bWVudHMoKSB7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYgKCEoZjMoKSA9PT0gImZ1bmN0aW9uIikpewogICRFUlJPUignIzM6IGYzKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with passed parameter","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIGRlY2xhcmVkIHZhcmlhYmxlCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjEoKS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgPT09IEZ1bmN0aW9uLnByb3RvdHlwZSkpewogICRQUklOVCgnIzE6IGYxKCkgcmV0dXJucyBmdW5jdGlvbicpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoKXsKICB2YXIgeDsKICAKICByZXR1cm4gdHlwZW9mIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjIoKSA9PT0gImZ1bmN0aW9uIikpewogICRQUklOVCgnIzI6IGYyKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with declared variable","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB2YXJpYWJsZSBleGlzdGVuY2Ugb25seQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgpID09PSAidW5kZWZpbmVkIikpewogICRQUklOVCgnIzE6IGYxKCkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMigpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKCkgPT09IHVuZGVmaW5lZCkpewogICRQUklOVCgnIzE6IGYyKCkgPT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking variable existence only","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgdGhlIHZhcmlhYmxlIG9iamVjdCBwcm9wZXJ0eSB3aXRoIGZvcm1hbCBwYXJhbWV0ZXIKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoeCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHR5cGVvZiB4Owp9CgppZighKGYxKCkgPT09ICJ1bmRlZmluZWQiKSl7CiAgJFBSSU5UKCcjMTogZjEoMSkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICB2YXIgeDsKICAKICByZXR1cm4geDsKfQoKaWYoIShmMigpID09PSB1bmRlZmluZWQpKXsKICAkUFJJTlQoJyMxOiBmMigxKSA9PT0gdW5kZWZpbmVkJyk7Cn0KCg==","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb2YgdGhlIHZhcmlhYmxlIG9iamVjdCB3aXRoIHRoZQogKiBuYW1lIG9mIGEgZGVjbGFyZWQgdmFyaWFibGUsIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYW5kIGl0cyBhdHRyaWJ1dGVzCiAqIGFyZSBub3QgY2hhbmdlZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTUuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZXhpc3RlbmNlIG9mIHRoZSB2YXJpYWJsZSBvYmplY3QgcHJvcGVydHkgd2l0aCBmb3JtYWwgcGFyYW1ldGVyCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgxKSA9PT0gIm51bWJlciIpKXsKICAkUFJJTlQoJyMxOiBmMSgxKSA9PT0gIm51bWJlciInKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKHgpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKDEpID09PSAxKSl7CiAgJFBSSU5UKCcjMTogZjIoMSkgPT09IDEnKTsKfQoK","commentary":"If there is already a property of the variable object with the\nname of a declared variable, the value of the property and its attributes\nare not changed","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.2_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKE5hTikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBOYU4gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBUeXBlRXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKHVuZGVmaW5lZCkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdW5kZWZpbmVkID0gMTI7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgVHlwZUVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoT2JqZWN0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBvYmpCYWsgPSBPYmplY3Q7DQoNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE9iamVjdCA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBPYmplY3QgPSBvYmpCYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Object)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIG51bUJhayA9IE51bWJlcjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE51bWJlciA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBOdW1iZXIgPSBudW1CYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Number)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHggPSAxOwogIGZ1bmN0aW9uIGYyKCl7CiAgICByZXR1cm4geDsKICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09IDEpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gMCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7CiAgCiAgdmFyIHggPSAxOwp9CgppZighKGYxKCkgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9CgoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAxKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB2YXIgeCA9IDE7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHdpdGgobXlPYmopewogICAgICByZXR1cm4geDsKICAgIH0KICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09ICJvYmoiKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gIm9iaiIpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7CgogIHZhciB4ID0gMTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB3aXRoKG15T2JqKXsKICAgIHJldHVybiB4OwogIH0KfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQppZiAoIE5hTiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyCmlmICggSW5maW5pdHkgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjogSW5maW5pdHkgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMzCmlmICggdW5kZWZpbmVkID09PSBudWxsICkgewogICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjNAppZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzUKaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHsKICAkRVJST1IoIiM1OiBwYXJzZUludCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzYKaWYgKCBwYXJzZUZsb2F0ID09PSBudWxsICkgewogICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM3CmlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyM4CmlmICggaXNGaW5pdGUgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjODogaXNGaW5pdGUgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM5CmlmICggZGVjb2RlVVJJID09PSBudWxsICkgewogICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzEwCmlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxMQppZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxMTogZW5jb2RlVVJJID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTIKaWYgKCBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMTMKaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE0CmlmICggRnVuY3Rpb24gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTQ6IEZ1bmN0aW9uID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTUKaWYgKCBTdHJpbmcgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE2CmlmICggTnVtYmVyID09PSBudWxsICkgewogICRFUlJPUigiIzE2OiBOdW1iZXIgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxNwppZiAoIEFycmF5ID09PSBudWxsICkgewogICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggRGF0ZSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxODogRGF0ZSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE5CmlmICggUmVnRXhwID09PSBudWxsICkgewogICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMAppZiAoIEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzIxCmlmICggRXZhbEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIxOiBFdmFsRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMgppZiAoIFJhbmdlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMwppZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI0CmlmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjQ6IFN5bnRheEVycm9yID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMjUKaWYgKCBUeXBlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI2CmlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7Cn0KCgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMjcKaWYgKCBNYXRoID09PSBudWxsICkgewogICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7Cn0KCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBpZiAoIE5hTiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE6IE5hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyCiAgaWYgKCBJbmZpbml0eSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI6IEluZmluaXR5ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzMKICBpZiAoIHVuZGVmaW5lZCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzQKICBpZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM0OiBldmFsID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzUKICBpZiAoIHBhcnNlSW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjNTogcGFyc2VJbnQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNgogIGlmICggcGFyc2VGbG9hdCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNwogIGlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM3OiBpc05hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyM4CiAgaWYgKCBpc0Zpbml0ZSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzg6IGlzRmluaXRlID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzkKICBpZiAoIGRlY29kZVVSSSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMAogIGlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTA6IGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMQogIGlmICggZW5jb2RlVVJJID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTE6IGVuY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMgogIGlmICggZW5jb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEzCiAgaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMxMzogT2JqZWN0ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE0CiAgaWYgKCBGdW5jdGlvbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE0OiBGdW5jdGlvbiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNQogIGlmICggU3RyaW5nID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNgogIGlmICggTnVtYmVyID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTY6IEZ1bmN0aW9uID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE3CiAgaWYgKCBBcnJheSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxOAogIGlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzIwOiBCb29sZWFuID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE4CiAgaWYgKCBEYXRlID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTg6IERhdGUgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMTkKICBpZiAoIFJlZ0V4cCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjAKICBpZiAoIEVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjA6IEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIxCiAgaWYgKCBFdmFsRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyMTogRXZhbEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIyCiAgaWYgKCBSYW5nZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjMKICBpZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjM6IFJlZmVyZW5jZUVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzI0CiAgaWYgKCBTeW50YXhFcnJvciA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI0OiBTeW50YXhFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNQogIGlmICggVHlwZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNgogIGlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyNjogVVJJRXJyb3IgPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzI3CiAgaWYgKCBNYXRoID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjc6IE1hdGggPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIFZhbHVlIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxXG4nKwonaWYgKCBOYU4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMlxuJysKJ2lmICggSW5maW5pdHkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyOiBJbmZpbml0eSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMzXG4nKwonaWYgKCB1bmRlZmluZWQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMzOiB1bmRlZmluZWQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIEZ1bmN0aW9uIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyM0XG4nKwonaWYgKCBldmFsID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM1XG4nKwonaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzU6IHBhcnNlSW50ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzZcbicrCidpZiAoIHBhcnNlRmxvYXQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM2OiBwYXJzZUZsb2F0ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzdcbicrCidpZiAoIGlzTmFOID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjOFxuJysKJ2lmICggaXNGaW5pdGUgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM4OiBpc0Zpbml0ZSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM5XG4nKwonaWYgKCBkZWNvZGVVUkkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM5OiBkZWNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTBcbicrCidpZiAoIGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTFcbicrCidpZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzExOiBlbmNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTJcbicrCidpZiAoIGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEyOiBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIENvbnN0cnVjdG9yIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxM1xuJysKJ2lmICggT2JqZWN0ID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxNFxuJysKJ2lmICggRnVuY3Rpb24gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNDogRnVuY3Rpb24gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTVcbicrCidpZiAoIFN0cmluZyA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE1OiBTdHJpbmcgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTZcbicrCidpZiAoIE51bWJlciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE2OiBGdW5jdGlvbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxN1xuJysKJ2lmICggQXJyYXkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNzogQXJyYXkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMThcbicrCidpZiAoIEJvb2xlYW4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxOFxuJysKJ2lmICggRGF0ZSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE4OiBEYXRlID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzE5XG4nKwonaWYgKCBSZWdFeHAgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOTogUmVnRXhwID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIwXG4nKwonaWYgKCBFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMVxuJysKJ2lmICggRXZhbEVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjE6IEV2YWxFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMlxuJysKJ2lmICggUmFuZ2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIyOiBSYW5nZUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIzXG4nKwonaWYgKCBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyNFxuJysKJ2lmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyNDogU3ludGF4RXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjVcbicrCidpZiAoIFR5cGVFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI1OiBUeXBlRXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjZcbicrCidpZiAoIFVSSUVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIE90aGVyIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMyN1xuJysKJ2lmICggTWF0aCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdOYU4nICkgewogICAgJEVSUk9SKCIjMTogJ05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgJEVSUk9SKCIjMTogJ0luZmluaXR5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICd1bmRlZmluZWQnICkgewogICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdldmFsJyApIHsKICAgICRFUlJPUigiIzE6ICdldmFsJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAkRVJST1IoIiMxOiAncGFyc2VJbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ3BhcnNlRmxvYXQnICkgewogICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2lzTmFOJyApIHsKICAgICRFUlJPUigiIzE6ICdpc05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgJEVSUk9SKCIjMTogJ2lzRmluaXRlJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUkknICkgewogICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICRFUlJPUigiIzE6ICdkZWNvZGVVUklDb21wb25lbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAkRVJST1IoIiMxOiAnZW5jb2RlVVJJJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdlbmNvZGVVUklDb21wb25lbnQnICkgewogICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdPYmplY3QnICkgewogICAgJEVSUk9SKCIjMTogJ3Byb3BlcnR5ICdPYmplY3QnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgJEVSUk9SKCIjMTogJ0Z1bmN0aW9uJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdTdHJpbmcnICkgewogICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnTnVtYmVyJyApIHsKICAgICRFUlJPUigiIzE6ICdOdW1iZXInIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICRFUlJPUigiIzE6ICdBcnJheScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnQm9vbGVhbicgKSB7CiAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRGF0ZScgKSB7CiAgICAkRVJST1IoIiMxOiAnRGF0ZScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWdFeHAnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Vycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRXZhbEVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFdmFsRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1JhbmdlRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JlZmVyZW5jZUVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnU3ludGF4RXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1N5bnRheEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1R5cGVFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnVVJJRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdNYXRoJyApIHsKICAgICRFUlJPUigiIzE6ICdNYXRoJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ05hTicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgICAkRVJST1IoIiMxOiAnSW5maW5pdHknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAndW5kZWZpbmVkJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ2V2YWwnICkgewogICAgICAkRVJST1IoIiMxOiAnZXZhbCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwYXJzZUludCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUZsb2F0JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNOYU4nICkgewogICAgICAkRVJST1IoIiMxOiAnaXNOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgICAkRVJST1IoIiMxOiAnaXNGaW5pdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUklDb21wb25lbnQnICkgewogICAgICAkRVJST1IoIiMxOiAnZGVjb2RlVVJJQ29tcG9uZW50JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAgICRFUlJPUigiIzE6ICdlbmNvZGVVUkknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZW5jb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ09iamVjdCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwcm9wZXJ0eSAnT2JqZWN0JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgICAkRVJST1IoIiMxOiAnRnVuY3Rpb24nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnU3RyaW5nJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdOdW1iZXInICkgewogICAgICAkRVJST1IoIiMxOiAnTnVtYmVyJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0FycmF5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Jvb2xlYW4nICkgewogICAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdEYXRlJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0RhdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1JlZ0V4cCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFdmFsRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnRXZhbEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnUmFuZ2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdSZWZlcmVuY2VFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdTeW50YXhFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdTeW50YXhFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnVHlwZUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1VSSUVycm9yJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSAKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ01hdGgnICkgewogICAgICAkRVJST1IoIiMxOiAnTWF0aCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0KICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdOYU5cJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdJbmZpbml0eVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0luZmluaXR5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwndW5kZWZpbmVkXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwndW5kZWZpbmVkXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdldmFsXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZXZhbFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ3BhcnNlSW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VJbnRcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdwYXJzZUZsb2F0XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VGbG9hdFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ2lzTmFOXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnaXNOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdpc0Zpbml0ZVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ2lzRmluaXRlXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdPYmplY3RcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdPYmplY3RcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdGdW5jdGlvblwnKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRnVuY3Rpb25cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTdHJpbmdcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdTdHJpbmdcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdOdW1iZXJcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOdW1iZXJcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdBcnJheVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0FycmF5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnQm9vbGVhblwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0Jvb2xlYW5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdEYXRlXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRGF0ZVwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZ0V4cFwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1JlZ0V4cFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ0Vycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdFdmFsRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdFdmFsRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdSYW5nZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmFuZ2VFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZmVyZW5jZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmVmZXJlbmNlRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTeW50YXhFcnJvclwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1N5bnRheEVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVHlwZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnVHlwZUVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVVJJRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdVUklFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdNYXRoXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnTWF0aFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRBMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSZWN1cnNpdmUgZnVuY3Rpb24gY2FsbAogKi8KCnZhciB5OwoKZnVuY3Rpb24gZihhKXsKICB2YXIgeDsKICAKICBpZiAoYSA9PT0gMSkgCiAgICByZXR1cm4geDsKICBlbHNlIHsKICAgIGlmKHggPT09IHVuZGVmaW5lZCkgewogICAgICB4ID0gMDsKICAgIH0gZWxzZSB7CiAgICAgIHggPSAxOwogICAgfQogICAgcmV0dXJuIGYoMSk7CiAgfQp9Cgp5ID0gZigwKTsKCmlmKCEoeSA9PT0gdW5kZWZpbmVkKSl7CiAgJEVSUk9SKCIjMTogUmVjdXJzaXZlIGZ1bmN0aW9uIGNhbGxzIHNoYXJlcyBleGVjdXRpb24gY29udGV4dCIpOwp9Cgo=","commentary":"Every function call enters a new execution context","description":"Recursive function call","path":"TestCases/ch10/10.4/S10.4A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gU2VxdWVuY2Ugb2YgZnVuY3Rpb24gY2FsbHMKICovCgp2YXIgeTsKCmZ1bmN0aW9uIGYoKXsKICB2YXIgeDsKICAKICBpZih4ID09PSB1bmRlZmluZWQpIHsKICAgIHggPSAwOwogIH0gZWxzZSB7CiAgICB4ID0gMTsKICB9CiAgCiAgcmV0dXJuIHg7Cn0KCnkgPSBmKCk7CnkgPSBmKCk7CgppZighKHkgPT09IDApKXsKICAkRVJST1IoIiMxOiBTZXF1ZW5jZWQgZnVuY3Rpb24gY2FsbHMgc2hhcmVzIGV4ZWN1dGlvbiBjb250ZXh0Iik7Cn0KCg==","commentary":"Every function call enters a new execution context","description":"Sequence of function calls","path":"TestCases/ch10/10.4/S10.4_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHZhciB4ID0gMSwgZmFpbHMKICogQG5vU3RyaWN0CiAqLwoKdmFyIHggPSAxOwoKaWYgKHRoaXMueCAhPT0gMSkgewogICRFUlJPUigiIzE6IHZhcmlhYmxlIHggaXMgYSBwcm9wZXJ0eSBvZiBnbG9iYWwgb2JqZWN0Iik7Cn0KCmlmKGRlbGV0ZSB0aGlzLnggIT09IGZhbHNlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as var x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHggPSAxLCBmYWlscwogKiBAbm9TdHJpY3QKICovCgp4ID0gMTsKCmlmICh0aGlzLnggIT09IDEpIHsKICAkRVJST1IoIiMxOiB2YXJpYWJsZSB4IGlzIGEgcHJvcGVydHkgb2YgZ2xvYmFsIG9iamVjdCIpOwp9CgppZihkZWxldGUgdGhpcy54ICE9PSB0cnVlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dA0KICovDQoNCnZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHRyeSB7DQoNCiAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgIHZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIxIjsNCiAgICBpZihfZXZhbCgiXCdzdHJcJyA9PT0gX18xMF80XzJfMV8xXzEiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgIGV2YWwoIlwnc3RyMVwnID09PSBfXzEwXzRfMl8xXzFfMSIpID09PSB0cnVlKSB7ICAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQogICAgcmV0dXJuIGZhbHNlOw0KICB9IGZpbmFsbHkgew0KICAgIGRlbGV0ZSB0aGlzLl9fMTBfNF8yXzFfMV8xOw0KICB9DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0yLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAobmVzdGVkIGZ1bmN0aW9uKQ0KICovDQoNCnZhciBfXzEwXzRfMl8xXzIgPSAic3RyIjsNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KDQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfMiA9ICJzdHIxIjsNCiAgICAgICAgICAgIGZ1bmN0aW9uIGZvbygpIHsNCiAgICAgICAgICAgICAgICB2YXIgX18xMF80XzJfMV8yID0gInN0cjIiOw0KICAgICAgICAgICAgICAgIGlmKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzIiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8yIikgPT09IHRydWUpIHsgICAvLyBkaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZvbygpOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV8xXzI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (nested function)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0zLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoY2F0Y2ggYmxvY2spDQogKi8NCg0KdmFyIF9fMTBfNF8yXzFfMyA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9ldmFsID0gZXZhbDsNCiAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMSI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIHRocm93ICJlcnJvciI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBjYXRjaCAoZSkgew0KICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMiI7DQogICAgICAgICAgICAgICAgaWYgKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzMiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8zIikgPT09IHRydWUpIHsgIC8vIGRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzM7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (catch block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS00LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAod2l0aCBibG9jaykNCiAqLw0KDQp2YXIgX18xMF80XzJfMV80ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvID0gbmV3IE9iamVjdCgpOw0KICAgICAgICAgICAgby5fXzEwXzRfMl8xXzQgPSAic3RyMiI7DQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNCA9ICJzdHIxIjsNCiAgICAgICAgICAgIHdpdGggKG8pIHsNCiAgICAgICAgICAgICAgICBpZiAoX2V2YWwoIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNCIpID09PSB0cnVlICYmICAvLyBpbmRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIGV2YWwoIlwnc3RyMlwnID09PSBfXzEwXzRfMl8xXzQiKSA9PT0gdHJ1ZSkgeyAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV80Ow0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Indirect call to eval has context set to global context (with block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS01LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoaW5zaWRlIGFub3RoZXIgZXZhbCkNCiAqLw0KDQp2YXIgX18xMF80XzJfMV81ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNSA9ICJzdHIxIjsNCiAgICAgICAgICAgIHZhciByID0gZXZhbCgiXA0KICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOyBcDQogICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzUgPSBcJ3N0cjJcJzsgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZhbChcIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNSBcIikgJiYgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKFwiXCdzdHIyXCcgPT09IF9fMTBfNF8yXzFfNVwiKVwNCiAgICAgICAgICAgICAgICAgICAgICAgICIpOw0KICAgICAgICAgICAgcmV0dXJuIHI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzU7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (inside another eval)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1jLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBEaXJlY3QgdmFsIGNvZGUgaW4gbm9uLXN0cmljdCBtb2RlIC0gY2FuIGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIGNhbGxpbmcgY29udGV4dA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciB4ID0gMDsNCiAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyKCkgew0KICAgICBldmFsKCJ2YXIgeCA9IDEiKTsNCiAgICAgaWYgKHggPT09IDEpDQogICAgICAgIHJldHVybiB0cnVlOw0KICAgICB9ICgpOw0KICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Direct val code in non-strict mode - can instantiate variable in calling context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBTdHJpY3QgbW9kZSBldmFsIGNvZGUgY2Fubm90IGluc3RhbnRpYXRlIGZ1bmN0aW9ucyBpbiB0aGUgdmFyaWFibGUgZW52aXJvbm1lbnQgb2YgdGhlIGNhbGxlciB0byBldmFsDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZXZhbCgiKGZ1bmN0aW9uIGZ1bih4KXsgcmV0dXJuIHggfSkoMTApIik7DQogICAgICAgIHJldHVybiB0eXBlb2YgKGZ1bikgPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIERpcmVjdCBldmFsIGNvZGUgaW4gc3RyaWN0IG1vZGUgLSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdmFyIF8xMF80XzJfM19jXzFfcyA9IDA7DQogIGZ1bmN0aW9uIF8xMF80XzJfM19jXzFfc0Z1bmMoKSB7DQogICAgIGV2YWwoIid1c2Ugc3RyaWN0Jzt2YXIgXzEwXzRfMl8zX2NfMV9zID0gMSIpOw0KICAgICByZXR1cm4gXzEwXzRfMl8zX2NfMV9zPT09MDsNCiAgfSANCiAgcmV0dXJuIF8xMF80XzJfM19jXzFfc0Z1bmMoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Direct eval code in strict mode - cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIENhbGxpbmcgY29kZSBpbiBzdHJpY3QgbW9kZSAtIGV2YWwgY2Fubm90IGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGluZyBjb250ZXh0DQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciBfMTBfNF8yXzNfY18yX3MgPSAwOw0KICBmdW5jdGlvbiBfMTBfNF8yXzNfY18yX3NGdW5jKCkgew0KICAgICAndXNlIHN0cmljdCc7DQogICAgIGV2YWwoInZhciBfMTBfNF8yXzNfY18yX3MgPSAxIik7DQogICAgIHJldHVybiBfMTBfNF8yXzNfY18yX3M9PT0wOw0KICB9DQogIHJldHVybiBfMTBfNF8yXzNfY18yX3NGdW5jKCk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Calling code in strict mode - eval cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0xZ3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgdGhhdCBpbnZva2VkIHRoZSBldmFsIGlmIHRoZSBjb2RlIG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgaXMgc3RyaWN0IGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpldmFsKCJ2YXIgeCA9IDc7Iik7DQp4ID0gOTsNCnRocm93IE5vdEVhcmx5RXJyb3I7DQo=","commentary":"","description":"Strict Mode - eval code cannot instantiate variable in the variable environment of the calling context that invoked the eval if the code of the calling context is strict code","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGV2YWwoImZ1bmN0aW9uIF8xMF80XzJfMV8yX2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfMl9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwgd2hpY2ggaXMgY29udGFpbmVkIGluIHN0cmljdCBtb2RlIGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICAgICAgICBldmFsKCIndXNlIHN0cmljdCc7IGZ1bmN0aW9uIF8xMF80XzJfMV80X2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfNF9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval which is contained in strict mode code","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4yL1MxMC40LjIuMV9BMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyaWN0IGluZGlyZWN0IGV2YWwgc2hvdWxkIG5vdCBsZWFrIHRvcCBsZXZlbAogKiBkZWNsYXJhdGlvbnMgaW50byB0aGUgZ2xvYmFsIHNjb3BlCiAqIEBvbmx5U3RyaWN0CiAqLwoKInVzZSBzdHJpY3QiOwppZiAoISgnZm9vJyBpbiB0aGlzKSkgewogICgxLGV2YWwpKCcidXNlIHN0cmljdCI7IHZhciBmb28gPSA4ODsnKTsKICBpZiAoJ2ZvbycgaW4gdGhpcykgewogICAgJEVSUk9SKCJTdHJpY3QgaW5kaXJlY3QgZXZhbCBsZWFrZWQgYSB0b3AgbGV2ZWwgZGVjbGFyYXRpb24iKTsKICB9Cn0K","commentary":"","description":"Strict indirect eval should not leak top level\ndeclarations into the global scope","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKdmFyIHggPSAxOwp2YXIgeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB4ID0gMTsKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp2YXIgeCA9IDE7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnRoaXMueSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp2YXIgeSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnggPSAxOwp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOyAKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKZnVuY3Rpb24gZigpewogIHZhciBpOwogIHZhciBqOwogIHN0cjEgPSAnJzsKICBzdHIyID0gJyc7CiAgdmFyIHggPSAxOwogIHZhciB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqIEBub1N0cmljdAogKi8KCmZ1bmN0aW9uIGYoKXsKICB2YXIgaTsKICB2YXIgajsKICBzdHIxID0gJyc7CiAgc3RyMiA9ICcnOwoKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQoKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CgogIHRoaXMueCA9IDE7CiAgdGhpcy55ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","noStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICB2YXIgeCA9IDE7CiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIHRoaXMueSA9IDI7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7IAp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCgogIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB2YXIgeCA9IDE7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CiAgCiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHRoaXMueSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB2YXIgeSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHZhciB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB4ID0gMTsKICB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T9.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKDEpID09PSAnbnVtYmVyJyAmJiBiYXIuY2FsbCgxKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (Number)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMzsNCg0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDBncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQppZiAoKCJhYiIucmVwbGFjZSgiYiIsIGYpIT09ImFhIikgfHwgKHghPT11bmRlZmluZWQpKSB7DQogICAgICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCg0KcmV0dXJuIChmdW5jdGlvbigpIHsidXNlIHN0cmljdCI7IHJldHVybiAiYWIiLnJlcGxhY2UoImIiLCBmKT09PSJhYSI7fSgpKSAmJiAoeD09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDFncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KDQpmdW5jdGlvbiBmKCkgew0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQoNCmlmICggKCEoZnVuY3Rpb24oKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiO30oKSkpIHx8ICh4IT09Zm5HbG9iYWxPYmplY3QoKSkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSk9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDJncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KaWYgKCAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSkhPT0iYWEiKSB8fCAoeCE9PXVuZGVmaW5lZCkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpICE9PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpID09PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCnJldHVybiBmKCkgIT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCmlmIChmKCkgPT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZXZhbCgidHlwZW9mIHRoaXMiKSA9PT0gInVuZGVmaW5lZCIpICYmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCnJldHVybiBteV9ldmFsKCJ0aGlzIikgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCmlmIChteV9ldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoc3RyaW5nKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKCcxJykgPT09ICdzdHJpbmcnICYmIGJhci5jYWxsKCcxJykgPT09ICdvYmplY3QnOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"this is not coerced to an object in strict mode (string)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG15X2V2YWwgPSBldmFsOw0KcmV0dXJuIG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG15X2V2YWwgPSBldmFsOw0KaWYgKG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpICkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAodW5kZWZpbmVkKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KICByZXR1cm4gZm9vLmNhbGwodW5kZWZpbmVkKSA9PT0gJ3VuZGVmaW5lZCcgJiYgYmFyLmNhbGwoKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (undefined)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoYm9vbGVhbikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gYmFyKCkNCiAgew0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KDQogIHJldHVybiBmb28uY2FsbCh0cnVlKSA9PT0gJ2Jvb2xlYW4nICYmIGJhci5jYWxsKHRydWUpID09PSAnb2JqZWN0JzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (boolean)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQppZiAoISAoKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoZnVuY3Rpb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9IA0KDQogIGZ1bmN0aW9uIGJhcigpDQogIHsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gZm9vYmFyKCkNCiAgew0KICB9DQoNCiAgcmV0dXJuIGZvby5jYWxsKGZvb2JhcikgPT09ICdmdW5jdGlvbicgJiYgYmFyLmNhbGwoZm9vYmFyKSA9PT0gJ2Z1bmN0aW9uJzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (function)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KcmV0dXJuIG8uZm9vPT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCnJldHVybiBvLmZvbz09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCmlmIChvLmZvbyE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KcmV0dXJuIHg9PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KaWYgKHghPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0IDogZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9IH0pOw0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQppZiAoby5mb28hPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCnJldHVybiB4PT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCmlmICh4IT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCnJldHVybiBmb28oKT09PXVuZGVmaW5lZDsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCmlmIChmb28oKSE9PXVuZGVmaW5lZCl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZXZhbCgiZigpOyIpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISBldmFsKCJmKCk7Iikpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZm5HbG9iYWxPYmplY3QoKS5mID0gZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKEZ1bmN0aW9uKCJyZXR1cm4gZigpOyIpKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkgIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIChuZXcgRnVuY3Rpb24oInJldHVybiBmKCk7IikpKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghICggKG5ldyBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSkgKCkgKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KcmV0dXJuIGYuYXBwbHkobnVsbCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KaWYgKCEgZi5hcHBseShudWxsKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkodW5kZWZpbmVkKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiBmLmFwcGx5KG8pOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghIGYuYXBwbHkobykpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGYoKSB7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiBmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCmlmIChmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpICE9PSBmbkdsb2JhbE9iamVjdCgpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQpyZXR1cm4gZi5jYWxsKG51bGwpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQppZiAoISBmLmNhbGwobnVsbCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKHVuZGVmaW5lZCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIGYuY2FsbChvKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgZi5jYWxsKG8pKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSA9PT0gZm5HbG9iYWxPYmplY3QoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KaWYgKGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCnJldHVybiBmLmJpbmQobnVsbCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCmlmICghIChmLmJpbmQobnVsbCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKHVuZGVmaW5lZCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gZi5iaW5kKG8pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoZi5iaW5kKG8pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZigpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQpyZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQppZiAoZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgIT09IGZuR2xvYmFsT2JqZWN0KCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQpyZXR1cm4gZm9vKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQppZiAoISBmb28oKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpKSApew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO3JldHVybiBmKCk7IikoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7cmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkge3JldHVybiBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmbkdsb2JhbE9iamVjdCgpLmYgPSBmdW5jdGlvbigpICB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gbmV3IEZ1bmN0aW9uKCJcInVzZSBzdHJpY3RcIjtyZXR1cm4gZigpOyIpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7cmV0dXJuIG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKX07DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5hcHBseSh1bmRlZmluZWQpO30pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7IH0pKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCmlmICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7fSkoKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9gs.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgovKioKICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy9TMTAuNC4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBXaGVuIGNhbGxpbmcgYSBzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIGFzIGEKICogZnVuY3Rpb24sICJ0aGlzIiBzaG91bGQgYmUgYm91bmQgdG8gdW5kZWZpbmVkLgogKiBAb25seVN0cmljdAogKi8KCiJ1c2Ugc3RyaWN0IjsKdmFyIHRoYXQgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpOwppZiAodGhhdCAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogInRoaXMiIGxlYWtlZCBhczogJyArIHRoYXQpOwp9Cgo=","commentary":"","description":"When calling a strict anonymous function as a\nfunction, \"this\" should be bound to undefined.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/S10.4.3_A1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgb2JqZWN0IGlzIGltbXV0YWJsZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICAoZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoImFyZ3VtZW50cyA9IDEwIik7DQogICAgICAgICAgICB9KSgzMCk7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiAoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgY2Fubm90IGJlIGFzc2lnbmVkIHRvIGluIGEgc3RyaWN0IGZ1bmN0aW9uDQogKiBAb25seVN0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCg0KZnVuY3Rpb24gZl8xMF81XzFfZ3MoKXsNCiAgICBhcmd1bWVudHMgPSA3Ow0KfQ0KDQo=","commentary":"","description":"Strict Mode - arguments cannot be assigned to in a strict function","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpcyBpbW11dGFibGUgaW4gZXZhbCdlZCBmdW5jdGlvbnMNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBldmFsKCIoZnVuY3Rpb24gXzEwXzVfN19iXzFfZnVuKCkgeyBhcmd1bWVudHMgPSAxMDt9ICgpKTsiKTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable in eval'ed functions","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpbmRleCBhc3NpZ25tZW50IGlzIGFsbG93ZWQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGZ1bmN0aW9uIF8xMF81XzdfYl8yX2Z1bigpIHsNCiAgICAgICAgICAgIGFyZ3VtZW50c1s3XSA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1s3XSA9PT0gMTI7DQogICAgICAgIH07DQoNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl8yX2Z1bigzMCk7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - arguments object index assignment is allowed","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gQWRkaW5nIHByb3BlcnR5IHRvIHRoZSBhcmd1bWVudHMgb2JqZWN0IHN1Y2Nlc3NmdWwgdW5kZXIgc3RyaWN0IG1vZGUgDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICBmdW5jdGlvbiBfMTBfNV83X2JfM19mdW4oKSB7DQogICAgICAgICAgICBhcmd1bWVudHNbMV0gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHNbMF0gPSAzMCAmJiBhcmd1bWVudHNbMV0gPT09IDEyOw0KICAgICAgICB9Ow0KDQogICAgICAgIHJldHVybiBfMTBfNV83X2JfM19mdW4oMzApOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Adding property to the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRGVsZXRpbmcgcHJvcGVydHkgb2YgdGhlIGFyZ3VtZW50cyBvYmplY3Qgc3VjY2Vzc2Z1bCB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgZnVuY3Rpb24gXzEwXzVfN19iXzRfZnVuKCkgew0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzEgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIGFyZ3VtZW50c1sxXSA9PT0gMTI7DQogICAgICAgICAgICBkZWxldGUgYXJndW1lbnRzWzFdOw0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzIgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIHR5cGVvZiBhcmd1bWVudHNbMV0gPT09ICJ1bmRlZmluZWQiOw0KICAgICAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80XzEgJiYgXzEwXzVfN19iXzRfMjsNCiAgICAgICAgfTsNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80X2Z1bigzMCwgMTIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Deleting property of the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gcmVtYWlucyBzYW1lIGFmdGVyIGNoYW5naW5nIGFjdHVhbCBwYXJhbWV0ZXJzIGluIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICBhID0gMTsgYiA9ICdzdHInOyBjID0gMi4xOw0KICAgIHJldHVybiAoYXJndW1lbnRzWzBdID09PSAxMCAmJiBhcmd1bWVudHNbMV0gPT09ICdzc3MnICYmIGFyZ3VtZW50c1syXSA9PT0gMSk7DQogIH0NCiAgcmV0dXJuIGZvbygxMCwgJ3NzcycsIDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] remains same after changing actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIGNoYW5nZSB3aXRoIGFjdHVhbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgZnVuY3Rpb24gZm9vKGEsYixjKQ0KICB7DQogICAgYSA9IDE7IGIgPSAnc3RyJzsgYyA9IDIuMTsNCiAgICBpZihhcmd1bWVudHNbMF0gPT09IDEgJiYgYXJndW1lbnRzWzFdID09PSAnc3RyJyAmJiBhcmd1bWVudHNbMl0gPT09IDIuMSkNCiAgICAgIHJldHVybiB0cnVlOyAgIA0KICB9DQogIHJldHVybiBmb28oMTAsJ3NzcycsMSk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments[i] change with actual parameters","path":"TestCases/ch10/10.6/10.6-10-c-ii-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gZG9lc24ndCBtYXAgdG8gYWN0dWFsIHBhcmFtZXRlcnMgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsgICAgDQogICAgYXJndW1lbnRzWzBdID0gMTsgYXJndW1lbnRzWzFdID0gJ3N0cic7IGFyZ3VtZW50c1syXSA9IDIuMTsNCiAgICByZXR1cm4gMTAgPT09IGEgJiYgJ3NzcycgPT09IGIgJiYgMSA9PT0gYzsNCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] doesn't map to actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIG1hcCB0byBhY3R1YWwgcGFyYW1ldGVyDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgIGFyZ3VtZW50c1swXSA9IDE7IGFyZ3VtZW50c1sxXSA9ICdzdHInOyBhcmd1bWVudHNbMl0gPSAyLjE7DQogICAgaWYoMSA9PT0gYSAmJiAnc3RyJyA9PT0gYiAmJiAyLjEgPT09IGMpDQogICAgICByZXR1cm4gdHJ1ZTsgICANCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] map to actual parameter","path":"TestCases/ch10/10.6/10.6-10-c-ii-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTEtYi0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgaW5kZXggcHJvcGVydHkgJzAnIGFzIGl0cyBvd24gcHJvcGVydHksIGl0IHNob3VsZGUgYmUgd3JpdGFibGUsIGVudW1lcmFibGUsIGNvbmZpZ3VyYWJsZSBhbmQgZG9lcyBub3QgaW52b2tlIHRoZSBzZXR0ZXIgZGVmaW5lZCBvbiBPYmplY3QucHJvdG90eXBlWzBdIChTdGVwIDExLmIpDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgdmFyIGdldEZ1bmMgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAiMCIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGdldEZ1bmMsDQogICAgICAgICAgICAgICAgc2V0OiBzZXRGdW5jLA0KICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIHZhciBhcmdPYmogPSAoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzIH0pKDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5VmFsdWUgPSBmYWxzZTsNCiAgICAgICAgICAgIHZlcmlmeVZhbHVlID0gKGFyZ09ialswXSA9PT0gMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiMCIgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCIwIikpIHsNCiAgICAgICAgICAgICAgICAgICAgdmVyaWZ5RW51bWVyYWJsZSA9IHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09ialswXSA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmpbMF0gPT09IDEwMDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5Q29uZmlndXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBkZWxldGUgYXJnT2JqWzBdOw0KICAgICAgICAgICAgdmVyaWZ5Q29uZmlndXJhYmxlID0gYXJnT2JqLmhhc093blByb3BlcnR5KCIwIik7DQoNCiAgICAgICAgICAgIHJldHVybiB2ZXJpZnlWYWx1ZSAmJiB2ZXJpZnlXcml0YWJsZSAmJiB2ZXJpZnlFbnVtZXJhYmxlICYmICF2ZXJpZnlDb25maWd1cmFibGUgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbMF07DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has index property '0' as its own property, it shoulde be writable, enumerable, configurable and does not invoke the setter defined on Object.prototype[0] (Step 11.b)","path":"TestCases/ch10/10.6/10.6-11-b-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZWUgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlZTsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing callee property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-12-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMi5qcw0KICogQGRlc2NyaXB0aW9uIGFyZ3VtZW50cy5jYWxsZWUgaGFzIGNvcnJlY3QgYXR0cmlidXRlcw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZWUiKTsNCiAgaWYoZGVzYy5jb25maWd1cmFibGUgPT09IHRydWUgJiYNCiAgICAgZGVzYy5lbnVtZXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLndyaXRhYmxlID09PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ2dldCcpID09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3B1dCcpID09IGZhbHNlKQ0KICAgIHJldHVybiB0cnVlOyAgIA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee has correct attributes","path":"TestCases/ch10/10.6/10.6-12-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZXIgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlcjsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing caller property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-13-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW4gbm9uLXN0cmljdCBtb2RlLCBhcmd1bWVudHMgb2JqZWN0IHNob3VsZCBoYXZlIGl0cyBvd24gJ2NhbGxlZScgcHJvcGVydHkgZGVmaW5lZCAoU3RlcCAxMy5hKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNhbGxlZSIsIHsNCiAgICAgICAgICAgICAgICB2YWx1ZTogMSwNCiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIGFyZ09iaiA9IChmdW5jdGlvbiAoKSB7IHJldHVybiBhcmd1bWVudHMgfSkoKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2ZXJpZnlWYWx1ZSA9IHR5cGVvZiBhcmdPYmouY2FsbGVlID09PSAiZnVuY3Rpb24iOw0KICAgICAgICAgICAgDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09iai5jYWxsZWUgPSAxMDAxOw0KICAgICAgICAgICAgdmVyaWZ5V3JpdGFibGUgPSAoYXJnT2JqLmNhbGxlZSA9PT0gMTAwMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiY2FsbGVlIiAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5jYWxsZWU7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZTsNCiAgICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgICAgIGRlbGV0ZSBPYmplY3QucHJvdG90eXBlLmNhbGxlZTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)","path":"TestCases/ch10/10.6/10.6-13-a-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0yLmpzDQogKiBAZGVzY3JpcHRpb24gQSBkaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgICAgICANCiAgICAgICAgYXJndW1lbnRzLmNhbGxlZS5jYWxsZXIodHJ1ZSk7DQogICAgfQ0KICAgIA0KICAgIHRlc3QxKCk7DQogICAgcmV0dXJuIGNhbGxlZDsgICANCn0NCg0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"A direct call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0zLmpzDQogKiBAZGVzY3JpcHRpb24gQW4gaW5kaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgICAgICANCiAgICAgICB2YXIgZXhwbGljaXQgPSBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcjsNCiAgICAgICBleHBsaWNpdCh0cnVlKTsNCiAgICB9DQogICAgDQogICAgdGVzdDEoKTsNCiAgICByZXR1cm4gY2FsbGVkOyAgIA0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"An indirect call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVyIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZXI7DQogIH0NCiAgY2F0Y2ggKGUpIHsNCiAgICBpZihlIGluc3RhbmNlb2YgVHlwZUVycm9yKQ0KICAgICAgcmV0dXJuIHRydWU7DQogIH0NCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Accessing caller property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVyIik7DQogIHJldHVybiBkZXNjIT09IHVuZGVmaW5lZDsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"arguments.caller exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgIA0KICAndXNlIHN0cmljdCc7ICAgIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZXIiKTsNCiAgDQogIHJldHVybiAoZGVzYy5jb25maWd1cmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCd2YWx1ZScpID09IGZhbHNlICAmJiANCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdzZXQnKSA9PSB0cnVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgDQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.caller is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVlIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQogIGNhdGNoIChlKSB7DQogICAgcmV0dXJuIChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Accessing callee property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVlIik7DQogIHJldHVybiBkZXNjICE9PSB1bmRlZmluZWQ7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.callee is exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogICd1c2Ugc3RyaWN0JzsgICAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImNhbGxlZSIpOw0KICByZXR1cm4gKGRlc2MuY29uZmlndXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgPT0gZmFsc2UgJiYNCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3NldCcpID09IHRydWUpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSAnY2FsbGVlJyBleGlzdHMgYW5kICdjYWxsZXInIGV4aXN0cyB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBhcmdPYmogPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzOw0KICAgICAgICB9ICgpOw0KICAgICAgICByZXR1cm4gYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKSAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlciIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - 'callee' exists and 'caller' exists under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVyJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfYl8xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9iXzEpICYmIF8xMF82XzE0X2JfMSA9PT0gImNhbGxlciIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZXIiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'caller' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZXInIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlciA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVlJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfY18xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9jXzEpICYmIF8xMF82XzE0X2NfMSA9PT0gImNhbGxlZSIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'callee' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZWUnIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlZSA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbiwgYnV0IGRvZXMgbm90IHRocm93IGFuIGVhcmx5IGVycm9yDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGZfMTBfNl8xX2dzKCl7DQogICAgcmV0dXJuIGFyZ3VtZW50cy5jYWxsZWU7DQp9DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function, but does not throw an early error","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbg0KICogQG9ubHlTdHJpY3QNCiAqIEBuZWdhdGl2ZSAuDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZl8xMF82XzFfZ3MoKXsNCiAgICByZXR1cm4gYXJndW1lbnRzLmNhbGxlZTsNCn0NCmZfMTBfNl8xX2dzKCk7DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function","negative":".","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNS0xLmpzDQogKiBAZGVzY3JpcHRpb24gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBBcmd1bWVudHMgaXMgc2V0IHRvIE9iamVjdCBwcm90b3R5cGUgb2JqZWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgaWYoT2JqZWN0LmdldFByb3RvdHlwZU9mKGFyZ3VtZW50cykgPT09IE9iamVjdC5nZXRQcm90b3R5cGVPZih7fSkpDQogICAgcmV0dXJuIHRydWU7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"[[Prototype]] property of Arguments is set to Object prototype object","path":"TestCases/ch10/10.6/10.6-5-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0xLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCBwcm9wZXJ0eSBvZiBhcmd1bWVudHMgb2JqZWN0IGV4aXN0cw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJsZW5ndGgiKTsNCiAgcmV0dXJuIGRlc2MgIT09IHVuZGVmaW5lZA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length property of arguments object exists","path":"TestCases/ch10/10.6/10.6-6-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0yLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBoYXMgY29ycmVjdCBhdHRyaWJ1dGVzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImxlbmd0aCIpOw0KICBpZihkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gdHJ1ZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2Mud3JpdGFibGUgPT09IHRydWUgKQ0KICAgIHJldHVybiB0cnVlOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object has correct attributes","path":"TestCases/ch10/10.6/10.6-6-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0zLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBleGlzdHMNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgdmFyIGFyZ3VtZW50cz0gdW5kZWZpbmVkOw0KCXJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBhcmd1bWVudHMubGVuZ3RoICE9PSB1bmRlZmluZWR9KSgpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object for 0 argument function exists","path":"TestCases/ch10/10.6/10.6-6-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi00LmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBjYWxsIGlzIDAgZXZlbiB3aXRoIGZvcm1hbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgIHZhciBhcmd1bWVudHM9IHVuZGVmaW5lZDsNCglyZXR1cm4gKGZ1bmN0aW9uIChhLGIsYykge3JldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAwfSkoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"'length' property of arguments object for 0 argument function call is 0 even with formal parameters","path":"TestCases/ch10/10.6/10.6-6-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNy0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgbGVuZ3RoIGFzIGl0cyBvd24gcHJvcGVydHkgYW5kIGRvZXMgbm90IGludm9rZSB0aGUgc2V0dGVyIGRlZmluZWQgb24gT2JqZWN0LnByb3RvdHlwZS5sZW5ndGggKFN0ZXAgNykNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdmFyIGRhdGEgPSAiZGF0YSI7DQogICAgICAgICAgICB2YXIgZ2V0RnVuYyA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gMTI7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAibGVuZ3RoIiwgew0KICAgICAgICAgICAgICAgIGdldDogZ2V0RnVuYywNCiAgICAgICAgICAgICAgICBzZXQ6IHNldEZ1bmMsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2YXIgYXJnT2JqID0gKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGFyZ3VtZW50cyB9KSgpOw0KICAgICAgICAgICAgdmVyaWZ5VmFsdWUgPSAoYXJnT2JqLmxlbmd0aCA9PT0gMCk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlXcml0YWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgYXJnT2JqLmxlbmd0aCA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmoubGVuZ3RoID09PSAxMDAxKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gYXJnT2JqKSB7DQogICAgICAgICAgICAgICAgaWYgKHAgPT09ICJsZW5ndGgiKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5sZW5ndGg7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZSAmJiBkYXRhID09PSAiZGF0YSI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgT2JqZWN0LnByb3RvdHlwZS5sZW5ndGg7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)","path":"TestCases/ch10/10.6/10.6-7-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBXaGVuIGNvbnRyb2wgZW50ZXJzIGFuIGV4ZWN1dGlvbiBjb250ZXh0IGZvciBmdW5jdGlvbiBjb2RlLAogKiBhbiBhcmd1bWVudHMgb2JqZWN0IGlzIGNyZWF0ZWQgYW5kIGluaXRpYWxpc2VkCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMS5qcwogKiBAZGVzY3JpcHRpb24gRXhlY3V0aW5nIGZ1bmN0aW9uIHdoaWNoIHVzZXMgYXJndW1lbnRzIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYxKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYyKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"When control enters an execution context for function code,\nan arguments object is created and initialised","description":"Executing function which uses arguments object","path":"TestCases/ch10/10.6/S10.6_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdmFsdWUgb2YgdGhlIGludGVybmFsIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgdGhlCiAqIGNyZWF0ZWQgYXJndW1lbnRzIG9iamVjdCBpcyB0aGUgb3JpZ2luYWwgT2JqZWN0IHByb3RvdHlwZSBvYmplY3QsIHRoZSBvbmUKICogdGhhdCBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBPYmplY3QucHJvdG90eXBlCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZT09PU9iamVjdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTsKfQp0cnl7CiAgaWYoZjEoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMxOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTt9Owp0cnl7CiAgaWYoZjIoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMyOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzI6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"The value of the internal [[Prototype]] property of the\ncreated arguments object is the original Object prototype object, the one\nthat is the initial value of Object.prototype","description":"Checking arguments.constructor.prototype===Object.prototype","path":"TestCases/ch10/10.6/S10.6_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.callee property","path":"TestCases/ch10/10.6/S10.6_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJjYWxsZWUiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgY2FsbGVlIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAiY2FsbGVlIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.callee property fails","path":"TestCases/ch10/10.6/S10.6_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMuY2FsbGVlIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiAoZGVsZXRlIGFyZ3VtZW50cy5jYWxsZWUpOwp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBjYWxsZWUgaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmNhbGxlZSk7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.callee property fails","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5jYWxsZWUgcHJvcGVydHkKICogQG5vU3RyaWN0CiAqLwoKdmFyIHN0ciA9ICJzb21ldGhpbmcgZGlmZmVyZW50IjsKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgYXJndW1lbnRzLmNhbGxlZSA9IHN0cjsKICByZXR1cm4gYXJndW1lbnRzOwp9Cgp0cnl7CiAgaWYoZjEoKS5jYWxsZWUgIT09IHN0cil7CiAgICAkRVJST1IoIiMxOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IFJlYWRPbmx5IH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgICBhcmd1bWVudHMuY2FsbGVlID0gc3RyOwogICAgcmV0dXJuIGFyZ3VtZW50czsKICB9CnRyeXsKICBpZihmMigpLmNhbGxlZSAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgY2FsbGVlIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Overriding arguments.callee property","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBjYWxsZWUgaXMgdGhlCiAqIEZ1bmN0aW9uIG9iamVjdCBiZWluZyBleGVjdXRlZAogKgogKiBAcGF0aCBjaDEwLzEwLjYvUzEwLjZfQTQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHRoYXQgYXJndW1lbnRzLmNhbGxlZSA9PT0gZnVuY3Rpb24gb2JqZWN0CiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuY2FsbGVlOwp9Cgp0cnl7CiAgaWYoZjEgIT09IGYxKCkpewogICAgJEVSUk9SKCcjMTogYXJndW1lbnRzLmNhbGxlZSA9PT0gZjEnKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZTt9OwoKdHJ5ewogIGlmKGYyICE9PSBmMigpKXsKICAgICRFUlJPUignIzI6IGFyZ3VtZW50cy5jYWxsZWUgPT09IGYyJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBleGlzdHMiKTsKfQoK","commentary":"The initial value of the created property callee is the\nFunction object being executed","description":"Checking that arguments.callee === function object","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJsZW5ndGgiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAibGVuZ3RoIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGxlbmd0aCBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYyKCkpewogICAgJEVSUk9SKCIjMjogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5sZW5ndGggcHJvcGVydHkKICovCgp2YXIgc3RyID0gInNvbWV0aGluZyBkaWZmZXJlbnQiOwovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICBhcmd1bWVudHMubGVuZ3RoID0gc3RyOwogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICBpZihmMSgpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICAgIGFyZ3VtZW50cy5sZW5ndGggPSBzdHI7CiAgICByZXR1cm4gYXJndW1lbnRzOwogIH07CnRyeXsKICBpZihmMigpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Overriding arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBsZW5ndGggaXMgdGhlIG51bWJlcgogKiBvZiBhY3R1YWwgcGFyYW1ldGVyIHZhbHVlcyBzdXBwbGllZCBieSB0aGUgY2FsbGVyCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNi5qcwogKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGZ1bmN0aW9uLCB0aGF0IHJldHVybmVkIGFyZ3VtZW50cy5sZW5ndGgKICovCgpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMubGVuZ3RoOwp9CgovL0NIRUNLIzEKaWYoIShmMSgpID09PSAwKSl7CiAgJEVSUk9SKCcjMTogYXJndW1lbnQubGVuZ3RoID09PSAwJyk7Cn0KCi8vQ0hFQ0sjMgppZighKGYxKDApID09PSAxKSl7CiAgJEVSUk9SKCcjMjogYXJndW1lbnQubGVuZ3RoID09PSAxJyk7Cn0KCi8vQ0hFQ0sjMwppZighKGYxKDAsIDEpID09PSAyKSl7CiAgJEVSUk9SKCcjMzogYXJndW1lbnQubGVuZ3RoID09PSAyJyk7Cn0KCi8vQ0hFQ0sjNAppZighKGYxKDAsIDEsIDIpID09PSAzKSl7CiAgJEVSUk9SKCcjNDogYXJndW1lbnQubGVuZ3RoID09PSAzJyk7Cn0KCi8vQ0hFQ0sjNQppZighKGYxKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjNTogYXJndW1lbnQubGVuZ3RoID09PSA0Jyk7Cn0KCnZhciBmMiA9IGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fTsKCi8vQ0hFQ0sjNgppZighKGYyKCkgPT09IDApKXsKICAkRVJST1IoJyM2OiBhcmd1bWVudC5sZW5ndGggPT09IDAnKTsKfQoKLy9DSEVDSyM3CmlmKCEoZjIoMCkgPT09IDEpKXsKICAkRVJST1IoJyM3OiBhcmd1bWVudC5sZW5ndGggPT09IDEnKTsKfQoKLy9DSEVDSyM4CmlmKCEoZjIoMCwgMSkgPT09IDIpKXsKICAkRVJST1IoJyM4OiBhcmd1bWVudC5sZW5ndGggPT09IDInKTsKfQoKLy9DSEVDSyM5CmlmKCEoZjIoMCwgMSwgMikgPT09IDMpKXsKICAkRVJST1IoJyM5OiBhcmd1bWVudC5sZW5ndGggPT09IDMnKTsKfQoKLy9DSEVDSyMxMAppZighKGYyKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjMTA6IGFyZ3VtZW50Lmxlbmd0aCA9PT0gNCcpOwp9Cgo=","commentary":"The initial value of the created property length is the number\nof actual parameter values supplied by the caller","description":"Create function, that returned arguments.length","path":"TestCases/ch10/10.6/S10.6_A6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHZXQgYXJndW1lbnRzIG9mIGZ1bmN0aW9uCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNy5qcwogKiBAZGVzY3JpcHRpb24gVXNlIHByb3BlcnR5IGFyZ3VtZW50cwogKi8KCmZ1bmN0aW9uIGYxKCkgewogIHJldHVybiBhcmd1bWVudHM7Cn0KICAKLy9DSEVDSyMxLTUKZm9yKHZhciBpID0gMTsgaSA8IDU7IGkrKyl7ICAKaWYgKGYxKDEsMiwzLDQsNSlbaV0gIT09IChpKzEpKQogICRFUlJPUigiIyIraSsiOiBSZXR1cm5pbmcgZnVuY3Rpb24ncyBhcmd1bWVudHMgd29yayB3cm9uZywgZjEoMSwyLDMsNCw1KVsiK2krIl0gIT09ICIrKGkrMSkpOwp9Cgo=","commentary":"Get arguments of function","description":"Use property arguments","path":"TestCases/ch10/10.6/S10.6_A7.js"}]}} \ No newline at end of file
diff --git a/website/json/ch15.json b/website/json/ch15.json
index 3d86ad7a6..2e90ce5e1 100644
--- a/website/json/ch15.json
+++ b/website/json/ch15.json
@@ -1 +1 @@
-{"testsCollection":{"name":"Chapter - ch15","numTests":"8071","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZ2xvYmFsIG9iamVjdCBkb2VzIG5vdCBoYXZlIGEgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eQogKgogKiBAcGF0aCBjaDE1LzE1LjEvUzE1LjFfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIEl0IGlzIG5vdCBwb3NzaWJsZSB0byB1c2UgdGhlIGdsb2JhbCBvYmplY3QgYXMgYSBjb25zdHJ1Y3RvcgogKiB3aXRoIHRoZSBuZXcgb3BlcmF0b3IKICogQG5lZ2F0aXZlCiAqLwoKbmV3IHRoaXM7Cgo=","commentary":"The global object does not have a [[Construct]] property","description":"It is not possible to use the global object as a constructor\nwith the new operator","negative":"","path":"TestCases/ch15/15.1/S15.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZ2xvYmFsIG9iamVjdCBkb2VzIG5vdCBoYXZlIGEgW1tDb25zdHJ1Y3RdXSBwcm9wZXJ0eQogKgogKiBAcGF0aCBjaDE1LzE1LjEvUzE1LjFfQTFfVDIuanMKICogQGRlc2NyaXB0aW9uIEl0IGlzIG5vdCBwb3NzaWJsZSB0byB1c2UgdGhlIGdsb2JhbCBvYmplY3QgYXMgYSBjb25zdHJ1Y3RvcgogKiB3aXRoIHRoZSBuZXcgb3BlcmF0b3IKICogQG5lZ2F0aXZlCiAqLwoKbmV3IHRoaXMoKTsKCg==","commentary":"The global object does not have a [[Construct]] property","description":"It is not possible to use the global object as a constructor\nwith the new operator","negative":"","path":"TestCases/ch15/15.1/S15.1_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZ2xvYmFsIG9iamVjdCBkb2VzIG5vdCBoYXZlIGEgW1tDYWxsXV0gcHJvcGVydHkKICoKICogQHBhdGggY2gxNS8xNS4xL1MxNS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBJdCBpcyBub3QgcG9zc2libGUgdG8gaW52b2tlIHRoZSBnbG9iYWwgb2JqZWN0IGFzIGEgZnVuY3Rpb24KICogQG5lZ2F0aXZlCiAqLwoKdGhpcygpOwoK","commentary":"The global object does not have a [[Call]] property","description":"It is not possible to invoke the global object as a function","negative":"","path":"TestCases/ch15/15.1/S15.1_A2_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMS8xNS4xLjEuMS0wLmpzDQogKiBAZGVzY3JpcHRpb24gR2xvYmFsLk5hTiBpcyBhIGRhdGEgcHJvcGVydHkgd2l0aCBkZWZhdWx0IGF0dHJpYnV0ZSB2YWx1ZXMgKGZhbHNlKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGZuR2xvYmFsT2JqZWN0KCksICdOYU4nKTsNCiAgaWYgKGRlc2Mud3JpdGFibGUgPT09IGZhbHNlICYmDQogICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgICBkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gZmFsc2UpIHsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Global.NaN is a data property with default attribute values (false)","path":"TestCases/ch15/15.1/15.1.1/15.1.1.1/15.1.1.1-0.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiBOYU4gaXMgTmFOCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjEvMTUuMS4xLjEvUzE1LjEuMS4xX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBVc2UgdHlwZW9mLCBpc05hTiwgaXNGaW5pdGUKICovCgovLyBDSEVDSyMxCmlmICh0eXBlb2YoTmFOKSAhPT0gIm51bWJlciIpIHsKCSRFUlJPUignIzE6IHR5cGVvZihOYU4pID09PSAibnVtYmVyIi4gQWN0dWFsOiAnICsgKHR5cGVvZihOYU4pKSk7IAp9CgovLyBDSEVDSyMyCmlmIChpc05hTihOYU4pICE9PSB0cnVlKSB7CgkkRVJST1IoJyMyOiBOYU4gPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKE5hTikpOyAKfQoKLy8gQ0hFQ0sjMwppZiAoaXNGaW5pdGUoTmFOKSAhPT0gZmFsc2UpIHsKCSRFUlJPUignIzM6IE5hTiA9PT0gTm90LWEtRmluaXRlLiBBY3R1YWw6ICcgKyAoTmFOKSk7IAp9CgoK","commentary":"The initial value of NaN is NaN","description":"Use typeof, isNaN, isFinite","path":"TestCases/ch15/15.1/15.1.1/15.1.1.1/S15.1.1.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgTmFOIGlzIERvbnREZWxldGUKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMS9TMTUuMS4xLjFfQTMuMS5qcwogKiBAZGVzY3JpcHRpb24gVXNlIGRlbGV0ZQogKiBAbm9TdHJpY3QKICovCgovLyBDSEVDSyMxCmlmIChkZWxldGUgTmFOICE9PSBmYWxzZSkgewoJJEVSUk9SKCcjMTogZGVsZXRlIE5hTiA9PT0gZmFsc2UuIEFjdHVhbDogJyArIChkZWxldGUgTmFOKSk7IAkKfQoK","commentary":"The NaN is DontDelete","description":"Use delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.1/15.1.1.1/S15.1.1.1_A3.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgTmFOIGlzIERvbnRFbnVtCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjEvMTUuMS4xLjEvUzE1LjEuMS4xX0EzLjIuanMKICogQGRlc2NyaXB0aW9uIFVzZSBmb3ItaW4gc3RhdGVtZW50CiAqLwoKLy8gQ0hFQ0sjMQpmb3IgKHZhciBwcm9wIGluIHRoaXMpIHsKICBpZiAocHJvcCA9PT0gIk5hTiIpIHsKCSRFUlJPUignIzE6IFRoZSBOYU4gaXMgRG9udEVudW0nKTsKICB9CSAJCn0KCg==","commentary":"The NaN is DontEnum","description":"Use for-in statement","path":"TestCases/ch15/15.1/15.1.1/15.1.1.1/S15.1.1.1_A3.2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMi8xNS4xLjEuMi0wLmpzDQogKiBAZGVzY3JpcHRpb24gR2xvYmFsLkluZmluaXR5IGlzIGEgZGF0YSBwcm9wZXJ0eSB3aXRoIGRlZmF1bHQgYXR0cmlidXRlIHZhbHVlcyAoZmFsc2UpDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZm5HbG9iYWxPYmplY3QoKSwgJ0luZmluaXR5Jyk7DQogIGlmIChkZXNjLndyaXRhYmxlID09PSBmYWxzZSAmJg0KICAgICAgZGVzYy5lbnVtZXJhYmxlID09PSBmYWxzZSAmJg0KICAgICAgZGVzYy5jb25maWd1cmFibGUgPT09IGZhbHNlKSB7DQogICAgcmV0dXJuIHRydWU7DQogIH0NCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Global.Infinity is a data property with default attribute values (false)","path":"TestCases/ch15/15.1/15.1.1/15.1.1.2/15.1.1.2-0.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiBJbmZpbml0eSBpcyBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMi9TMTUuMS4xLjJfQTEuanMKICogQGRlc2NyaXB0aW9uIFVzZSB0eXBlb2YsIGlzTmFOLCBpc0Zpbml0ZQogKi8KCi8vIENIRUNLIzEKaWYgKHR5cGVvZihJbmZpbml0eSkgIT09ICJudW1iZXIiKSB7CgkkRVJST1IoJyMxOiB0eXBlb2YoSW5maW5pdHkpID09PSAibnVtYmVyIi4gQWN0dWFsOiAnICsgKHR5cGVvZihJbmZpbml0eSkpKTsgCn0KCi8vIENIRUNLIzIKaWYgKGlzRmluaXRlKEluZmluaXR5KSAhPT0gZmFsc2UpIHsKCSRFUlJPUignIzI6IEluZmluaXR5ID09PSBOb3QtYS1GaW5pdGUuIEFjdHVhbDogJyArIChJbmZpbml0eSkpOyAKfQoKLy8gQ0hFQ0sjMwppZiAoaXNOYU4oSW5maW5pdHkpICE9PSBmYWxzZSkgewoJJEVSUk9SKCcjMzogSW5maW5pdHkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKEluZmluaXR5KSk7IAp9CgoKLy8gQ0hFQ0sjNAppZiAoSW5maW5pdHkgIT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgewoJJEVSUk9SKCcjNDogSW5maW5pdHkgPT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWS4gQWN0dWFsOiAnICsgKEluZmluaXR5KSk7IAp9Cgo=","commentary":"The initial value of Infinity is Number.POSITIVE_INFINITY","description":"Use typeof, isNaN, isFinite","path":"TestCases/ch15/15.1/15.1.1/15.1.1.2/S15.1.1.2_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgSW5maW5pdHkgaXMgbm90IFJlYWRPbmx5CiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjEvMTUuMS4xLjIvUzE1LjEuMS4yX0EyX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlb2YgRnVuY3Rpb25zCiAqLwoKLy8gQ0hFQ0sjMQp2YXIgRmluaXRlID0gdHJ1ZTsKaWYgKHR5cGVvZihGaW5pdGUpICE9PSAiYm9vbGVhbiIpIHsKCSRFUlJPUignIzE6IEZpbml0ZSA9IHRydWU7IHR5cGVvZihOYU4pID09PSAiYm9vbGVhbiIuIEFjdHVhbDogJyArICh0eXBlb2YoTmFOKSkpOyAKfQoK","commentary":"The Infinity is not ReadOnly","description":"Checking typeof Functions","path":"TestCases/ch15/15.1/15.1.1/15.1.1.2/S15.1.1.2_A2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgSW5maW5pdHkgaXMgRG9udERlbGV0ZQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4xLzE1LjEuMS4yL1MxNS4xLjEuMl9BMy4xLmpzCiAqIEBkZXNjcmlwdGlvbiBVc2UgZGVsZXRlCiAqIEBub1N0cmljdAogKi8KCi8vIENIRUNLIzEKaWYgKGRlbGV0ZSBJbmZpbml0eSAhPT0gZmFsc2UpIHsKCSRFUlJPUignIzE6IGRlbGV0ZSBJbmZpbml0eSA9PT0gZmFsc2UuIEFjdHVhbDogJyArIChkZWxldGUgSW5maW5pdHkpKTsgCn0KCg==","commentary":"The Infinity is DontDelete","description":"Use delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.1/15.1.1.2/S15.1.1.2_A3.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgSW5maW5pdHkgaXMgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMi9TMTUuMS4xLjJfQTMuMi5qcwogKiBAZGVzY3JpcHRpb24gVXNlIGZvci1pbiBzdGF0ZW1lbnQKICovCgovLyBDSEVDSyMxCmZvciAodmFyIHByb3AgaW4gdGhpcykgewogIGlmIChwcm9wID09PSAiSW5maW5pdHkiKSB7CgkkRVJST1IoJyMxOiBUaGUgSW5maW5pdHkgaXMgRG9udEVudW0nKTsKICB9CSAJCn0KCg==","commentary":"The Infinity is DontEnum","description":"Use for-in statement","path":"TestCases/ch15/15.1/15.1.1/15.1.1.2/S15.1.1.2_A3.2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMy8xNS4xLjEuMy0wLmpzDQogKiBAZGVzY3JpcHRpb24gR2xvYmFsLnVuZGVmaW5lZCBpcyBhIGRhdGEgcHJvcGVydHkgd2l0aCBkZWZhdWx0IGF0dHJpYnV0ZSB2YWx1ZXMgKGZhbHNlKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGZuR2xvYmFsT2JqZWN0KCksICd1bmRlZmluZWQnKTsNCiAgaWYgKGRlc2Mud3JpdGFibGUgPT09IGZhbHNlICYmDQogICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgICBkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gZmFsc2UpIHsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Global.undefined is a data property with default attribute values (false)","path":"TestCases/ch15/15.1/15.1.1/15.1.1.3/15.1.1.3-0.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB1bmRlZmluZWQgaXMgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjEvMTUuMS4xLjMvUzE1LjEuMS4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBVc2UgdHlwZW9mLCBpc05hTiwgaXNGaW5pdGUKICovCgovLyBDSEVDSyMxCmlmICh0eXBlb2YodW5kZWZpbmVkKSAhPT0gInVuZGVmaW5lZCIpIHsKCSRFUlJPUignIzE6IHR5cGVvZih1bmRlZmluZWQpID09PSAidW5kZWZpbmVkIi4gQWN0dWFsOiAnICsgKHR5cGVvZih1bmRlZmluZWQpKSk7IAp9CgovLyBDSEVDSyMyCmlmICh1bmRlZmluZWQgIT09IHZvaWQgMCkgewoJJEVSUk9SKCcjMjogdW5kZWZpbmVkID09PSB2b2lkIDAuIEFjdHVhbDogJyArICh1bmRlZmluZWQpKTsgCn0KCi8vIENIRUNLIzMKaWYgKHVuZGVmaW5lZCAhPT0gZXZhbCgidmFyIHgiKSkgewoJJEVSUk9SKCcjMzogdW5kZWZpbmVkID09PSBldmFsKCJ2YXIgeCIpLiBBY3R1YWw6ICcgKyAodW5kZWZpbmVkKSk7IAp9Cgo=","commentary":"The initial value of undefined is undefined","description":"Use typeof, isNaN, isFinite","path":"TestCases/ch15/15.1/15.1.1/15.1.1.3/S15.1.1.3_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdW5kZWZpbmVkIGlzIERvbnREZWxldGUKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMS8xNS4xLjEuMy9TMTUuMS4xLjNfQTMuMS5qcwogKiBAZGVzY3JpcHRpb24gVXNlIGRlbGV0ZQogKiBAbm9TdHJpY3QKICovCgovLyBDSEVDSyMxCmlmIChkZWxldGUgdW5kZWZpbmVkICE9PSBmYWxzZSkgewoJJEVSUk9SKCcjMTogZGVsZXRlIHVuZGVmaW5lZCA9PT0gZmFsc2UuIEFjdHVhbDogJyArIChkZWxldGUgdW5kZWZpbmVkKSk7IAp9Cgo=","commentary":"The undefined is DontDelete","description":"Use delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.1/15.1.1.3/S15.1.1.3_A3.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdW5kZWZpbmVkIGlzIERvbnRFbnVtCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjEvMTUuMS4xLjMvUzE1LjEuMS4zX0EzLjIuanMKICogQGRlc2NyaXB0aW9uIFVzZSBmb3ItaW4gc3RhdGVtZW50CiAqLwoKLy8gQ0hFQ0sjMQpmb3IgKHByb3AgaW4gdGhpcykgewogIGlmIChwcm9wID09PSAidW5kZWZpbmVkIikgewoJJEVSUk9SKCcjMTogVGhlIHVuZGVmaW5lZCBpcyBEb250RW51bScpOwogIH0JIAkKfQoK","commentary":"The undefined is DontEnum","description":"Use for-in statement","path":"TestCases/ch15/15.1/15.1.1/15.1.1.3/S15.1.1.3_A3.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB4IGlzIG5vdCBhIHN0cmluZyB2YWx1ZSwgcmV0dXJuIHgKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxsIHByaW1pdGl2ZQogKi8KCi8vQ0hFQ0sjMQp2YXIgeCA9IDE7CmlmIChldmFsKHgpICE9PSB4KSB7CiAgJEVSUk9SKCcjMTogeCA9IDE7IGV2YWwoeCkgPT09IHguIEFjdHVhbDogJyArIChldmFsKHgpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoZXZhbCgxKSAhPT0gMSkgewogICRFUlJPUignIzI6IGV2YWwoMSkgPT09IDEuIEFjdHVhbDogJyArIChldmFsKDEpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoZXZhbCh0cnVlKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IGV2YWwodHJ1ZSkgPT09IHRydWUuIEFjdHVhbDogJyArIChldmFsKHRydWUpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoZXZhbChudWxsKSAhPT0gbnVsbCkgewogICRFUlJPUignIzQ6IGV2YWwobnVsbCkgPT09IG51bGwuIEFjdHVhbDogJyArIChldmFsKG51bGwpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAoZXZhbCh1bmRlZmluZWQpICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyM1OiBldmFsKHVuZGVmaW5lZCkgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAnICsgKGV2YWwodW5kZWZpbmVkKSkpOwp9ICAgICAgICAKCg==","commentary":"If x is not a string value, return x","description":"Checking all primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB4IGlzIG5vdCBhIHN0cmluZyB2YWx1ZSwgcmV0dXJuIHgKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxsIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQp2YXIgeCA9IHt9OwppZiAoZXZhbCh4KSAhPT0geCkgewogICRFUlJPUignIzE6IHggPSB7fTsgZXZhbCh4KSA9PT0geC4gQWN0dWFsOiAnICsgKGV2YWwoeCkpKTsKfQoKLy9DSEVDSyMyCnggPSBuZXcgTnVtYmVyKDEpOwppZiAoZXZhbCh4KSAhPT0geCkgewogICRFUlJPUignIzI6IHggPSBuZXcgTnVtYmVyKDEpOyBldmFsKHgpID09PSB4LiBBY3R1YWw6ICcgKyAoZXZhbCh4KSkpOwp9CgovL0NIRUNLIzMKeCA9IG5ldyBCb29sZWFuKHRydWUpOwppZiAoZXZhbCh4KSAhPT0geCkgewogICRFUlJPUignIzM6IHggPSBuZXcgQm9vbGVhbih0cnVlKTsgZXZhbCh4KSA9PT0geC4gQWN0dWFsOiAnICsgKGV2YWwoeCkpKTsKfQoKLy9DSEVDSyM0CnggPSBuZXcgU3RyaW5nKCIxKzEiKTsKaWYgKGV2YWwoeCkgIT09IHgpIHsKICAkRVJST1IoJyM0OiB4ID0gbmV3IFN0cmluZygiMSIpOyBldmFsKHgpID09PSB4LiBBY3R1YWw6ICcgKyAoZXZhbCh4KSkpOwp9ICAgIAoK","commentary":"If x is not a string value, return x","description":"Checking all object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgZXZhbCBmdW5jdGlvbiBpcyBjYWxsZWQgd2l0aCBzb21lIGFyZ3VtZW50LCB0aGVuIHVzZSBhIGZpcnN0IGFyZ3VtZW50CiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0ExLjJfVDEuanMKICogQGRlc2NyaXB0aW9uIGV2YWwoInggPSAxIiwgInggPSAyIiksIHggZXF1YWwgMSwgbm90IDIKICovCgovL0NIRUNLIzEKdmFyIHg7CmV2YWwoInggPSAxIiwgInggPSAyIik7CmlmICh4ICE9PSAxKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgieCA9IDEiLCAieCA9IDIiKTsgeCA9PT0gMS4gQWN0dWFsOiAnICsgKHgpKTsKfQoK","commentary":"If the eval function is called with some argument, then use a first argument","description":"eval(\"x = 1\", \"x = 2\"), x equal 1, not 2","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgcGFyc2UgZmFpbHMsIHRocm93IGEgU3ludGF4RXJyb3IgZXhjZXB0aW9uIChidXQgc2VlIGFsc28gY2xhdXNlIDE2KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZXhlY3V0aW9uIG9mICJldmFsKCJ4ID0gMTsgeFx1MDAwQSsrIiksIGNhdGNoIFN5bnRheEVycm9yIiBwYXNzZXMKICovCgovL0NIRUNLIzEKdmFyIHg7CnRyeSB7CiAgZXZhbCgieCA9IDE7IHhcdTAwMEErKyIpOwogICRFUlJPUignIzEuMTogZXZhbCgieCA9IDE7IHhcXHUwMDBBKysiKSBtdXN0IHRocm93IGEgU3ludGF4RXJyb3IuIEFjdHVhbDogJyArIChldmFsKCJ4ID0gMTsgeFx1MDAwQSsrIikpKTsKfSBjYXRjaCAoZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBldmFsKCJ4ID0gMTsgeFxcdTAwMEErKyIpIG11c3QgdGhyb3cgYSBTeW50YXhFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsKICB9ICAKfSAgIAoK","commentary":"If the parse fails, throw a SyntaxError exception (but see also clause 16)","description":"Checking if execution of \"eval(\"x = 1; x\\u000A++\"), catch SyntaxError\" passes","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgcGFyc2UgZmFpbHMsIHRocm93IGEgU3ludGF4RXJyb3IgZXhjZXB0aW9uIChidXQgc2VlIGFsc28gY2xhdXNlIDE2KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZXhlY3V0aW9uIG9mICJldmFsKCJ4ID0gMTsgeFx1MDAwQSsrIikiIGZhaWxzCiAqIEBuZWdhdGl2ZQogKi8KCi8vQ0hFQ0sjMQp2YXIgeDsKZXZhbCgieCA9IDE7IHhcdTAwMEErKyIpOyAKCg==","commentary":"If the parse fails, throw a SyntaxError exception (but see also clause 16)","description":"Checking if execution of \"eval(\"x = 1; x\\u000A++\")\" fails","negative":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGEgdmFsdWUgViwKICogdGhlbiByZXR1cm4gdGhlIHZhbHVlIFYKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gRXhwcmVzc2lvbiBzdGF0ZW1lbnQuIEV2YWwgcmV0dXJuIHByaW1pdGl2ZSB2YWx1ZQogKi8KCnZhciB4OwovL0NIRUNLIzEKaWYgKGV2YWwoInggPSAxIikgIT09IDEpIHsKICAkRVJST1IoJyMxOiBldmFsKCJ4ID0gMSIpID09PSAxLiBBY3R1YWw6ICcgKyAoZXZhbCgieCA9IDEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKGV2YWwoIjEiKSAhPT0gMSkgewogICRFUlJPUignIzI6IGV2YWwoIjEiKSA9PT0gMS4gQWN0dWFsOiAnICsgKGV2YWwoIjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGV2YWwoIicxJyIpICE9PSAnMScpIHsKICAkRVJST1IoJyMzOiBldmFsKCJcJzFcJyIpID09PSBcJzFcJy4gQWN0dWFsOiAnICsgKGV2YWwoIicxJyIpKSk7Cn0KCi8vQ0hFQ0sjNAp4ID0gMTsKaWYgKGV2YWwoIisreCIpICE9PSAyKSB7CiAgJEVSUk9SKCcjNDogeCA9IDE7IGV2YWwoIisreCIpID09PSAyLiBBY3R1YWw6ICcgKyAoeCkpOwp9ICAgICAgICAKCg==","commentary":"If Result(3).type is normal and its completion value is a value V,\nthen return the value V","description":"Expression statement. Eval return primitive value","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGEgdmFsdWUgViwKICogdGhlbiByZXR1cm4gdGhlIHZhbHVlIFYKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gRXhwcmVzc2lvbiBzdGF0ZW1lbnQuIEV2YWwgcmV0dXJuIG9iamVjdCB2YWx1ZQogKi8KCi8vQ0hFQ0sjMQp2YXIgeCA9IHt9Owp2YXIgeTsKaWYgKGV2YWwoInkgPSB4IikgIT09IHgpIHsKICAkRVJST1IoJyMxOiB2YXIgeCA9IHt9OyBldmFsKCJ5ID0geCIpID09PSB4LiBBY3R1YWw6ICcgKyAoZXZhbCgieSA9IHgiKSkpOwp9ICAgIAoKCi8vQ0hFQ0sjMgppZiAoZXZhbCgieCIpICE9PSB4KSB7CiAgJEVSUk9SKCcjMjogdmFyIHggPSB7fTsgZXZhbCgieCIpID09PSB4LiBBY3R1YWw6ICcgKyAoZXZhbCgieCIpKSk7Cn0gICAgCgoK","commentary":"If Result(3).type is normal and its completion value is a value V,\nthen return the value V","description":"Expression statement. Eval return object value","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDEuanMKICogQGRlc2NyaXB0aW9uIEJsb2NrIHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbCgie30iKSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgie30iKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcgKyAoZXZhbCgie30iKSkpOwp9ICAgIAoK","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"Block statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDIuanMKICogQGRlc2NyaXB0aW9uIFZhciBzdGF0ZW1lbnQKICovCgovL0NIRUNLIzEKaWYgKGV2YWwoInZhciB4ID0gMSIpICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBldmFsKCJ2YXIgeCA9IDEiKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcgKyAoZXZhbCgidmFyIHggPSAxIikpKTsKfSAgICAKCg==","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"Var statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDMuanMKICogQGRlc2NyaXB0aW9uIEVtcHR5IHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbCgiOyIpICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBldmFsKCI7IikgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAnICsgKGV2YWwoIjsiKSkpOwp9ICAgIAoK","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"Empty statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDQuanMKICogQGRlc2NyaXB0aW9uIElmIHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbCgiaWYgKGZhbHNlKSA7IikgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IGV2YWwoImlmIChmYWxzZSkgOyIpID09PSB1bmRlZmluZWQuIEFjdHVhbDogJyArIGV2YWwoImlmIChmYWxzZSkgOyIpKTsKfSAgICAKCg==","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"If statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDUuanMKICogQGRlc2NyaXB0aW9uIFN3aXRjaCBzdGF0ZW1lbnQKICovCgovL0NIRUNLIzEKaWYgKGV2YWwoInN3aXRjaCgxKXt9IikgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IGV2YWwoInN3aXRjaCgxKXt9IikgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAnICsgKGV2YWwoInN3aXRjaCgxKXt9IikpKTsKfSAgICAKCg==","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"Switch statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDYuanMKICogQGRlc2NyaXB0aW9uIGRvLXdoaWxlIHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbCgiZG8gOyB3aGlsZShmYWxzZSkiKSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogZXZhbCgiZG8gOyB3aGlsZShmYWxzZSkiKSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcgKyAoZXZhbCgiZG8gOyB3aGlsZShmYWxzZSkiKSkpOwp9ICAgIAoK","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"do-while statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDcuanMKICogQGRlc2NyaXB0aW9uIGRvLXdoaWxlIHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbCgid2hpbGUoZmFsc2UpOyIpICE9PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMxOiBldmFsKCJ3aGlsZShmYWxzZSk7IikgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAnICsgKGV2YWwoIndoaWxlKGZhbHNlKTsiKSkpOwp9ICAgIAoK","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"do-while statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3JtYWwgYW5kIGl0cyBjb21wbGV0aW9uIHZhbHVlIGlzIGVtcHR5LAogKiB0aGVuIHJldHVybiB0aGUgdmFsdWUgdW5kZWZpbmVkCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0EzLjJfVDguanMKICogQGRlc2NyaXB0aW9uIGZvciBzdGF0ZW1lbnQKICovCgovL0NIRUNLIzEKaWYgKGV2YWwoImZvcihmYWxzZTtmYWxzZTtmYWxzZSk7IikgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IGV2YWwoImZvcihmYWxzZTtmYWxzZTtmYWxzZSk7IikgPT09IHVuZGVmaW5lZC4gQWN0dWFsOiAnICsgKGV2YWwoImZvcihmYWxzZTtmYWxzZTtmYWxzZSk7IikpKTsKfSAgICAKCg==","commentary":"If Result(3).type is normal and its completion value is empty,\nthen return the value undefined","description":"for statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3Qgbm9ybWFsLCB0aGVuIFJlc3VsdCgzKS50eXBlIG11c3QgYmUgdGhyb3cuCiAqIFRocm93IFJlc3VsdCgzKS52YWx1ZSBhcyBhbiBleGNlcHRpb24KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29udGludWUgc3RhdGVtZW50CiAqLwoKLy9DSEVDSyMxCnRyeSB7CiAgZXZhbCgiY29udGludWU7Iik7CiAgJEVSUk9SKCcjMS4xOiBjb250aW51ZSBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZXZhbCgiY29udGludWU7IikpKTsKfSBjYXRjaChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IGNvbnRpbnVlIG11c3QgdGhyb3cgU3ludGF4RXJyb3IuIEFjdHVhbCAnICsgKGUpKTsKICB9ICAKfQoKLy9DSEVDSyMyCnRyeSB7CiAgZm9yICh2YXIgaSA9IDA7IGkgPD0gMTsgaSsrKSB7CiAgICBmb3IgKHZhciBqID0gMDsgaiA8PSAxOyBqKyspIHsKICAgICAgIGV2YWwoImNvbnRpbnVlOyIpOyAgICAgICAKICAgIH0KICB9CiAgJEVSUk9SKCcjMi4xOiBjb250aW51ZSBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZXZhbCgiY29udGludWU7IikpKTsgICAgCn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMi4yOiBjb250aW51ZSBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOwogIH0gIAp9ICAgICAgCgo=","commentary":"If Result(3).type is not normal, then Result(3).type must be throw.\nThrow Result(3).value as an exception","description":"Continue statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3Qgbm9ybWFsLCB0aGVuIFJlc3VsdCgzKS50eXBlIG11c3QgYmUgdGhyb3cuCiAqIFRocm93IFJlc3VsdCgzKS52YWx1ZSBhcyBhbiBleGNlcHRpb24KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gQnJlYWsgc3RhdGVtZW50CiAqLwoKLy9DSEVDSyMxCnRyeSB7CiAgZXZhbCgiYnJlYWs7Iik7CiAgJEVSUk9SKCcjMS4xOiBicmVhayBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZXZhbCgiYnJlYWs7IikpKTsKfSBjYXRjaChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IGJyZWFrIG11c3QgdGhyb3cgU3ludGF4RXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfSAgCn0KCi8vQ0hFQ0sjMgp0cnkgewogIGZvciAodmFyIGkgPSAwOyBpIDw9IDE7IGkrKykgewogICAgZm9yICh2YXIgaiA9IDA7IGogPD0gMTsgaisrKSB7CiAgICAgICBldmFsKCJicmVhazsiKTsKICAgIH0KICB9CiAgJEVSUk9SKCcjMi4xOiBicmVhayBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZXZhbCgiYnJlYWs7IikpKTsgICAgCn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSAhPT0gdHJ1ZSkgeyAgIAogICAgJEVSUk9SKCcjMi4yOiBicmVhayBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOwogIH0gIAp9ICAgICAgCgo=","commentary":"If Result(3).type is not normal, then Result(3).type must be throw.\nThrow Result(3).value as an exception","description":"Break statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3Qgbm9ybWFsLCB0aGVuIFJlc3VsdCgzKS50eXBlIG11c3QgYmUgdGhyb3cuCiAqIFRocm93IFJlc3VsdCgzKS52YWx1ZSBhcyBhbiBleGNlcHRpb24KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gUmV0dXJuIHN0YXRlbWVudAogKi8KCi8vQ0hFQ0sjMQp0cnkgewogIGV2YWwoInJldHVybjsiKTsKICAkRVJST1IoJyMxLjE6IHJldHVybiBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZXZhbCgicmV0dXJuOyIpKSk7Cn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiByZXR1cm4gbXVzdCB0aHJvdyBTeW50YXhFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsKICB9ICAKfQoKLy9DSEVDSyMyCgpmdW5jdGlvbiBmKCkgeyAgZXZhbCgicmV0dXJuOyIpOyB9OwoKdHJ5IHsKICBmKCk7ICAgICAgCiAgJEVSUk9SKCcjMi4xOiByZXR1cm4gbXVzdCB0aHJvdyBTeW50YXhFcnJvci4gQWN0dWFsOiAnICsgKGYoKSkpOwp9IGNhdGNoKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcikgIT09IHRydWUpIHsKICAgICRFUlJPUignIzIuMjogcmV0dXJuIG11c3QgdGhyb3cgU3ludGF4RXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfSAgCn0gICAgICAKCg==","commentary":"If Result(3).type is not normal, then Result(3).type must be throw.\nThrow Result(3).value as an exception","description":"Return statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSZXN1bHQoMykudHlwZSBpcyBub3Qgbm9ybWFsLCB0aGVuIFJlc3VsdCgzKS50eXBlIG11c3QgYmUgdGhyb3cuCiAqIFRocm93IFJlc3VsdCgzKS52YWx1ZSBhcyBhbiBleGNlcHRpb24KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTMuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gVGhyb3cgc3RhdGVtZW50CiAqLwoKLy9DSEVDSyMxCnRyeSB7CiAgZXZhbCgidGhyb3cgMTsiKTsKICAkRVJST1IoJyMxLjE6IHRocm93IDEgbXVzdCB0aHJvdyBTeW50YXhFcnJvci4gQWN0dWFsOiAnICsgKGV2YWwoInRocm93IDE7IikpKTsKfSBjYXRjaChlKSB7CiAgaWYgKGUgIT09IDEpIHsKICAgICRFUlJPUignIzEuMjogdGhyb3cgMSBtdXN0IHRocm93IFN5bnRheEVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOwogIH0gIAp9Cgo=","commentary":"If Result(3).type is not normal, then Result(3).type must be throw.\nThrow Result(3).value as an exception","description":"Throw statement","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A3.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGV2YWwgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTQuMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIHByb3BlcnR5SXNFbnVtZXJhYmxlLCBmb3ItaW4KICovCgovL0NIRUNLIzEKaWYgKGV2YWwucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpICE9PSBmYWxzZSkgewogICRFUlJPUignIzE6IGV2YWwucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAoZXZhbC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpKTsKfQoKLy9DSEVDSyMyCnZhciByZXN1bHQgPSB0cnVlOwpmb3IgKHAgaW4gZXZhbCl7CiAgaWYgKHAgPT09ICJsZW5ndGgiKSB7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9ICAKfQoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHJlc3VsdCA9IHRydWU7IGZvciAocCBpbiBldmFsKSB7IGlmIChwID09PSAibGVuZ3RoIikgcmVzdWx0ID0gZmFsc2U7IH07ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The length property of eval has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGV2YWwgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udERlbGV0ZQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BNC4yLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB1c2UgaGFzT3duUHJvcGVydHksIGRlbGV0ZQogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykgIT09IHRydWUpIHsKICAkRkFJTCgnIzE6IGV2YWwuaGFzT3duUHJvcGVydHkoXCdsZW5ndGhcJykgPT09IHRydWUuIEFjdHVhbDogJyArIChldmFsLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSkpOwp9CgpkZWxldGUgZXZhbC5sZW5ndGg7CgovL0NIRUNLIzIKaWYgKGV2YWwuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogZGVsZXRlIGV2YWwubGVuZ3RoOyBldmFsLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAoZXZhbC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKTsKfQoKLy9DSEVDSyMzCmlmIChldmFsLmxlbmd0aCA9PT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMzogZGVsZXRlIGV2YWwubGVuZ3RoOyBldmFsLmxlbmd0aCAhPT0gdW5kZWZpbmVkJyk7Cn0KCgoKCg==","commentary":"The length property of eval has the attribute DontDelete","description":"Checking use hasOwnProperty, delete","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGV2YWwgaGFzIHRoZSBhdHRyaWJ1dGUgUmVhZE9ubHkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMS9TMTUuMS4yLjFfQTQuMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgbGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQp2YXIgeCA9IGV2YWwubGVuZ3RoOwpldmFsLmxlbmd0aCA9IEluZmluaXR5OwppZiAoZXZhbC5sZW5ndGggIT09IHgpIHsKICAkRVJST1IoJyMxOiB4ID0gZXZhbC5sZW5ndGg7IGV2YWwubGVuZ3RoID0gSW5maW5pdHk7IGV2YWwubGVuZ3RoID09PSB4LiBBY3R1YWw6ICcgKyAoZXZhbC5sZW5ndGgpKTsKfQoKCg==","commentary":"The length property of eval has the attribute ReadOnly","description":"Checking if varying the length property fails","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGV2YWwgaXMgMQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BNC40LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsLmxlbmd0aCA9PT0gMQogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMxOiBldmFsLmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnICsgKGV2YWwubGVuZ3RoKSk7Cn0gCgoK","commentary":"The length property of eval is 1","description":"eval.length === 1","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZXZhbCBwcm9wZXJ0eSBoYXMgdGhlIGF0dHJpYnV0ZSBEb250RW51bQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BNC41LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB1c2UgcHJvcGVydHlJc0VudW1lcmFibGUsIGZvci1pbgogKi8KCi8vQ0hFQ0sjMQppZiAodGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnZXZhbCcpICE9PSBmYWxzZSkgewogICRFUlJPUignIzE6IHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoXCdldmFsXCcpID09PSBmYWxzZS4gQWN0dWFsOiAnICsgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ2V2YWwnKSkpOwp9CgovL0NIRUNLIzIKdmFyIHJlc3VsdCA9IHRydWU7CmZvciAodmFyIHAgaW4gdGhpcyl7CiAgaWYgKHAgPT09ICJldmFsIikgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfSAgCn0KCmlmIChyZXN1bHQgIT09IHRydWUpIHsKICAkRVJST1IoJyMyOiByZXN1bHQgPSB0cnVlOyBmb3IgKHAgaW4gdGhpcykgeyBpZiAocCA9PT0gImV2YWwiKSByZXN1bHQgPSBmYWxzZTsgfSAgcmVzdWx0ID09PSB0cnVlOycpOwp9Cgo=","commentary":"The eval property has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZXZhbCBwcm9wZXJ0eSBoYXMgbm90IHByb3RvdHlwZSBwcm9wZXJ0eQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4xL1MxNS4xLjIuMV9BNC42LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBldmFsLnByb3RvdHlwZQogKi8KCi8vQ0hFQ0sjMQppZiAoZXZhbC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IGV2YWwucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJyArIChldmFsLnByb3RvdHlwZSkpOwp9Cgo=","commentary":"The eval property has not prototype property","description":"Checking eval.prototype","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgZXZhbCBwcm9wZXJ0eSBjYW4ndCBiZSB1c2VkIGFzIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjEvUzE1LjEuMi4xX0E0LjcuanMKICogQGRlc2NyaXB0aW9uIElmIHByb3BlcnR5IGRvZXMgbm90IGltcGxlbWVudCB0aGUgaW50ZXJuYWwgW1tDb25zdHJ1Y3RdXSBtZXRob2QsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbgogKi8KCi8vQ0hFQ0sjMQoKdHJ5IHsKICBuZXcgZXZhbCgpOwogICRFUlJPUignIzEuMTogbmV3IGV2YWwoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChuZXcgZXZhbCgpKSk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IG5ldyBldmFsKCkgdGhyb3cgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOwogIH0KfQoK","commentary":"The eval property can't be used as constructor","description":"If property does not implement the internal [[Construct]] method, throw a TypeError exception","path":"TestCases/ch15/15.1/15.1.2/15.1.2.1/S15.1.2.1_A4.7.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi8xNS4xLjIuMi0yLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBwYXJlc2VJbnQgLSAnUycgaXMgdGhlIGVtcHR5IHN0cmluZyB3aGVuIGlucHV0U3RyaW5nIGRvZXMgbm90IGNvbnRhaW4gYW55IHN1Y2ggY2hhcmFjdGVycw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHJldHVybiBpc05hTihwYXJzZUludCgiIikpICYmIHBhcnNlSW50KCIiKSAhPT0gcGFyc2VJbnQoIiIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"pareseInt - 'S' is the empty string when inputString does not contain any such characters","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/15.1.2.2-2-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBib29sZWFuIHByaW1pdGl2ZQogKi8KCi8vQ0hFQ0sjMQppZiAoIShpc05hTihwYXJzZUludCh0cnVlKSkgJiYgaXNOYU4ocGFyc2VJbnQoIk5hTiIpKSkpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCh0cnVlKSA9PT0gTm90LWEtTnVtYmVyOyBwYXJzZUludCgiTmFOIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJOYU4iKSkpOwp9CgovL0NIRUNLIzIKaWYgKFN0cmluZyhwYXJzZUludChmYWxzZSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUludChmYWxzZSkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUludChmYWxzZSkpKSk7Cn0KCg==","commentary":"Operator use ToString","description":"Checking for boolean primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDIuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBudW1iZXIgcHJpbWl0aXZlCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgtMSkgIT09IHBhcnNlSW50KCItMSIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoLTEpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KC0xKSkpOwp9CgovL0NIRUNLIzIKaWYgKFN0cmluZyhwYXJzZUludChJbmZpbml0eSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUludChJbmZpbml0eSkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUludChJbmZpbml0eSkpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlSW50KE5hTikpICE9PSAiTmFOIikgewogICRFUlJPUignIzM6IFN0cmluZyhwYXJzZUludChOYU4pKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VJbnQoTmFOKSkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgtMCkgIT09IDApIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgtMCkgPT09IDAuIEFjdHVhbDogJyArIChwYXJzZUludCgtMCkpKTsKfSBlbHNlIHsKICBpZiAoMSAvIHBhcnNlSW50KC0wKSAhPT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSB7CiAgICAkRVJST1IoJyM0OiBwYXJzZUludCgtMCkgPT09ICswLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoLTApKSk7CiAgfQp9ICAgIAoK","commentary":"Operator use ToString","description":"Checking for number primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciB1bmRlZmluZWQgYW5kIG51bGwKICovCgovL0NIRUNLIzEKaWYgKCEoaXNOYU4ocGFyc2VJbnQodW5kZWZpbmVkKSkgJiYgaXNOYU4ocGFyc2VJbnQoIk5hTiIpKSkpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCh1bmRlZmluZWQpID09PSBOb3QtYS1OdW1iZXI7IHBhcnNlSW50KCJOYU4iKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIk5hTiIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoIShpc05hTihwYXJzZUludChudWxsKSkgJiYgaXNOYU4ocGFyc2VJbnQoIk5hTiIpKSkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludChudWxsKSA9PT0gTm90LWEtTnVtYmVyOyBwYXJzZUludCgiTmFOIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJOYU4iKSkpOwp9CgovL0NIRUNLIzMKaWYgKFN0cmluZyhwYXJzZUludCh1bmRlZmluZWQpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyMzOiBTdHJpbmcocGFyc2VJbnQodW5kZWZpbmVkKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlSW50KHVuZGVmaW5lZCkpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoU3RyaW5nKHBhcnNlSW50KG51bGwpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM0OiBTdHJpbmcocGFyc2VJbnQobnVsbCkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUludChudWxsKSkpKTsKfQoK","commentary":"Operator use ToString","description":"Checking for undefined and null","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBCb29sZWFuIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQppZiAoIShpc05hTihwYXJzZUludChuZXcgQm9vbGVhbih0cnVlKSkpICYmIGlzTmFOKHBhcnNlSW50KCJOYU4iKSkpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQobmV3IEJvb2xlYW4odHJ1ZSkpID09PSBOb3QtYS1OdW1iZXI7IHBhcnNlSW50KCJOYU4iKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIk5hTiIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoU3RyaW5nKHBhcnNlSW50KG5ldyBCb29sZWFuKGZhbHNlKSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUludChuZXcgQm9vbGVhbihmYWxzZSkpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VJbnQobmV3IEJvb2xlYW4oZmFsc2UpKSkpKTsKfQoK","commentary":"Operator use ToString","description":"Checking for Boolean object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDUuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBOdW1iZXIgb2JqZWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludChuZXcgTnVtYmVyKC0xKSkgIT09IHBhcnNlSW50KCItMSIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQobmV3IE51bWJlcigtMSkpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KG5ldyBOdW1iZXIoLTEpKSkpOwp9CgovL0NIRUNLIzIKaWYgKFN0cmluZyhwYXJzZUludChuZXcgTnVtYmVyKEluZmluaXR5KSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUludChuZXcgTnVtYmVyKEluZmluaXR5KSkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUludChuZXcgTnVtYmVyKEluZmluaXR5KSkpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlSW50KG5ldyBOdW1iZXIoTmFOKSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzM6IFN0cmluZyhwYXJzZUludChuZXcgTnVtYmVyKE5hTikpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VJbnQobmV3IE51bWJlcihOYU4pKSkpKTsKfQoK","commentary":"Operator use ToString","description":"Checking for Number object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDYuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBTdHJpbmcgb2JqZWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludChuZXcgU3RyaW5nKCItMSIpKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludChuZXcgU3RyaW5nKCItMSIpKSA9PT0gcGFyc2VJbnQoIi0xIikuIEFjdHVhbDogJyArIChwYXJzZUludChuZXcgU3RyaW5nKCItMSIpKSkpOwp9CgovL0NIRUNLIzIKaWYgKFN0cmluZyhwYXJzZUludChuZXcgU3RyaW5nKCJJbmZpbml0eSIpKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMjogU3RyaW5nKHBhcnNlSW50KG5ldyBTdHJpbmcoIkluZmluaXR5IikpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VJbnQobmV3IFN0cmluZygiSW5maW5pdHkiKSkpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlSW50KG5ldyBTdHJpbmcoIk5hTiIpKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMzogU3RyaW5nKHBhcnNlSW50KG5ldyBTdHJpbmcoIk5hTiIpKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlSW50KG5ldyBTdHJpbmcoIk5hTiIpKSkpKTsKfQoKLy9DSEVDSyM0CmlmIChTdHJpbmcocGFyc2VJbnQobmV3IFN0cmluZygiZmFsc2UiKSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzQ6IFN0cmluZyhwYXJzZUludChuZXcgU3RyaW5nKCJmYWxzZSIpKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlSW50KG5ldyBTdHJpbmcoImZhbHNlIikpKSkpOwp9Cgo=","commentary":"Operator use ToString","description":"Checking for String object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTFfVDcuanMKICogQGRlc2NyaXB0aW9uIElmIFR5cGUodmFsdWUpIGlzIE9iamVjdCwgZXZhbHVhdGUgVG9QcmltaXRpdmUodmFsdWUsIFN0cmluZykKICovCgovL0NIRUNLIzEKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19OwppZiAoaXNOYU4ocGFyc2VJbnQob2JqZWN0KSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMxOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAxfX07IHBhcnNlSW50KG9iamVjdCkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KG9iamVjdCkpKTsKfQoKLy9DSEVDSyMyCnZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDB9fTsKaWYgKHBhcnNlSW50KG9iamVjdCkgIT09IDApIHsKICAkRVJST1IoJyMyOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAxfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAwfX07IHBhcnNlSW50KG9iamVjdCkgPT09IDAuIEFjdHVhbDogJyArIChwYXJzZUludChvYmplY3QpKSk7Cn0gCgovL0NIRUNLIzMKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsKaWYgKHBhcnNlSW50KG9iamVjdCkgIT09IDEpIHsKICAkRVJST1IoJyMzOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAxfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiB7fX19OyBwYXJzZUludChvYmplY3QpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQob2JqZWN0KSkpOwp9CgovL0NIRUNLIzQKdHJ5IHsKICB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsKICBpZiAocGFyc2VJbnQob2JqZWN0KSAhPT0gMSkgewogICAgJEVSUk9SKCcjNC4xOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VJbnQob2JqZWN0KSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KG9iamVjdCkpKTsKICB9Cn0KY2F0Y2ggKGUpIHsKICBpZiAoZSA9PT0gImVycm9yIikgewogICAgJEVSUk9SKCcjNC4yOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VJbnQob2JqZWN0KSBub3QgdGhyb3cgImVycm9yIicpOwogIH0gZWxzZSB7CiAgICAkRVJST1IoJyM0LjM6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19OyBwYXJzZUludChvYmplY3QpIG5vdCB0aHJvdyBFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsKICB9Cn0KCi8vQ0hFQ0sjNQp2YXIgb2JqZWN0ID0ge3RvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19OwppZiAocGFyc2VJbnQob2JqZWN0KSAhPT0gMSkgewogICRFUlJPUignIzU6IHZhciBvYmplY3QgPSB7dG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAxfX07IHBhcnNlSW50KG9iamVjdCkgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUludChvYmplY3QpKSk7Cn0KCi8vQ0hFQ0sjNgp2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiB7fX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19CmlmIChwYXJzZUludChvYmplY3QpICE9PSAxKSB7CiAgJEVSUk9SKCcjNjogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VJbnQob2JqZWN0KSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KG9iamVjdCkpKTsKfQoKLy9DSEVDSyM3CnRyeSB7CiAgdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHt0aHJvdyAiZXJyb3IifX07CiAgcGFyc2VJbnQob2JqZWN0KTsKICAkRVJST1IoJyM3LjE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn19OyBwYXJzZUludChvYmplY3QpIHRocm93ICJlcnJvciIuIEFjdHVhbDogJyArIChwYXJzZUludChvYmplY3QpKSk7Cn0gIApjYXRjaCAoZSkgewogIGlmIChlICE9PSAiZXJyb3IiKSB7CiAgICAkRVJST1IoJyM3LjI6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn19OyBwYXJzZUludChvYmplY3QpIHRocm93ICJlcnJvciIuIEFjdHVhbDogJyArIChlKSk7CiAgfSAKfQoKLy9DSEVDSyM4CnRyeSB7CiAgdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fX07CiAgcGFyc2VJbnQob2JqZWN0KTsKICAkRVJST1IoJyM4LjE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiB7fX19OyBwYXJzZUludChvYmplY3QpIHRocm93IFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KG9iamVjdCkpKTsKfSAgCmNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjOC4yOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiB7fX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsgcGFyc2VJbnQob2JqZWN0KSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfSAKfQoK","commentary":"Operator use ToString","description":"If Type(value) is Object, evaluate ToPrimitive(value, String)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogVEFCIChVKzAwMDkpCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiXHUwMDA5MSIpICE9PSBwYXJzZUludCgiMSIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIlxcdTAwMDkxIikgPT09IHBhcnNlSW50KCIxIikuIEFjdHVhbDogJyArIChwYXJzZUludCgiXHUwMDA5MSIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIlx1MDAwOVx1MDAwOS0xIikgIT09IHBhcnNlSW50KCItMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIlxcdTAwMDlcXHUwMDA5LTEiKSA9PT0gcGFyc2VJbnQoIi0xIikuIEFjdHVhbDogJyArIChwYXJzZUludCgiXHUwMDA5XHUwMDA5LTEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIJMSIpICE9PSBwYXJzZUludCgiMSIpKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIgkxIikgPT09IHBhcnNlSW50KCIxIikuIEFjdHVhbDogJyArIChwYXJzZUludCgiCTEiKSkpOwp9CgovL0NIRUNLIzQKaWYgKHBhcnNlSW50KCIJCQkxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiCQkJMSIpID09PSBwYXJzZUludCgiMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIgkJCTEiKSkpOwp9CgovL0NIRUNLIzUKaWYgKHBhcnNlSW50KCIJCQlcdTAwMDkJCQlcdTAwMDktMSIpICE9PSBwYXJzZUludCgiLTEiKSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCIJCQlcXHUwMDA5CQkJXFx1MDAwOS0xIikgPT09IHBhcnNlSW50KCItMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIgkJCVx1MDAwOQkJCVx1MDAwOS0xIikpKTsKfQoKLy9DSEVDSyM2CmlmIChpc05hTihwYXJzZUludCgiXHUwMDA5IikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VJbnQoIlxcdTAwMDkiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIlx1MDAwOSIpKSk7Cn0KCg==","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: TAB (U+0009)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UMTAuanMKICogQGRlc2NyaXB0aW9uIFN0cldoaXRlU3BhY2VDaGFyIDo6IFVTUAogKi8KCi8vQ0hFQ0sjCnZhciBjb3VudCA9IDA7CnZhciBlcnJvckNvdW50ID0gMDsKdmFyIHVzcFUgPSBbIlx1MTY4MCIsICJcdTE4MEUiLCAiXHUyMDAwIiwgIlx1MjAwMSIsICJcdTIwMDIiLCAiXHUyMDAzIiwgIlx1MjAwNCIsICJcdTIwMDUiLCAiXHUyMDA2IiwgIlx1MjAwNyIsICJcdTIwMDgiLCAiXHUyMDA5IiwgIlx1MjAwQSIsICJcdTIwMkYiLCAiXHUyMDVGIiwgIlx1MzAwMCJdOwp2YXIgdXNwUyA9IFsiMTY4MCIsICIxODBFIiwgIjIwMDAiLCAiMjAwMSIsICIyMDAyIiwgIjIwMDMiLCAiMjAwNCIsICIyMDA1IiwgIjIwMDYiLCAiMjAwNyIsICIyMDA4IiwgIjIwMDkiLCAiMjAwQSIsICIyMDJGIiwgIjIwNUYiLCAiMzAwMCJdOwoKZm9yICh2YXIgaW5kZXggPSAwOyBpbmRleCA8IHVzcFUubGVuZ3RoOyBpbmRleCsrKSB7CiAgdmFyIHJlc3VsdCA9IHRydWU7CiAgaWYgKHBhcnNlSW50KHVzcFVbaW5kZXhdICsgIjEiKSAhPT0gcGFyc2VJbnQoIjEiKSkgewogICAgJEVSUk9SKCcjMS4nICsgIHVzcFNbaW5kZXhdICsgJyAnKTsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICAgaWYgKHBhcnNlSW50KHVzcFVbaW5kZXhdICsgdXNwVVtpbmRleF0gKyB1c3BVW2luZGV4XSArICIxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAgICRFUlJPUignIzIuJyArICB1c3BTW2luZGV4XSArICcgJyk7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKGlzTmFOKHBhcnNlSW50KHVzcFVbaW5kZXhdKSkgIT09IHRydWUpIHsKICAgICRFUlJPUignIzMuJyArICB1c3BTW2luZGV4XSArICcgJyk7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgICBlcnJvckNvdW50Kys7CiAgfQogIGNvdW50Kys7Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgeyAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: USP","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogU1AgKFUrMDAyMCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTAwMjAxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MDAyMDEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMjAxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUwMDIwXHUwMDIwLTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MDAyMFxcdTAwMjAtMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMjBcdTAwMjAtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VJbnQoIiAxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMzOiBwYXJzZUludCgiIDEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIgMSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VJbnQoIiAgICAgICAxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiICAgICAgIDEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIgICAgICAgMSIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VJbnQoIiAgICAgICBcdTAwMjAgICAgICAgXHUwMDIwLTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyM1OiBwYXJzZUludCgiICAgICAgIFxcdTAwMjAgICAgICAgXFx1MDAyMC0xIikgPT09IHBhcnNlSW50KCItMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIiAgICAgICBcdTAwMjAgICAgICAgXHUwMDIwLTEiKSkpOwp9CgovL0NIRUNLIzYKaWYgKGlzTmFOKHBhcnNlSW50KCJcdTAwMjAiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM2OiBwYXJzZUludCgiXFx1MDAyMCIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiXHUwMDIwIikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: SP (U+0020)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTkJTQiAoVSswMEEwKQogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIlx1MDBBMDEiKSAhPT0gcGFyc2VJbnQoIjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCJcXHUwMEEwMSIpID09PSBwYXJzZUludCgiMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIlx1MDBBMDEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlSW50KCJcdTAwQTBcdTAwQTAtMSIpICE9PSBwYXJzZUludCgiLTEiKSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCJcXHUwMEEwXFx1MDBBMC0xIikgPT09IHBhcnNlSW50KCItMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIlx1MDBBMFx1MDBBMC0xIikpKTsKfQoKLy9DSEVDSyMzCmlmIChpc05hTihwYXJzZUludCgiXHUwMEEwIikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIlxcdTAwQTAiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIlx1MDBBMCIpKSk7Cn0KCg==","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: NBSB (U+00A0)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogRkYgKFUrMDAwQykKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTAwMEMxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MDAwQzEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEMxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUwMDBDXHUwMDBDLTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MDAwQ1xcdTAwMEMtMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMENcdTAwMEMtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MDAwQyIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUwMDBDIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEMiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: FF (U+000C)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UNS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogVlQgKFUrMDAwQikKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTAwMEIxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MDAwQjEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEIxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUwMDBCXHUwMDBCLTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MDAwQlxcdTAwMEItMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEJcdTAwMEItMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MDAwQiIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUwMDBCIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEIiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: VT (U+000B)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UNi5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogQ1IgKFUrMDAwRCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTAwMEQxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MDAwRDEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEQxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUwMDBEXHUwMDBELTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MDAwRFxcdTAwMEQtMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMERcdTAwMEQtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MDAwRCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUwMDBEIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEQiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: CR (U+000D)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UNy5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTEYgKFUrMDAwQSkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTAwMEExIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MDAwQTEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEExIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUwMDBBXHUwMDBBLTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MDAwQVxcdTAwMEEtMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEFcdTAwMEEtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MDAwQSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUwMDBBIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTAwMEEiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: LF (U+000A)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UOC5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTFMgKFUrMjAyOCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTIwMjgxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MjAyODEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjgxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUyMDI4XHUyMDI4LTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MjAyOFxcdTIwMjgtMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjhcdTIwMjgtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MjAyOCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUyMDI4IikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjgiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: LS (U+2028)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMl9UOS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogUFMgKFUrMjAyOSkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCJcdTIwMjkxIikgIT09IHBhcnNlSW50KCIxIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiXFx1MjAyOTEiKSA9PT0gcGFyc2VJbnQoIjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjkxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiXHUyMDI5XHUyMDI5LTEiKSAhPT0gcGFyc2VJbnQoIi0xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiXFx1MjAyOVxcdTIwMjktMSIpID09PSBwYXJzZUludCgiLTEiKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjlcdTIwMjktMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIlx1MjAyOSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCJcXHUyMDI5IikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCJcdTIwMjkiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: PS (U+2029)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A2_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIGJvb2xlYW4gcHJpbWl0aXZlCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiMTEiLCBmYWxzZSkgIT09IHBhcnNlSW50KCIxMSIsIDEwKSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIxMSIsIGZhbHNlKSA9PT0gcGFyc2VJbnQoIjExIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgZmFsc2UpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoaXNOYU4ocGFyc2VJbnQoIjExIiwgdHJ1ZSkpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIjExIiwgdHJ1ZSkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIHRydWUpKSk7Cn0KCg==","commentary":"Operator use ToNumber","description":"Checking for boolean primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIHN0cmluZyBwcmltaXRpdmUKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIxMSIsICIyIikgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIjExIiwgIjIiKSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAiMiIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjExIiwgIjAiKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIjExIiwgIjAiKSA9PT0gcGFyc2VJbnQoIjExIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgIjAiKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIxMSIsICIiKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjExIiwgIiIpID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAiIikpKTsKfQoKCg==","commentary":"Operator use ToNumber","description":"Checking for string primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIHVuZGVmaW5lZCBhbmQgbnVsbAogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIjExIiwgdW5kZWZpbmVkKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIjExIiwgdW5kZWZpbmVkKSA9PT0gcGFyc2VJbnQoIjExIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgdW5kZWZpbmVkKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlSW50KCIxMSIsIG51bGwpICE9PSBwYXJzZUludCgiMTEiLCAxMCkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiMTEiLCBudWxsKSA9PT0gcGFyc2VJbnQoIjExIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgbnVsbCkpKTsKfQoK","commentary":"Operator use ToNumber","description":"Checking for undefined and null","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIEJvb2xlYW4gb2JqZWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiMTEiLCBuZXcgQm9vbGVhbihmYWxzZSkpICE9PSBwYXJzZUludCgiMTEiLCBmYWxzZSkpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMTEiLCBuZXcgQm9vbGVhbihmYWxzZSkpID09PSBwYXJzZUludCgiMTEiLCBmYWxzZSkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBuZXcgQm9vbGVhbihmYWxzZSkpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoaXNOYU4ocGFyc2VJbnQoIjExIiwgbmV3IEJvb2xlYW4odHJ1ZSkpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIxMSIsIG5ldyBCb29sZWFuKHRydWUpKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgbmV3IEJvb2xlYW4odHJ1ZSkpKSk7Cn0KCg==","commentary":"Operator use ToNumber","description":"Checking for Boolean object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UNS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIE51bWJlciBvYmplY3QKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIxMSIsIG5ldyBOdW1iZXIoMikpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIxMSIsIG5ldyBOdW1iZXIoMikpID09PSBwYXJzZUludCgiMTEiLCAyKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIG5ldyBOdW1iZXIoMikpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjExIiwgbmV3IE51bWJlcihJbmZpbml0eSkpICE9PSBwYXJzZUludCgiMTEiLCBJbmZpbml0eSkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiMTEiLCBuZXcgTnVtYmVyKEluZmluaXR5KSkgPT09IHBhcnNlSW50KCIxMSIsIEluZmluaXR5KS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIG5ldyBOdW1iZXIoSW5maW5pdHkpKSkpOwp9Cgo=","commentary":"Operator use ToNumber","description":"Checking for Number object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UNi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZm9yIFN0cmluZyBvYmplY3QKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIxMSIsIG5ldyBTdHJpbmcoIjIiKSkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIjExIiwgbmV3IFN0cmluZygiMiIpKSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBuZXcgU3RyaW5nKCIyIikpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjExIiwgbmV3IFN0cmluZygiSW5maW5pdHkiKSkgIT09IHBhcnNlSW50KCIxMSIsIEluZmluaXR5KSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIxMSIsIG5ldyBTdHJpbmcoIkluZmluaXR5IikpID09PSBwYXJzZUludCgiMTEiLCBJbmZpbml0eSkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBuZXcgU3RyaW5nKCJJbmZpbml0eSIpKSkpOwp9Cgo=","commentary":"Operator use ToNumber","description":"Checking for String object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9OdW1iZXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTMuMV9UNy5qcwogKiBAZGVzY3JpcHRpb24gSWYgVHlwZSh2YWx1ZSkgaXMgT2JqZWN0LCBldmFsdWF0ZSBUb1ByaW1pdGl2ZSh2YWx1ZSwgTnVtYmVyKQogKi8KCi8vQ0hFQ0sjMQp2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAyfX07CmlmIChwYXJzZUludCgiMTEiLCBvYmplY3QpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBvYmplY3QpKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAyfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAxfX07CmlmIChwYXJzZUludCgiMTEiLCBvYmplY3QpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzI6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBvYmplY3QpKSk7Cn0gCgovL0NIRUNLIzMKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMn0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsKaWYgKHBhcnNlSW50KCIxMSIsIG9iamVjdCkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjMzogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMn0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBvYmplY3QpKSk7Cn0KCi8vQ0hFQ0sjNAp0cnkgewogIHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn19OwogIGlmIChwYXJzZUludCgiMTEiLCBvYmplY3QpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICAgJEVSUk9SKCcjNC4xOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAyfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBvYmplY3QpKSk7CiAgfQp9CmNhdGNoIChlKSB7CiAgaWYgKGUgPT09ICJlcnJvciIpIHsKICAgICRFUlJPUignIzQuMjogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMn0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHt0aHJvdyAiZXJyb3IifX07IHBhcnNlSW50KCIxMSIsIG9iamVjdCkgbm90IHRocm93ICJlcnJvciInKTsKICB9IGVsc2UgewogICAgJEVSUk9SKCcjNC4zOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAyfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSBub3QgdGhyb3cgRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfQp9CgovL0NIRUNLIzUKdmFyIG9iamVjdCA9IHt0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9fTsKaWYgKHBhcnNlSW50KCIxMSIsIG9iamVjdCkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjNTogdmFyIG9iamVjdCA9IHt0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9fTsgcGFyc2VJbnQoIjExIiwgb2JqZWN0KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBvYmplY3QpKSk7Cn0KCi8vQ0hFQ0sjNgp2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiB7fX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4gMn19CmlmIChwYXJzZUludCgiMTEiLCBvYmplY3QpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzY6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAyfX07IHBhcnNlSW50KCIxMSIsIG9iamVjdCkgPT09IHBhcnNlSW50KCIxMSIsIDIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgb2JqZWN0KSkpOwp9CgovL0NIRUNLIzcKdHJ5IHsKICB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDJ9fTsKICBwYXJzZUludCgiMTEiLCBvYmplY3QpOwogICRFUlJPUignIzcuMTogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHt0aHJvdyAiZXJyb3IifSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAyfX07IHBhcnNlSW50KCIxMSIsIG9iamVjdCkgdGhyb3cgImVycm9yIi4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIG9iamVjdCkpKTsKfSAgCmNhdGNoIChlKSB7CiAgaWYgKGUgIT09ICJlcnJvciIpIHsKICAgICRFUlJPUignIzcuMjogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHt0aHJvdyAiZXJyb3IifSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAyfX07IHBhcnNlSW50KCIxMSIsIG9iamVjdCkgdGhyb3cgImVycm9yIi4gQWN0dWFsOiAnICsgKGUpKTsKICB9IAp9CgovL0NIRUNLIzgKdHJ5IHsKICB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiB7fX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsKICBwYXJzZUludCgiMTEiLCBvYmplY3QpOwogICRFUlJPUignIzguMTogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fX07IHBhcnNlSW50KCIxMSIsIG9iamVjdCkgdGhyb3cgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgb2JqZWN0KSkpOwp9ICAKY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyM4LjI6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiB7fX19OyBwYXJzZUludCgiMTEiLCBvYmplY3QpIHRocm93IFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsKICB9IAp9Cgo=","commentary":"Operator use ToNumber","description":"If Type(value) is Object, evaluate ToPrimitive(value, Number)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9JbnQzMgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMy4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBJZiByYWRpeCBpcyBOYU4sICswLCAtMCwgK0luZmluaXR5LCAtSW5maW5pdHksIHJldHVybiByYWRpeCA9ICswCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiMTEiLCBOYU4pICE9PSBwYXJzZUludCgiMTEiLCAxMCkpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMTEiLCBOYU4pID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBOYU4pKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjExIiwgKzApICE9PSBwYXJzZUludCgiMTEiLCAxMCkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiMTEiLCArMCkgPT09IHBhcnNlSW50KCIxMSIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsICswKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIxMSIsIC0wKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjExIiwgLTApID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAtMCkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgiMTEiLCBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpICE9PSBwYXJzZUludCgiMTEiLCAxMCkpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiMTEiLCBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VJbnQoIjExIiwgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VJbnQoIjExIiwgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSA9PT0gcGFyc2VJbnQoIjExIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSkpOwp9Cgo=","commentary":"Operator use ToInt32","description":"If radix is NaN, +0, -0, +Infinity, -Infinity, return radix = +0","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9JbnQzMgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMy4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBUb0ludDMyIHVzZSBmbG9vcgogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIjExIiwgMi4xKSAhPT0gcGFyc2VJbnQoIjExIiwgMikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMTEiLCAyLjEpID09PSBwYXJzZUludCgiMTEiLCAyKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIDIuMSkpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiMTEiLCAyLjUpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIxMSIsIDIuNSkgPT09IHBhcnNlSW50KCIxMSIsIDIpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgMi41KSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIxMSIsIDIuOSkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjExIiwgMi45KSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAyLjkpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VJbnQoIjExIiwgMi4wMDAwMDAwMDAwMDEpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzQ6IHBhcnNlSW50KCIxMSIsIDIuMDAwMDAwMDAwMDAxKSA9PT0gcGFyc2VJbnQoIjExIiwgMikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAyLjAwMDAwMDAwMDAwMSkpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiMTEiLCAyLjk5OTk5OTk5OTk5OSkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VJbnQoIjExIiwgMi45OTk5OTk5OTk5OTkpID09PSBwYXJzZUludCgiMTEiLCAyKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIDIuOTk5OTk5OTk5OTk5KSkpOwp9Cgo=","commentary":"Operator use ToInt32","description":"ToInt32 use floor","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9JbnQzMgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BMy4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBUb0ludDMyIHVzZSBtb2R1bG8KICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIxMSIsIDQyOTQ5NjcyOTgpICE9PSBwYXJzZUludCgiMTEiLCAyKSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIxMSIsIDQyOTQ5NjcyOTgpID09PSBwYXJzZUludCgiMTEiLCAyKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIDQyOTQ5NjcyOTgpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjExIiwgNDI5NDk2NzI5NikgIT09IHBhcnNlSW50KCIxMSIsIDEwKSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIxMSIsIDQyOTQ5NjcyOTYpID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCA0Mjk0OTY3Mjk2KSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlSW50KCIxMSIsIC0yMTQ3NDgzNjUwKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMzOiBwYXJzZUludCgiMTEiLCAyMTQ3NDgzNjUwKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgMjE0NzQ4MzY1MCkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgiMTEiLCAtNDI5NDk2NzI5NCkgIT09IHBhcnNlSW50KCIxMSIsIDIpKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VJbnQoIjExIiwgLTQyOTQ5NjcyOTQpID09PSBwYXJzZUludCgiMTEiLCAyKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIC00Mjk0OTY3Mjk0KSkpOwp9Cgo=","commentary":"Operator use ToInt32","description":"ToInt32 use modulo","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A3.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSID0gMCBvciBSID0gdW5kZWZpbmVkLCB0aGVuIFIgPSAxMAogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNC4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBSID0gMAogKi8KCi8vQ0hFQ0sjMAppZiAocGFyc2VJbnQoIjAiLCAwKSAhPT0gcGFyc2VJbnQoIjAiLCAxMCkpIHsKICAkRVJST1IoJyMwOiBwYXJzZUludCgiMCIsIDApID09PSBwYXJzZUludCgiMCIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwIiwgMCkpKTsKfSAgCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIxIiwgMCkgIT09IHBhcnNlSW50KCIxIiwgMTApKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIjEiLCAwKSA9PT0gcGFyc2VJbnQoIjAxIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEiLCAwKSkpOwp9ICAKCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIjIiLCAwKSAhPT0gcGFyc2VJbnQoIjIiLCAxMCkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiMiIsIDApID09PSBwYXJzZUludCgiMiIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIyIiwgMCkpKTsKfSAgCgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIzIiwgMCkgIT09IHBhcnNlSW50KCIzIiwgMTApKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjMiLCAwKSA9PT0gcGFyc2VJbnQoIjMiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMyIsIDApKSk7Cn0gCgovL0NIRUNLIzQKaWYgKHBhcnNlSW50KCI0IiwgMCkgIT09IHBhcnNlSW50KCI0IiwgMTApKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VJbnQoIjQiLCAwKSA9PT0gcGFyc2VJbnQoNCIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI0IiwgMCkpKTsKfSAKCi8vQ0hFQ0sjNQppZiAocGFyc2VJbnQoIjUiLCAwKSAhPT0gcGFyc2VJbnQoIjUiLCAxMCkpIHsKICAkRVJST1IoJyM1OiBwYXJzZUludCgiNSIsIDApID09PSBwYXJzZUludCgiNSIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI1IiwgMCkpKTsKfSAgCgovL0NIRUNLIzYKaWYgKHBhcnNlSW50KCI2IiwgMCkgIT09IHBhcnNlSW50KCI2IiwgMTApKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VJbnQoIjYiLCAwKSA9PT0gcGFyc2VJbnQoIjYiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiNiIsIDApKSk7Cn0gIAoKLy9DSEVDSyM3CmlmIChwYXJzZUludCgiNyIsIDApICE9PSBwYXJzZUludCgiNyIsIDEwKSkgewogICRFUlJPUignIzc6IHBhcnNlSW50KCI3IiwgMCkgPT09IHBhcnNlSW50KCI3IiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjciLCAwKSkpOwp9ICAKCi8vQ0hFQ0sjOAppZiAocGFyc2VJbnQoIjgiLCAwKSAhPT0gcGFyc2VJbnQoIjgiLCAxMCkpIHsKICAkRVJST1IoJyM4OiBwYXJzZUludCgiOCIsIDApID09PSBwYXJzZUludCgiOCIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI4IiwgMCkpKTsKfSAgCgovL0NIRUNLIzkKaWYgKHBhcnNlSW50KCI5IiwgMCkgIT09IHBhcnNlSW50KCI5IiwgMTApKSB7CiAgJEVSUk9SKCcjOTogcGFyc2VJbnQoIjkiLCAwKSA9PT0gcGFyc2VJbnQoIjkiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiOSIsIDApKSk7Cn0gIAoKLy9DSEVDSyMxMAppZiAocGFyc2VJbnQoIjEwIiwgMCkgIT09IHBhcnNlSW50KCIxMCIsIDEwKSkgewogICRFUlJPUignIzEwOiBwYXJzZUludCgiMTAiLCAwKSA9PT0gcGFyc2VJbnQoIjEwIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEwIiwgMCkpKTsKfSAgCgovL0NIRUNLIzExCmlmIChwYXJzZUludCgiMTEiLCAwKSAhPT0gcGFyc2VJbnQoIjExIiwgMTApKSB7CiAgJEVSUk9SKCcjMTE6IHBhcnNlSW50KCIxMSIsIDApID09PSBwYXJzZUludCgiMTEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTEiLCAwKSkpOwp9ICAKCi8vQ0hFQ0sjMTIKaWYgKHBhcnNlSW50KCI5OTk5IiwgMCkgIT09IHBhcnNlSW50KCI5OTk5IiwgMTApKSB7CiAgJEVSUk9SKCcjMTI6IHBhcnNlSW50KCI5OTk5IiwgMCkgPT09IHBhcnNlSW50KCI5OTk5IiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjk5OTkiLCAwKSkpOwp9ICAKCg==","commentary":"If R = 0 or R = undefined, then R = 10","description":"R = 0","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A4.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSID0gMCBvciBSID0gdW5kZWZpbmVkLCB0aGVuIFIgPSAxMAogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNC4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSID0gdW5kZWZpbmVkCiAqLwoKLy9DSEVDSyMwCmlmIChwYXJzZUludCgiMCIpICE9PSBwYXJzZUludCgiMCIsIDEwKSkgewogICRFUlJPUignIzA6IHBhcnNlSW50KCIwIikgPT09IHBhcnNlSW50KCIwIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjAiKSkpOwp9ICAKCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIjEiKSAhPT0gcGFyc2VJbnQoIjEiLCAxMCkpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMSIpID09PSBwYXJzZUludCgiMDEiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMSIpKSk7Cn0gIAoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiMiIpICE9PSBwYXJzZUludCgiMiIsIDEwKSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIyIikgPT09IHBhcnNlSW50KCIyIiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjIiKSkpOwp9ICAKCi8vQ0hFQ0sjMwppZiAocGFyc2VJbnQoIjMiKSAhPT0gcGFyc2VJbnQoIjMiLCAxMCkpIHsKICAkRVJST1IoJyMzOiBwYXJzZUludCgiMyIpID09PSBwYXJzZUludCgiMyIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIzIikpKTsKfSAKCi8vQ0hFQ0sjNAppZiAocGFyc2VJbnQoIjQiKSAhPT0gcGFyc2VJbnQoIjQiLCAxMCkpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiNCIpID09PSBwYXJzZUludCg0IiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjQiKSkpOwp9IAoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiNSIpICE9PSBwYXJzZUludCgiNSIsIDEwKSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCI1IikgPT09IHBhcnNlSW50KCI1IiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjUiKSkpOwp9ICAKCi8vQ0hFQ0sjNgppZiAocGFyc2VJbnQoIjYiKSAhPT0gcGFyc2VJbnQoIjYiLCAxMCkpIHsKICAkRVJST1IoJyM2OiBwYXJzZUludCgiNiIpID09PSBwYXJzZUludCgiNiIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI2IikpKTsKfSAgCgovL0NIRUNLIzcKaWYgKHBhcnNlSW50KCI3IikgIT09IHBhcnNlSW50KCI3IiwgMTApKSB7CiAgJEVSUk9SKCcjNzogcGFyc2VJbnQoIjciKSA9PT0gcGFyc2VJbnQoIjciLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiNyIpKSk7Cn0gIAoKLy9DSEVDSyM4CmlmIChwYXJzZUludCgiOCIpICE9PSBwYXJzZUludCgiOCIsIDEwKSkgewogICRFUlJPUignIzg6IHBhcnNlSW50KCI4IikgPT09IHBhcnNlSW50KCI4IiwgMTApLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjgiKSkpOwp9ICAKCi8vQ0hFQ0sjOQppZiAocGFyc2VJbnQoIjkiKSAhPT0gcGFyc2VJbnQoIjkiLCAxMCkpIHsKICAkRVJST1IoJyM5OiBwYXJzZUludCgiOSIpID09PSBwYXJzZUludCgiOSIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI5IikpKTsKfSAgCgovL0NIRUNLIzEwCmlmIChwYXJzZUludCgiMTAiKSAhPT0gcGFyc2VJbnQoIjEwIiwgMTApKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCIxMCIpID09PSBwYXJzZUludCgiMTAiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTAiKSkpOwp9ICAKCi8vQ0hFQ0sjMTEKaWYgKHBhcnNlSW50KCIxMSIpICE9PSBwYXJzZUludCgiMTEiLCAxMCkpIHsKICAkRVJST1IoJyMxMTogcGFyc2VJbnQoIjExIikgPT09IHBhcnNlSW50KCIxMSIsIDEwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIpKSk7Cn0gIAoKLy9DSEVDSyMxMgppZiAocGFyc2VJbnQoIjk5OTkiKSAhPT0gcGFyc2VJbnQoIjk5OTkiLCAxMCkpIHsKICAkRVJST1IoJyMxMjogcGFyc2VJbnQoIjk5OTkiKSA9PT0gcGFyc2VJbnQoIjk5OTkiLCAxMCkuIEFjdHVhbDogJyArIChwYXJzZUludCgiOTk5OSIpKSk7Cn0gIAoK","commentary":"If R = 0 or R = undefined, then R = 10","description":"R = undefined","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A4.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSIDwgMiBvciBSID4gMzYsIHRoZW4gcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNC4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBSID0gMQogKi8KCi8vQ0hFQ0sjMAppZiAoaXNOYU4ocGFyc2VJbnQoIjAiLCAxKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMwOiBwYXJzZUludCgiMCIsIDEpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiMCIsIDEpKSk7Cn0gIAoKLy9DSEVDSyMxCmlmIChpc05hTihwYXJzZUludCgiMSIsIDEpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIxIiwgMSkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxIiwgMSkpKTsKfSAgCgovL0NIRUNLIzIKaWYgKGlzTmFOKHBhcnNlSW50KCIyIiwgMSkpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIjIiLCAxKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjIiLCAxKSkpOwp9ICAKCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIjMiLCAxKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMzOiBwYXJzZUludCgiMyIsIDEpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiMyIsIDEpKSk7Cn0gCgovL0NIRUNLIzQKaWYgKGlzTmFOKHBhcnNlSW50KCI0IiwgMSkpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VJbnQoIjQiLCAxKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjQiLCAxKSkpOwp9IAoKLy9DSEVDSyM1CmlmIChpc05hTihwYXJzZUludCgiNSIsIDEpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCI1IiwgMSkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI1IiwgMSkpKTsKfSAgCgovL0NIRUNLIzYKaWYgKGlzTmFOKHBhcnNlSW50KCI2IiwgMSkpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VJbnQoIjYiLCAxKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjYiLCAxKSkpOwp9ICAKCi8vQ0hFQ0sjNwppZiAoaXNOYU4ocGFyc2VJbnQoIjciLCAxKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM3OiBwYXJzZUludCgiNyIsIDEpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiNyIsIDEpKSk7Cn0gIAoKLy9DSEVDSyM4CmlmIChpc05hTihwYXJzZUludCgiOCIsIDEpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzg6IHBhcnNlSW50KCI4IiwgMSkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI4IiwgMSkpKTsKfSAgCgovL0NIRUNLIzkKaWYgKGlzTmFOKHBhcnNlSW50KCI5IiwgMSkpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjOTogcGFyc2VJbnQoIjkiLCAxKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjkiLCAxKSkpOwp9ICAKCi8vQ0hFQ0sjMTAKaWYgKGlzTmFOKHBhcnNlSW50KCIxMCIsIDEpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzEwOiBwYXJzZUludCgiMTAiLCAxKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEwIiwgMSkpKTsKfSAgCgovL0NIRUNLIzExCmlmIChpc05hTihwYXJzZUludCgiMTEiLCAxKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMxMTogcGFyc2VJbnQoIjExIiwgMSkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIDEpKSk7Cn0gIAoK","commentary":"If R < 2 or R > 36, then return NaN","description":"R = 1","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A4.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSIDwgMiBvciBSID4gMzYsIHRoZW4gcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNC4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSID0gMzcKICovCgovL0NIRUNLIzAKaWYgKGlzTmFOKHBhcnNlSW50KCIwIiwgMzcpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzA6IHBhcnNlSW50KCIwIiwgMzcpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiMCIsIDM3KSkpOwp9ICAKCi8vQ0hFQ0sjMQppZiAoaXNOYU4ocGFyc2VJbnQoIjEiLCAzNykpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQoIjEiLCAzNykgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxIiwgMzcpKSk7Cn0gIAoKLy9DSEVDSyMyCmlmIChpc05hTihwYXJzZUludCgiMiIsIDM3KSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiMiIsIDM3KSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjIiLCAzNykpKTsKfSAgCgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlSW50KCIzIiwgMzcpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCIzIiwgMzcpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiMyIsIDM3KSkpOwp9IAoKLy9DSEVDSyM0CmlmIChpc05hTihwYXJzZUludCgiNCIsIDM3KSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiNCIsIDM3KSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjQiLCAzNykpKTsKfSAKCi8vQ0hFQ0sjNQppZiAoaXNOYU4ocGFyc2VJbnQoIjUiLCAzNykpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VJbnQoIjUiLCAzNykgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI1IiwgMzcpKSk7Cn0gIAoKLy9DSEVDSyM2CmlmIChpc05hTihwYXJzZUludCgiNiIsIDM3KSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM2OiBwYXJzZUludCgiNiIsIDM3KSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjYiLCAzNykpKTsKfSAgCgovL0NIRUNLIzcKaWYgKGlzTmFOKHBhcnNlSW50KCI3IiwgMzcpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzc6IHBhcnNlSW50KCI3IiwgMzcpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiNyIsIDM3KSkpOwp9ICAKCi8vQ0hFQ0sjOAppZiAoaXNOYU4ocGFyc2VJbnQoIjgiLCAzNykpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjODogcGFyc2VJbnQoIjgiLCAzNykgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCI4IiwgMzcpKSk7Cn0gIAoKLy9DSEVDSyM5CmlmIChpc05hTihwYXJzZUludCgiOSIsIDM3KSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM5OiBwYXJzZUludCgiOSIsIDM3KSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjkiLCAzNykpKTsKfSAgCgovL0NIRUNLIzEwCmlmIChpc05hTihwYXJzZUludCgiMTAiLCAzNykpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCIxMCIsIDM3KSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEwIiwgMzcpKSk7Cn0gIAoKLy9DSEVDSyMxMQppZiAoaXNOYU4ocGFyc2VJbnQoIjExIiwgMzcpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzExOiBwYXJzZUludCgiMTEiLCAzNykgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMSIsIDM3KSkpOwp9ICAKCg==","commentary":"If R < 2 or R > 36, then return NaN","description":"R = 37","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A4.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBSIDwgMiBvciBSID4gMzYsIHRoZW4gcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNC4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QKICovCgovL0NIRUNLIwp2YXIgcG93ID0gMjsKZm9yICh2YXIgaSA9IDE7IGkgPCAzMjsgaSsrKSB7ICAgCiAgaWYgKHBvdyA+IDM2KSB7ICAKICAgIHZhciByZXMgPSB0cnVlOyAgCiAgICBpZiAoaXNOYU4ocGFyc2VJbnQoMSwgcG93KSkgIT09IHRydWUpIHsKICAgICAgJEVSUk9SKCcjMS4nICsgaSArICc6IElmIFIgPCAyIG9yIFIgPiAzNiwgdGhlbiByZXR1cm4gTmFOJyk7CiAgICB9CiAgICBpZiAoaXNOYU4ocGFyc2VJbnQoMSwgLXBvdykpICE9PSB0cnVlKSB7CiAgICAgICRFUlJPUignIzIuJyArIGkgKyAnOiBJZiBSIDwgMiBvciBSID4gMzYsIHRoZW4gcmV0dXJuIE5hTicpOwogICAgfQogIH0KICBwb3cgPSBwb3cgKiAyOyAgICAgICAgICAgICAgICAgICAgICAgIAp9ICAgIAoK","commentary":"If R < 2 or R > 36, then return NaN","description":"Complex test","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A4.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBwYXJzZUludCBpcyBubyBsb25nZXIgYWxsb3dlZCB0byB0cmVhdCBhIGxlYWRpbmcgemVybyBhcyBpbmRpY2F0aW5nCiAqIG9jdGFsLiAgIklmIHJhZGl4IGlzIHVuZGVmaW5lZCBvciAwLCBpdCBpcyBhc3N1bWVkIHRvIGJlIDEwIGV4Y2VwdAogKiB3aGVuIHRoZSBudW1iZXIgYmVnaW5zIHdpdGggdGhlIGNoYXJhY3RlciBwYWlycyAweCBvciAwWCwgaW4gd2hpY2gKICogY2FzZSBhIHJhZGl4IG9mIDE2IGlzIGFzc3VtZWQuIgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVjayBpZiBwYXJzZUludCBzdGlsbCBhY2NlcHRzIG9jdGFsCiAqLwoKaWYgKHBhcnNlSW50KCcwMTAnKSAhPT0gMTApIHsKICAkRVJST1IoInBhcnNlSW50IHNob3VsZCBubyBsb25nZXIgYWNjZXB0IG9jdGFsIik7Cn0K","commentary":"parseInt is no longer allowed to treat a leading zero as indicating\noctal. \"If radix is undefined or 0, it is assumed to be 10 except\nwhen the number begins with the character pairs 0x or 0X, in which\ncase a radix of 16 is assumed.\"","description":"Check if parseInt still accepts octal","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A5.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgbGVuZ3RoIG9mIFMgaXMgYXQgbGVhc3QgMiBhbmQgdGhlIGZpcnN0IHR3byBjaGFyYWN0ZXJzIG9mIFMKICogYXJlIGVpdGhlciAweCBvciAwWCwgdGhlbiByZW1vdmUgdGhlIGZpcnN0IHR3byBjaGFyYWN0ZXJzIGZyb20gUyBhbmQgbGV0IFIgPSAxNgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiA6IDB4CiAqLwoKLy9DSEVDSyMwCmlmIChwYXJzZUludCgiMHgwIiwgMCkgICE9PSBwYXJzZUludCgiMCIsIDE2KSkgewogICRFUlJPUignIzA6IHBhcnNlSW50KCIweDAiLCAwKSA9PT0gcGFyc2VJbnQoIjAiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgwIiwgMCkpKTsKfQoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiMHgxIiwgMCkgICE9PSBwYXJzZUludCgiMSIsIDE2KSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIweDEiLCAwKSA9PT0gcGFyc2VJbnQoIjEiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxIiwgMCkpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiMHgyIiwgMCkgICE9PSBwYXJzZUludCgiMiIsIDE2KSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIweDIiLCAwKSA9PT0gcGFyc2VJbnQoIjIiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgyIiwgMCkpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUludCgiMHgzIiwgMCkgICE9PSBwYXJzZUludCgiMyIsIDE2KSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCIweDMiLCAwKSA9PT0gcGFyc2VJbnQoIjMiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgzIiwgMCkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgiMHg0IiwgMCkgICE9PSBwYXJzZUludCgiNCIsIDE2KSkgewogICRFUlJPUignIzQ6IHBhcnNlSW50KCIweDQiLCAwKSA9PT0gcGFyc2VJbnQoIjQiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg0IiwgMCkpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiMHg1IiwgMCkgICE9PSBwYXJzZUludCgiNSIsIDE2KSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCIweDUiLCAwKSA9PT0gcGFyc2VJbnQoIjUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg1IiwgMCkpKTsKfQoKLy9DSEVDSyM2CmlmIChwYXJzZUludCgiMHg2IiwgMCkgICE9PSBwYXJzZUludCgiNiIsIDE2KSkgewogICRFUlJPUignIzY6IHBhcnNlSW50KCIweDYiLCAwKSA9PT0gcGFyc2VJbnQoIjYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg2IiwgMCkpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUludCgiMHg3IiwgMCkgICE9PSBwYXJzZUludCgiNyIsIDE2KSkgewogICRFUlJPUignIzc6IHBhcnNlSW50KCIweDciLCAwKSA9PT0gcGFyc2VJbnQoIjciLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg3IiwgMCkpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUludCgiMHg4IiwgMCkgICE9PSBwYXJzZUludCgiOCIsIDE2KSkgewogICRFUlJPUignIzg6IHBhcnNlSW50KCIweDgiLCAwKSA9PT0gcGFyc2VJbnQoIjgiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg4IiwgMCkpKTsKfQoKLy9DSEVDSyM5CmlmIChwYXJzZUludCgiMHg5IiwgMCkgICE9PSBwYXJzZUludCgiOSIsIDE2KSkgewogICRFUlJPUignIzk6IHBhcnNlSW50KCIweDkiLCAwKSA9PT0gcGFyc2VJbnQoIjkiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHg5IiwgMCkpKTsKfQoKLy9DSEVDSyNBCmlmIChwYXJzZUludCgiMHhBIiwgMCkgICE9PSBwYXJzZUludCgiQSIsIDE2KSkgewogICRFUlJPUignI0E6IHBhcnNlSW50KCIweEEiLCAwKSA9PT0gcGFyc2VJbnQoIkEiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhBIiwgMCkpKTsKfQoKLy9DSEVDSyNCCmlmIChwYXJzZUludCgiMHhCIiwgMCkgICE9PSBwYXJzZUludCgiQiIsIDE2KSkgewogICRFUlJPUignI0I6IHBhcnNlSW50KCIweEIiLCAwKSA9PT0gcGFyc2VJbnQoIkIiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhCIiwgMCkpKTsKfQoKLy9DSEVDSyNDCmlmIChwYXJzZUludCgiMHhDIiwgMCkgICE9PSBwYXJzZUludCgiQyIsIDE2KSkgewogICRFUlJPUignI0M6IHBhcnNlSW50KCIweEMiLCAwKSA9PT0gcGFyc2VJbnQoIkMiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhDIiwgMCkpKTsKfQoKLy9DSEVDSyNECmlmIChwYXJzZUludCgiMHhEIiwgMCkgICE9PSBwYXJzZUludCgiRCIsIDE2KSkgewogICRFUlJPUignI0Q6IHBhcnNlSW50KCIweEQiLCAwKSA9PT0gcGFyc2VJbnQoIkQiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhEIiwgMCkpKTsKfQoKLy9DSEVDSyNFCmlmIChwYXJzZUludCgiMHhFIiwgMCkgICE9PSBwYXJzZUludCgiRSIsIDE2KSkgewogICRFUlJPUignI0U6IHBhcnNlSW50KCIweEUiLCAwKSA9PT0gcGFyc2VJbnQoIkUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhFIiwgMCkpKTsKfQoKLy9DSEVDSyNGCmlmIChwYXJzZUludCgiMHhGIiwgMCkgICE9PSBwYXJzZUludCgiRiIsIDE2KSkgewogICRFUlJPUignI0Y6IHBhcnNlSW50KCIweEYiLCAwKSA9PT0gcGFyc2VJbnQoIkYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhGIiwgMCkpKTsKfQoKLy9DSEVDSyNFCmlmIChwYXJzZUludCgiMHhFIiwgMCkgICE9PSBwYXJzZUludCgiRSIsIDE2KSkgewogICRFUlJPUignI0U6IHBhcnNlSW50KCIweEUiLCAwKSA9PT0gcGFyc2VJbnQoIkUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhFIiwgMCkpKTsKfQoKLy9DSEVDSyNBQkNERUYKaWYgKHBhcnNlSW50KCIweEFCQ0RFRiIsIDApICAhPT0gcGFyc2VJbnQoIkFCQ0RFRiIsIDE2KSkgewogICRFUlJPUignI0FCQ0RFRjogcGFyc2VJbnQoIjB4QUJDREVGIiwgMCkgPT09IHBhcnNlSW50KCJBQkNERUYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHhBQkNERUYiLCAwKSkpOwp9ICAgICAKCg==","commentary":"If the length of S is at least 2 and the first two characters of S\nare either 0x or 0X, then remove the first two characters from S and let R = 16","description":": 0x","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A5.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgbGVuZ3RoIG9mIFMgaXMgYXQgbGVhc3QgMiBhbmQgdGhlIGZpcnN0IHR3byBjaGFyYWN0ZXJzIG9mIFMKICogYXJlIGVpdGhlciAweCBvciAwWCwgdGhlbiByZW1vdmUgdGhlIGZpcnN0IHR3byBjaGFyYWN0ZXJzIGZyb20gUyBhbmQgbGV0IFIgPSAxNgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiA6IDBYCiAqLwoKLy9DSEVDSyMwCmlmIChwYXJzZUludCgiMFgwIiwgMCkgICE9PSBwYXJzZUludCgiMCIsIDE2KSkgewogICRFUlJPUignIzA6IHBhcnNlSW50KCIwWDAiLCAwKSA9PT0gcGFyc2VJbnQoIjAiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFgwIiwgMCkpKTsKfQoKLy9DSEVDSyMxCmlmIChwYXJzZUludCgiMFgxIikgICE9PSBwYXJzZUludCgiMSIsIDE2KSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIwWDEiKSA9PT0gcGFyc2VJbnQoIjEiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFgxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiMFgyIikgICE9PSBwYXJzZUludCgiMiIsIDE2KSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIwWDIiKSA9PT0gcGFyc2VJbnQoIjIiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFgyIikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUludCgiMFgzIikgICE9PSBwYXJzZUludCgiMyIsIDE2KSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCIwWDMiKSA9PT0gcGFyc2VJbnQoIjMiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFgzIikpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgiMFg0IikgICE9PSBwYXJzZUludCgiNCIsIDE2KSkgewogICRFUlJPUignIzQ6IHBhcnNlSW50KCIwWDQiKSA9PT0gcGFyc2VJbnQoIjQiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg0IikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiMFg1IikgICE9PSBwYXJzZUludCgiNSIsIDE2KSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCIwWDUiKSA9PT0gcGFyc2VJbnQoIjUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg1IikpKTsKfQoKLy9DSEVDSyM2CmlmIChwYXJzZUludCgiMFg2IikgICE9PSBwYXJzZUludCgiNiIsIDE2KSkgewogICRFUlJPUignIzY6IHBhcnNlSW50KCIwWDYiKSA9PT0gcGFyc2VJbnQoIjYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg2IikpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUludCgiMFg3IikgICE9PSBwYXJzZUludCgiNyIsIDE2KSkgewogICRFUlJPUignIzc6IHBhcnNlSW50KCIwWDciKSA9PT0gcGFyc2VJbnQoIjciLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg3IikpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUludCgiMFg4IikgICE9PSBwYXJzZUludCgiOCIsIDE2KSkgewogICRFUlJPUignIzg6IHBhcnNlSW50KCIwWDgiKSA9PT0gcGFyc2VJbnQoIjgiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg4IikpKTsKfQoKLy9DSEVDSyM5CmlmIChwYXJzZUludCgiMFg5IikgICE9PSBwYXJzZUludCgiOSIsIDE2KSkgewogICRFUlJPUignIzk6IHBhcnNlSW50KCIwWDkiKSA9PT0gcGFyc2VJbnQoIjkiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFg5IikpKTsKfQoKLy9DSEVDSyNBCmlmIChwYXJzZUludCgiMFhBIikgICE9PSBwYXJzZUludCgiQSIsIDE2KSkgewogICRFUlJPUignI0E6IHBhcnNlSW50KCIwWEEiKSA9PT0gcGFyc2VJbnQoIkEiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhBIikpKTsKfQoKLy9DSEVDSyNCCmlmIChwYXJzZUludCgiMFhCIikgICE9PSBwYXJzZUludCgiQiIsIDE2KSkgewogICRFUlJPUignI0I6IHBhcnNlSW50KCIwWEIiKSA9PT0gcGFyc2VJbnQoIkIiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhCIikpKTsKfQoKLy9DSEVDSyNDCmlmIChwYXJzZUludCgiMFhDIikgICE9PSBwYXJzZUludCgiQyIsIDE2KSkgewogICRFUlJPUignI0M6IHBhcnNlSW50KCIwWEMiKSA9PT0gcGFyc2VJbnQoIkMiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhDIikpKTsKfQoKLy9DSEVDSyNECmlmIChwYXJzZUludCgiMFhEIikgICE9PSBwYXJzZUludCgiRCIsIDE2KSkgewogICRFUlJPUignI0Q6IHBhcnNlSW50KCIwWEQiKSA9PT0gcGFyc2VJbnQoIkQiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhEIikpKTsKfQoKLy9DSEVDSyNFCmlmIChwYXJzZUludCgiMFhFIikgICE9PSBwYXJzZUludCgiRSIsIDE2KSkgewogICRFUlJPUignI0U6IHBhcnNlSW50KCIwWEUiKSA9PT0gcGFyc2VJbnQoIkUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhFIikpKTsKfQoKLy9DSEVDSyNGCmlmIChwYXJzZUludCgiMFhGIikgICE9PSBwYXJzZUludCgiRiIsIDE2KSkgewogICRFUlJPUignI0Y6IHBhcnNlSW50KCIwWEYiKSA9PT0gcGFyc2VJbnQoIkYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhGIikpKTsKfQoKLy9DSEVDSyNFCmlmIChwYXJzZUludCgiMFhFIikgICE9PSBwYXJzZUludCgiRSIsIDE2KSkgewogICRFUlJPUignI0U6IHBhcnNlSW50KCIwWEUiKSA9PT0gcGFyc2VJbnQoIkUiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhFIikpKTsKfQoKLy9DSEVDSyNBQkNERUYKaWYgKHBhcnNlSW50KCIwWEFCQ0RFRiIpICAhPT0gcGFyc2VJbnQoIkFCQ0RFRiIsIDE2KSkgewogICRFUlJPUignI0FCQ0RFRjogcGFyc2VJbnQoIjBYQUJDREVGIikgPT09IHBhcnNlSW50KCJBQkNERUYiLCAxNikuIEFjdHVhbDogJyArIChwYXJzZUludCgiMFhBQkNERUYiKSkpOwp9ICAgICAKCg==","commentary":"If the length of S is at least 2 and the first two characters of S\nare either 0x or 0X, then remove the first two characters from S and let R = 16","description":": 0X","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A5.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFIgaW4gWzIsIDM2XQogKi8KCi8vQ0hFQ0sjCmZvciAodmFyIGkgPSAyOyBpIDw9IDM2OyBpKyspIHsKICBpZiAocGFyc2VJbnQoIjEwJDEiLCBpKSAhPT0gaSkgewogICAgJEVSUk9SKCcjJyArIGkgKyc6IGkgPSAnICsgaSArICdwYXJzZUludCgiMTAkMSIsIGkpID09PSBpLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEwJDEiLCBpKSkpOwogIH0KfSAgICAKCg==","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. R in [2, 36]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFJhZGl4LVIgbm90YXRpb24gaW4gWzAuLjksIEEtWl0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdCA9IFsiMSIsICIyIiwgIjMiLCAiNCIsICI1IiwgIjYiLCAiNyIsICI4IiwgIjkiLCAiQSIsICJCIiwgIkMiLCAiRCIsICJFIiwgIkYiLCAiRyIsICJIIiwgIkkiLCAiSiIsICJLIiwgIkwiLCAiTSIsICJOIiwgIk8iLCAiUCIsICJRIiwgIlIiLCAiUyIsICJUIiwgIlUiLCAiViIsICJXIiwgIlgiLCAiWSIsICJaIl07CmZvciAodmFyIGkgPSAyOyBpIDw9IDM2OyBpKyspIHsKICBpZiAocGFyc2VJbnQoUl9kaWdpdFtpIC0gMl0gKyAiJCIsIGkpICE9PSBpIC0gMSkgewogICAgJEVSUk9SKCcjJyArIGkgKyAnOiAnKTsKICB9Cn0gICAgCgo=","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. Radix-R notation in [0..9, A-Z]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFJhZGl4LVIgbm90YXRpb24gaW4gWzAuLjksIGEtel0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdCA9IFsiMSIsICIyIiwgIjMiLCAiNCIsICI1IiwgIjYiLCAiNyIsICI4IiwgIjkiLCAiYSIsICJiIiwgImMiLCAiZCIsICJlIiwgImYiLCAiZyIsICJoIiwgImkiLCAiaiIsICJrIiwgImwiLCAibSIsICJuIiwgIm8iLCAicCIsICJxIiwgInIiLCAicyIsICJ0IiwgInUiLCAidiIsICJ3IiwgIngiLCAieSIsICJ6Il07CmZvciAodmFyIGkgPSAyOyBpIDw9IDM2OyBpKyspIHsKICBpZiAocGFyc2VJbnQoUl9kaWdpdFtpIC0gMl0gKyAiJCIsIGkpICE9PSBpIC0gMSkgewogICAgJEVSUk9SKCcjJyArIGkgKyAnOiAnKTsKICB9Cn0gICAgCgo=","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. Radix-R notation in [0..9, a-z]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFJhZGl4LVIgbm90YXRpb24gaW4gWzAuLjksIEEtWl0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdCA9IFsiMSIsICIyIiwgIjMiLCAiNCIsICI1IiwgIjYiLCAiNyIsICI4IiwgIjkiLCAiQSIsICJCIiwgIkMiLCAiRCIsICJFIiwgIkYiLCAiRyIsICJIIiwgIkkiLCAiSiIsICJLIiwgIkwiLCAiTSIsICJOIiwgIk8iLCAiUCIsICJRIiwgIlIiLCAiUyIsICJUIiwgIlUiLCAiViIsICJXIiwgIlgiLCAiWSIsICJaIl07CmZvciAodmFyIGkgPSAyOyBpIDw9IDM1OyBpKyspIHsKICBpZiAocGFyc2VJbnQoUl9kaWdpdFtpIC0gMl0gKyBSX2RpZ2l0W2kgLSAxXSwgaSkgIT09IGkgLSAxKSB7CiAgICAkRVJST1IoJyMnICsgaSArICc6ICcpOwogIH0KfSAgICAKCg==","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. Radix-R notation in [0..9, A-Z]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFJhZGl4LVIgbm90YXRpb24gaW4gWzAuLjksIGEtel0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdCA9IFsiMSIsICIyIiwgIjMiLCAiNCIsICI1IiwgIjYiLCAiNyIsICI4IiwgIjkiLCAiYSIsICJiIiwgImMiLCAiZCIsICJlIiwgImYiLCAiZyIsICJoIiwgImkiLCAiaiIsICJrIiwgImwiLCAibSIsICJuIiwgIm8iLCAicCIsICJxIiwgInIiLCAicyIsICJ0IiwgInUiLCAidiIsICJ3IiwgIngiLCAieSIsICJ6Il07CmZvciAodmFyIGkgPSAyOyBpIDw9IDM1OyBpKyspIHsKICBpZiAocGFyc2VJbnQoUl9kaWdpdFtpIC0gMl0gKyBSX2RpZ2l0W2kgLSAxXSwgaSkgIT09IGkgLSAxKSB7CiAgICAkRVJST1IoJyMnICsgaSArICc6ICcpOwogIH0KfSAgICAKCg==","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. Radix-R notation in [0..9, a-z]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBTIGNvbnRhaW5zIGFueSBjaGFyYWN0ZXIgdGhhdCBpcyBub3QgYSByYWRpeC1SIGRpZ2l0LAogKiB0aGVuIGxldCBaIGJlIHRoZSBzdWJzdHJpbmcgb2YgUyBjb25zaXN0aW5nIG9mIGFsbCBjaGFyYWN0ZXJzIGJlZm9yZQogKiB0aGUgZmlyc3Qgc3VjaCBjaGFyYWN0ZXI7IG90aGVyd2lzZSwgbGV0IFogYmUgUwogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BNi4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3QuIFJhZGl4LVIgbm90YXRpb24gaW4gWzAuLjldCiAqLwoKLy9DSEVDSyMyCmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OSIsIDIpICE9PSAxKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIjAxMjM0NTY3ODkiLCAyKSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwMTIzNDU2Nzg5IiwgMikpKTsKfSAgCgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDMpICE9PSA1KSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjAxMjM0NTY3ODkwIiwgMykgPT09IDUuIEFjdHVhbDogJyArIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCAzKSkpOwp9IAoKLy9DSEVDSyM0CmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA0KSAhPT0gMjcpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA0KSA9PT0gMjcuIEFjdHVhbDogJyArIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA0KSkpOwp9IAoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA1KSAhPT0gMTk0KSB7CiAgJEVSUk9SKCcjNTogcGFyc2VJbnQoIjAxMjM0NTY3ODkwIiwgNSkgPT09IDE5NC4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDUpKSk7Cn0gIAoKLy9DSEVDSyM2CmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA2KSAhPT0gMTg2NSkgewogICRFUlJPUignIzY6IHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDYpID09PSAxODY1LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjAxMjM0NTY3ODkwIiwgNikpKTsKfSAgCgovL0NIRUNLIzcKaWYgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDcpICE9PSAyMjg3NSkgewogICRFUlJPUignIzc6IHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDcpID09PSAyMjg3NS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDcpKSk7Cn0gIAoKLy9DSEVDSyM4CmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA4KSAhPT0gMzQyMzkxKSB7CiAgJEVSUk9SKCcjODogcGFyc2VJbnQoIjAxMjM0NTY3ODkwIiwgOCkgPT09IDM0MjM5MS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDgpKSk7Cn0gIAoKLy9DSEVDSyM5CmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCA5KSAhPT0gNjA1MzQ0NCkgewogICRFUlJPUignIzk6IHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDkpID09PSA2MDUzNDQ0LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjAxMjM0NTY3ODkwIiwgOSkpKTsKfSAgCgovL0NIRUNLIzEwCmlmIChwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCAxMCkgIT09IE51bWJlcigxMjM0NTY3ODkwKSkgewogICRFUlJPUignIzEwOiBwYXJzZUludCgiMDEyMzQ1Njc4OTAiLCAxMCkgPT09IE51bWJlcigxMjM0NTY3ODkwKS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwMTIzNDU2Nzg5MCIsIDEwKSkpOwp9ICAKCg==","commentary":"If S contains any character that is not a radix-R digit,\nthen let Z be the substring of S consisting of all characters before\nthe first such character; otherwise, let Z be S","description":"Complex test. Radix-R notation in [0..9]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A6.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBaIGlzIGVtcHR5LCByZXR1cm4gTmFOCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjIvUzE1LjEuMi4yX0E3LjFfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdC4gUiBpbiBbMiwgMzZdCiAqLwoKLy9DSEVDSyMKZm9yICh2YXIgaSA9IDI7IGkgPD0gMzY7IGkrKykgewogIGlmIChpc05hTihwYXJzZUludCgiJHN0cmluZyIsIGkpKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjJyArIGkgKyAnOiBwYXJzZUludCgiJHN0cmluZyIsIGkpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiJHN0cmluZyIsIGkpKSk7CiAgfQp9ICAgIAoK","commentary":"If Z is empty, return NaN","description":"Complex test. R in [2, 36]","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBaIGlzIGVtcHR5LCByZXR1cm4gTmFOCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjIvUzE1LjEuMi4yX0E3LjFfVDIuanMKICogQGRlc2NyaXB0aW9uIHggaXMgbm90IGEgcmFkaXgtUiBkaWdpdAogKi8KCi8vQ0hFQ0sjMQppZiAoaXNOYU4ocGFyc2VJbnQoIiQweCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCIkMHgiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIiQweCIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoaXNOYU4ocGFyc2VJbnQoIiQwWCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIkMFgiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIiQwWCIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VJbnQoIiQkJCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlSW50KCIkJCQiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIiQkJCIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoaXNOYU4ocGFyc2VJbnQoIiIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzQ6IHBhcnNlSW50KCIiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIiIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAoaXNOYU4ocGFyc2VJbnQoIiAiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM1OiBwYXJzZUludCgiICIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUludCgiICIpKSk7Cn0gICAgICAgICAgCgo=","commentary":"If Z is empty, return NaN","description":"x is not a radix-R digit","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBtYXRoZW1hdGljYWwgaW50ZWdlciB2YWx1ZQogKiB0aGF0IGlzIHJlcHJlc2VudGVkIGJ5IFogaW4gcmFkaXgtUiBub3RhdGlvbiwgdXNpbmcgdGhlCiAqIGxldHRlcnMgQS1aIGFuZCBhLXogZm9yIGRpZ2l0cyB3aXRoIHZhbHVlcyAxMCB0aHJvdWdoIDM1LgogKiBDb21wdXRlIHRoZSBudW1iZXIgdmFsdWUgZm9yIFJlc3VsdCgxNikKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0LiBDaGVjayBhbGdvcml0aG0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdDEgPSBbIjEiLCAiMiIsICIzIiwgIjQiLCAiNSIsICI2IiwgIjciLCAiOCIsICI5IiwgIkEiLCAiQiIsICJDIiwgIkQiLCAiRSIsICJGIiwgIkciLCAiSCIsICJJIiwgIkoiLCAiSyIsICJMIiwgIk0iLCAiTiIsICJPIiwgIlAiLCAiUSIsICJSIiwgIlMiLCAiVCIsICJVIiwgIlYiLCAiVyIsICJYIiwgIlkiLCAiWiJdOwp2YXIgUl9kaWdpdDIgPSBbIjEiLCAiMiIsICIzIiwgIjQiLCAiNSIsICI2IiwgIjciLCAiOCIsICI5IiwgImEiLCAiYiIsICJjIiwgImQiLCAiZSIsICJmIiwgImciLCAiaCIsICJpIiwgImoiLCAiayIsICJsIiwgIm0iLCAibiIsICJvIiwgInAiLCAicSIsICJyIiwgInMiLCAidCIsICJ1IiwgInYiLCAidyIsICJ4IiwgInkiLCAieiJdOwpmb3IgKHZhciBpID0gMjsgaSA8PSAzNjsgaSsrKSB7CiAgZm9yICh2YXIgaiA9IDA7IGogPCAxMDsgaisrKSB7CiAgICB2YXIgc3RyID0gIiI7ICAKICAgIHZhciBudW0gPSAwOwogICAgdmFyIHBvdyA9IDE7CiAgICB2YXIgazAgPSBNYXRoLm1heCgyLCBpIC0gaik7CiAgICBmb3IgKHZhciBrID0gazA7IGsgPD0gaTsgaysrKSB7IAogICAgICBpZiAoayAlIDIgPT09IDApIHsgIAogICAgICAgIHN0ciA9IHN0ciArIFJfZGlnaXQxW2sgLSAyXTsKICAgICAgfSBlbHNlIHsgIAogICAgICAgIHN0ciA9IHN0ciArIFJfZGlnaXQyW2sgLSAyXTsKICAgICAgfQogICAgICBudW0gPSBudW0gKyAoaSArIChrMCAtIGspIC0gMSkgKiBwb3c7CiAgICAgIHBvdyA9IHBvdyAqIGk7ICAgCiAgICB9ICAgCiAgICBpZiAocGFyc2VJbnQoc3RyLCBpKSAhPT0gbnVtKSB7CiAgICAgICRFUlJPUignIycgKyBpICsgJy4nICsgaiArICcgOiAnKTsgICAgICAKICAgIH0KICB9ICAKfSAgCgo=","commentary":"Compute the mathematical integer value\nthat is represented by Z in radix-R notation, using the\nletters A-Z and a-z for digits with values 10 through 35.\nCompute the number value for Result(16)","description":"Complex test. Check algorithm","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBtYXRoZW1hdGljYWwgaW50ZWdlciB2YWx1ZQogKiB0aGF0IGlzIHJlcHJlc2VudGVkIGJ5IFogaW4gcmFkaXgtUiBub3RhdGlvbiwgdXNpbmcgdGhlCiAqIGxldHRlcnMgQS1aIGFuZCBhLXogZm9yIGRpZ2l0cyB3aXRoIHZhbHVlcyAxMCB0aHJvdWdoIDM1LgogKiBDb21wdXRlIHRoZSBudW1iZXIgdmFsdWUgZm9yIFJlc3VsdCgxNikKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxnb3JpdGhtIGZvciBSID0gMgogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIjEiLCAyKSAgIT09IDEpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMSIsIDIpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjEiLCAyKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlSW50KCIxMSIsIDIpICAhPT0gMykgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIxMSIsIDIpID09PSAzLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExIiwgMikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUludCgiMTExIiwgMikgICE9PSA3KSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIjExMSIsIDIpID09PSA3LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VJbnQoIjExMTEiLCAyKSAgIT09IDE1KSB7CiAgJEVSUk9SKCcjNDogcGFyc2VJbnQoIjExMTEiLCAyKSA9PT0gMTUuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VJbnQoIjExMTExIiwgMikgICE9PSAzMSkgewogICRFUlJPUignIzU6IHBhcnNlSW50KCIxMTExMSIsIDIpID09PSAzMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAocGFyc2VJbnQoIjExMTExMSIsIDIpICAhPT0gNjMpIHsKICAkRVJST1IoJyM2OiBwYXJzZUludCgiMTExMTExIiwgMikgPT09IDYzLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNwppZiAocGFyc2VJbnQoIjExMTExMTEiLCAyKSAgIT09IDEyNykgewogICRFUlJPUignIzc6IHBhcnNlSW50KCIxMTExMTExIiwgMikgPT09IDEyNy4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUludCgiMTExMTExMTEiLCAyKSAgIT09IDI1NSkgewogICRFUlJPUignIzg6IHBhcnNlSW50KCIxMTExMTExMSIsIDIpID09PSAyNTUuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzkKaWYgKHBhcnNlSW50KCIxMTExMTExMTEiLCAyKSAgIT09IDUxMSkgewogICRFUlJPUignIzk6IHBhcnNlSW50KCIxMTExMTExMTEiLCAyKSA9PT0gNTExLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTAKaWYgKHBhcnNlSW50KCIxMTExMTExMTExIiwgMikgICE9PSAxMDIzKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCIxMTExMTExMTExIiwgMikgPT09IDEwMjMuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTEKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMSIsIDIpICAhPT0gMjA0NykgewogICRFUlJPUignIzExOiBwYXJzZUludCgiMTExMTExMTExMTEiLCAyKSA9PT0gMjA0Ny4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTIKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMTEiLCAyKSAgIT09IDQwOTUpIHsKICAkRVJST1IoJyMxMjogcGFyc2VJbnQoIjExMTExMTExMTExMSIsIDIpID09PSA0MDk1LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTMKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMTExIiwgMikgICE9PSA4MTkxKSB7CiAgJEVSUk9SKCcjMTM6IHBhcnNlSW50KCIxMTExMTExMTExMTExIiwgMikgPT09IDgxOTEuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTQKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMTExMSIsIDIpICAhPT0gMTYzODMpIHsKICAkRVJST1IoJyMxNDogcGFyc2VJbnQoIjExMTExMTExMTExMTExIiwgMikgPT09IDE2MzgzLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxNQppZiAocGFyc2VJbnQoIjExMTExMTExMTExMTExMSIsIDIpICAhPT0gMzI3NjcpIHsKICAkRVJST1IoJyMxNTogcGFyc2VJbnQoIjExMTExMTExMTExMTExMSIsIDIpID09PSAzMjc2Ny4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMTExMTExMTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzE2CmlmIChwYXJzZUludCgiMTExMTExMTExMTExMTExMSIsIDIpICAhPT0gNjU1MzUpIHsKICAkRVJST1IoJyMxNjogcGFyc2VJbnQoIjExMTExMTExMTExMTExMTEiLCAyKSA9PT0gNjU1MzUuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTcKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMTExMTExMSIsIDIpICAhPT0gMTMxMDcxKSB7CiAgJEVSUk9SKCcjMTc6IHBhcnNlSW50KCIxMTExMTExMTExMTExMTExMSIsIDIpID09PSAxMzEwNzEuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzE4CmlmIChwYXJzZUludCgiMTExMTExMTExMTExMTExMTExIiwgMikgICE9PSAyNjIxNDMpIHsKICAkRVJST1IoJyMxODogcGFyc2VJbnQoIjExMTExMTExMTExMTExMTExMSIsIDIpID09PSAyNjIxNDMuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxOQppZiAocGFyc2VJbnQoIjExMTExMTExMTExMTExMTExMTEiLCAyKSAgIT09IDUyNDI4NykgewogICRFUlJPUignIzE5OiBwYXJzZUludCgiMTExMTExMTExMTExMTExMTExMSIsIDIpID09PSA1MjQyODcuIEFjdHVhbDogJyArIChwYXJzZUludCgiMTExMTExMTExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMjAKaWYgKHBhcnNlSW50KCIxMTExMTExMTExMTExMTExMTExMSIsIDIpICAhPT0gMTA0ODU3NSkgewogICRFUlJPUignIzIwOiBwYXJzZUludCgiMTExMTExMTExMTExMTExMTExMTEiLCAyKSA9PT0gMTA0ODU3NS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIxMTExMTExMTExMTExMTExMTExMSIsIDIpKSk7Cn0KCg==","commentary":"Compute the mathematical integer value\nthat is represented by Z in radix-R notation, using the\nletters A-Z and a-z for digits with values 10 through 35.\nCompute the number value for Result(16)","description":"Checking algorithm for R = 2","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBtYXRoZW1hdGljYWwgaW50ZWdlciB2YWx1ZQogKiB0aGF0IGlzIHJlcHJlc2VudGVkIGJ5IFogaW4gcmFkaXgtUiBub3RhdGlvbiwgdXNpbmcgdGhlCiAqIGxldHRlcnMgQS1aIGFuZCBhLXogZm9yIGRpZ2l0cyB3aXRoIHZhbHVlcyAxMCB0aHJvdWdoIDM1LgogKiBDb21wdXRlIHRoZSBudW1iZXIgdmFsdWUgZm9yIFJlc3VsdCgxNikKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxnb3JpdGhtIGZvciBSID0gMTYKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCIweDEiLCAxNikgIT09IDEpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiMHgxIiwgMTYpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjB4MSIsIDE2KSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlSW50KCIwWDEwIiwgMTYpICE9PSAxNikgewogICRFUlJPUignIzI6IHBhcnNlSW50KCIwWDEwIiwgMTYpID09PSAxNi4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIwWDEwIiwgMTYpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VJbnQoIjB4MTAwIiwgMTYpICE9PSAyNTYpIHsKICAkRVJST1IoJyMzOiBwYXJzZUludCgiMHgxMDAiLCAxNikgPT09IDI1Ni4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIweDEwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzQKaWYgKHBhcnNlSW50KCIwWDEwMDAiLCAxNikgIT09IDQwOTYpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiMFgxMDAwIiwgMTYpID09PSA0MDk2LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjBYMTAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzUKaWYgKHBhcnNlSW50KCIweDEwMDAwIiwgMTYpICE9PSA2NTUzNikgewogICRFUlJPUignIzU6IHBhcnNlSW50KCIweDEwMDAwIiwgMTYpID09PSA2NTUzNi4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIweDEwMDAwIiwgMTYpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAocGFyc2VJbnQoIjBYMTAwMDAwIiwgMTYpICE9PSAxMDQ4NTc2KSB7CiAgJEVSUk9SKCcjNjogcGFyc2VJbnQoIngxMDAwMDAiLCAxNikgPT09IDEwNDg1NzYuIEFjdHVhbDogJyArIChwYXJzZUludCgieDEwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzcKaWYgKHBhcnNlSW50KCIweDEwMDAwMDAiLCAxNikgIT09IDE2Nzc3MjE2KSB7CiAgJEVSUk9SKCcjNzogcGFyc2VJbnQoIjB4MTAwMDAwMCIsIDE2KSA9PT0gMTY3NzcyMTYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwIiwgMTYpKSk7Cn0KCi8vQ0hFQ0sjOAppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAiLCAxNikgIT09IDI2ODQzNTQ1NikgewogICRFUlJPUignIzg6IHBhcnNlSW50KCIweDEwMDAwMDAwIiwgMTYpID09PSAyNjg0MzU0NTYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzkKaWYgKHBhcnNlSW50KCIweDEwMDAwMDAwMCIsIDE2KSAhPT0gNDI5NDk2NzI5NikgewogICRFUlJPUignIzk6IHBhcnNlSW50KCIweDEwMDAwMDAwMCIsIDE2KSA9PT0gNDI5NDk2NzI5Ni4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIweDEwMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzEwCmlmIChwYXJzZUludCgiMHgxMDAwMDAwMDAwIiwgMTYpICE9PSA2ODcxOTQ3NjczNikgewogICRFUlJPUignIzEwOiBwYXJzZUludCgiMHgxMDAwMDAwMDAwIiwgMTYpID09PSA2ODcxOTQ3NjczNi4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIweDEwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxMAppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAiLCAxNikgIT09IDEwOTk1MTE2Mjc3NzYpIHsKICAkRVJST1IoJyMxMDogcGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAiLCAxNikgPT09IDEwOTk1MTE2Mjc3NzYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzEyCmlmIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAiLCAxNikgIT09IDE3NTkyMTg2MDQ0NDE2KSB7CiAgJEVSUk9SKCcjMTI6IHBhcnNlSW50KCIweDEwMDAwMDAwMDAwMCIsIDE2KSA9PT0gMTc1OTIxODYwNDQ0MTYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxMwppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMCIsIDE2KSAhPT0gMjgxNDc0OTc2NzEwNjU2KSB7CiAgJEVSUk9SKCcjMTM6IHBhcnNlSW50KCIweDEwMDAwMDAwMDAwMDAiLCAxNikgPT09IDI4MTQ3NDk3NjcxMDY1Ni4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCIweDEwMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxNAppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAiLCAxNikgIT09IDQ1MDM1OTk2MjczNzA0OTYpIHsKICAkRVJST1IoJyMxNDogcGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAiLCAxNikgPT09IDQ1MDM1OTk2MjczNzA0OTYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzE1CmlmIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAiLCAxNikgIT09IDcyMDU3NTk0MDM3OTI3OTM2KSB7CiAgJEVSUk9SKCcjMTU6IHBhcnNlSW50KCIweDEwMDAwMDAwMDAwMDAwMCIsIDE2KSA9PT0gNzIwNTc1OTQwMzc5Mjc5MzYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxNgppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMCIsIDE2KSAhPT0gMTE1MjkyMTUwNDYwNjg0Njk3NikgewogICRFUlJPUignIzE2OiBwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAwIiwgMTYpID09PSAxMTUyOTIxNTA0NjA2ODQ2OTc2LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzE3CmlmIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAwMCIsIDE2KSAhPT0gMTg0NDY3NDQwNzM3MDk1NTE2MTYpIHsKICAkRVJST1IoJyMxNzogcGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAiLCAxNikgPT09IDE4NDQ2NzQ0MDczNzA5NTUxNjE2LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxOAppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwIiwgMTYpICE9PSAyOTUxNDc5MDUxNzkzNTI4MjU4NTYpIHsKICAkRVJST1IoJyMxODogcGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwIiwgMTYpID09PSAyOTUxNDc5MDUxNzkzNTI4MjU4NTYuIEFjdHVhbDogJyArIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoKLy9DSEVDSyMxOQppZiAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwMCIsIDE2KSAhPT0gNDcyMjM2NjQ4Mjg2OTY0NTIxMzY5NikgewogICRFUlJPUignIzE5OiBwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAwMDAwIiwgMTYpID09PSA0NzIyMzY2NDgyODY5NjQ1MjEzNjk2LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwMCIsIDE2KSkpOwp9CgovL0NIRUNLIzIwCmlmIChwYXJzZUludCgiMHgxMDAwMDAwMDAwMDAwMDAwMDAwMCIsIDE2KSAhPT0gNzU1NTc4NjM3MjU5MTQzMjM0MTkxMzYpIHsKICAkRVJST1IoJyMyMDogcGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwMDAiLCAxNikgPT09IDc1NTU3ODYzNzI1OTE0MzIzNDE5MTM2LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIjB4MTAwMDAwMDAwMDAwMDAwMDAwMDAiLCAxNikpKTsKfQoK","commentary":"Compute the mathematical integer value\nthat is represented by Z in radix-R notation, using the\nletters A-Z and a-z for digits with values 10 through 35.\nCompute the number value for Result(16)","description":"Checking algorithm for R = 16","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gc2lnbiAqIFJlc3VsdCgxNykKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0LiBDaGVjayBhbGdvcml0aG0KICovCgovL0NIRUNLIwp2YXIgUl9kaWdpdDEgPSBbIjEiLCAiMiIsICIzIiwgIjQiLCAiNSIsICI2IiwgIjciLCAiOCIsICI5IiwgIkEiLCAiQiIsICJDIiwgIkQiLCAiRSIsICJGIiwgIkciLCAiSCIsICJJIiwgIkoiLCAiSyIsICJMIiwgIk0iLCAiTiIsICJPIiwgIlAiLCAiUSIsICJSIiwgIlMiLCAiVCIsICJVIiwgIlYiLCAiVyIsICJYIiwgIlkiLCAiWiJdOwp2YXIgUl9kaWdpdDIgPSBbIjEiLCAiMiIsICIzIiwgIjQiLCAiNSIsICI2IiwgIjciLCAiOCIsICI5IiwgImEiLCAiYiIsICJjIiwgImQiLCAiZSIsICJmIiwgImciLCAiaCIsICJpIiwgImoiLCAiayIsICJsIiwgIm0iLCAibiIsICJvIiwgInAiLCAicSIsICJyIiwgInMiLCAidCIsICJ1IiwgInYiLCAidyIsICJ4IiwgInkiLCAieiJdOwpmb3IgKHZhciBpID0gMjsgaSA8PSAzNjsgaSsrKSB7CiAgZm9yICh2YXIgaiA9IDA7IGogPCAxMDsgaisrKSB7CiAgICB2YXIgc3RyID0gIisiOyAgCiAgICB2YXIgc2lnbiA9IDE7CiAgICBpZiAoaiAlIDIgIT09IDApIHsgIAogICAgICAgIHN0ciA9ICItIjsKICAgICAgICBzaWduPSAtMTsKICAgIH0gCiAgICB2YXIgbnVtID0gMDsKICAgIHZhciBwb3cgPSAxOwogICAgdmFyIGswID0gTWF0aC5tYXgoMiwgaSAtIGopOwogICAgZm9yICh2YXIgayA9IGswOyBrIDw9IGk7IGsrKykgeyAKICAgICAgaWYgKGsgJSAyID09PSAwKSB7ICAKICAgICAgICBzdHIgPSBzdHIgKyBSX2RpZ2l0MVtrIC0gMl07CiAgICAgIH0gZWxzZSB7ICAKICAgICAgICBzdHIgPSBzdHIgKyBSX2RpZ2l0MltrIC0gMl07CiAgICAgIH0KICAgICAgbnVtID0gbnVtICsgKGkgKyAoazAgLSBrKSAtIDEpICogcG93OwogICAgICBwb3cgPSBwb3cgKiBpOyAgIAogICAgfSAgIAogICAgaWYgKHBhcnNlSW50KHN0ciwgaSkgIT09IG51bSAqIHNpZ24pIHsKICAgICAgJEVSUk9SKCcjJyArIGkgKyAnLicgKyBqICsgJyA6ICcpOyAgICAgIAogICAgfQogIH0gIAp9ICAKCg==","commentary":"Return sign * Result(17)","description":"Complex test. Check algorithm","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gc2lnbiAqIFJlc3VsdCgxNykKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxnb3JpdGhtIGZvciBSID0gMgogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VJbnQoIi0xIiwgMikgICE9PSAtMSkgewogICRFUlJPUignIzE6IHBhcnNlSW50KCItMSIsIDIpID09PSAtMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIi0xMSIsIDIpICAhPT0gLTMpIHsKICAkRVJST1IoJyMyOiBwYXJzZUludCgiLTExIiwgMikgPT09IC0zLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VJbnQoIi0xMTEiLCAyKSAgIT09IC03KSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIi0xMTEiLCAyKSA9PT0gLTcuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VJbnQoIi0xMTExIiwgMikgICE9PSAtMTUpIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiLTExMTEiLCAyKSA9PT0gLTE1LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExIiwgMikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUludCgiLTExMTExIiwgMikgICE9PSAtMzEpIHsKICAkRVJST1IoJyM1OiBwYXJzZUludCgiLTExMTExIiwgMikgPT09IC0zMS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzYKaWYgKHBhcnNlSW50KCItMTExMTExIiwgMikgICE9PSAtNjMpIHsKICAkRVJST1IoJyM2OiBwYXJzZUludCgiLTExMTExMSIsIDIpID09PSAtNjMuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjNwppZiAocGFyc2VJbnQoIi0xMTExMTExIiwgMikgICE9PSAtMTI3KSB7CiAgJEVSUk9SKCcjNzogcGFyc2VJbnQoIi0xMTExMTExIiwgMikgPT09IC0xMjcuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzgKaWYgKHBhcnNlSW50KCItMTExMTExMTEiLCAyKSAgIT09IC0yNTUpIHsKICAkRVJST1IoJyM4OiBwYXJzZUludCgiLTExMTExMTExIiwgMikgPT09IC0yNTUuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyM5CmlmIChwYXJzZUludCgiLTExMTExMTExMSIsIDIpICAhPT0gLTUxMSkgewogICRFUlJPUignIzk6IHBhcnNlSW50KCItMTExMTExMTExIiwgMikgPT09IC01MTEuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTAKaWYgKHBhcnNlSW50KCItMTExMTExMTExMSIsIDIpICAhPT0gLTEwMjMpIHsKICAkRVJST1IoJyMxMDogcGFyc2VJbnQoIi0xMTExMTExMTExIiwgMikgPT09IC0xMDIzLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxMQppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMSIsIDIpICAhPT0gLTIwNDcpIHsKICAkRVJST1IoJyMxMTogcGFyc2VJbnQoIi0xMTExMTExMTExMSIsIDIpID09PSAtMjA0Ny4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTExMTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzEyCmlmIChwYXJzZUludCgiLTExMTExMTExMTExMSIsIDIpICAhPT0gLTQwOTUpIHsKICAkRVJST1IoJyMxMjogcGFyc2VJbnQoIi0xMTExMTExMTExMTEiLCAyKSA9PT0gLTQwOTUuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTMKaWYgKHBhcnNlSW50KCItMTExMTExMTExMTExMSIsIDIpICAhPT0gLTgxOTEpIHsKICAkRVJST1IoJyMxMzogcGFyc2VJbnQoIi0xMTExMTExMTExMTExIiwgMikgPT09IC04MTkxLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxNAppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMSIsIDIpICAhPT0gLTE2MzgzKSB7CiAgJEVSUk9SKCcjMTQ6IHBhcnNlSW50KCItMTExMTExMTExMTExMTEiLCAyKSA9PT0gLTE2MzgzLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMSIsIDIpKSk7Cn0KCi8vQ0hFQ0sjMTUKaWYgKHBhcnNlSW50KCItMTExMTExMTExMTExMTExIiwgMikgICE9PSAtMzI3NjcpIHsKICAkRVJST1IoJyMxNTogcGFyc2VJbnQoIi0xMTExMTExMTExMTExMTEiLCAyKSA9PT0gLTMyNzY3LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTEiLCAyKSkpOwp9CgovL0NIRUNLIzE2CmlmIChwYXJzZUludCgiLTExMTExMTExMTExMTExMTEiLCAyKSAgIT09IC02NTUzNSkgewogICRFUlJPUignIzE2OiBwYXJzZUludCgiLTExMTExMTExMTExMTExMTEiLCAyKSA9PT0gLTY1NTM1LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxNwppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMSIsIDIpICAhPT0gLTEzMTA3MSkgewogICRFUlJPUignIzE3OiBwYXJzZUludCgiLTExMTExMTExMTExMTExMTExIiwgMikgPT09IC0xMzEwNzEuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTExMTExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxOAppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTEiLCAyKSAgIT09IC0yNjIxNDMpIHsKICAkRVJST1IoJyMxODogcGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTEiLCAyKSA9PT0gLTI2MjE0My4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTExMTExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMxOQppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTExIiwgMikgICE9PSAtNTI0Mjg3KSB7CiAgJEVSUk9SKCcjMTk6IHBhcnNlSW50KCItMTExMTExMTExMTExMTExMTExMSIsIDIpID09PSAtNTI0Mjg3LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTExIiwgMikpKTsKfQoKLy9DSEVDSyMyMAppZiAocGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTExMSIsIDIpICAhPT0gLTEwNDg1NzUpIHsKICAkRVJST1IoJyMyMDogcGFyc2VJbnQoIi0xMTExMTExMTExMTExMTExMTExMSIsIDIpID09PSAtMTA0ODU3NS4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTExMTExMTExMTExMTExMTExMTEiLCAyKSkpOwp9Cgo=","commentary":"Return sign * Result(17)","description":"Checking algorithm for R = 2","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gc2lnbiAqIFJlc3VsdCgxNykKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTcuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYWxnb3JpdGhtIGZvciBSID0gMTAKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlSW50KCItMSIsIDEwKSAhPT0gLTEpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludCgiLTEiLCAxMCkgPT09IC0xLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xIiwgMTApKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VJbnQoIi0xMCIsIDEwKSAhPT0gLTEwKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VJbnQoIi0xMCIsIDEwKSA9PT0gLTEwLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMCIsIDEwKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlSW50KCItMTAwIiwgMTApICE9PSAtMTAwKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VJbnQoIi0xMDAiLCAxMCkgPT09IC0xMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzQKaWYgKHBhcnNlSW50KCItMTAwMCIsIDEwKSAhPT0gLTEwMDApIHsKICAkRVJST1IoJyM0OiBwYXJzZUludCgiLTEwMDAiLCAxMCkgPT09IC0xMDAwLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMDAwIiwgMTApKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VJbnQoIi0xMDAwMCIsIDEwKSAhPT0gLTEwMDAwKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VJbnQoIi0xMDAwMCIsIDEwKSA9PT0gLTEwMDAwLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzYKaWYgKHBhcnNlSW50KCItMTAwMDAwIiwgMTApICE9PSAtMTAwMDAwKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VJbnQoIi0xMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzcKaWYgKHBhcnNlSW50KCItMTAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDApIHsKICAkRVJST1IoJyM3OiBwYXJzZUludCgiLTEwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMDAwMDAwIiwgMTApKSk7Cn0KCi8vQ0hFQ0sjOAppZiAocGFyc2VJbnQoIi0xMDAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDAwKSB7CiAgJEVSUk9SKCcjODogcGFyc2VJbnQoIi0xMDAwMDAwMCIsIDEwKSA9PT0gLTEwMDAwMDAwLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQoIi0xMDAwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzkKaWYgKHBhcnNlSW50KCItMTAwMDAwMDAwIiwgMTApICE9PSAtMTAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjOTogcGFyc2VJbnQoIi0xMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzEwCmlmIChwYXJzZUludCgiLTEwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCItMTAwMDAwMDAwMCIsIDEwKSA9PT0gLTEwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxMAppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMC4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxMgppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDApIHsKICAkRVJST1IoJyMxMjogcGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzEzCmlmIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTM6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMCIsIDEwKSA9PT0gLTEwMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxNAppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTQ6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAwMC4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxNQppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDAwMDApIHsKICAkRVJST1IoJyMxNTogcGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzEwCmlmIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMCIsIDEwKSA9PT0gLTEwMDAwMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxNwppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTc6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAwMDAwMC4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMxOAppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDAwMDAwMDApIHsKICAkRVJST1IoJyMxODogcGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMDAwMCIsIDEwKSkpOwp9CgovL0NIRUNLIzE5CmlmIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkgIT09IC0xMDAwMDAwMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMTk6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMDAwMCIsIDEwKSA9PT0gLTEwMDAwMDAwMDAwMDAwMDAwMDAuIEFjdHVhbDogJyArIChwYXJzZUludCgiLTEwMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoKLy9DSEVDSyMyMAppZiAocGFyc2VJbnQoIi0xMDAwMDAwMDAwMDAwMDAwMDAwMCIsIDEwKSAhPT0gLTEwMDAwMDAwMDAwMDAwMDAwMDAwKSB7CiAgJEVSUk9SKCcjMjA6IHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkgPT09IC0xMDAwMDAwMDAwMDAwMDAwMDAwMC4gQWN0dWFsOiAnICsgKHBhcnNlSW50KCItMTAwMDAwMDAwMDAwMDAwMDAwMDAiLCAxMCkpKTsKfQoK","commentary":"Return sign * Result(17)","description":"Checking algorithm for R = 10","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A7.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBwYXJzZUludCBtYXkgaW50ZXJwcmV0IG9ubHkgYSBsZWFkaW5nIHBvcnRpb24gb2YgdGhlIHN0cmluZyBhcwogKiBhIG51bWJlciB2YWx1ZTsgaXQgaWdub3JlcyBhbnkgY2hhcmFjdGVycyB0aGF0IGNhbm5vdCBiZSBpbnRlcnByZXRlZCBhcyBwYXJ0CiAqIG9mIHRoZSBub3RhdGlvbiBvZiBhbiBkZWNpbWFsIGxpdGVyYWwsIGFuZCBubyBpbmRpY2F0aW9uIGlzIGdpdmVuIHRoYXQgYW55IHN1Y2gKICogY2hhcmFjdGVycyB3ZXJlIGlnbm9yZWQuCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjIvUzE1LjEuMi4yX0E4LmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3Qgd2l0aG91dCBldmFsCiAqLwoKLy9DSEVDSwp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwpmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDw9IDY1NTM1OyBpbmRleCsrKSB7ICAKICBpZiAoKGluZGV4IDwgMHgwMDMwKSB8fCAoaW5kZXggPiAweDAwMzkpICYmIAogICAgICAoaW5kZXggPCAweDAwNDEpIHx8IChpbmRleCA+IDB4MDA1QSkgJiYgCiAgICAgIChpbmRleCA8IDB4MDA2MSkgfHwgKGluZGV4ID4gMHgwMDdBKSkgeyAgICAKICAgIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogICAgaWYgKHBhcnNlSW50KCIxWiIgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4KSwgMzYpICE9PSA3MSkgeyAgICAgICAKICAgICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgfSBlbHNlIHsKICAgICAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgICAgfSAKICAgICAgICAgIGVsc2UgewogICAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgICAgICB9ICAKICAgICAgICAgIGluZGV4TyA9IGluZGV4OwogICAgICAgIH0gICAgICAgICAKICAgICAgfQogICAgICBpbmRleFAgPSBpbmRleDsKICAgICAgZXJyb3JDb3VudCsrOyAgICAKICAgIH0gICAKICAgIGNvdW50Kys7CiAgfSAgCn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"parseInt may interpret only a leading portion of the string as\na number value; it ignores any characters that cannot be interpreted as part\nof the notation of an decimal literal, and no indication is given that any such\ncharacters were ignored.","description":"Complex test without eval","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlSW50IGhhcyB0aGUgYXR0cmlidXRlIERvbnRFbnVtCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjIvUzE1LjEuMi4yX0E5LjEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHVzZSBwcm9wZXJ0eUlzRW51bWVyYWJsZSwgZm9yLWluCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VJbnQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgcmVzdWx0ID0gdHJ1ZTsKZm9yICh2YXIgcCBpbiBwYXJzZUludCl7CiAgaWYgKHAgPT09ICJsZW5ndGgiKSB7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9ICAKfQoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHJlc3VsdCA9IHRydWU7IGZvciAocCBpbiBwYXJzZUludCkgeyBpZiAocCA9PT0gImxlbmd0aCIpIHJlc3VsdCA9IGZhbHNlOyB9ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The length property of parseInt has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlSW50IGhhcyB0aGUgYXR0cmlidXRlIERvbnREZWxldGUKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTkuMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIGhhc093blByb3BlcnR5LCBkZWxldGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykgIT09IHRydWUpIHsKICAkRkFJTCgnIzE6IHBhcnNlSW50Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCmRlbGV0ZSBwYXJzZUludC5sZW5ndGg7CgovL0NIRUNLIzIKaWYgKHBhcnNlSW50Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IGRlbGV0ZSBwYXJzZUludC5sZW5ndGg7IHBhcnNlSW50Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VJbnQubGVuZ3RoID09PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMzOiBkZWxldGUgcGFyc2VJbnQubGVuZ3RoOyBwYXJzZUludC5sZW5ndGggIT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"The length property of parseInt has the attribute DontDelete","description":"Checking use hasOwnProperty, delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlSW50IGhhcyB0aGUgYXR0cmlidXRlIFJlYWRPbmx5CiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjIvUzE1LjEuMi4yX0E5LjMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIHZhcnlpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKiBAbm9TdHJpY3QKICovCgovL0NIRUNLIzEKeCA9IHBhcnNlSW50Lmxlbmd0aDsKcGFyc2VJbnQubGVuZ3RoID0gSW5maW5pdHk7CmlmIChwYXJzZUludC5sZW5ndGggIT09IHgpIHsKICAkRVJST1IoJyMxOiB4ID0gcGFyc2VJbnQubGVuZ3RoOyBwYXJzZUludC5sZW5ndGggPSBJbmZpbml0eTsgcGFyc2VJbnQubGVuZ3RoID09PSB4LiBBY3R1YWw6ICcgKyAocGFyc2VJbnQubGVuZ3RoKSk7Cn0KCgo=","commentary":"The length property of parseInt has the attribute ReadOnly","description":"Checking if varying the length property fails","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlSW50IGlzIDIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTkuNC5qcwogKiBAZGVzY3JpcHRpb24gcGFyc2VJbnQubGVuZ3RoID09PSAyCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludC5sZW5ndGggIT09IDIpIHsKICAkRVJST1IoJyMxOiBwYXJzZUludC5sZW5ndGggPT09IDIuIEFjdHVhbDogJyArIChwYXJzZUludC5sZW5ndGgpKTsKfSAKCgo=","commentary":"The length property of parseInt is 2","description":"parseInt.length === 2","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VJbnQgcHJvcGVydHkgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTkuNS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIHByb3BlcnR5SXNFbnVtZXJhYmxlLCBmb3ItaW4KICovCgovL0NIRUNLIzEKaWYgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ3BhcnNlSW50JykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogdGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ3BhcnNlSW50XCcpID09PSBmYWxzZS4gQWN0dWFsOiAnICsgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ3BhcnNlSW50JykpKTsKfQoKLy9DSEVDSyMyCnZhciByZXN1bHQgPSB0cnVlOwpmb3IgKHZhciBwIGluIHRoaXMpewogIGlmIChwID09PSAicGFyc2VJbnQiKSB7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9ICAKfQoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHJlc3VsdCA9IHRydWU7IGZvciAocCBpbiB0aGlzKSB7IGlmIChwID09PSAicGFyc2VJbnQiKSByZXN1bHQgPSBmYWxzZTsgfSAgcmVzdWx0ID09PSB0cnVlOycpOwp9Cgo=","commentary":"The parseInt property has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VJbnQgcHJvcGVydHkgaGFzIG5vdCBwcm90b3R5cGUgcHJvcGVydHkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMi9TMTUuMS4yLjJfQTkuNi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgcGFyc2VJbnQucHJvdG90eXBlCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUludC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IHBhcnNlSW50LnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcgKyAocGFyc2VJbnQucHJvdG90eXBlKSk7Cn0KCg==","commentary":"The parseInt property has not prototype property","description":"Checking parseInt.prototype","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VJbnQgcHJvcGVydHkgY2FuJ3QgYmUgdXNlZCBhcyBjb25zdHJ1Y3RvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4yL1MxNS4xLjIuMl9BOS43LmpzCiAqIEBkZXNjcmlwdGlvbiBJZiBwcm9wZXJ0eSBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGludGVybmFsIFtbQ29uc3RydWN0XV0gbWV0aG9kLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24KICovCgovL0NIRUNLIzEKCnRyeSB7CiAgbmV3IHBhcnNlSW50KCk7CiAgJEVSUk9SKCcjMS4xOiBuZXcgcGFyc2VJbnQoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChuZXcgcGFyc2VJbnQoKSkpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBuZXcgcGFyc2VJbnQoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfQp9Cgo=","commentary":"The parseInt property can't be used as constructor","description":"If property does not implement the internal [[Construct]] method, throw a TypeError exception","path":"TestCases/ch15/15.1/15.1.2/15.1.2.2/S15.1.2.2_A9.7.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy8xNS4xLjIuMy0yLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBwYXJlc2VGbG9hdCAtICd0cmltbWVkU3RyaW5nJyBpcyB0aGUgZW1wdHkgc3RyaW5nIHdoZW4gaW5wdXRTdHJpbmcgZG9lcyBub3QgY29udGFpbiBhbnkgc3VjaCBjaGFyYWN0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgcmV0dXJuIGlzTmFOKHBhcnNlRmxvYXQoIiIpKSAmJiBwYXJzZUZsb2F0KCIiKSAhPT0gcGFyc2VGbG9hdCgiIik7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"pareseFloat - 'trimmedString' is the empty string when inputString does not contain any such characters","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/15.1.2.3-2-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBib29sZWFuIHByaW1pdGl2ZQogKi8KCi8vQ0hFQ0sjMQppZiAoIShpc05hTihwYXJzZUZsb2F0KHRydWUpKSAmJiBpc05hTihwYXJzZUZsb2F0KCJOYU4iKSkpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCh0cnVlKSA9PT0gTm90LWEtTnVtYmVyOyBwYXJzZUZsb2F0KCJOYU4iKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiTmFOIikpKTsKfQoKLy9DSEVDSyMyCmlmIChTdHJpbmcocGFyc2VGbG9hdChmYWxzZSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUZsb2F0KGZhbHNlKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoZmFsc2UpKSkpOwp9Cgo=","commentary":"Operator use ToString","description":"Checking for boolean primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDIuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBudW1iZXIgcHJpbWl0aXZlCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KC0xLjEpICE9PSBwYXJzZUZsb2F0KCItMS4xIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KC0xLjEpID09PSBwYXJzZUZsb2F0KCItMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KC0xLjEpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdChJbmZpbml0eSkgIT09IHBhcnNlRmxvYXQoIkluZmluaXR5IikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KEluZmluaXR5KSA9PT0gcGFyc2VGbG9hdCgiSW5maW5pdHkiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoSW5maW5pdHkpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlRmxvYXQoTmFOKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMzogU3RyaW5nKHBhcnNlRmxvYXQoTmFOKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoTmFOKSkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUZsb2F0KC4wMWUrMikgIT09IHBhcnNlRmxvYXQoIi4wMWUrMiIpKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VGbG9hdCguMDFlKzIpID09PSBwYXJzZUZsb2F0KCIuMDFlKzIiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoLjAxZSsyKSkpOwp9CgovL0NIRUNLIzUKaWYgKHBhcnNlRmxvYXQoLTApICE9PSAwKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VGbG9hdCgtMCkgPT09IDAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KC0wKSkpOwp9IGVsc2UgewogIGlmICgxIC8gcGFyc2VGbG9hdCgtMCkgIT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgewogICAgJEVSUk9SKCcjNTogcGFyc2VGbG9hdCgtMCkgPT09ICswLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgtMCkpKTsKICB9Cn0gICAgCgo=","commentary":"Operator use ToString","description":"Checking for number primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciB1bmRlZmluZWQgYW5kIG51bGwKICovCgovL0NIRUNLIzEKaWYgKCEoaXNOYU4ocGFyc2VGbG9hdCh1bmRlZmluZWQpKSAmJiBpc05hTihwYXJzZUZsb2F0KCJOYU4iKSkpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCh1bmRlZmluZWQpID09PSBOb3QtYS1OdW1iZXI7IHBhcnNlRmxvYXQoIk5hTiIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJOYU4iKSkpOwp9CgovL0NIRUNLIzIKaWYgKCEoaXNOYU4ocGFyc2VGbG9hdChudWxsKSkgJiYgaXNOYU4ocGFyc2VGbG9hdCgiTmFOIikpKSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQobnVsbCkgPT09IE5vdC1hLU51bWJlcjsgcGFyc2VGbG9hdCgiTmFOIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIk5hTiIpKSk7Cn0KCgovL0NIRUNLIzMKaWYgKFN0cmluZyhwYXJzZUZsb2F0KHVuZGVmaW5lZCkpICE9PSAiTmFOIikgewogICRFUlJPUignIzM6IFN0cmluZyhwYXJzZUZsb2F0KHVuZGVmaW5lZCkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KHVuZGVmaW5lZCkpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoU3RyaW5nKHBhcnNlRmxvYXQobnVsbCkpICE9PSAiTmFOIikgewogICRFUlJPUignIzQ6IFN0cmluZyhwYXJzZUZsb2F0KG51bGwpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VGbG9hdChudWxsKSkpKTsKfQoK","commentary":"Operator use ToString","description":"Checking for undefined and null","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBCb29sZWFuIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQppZiAoIShpc05hTihwYXJzZUZsb2F0KG5ldyBCb29sZWFuKHRydWUpKSkgJiYgaXNOYU4ocGFyc2VGbG9hdCgiTmFOIikpKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQobmV3IEJvb2xlYW4odHJ1ZSkpID09PSBOb3QtYS1OdW1iZXI7IHBhcnNlRmxvYXQoIk5hTiIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJOYU4iKSkpOwp9CgovL0NIRUNLIzIKaWYgKFN0cmluZyhwYXJzZUZsb2F0KG5ldyBCb29sZWFuKGZhbHNlKSkpICE9PSAiTmFOIikgewogICRFUlJPUignIzI6IFN0cmluZyhwYXJzZUZsb2F0KG5ldyBCb29sZWFuKGZhbHNlKSkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KG5ldyBCb29sZWFuKGZhbHNlKSkpKSk7Cn0KCg==","commentary":"Operator use ToString","description":"Checking for Boolean object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDUuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBOdW1iZXIgb2JqZWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KG5ldyBOdW1iZXIoLTEuMSkpICE9PSBwYXJzZUZsb2F0KCItMS4xIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KG5ldyBOdW1iZXIoLTEuMSkpID09PSBwYXJzZUZsb2F0KCItMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG5ldyBOdW1iZXIoLTEuMSkpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdChuZXcgTnVtYmVyKEluZmluaXR5KSkgIT09IHBhcnNlRmxvYXQoIkluZmluaXR5IikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KG5ldyBOdW1iZXIoSW5maW5pdHkpKSA9PT0gcGFyc2VGbG9hdCgiSW5maW5pdHkiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQobmV3IE51bWJlcihJbmZpbml0eSkpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlRmxvYXQobmV3IE51bWJlcihOYU4pKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjMzogU3RyaW5nKHBhcnNlRmxvYXQobmV3IE51bWJlcihOYU4pKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQobmV3IE51bWJlcihOYU4pKSkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUZsb2F0KG5ldyBOdW1iZXIoLjAxZSsyKSkgIT09IHBhcnNlRmxvYXQoIi4wMWUrMiIpKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VGbG9hdChuZXcgTnVtYmVyKC4wMWUrMikpID09PSBwYXJzZUZsb2F0KCIuMDFlKzIiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQobmV3IE51bWJlciguMDFlKzIpKSkpOwp9Cgo=","commentary":"Operator use ToString","description":"Checking for Number object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDYuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGZvciBTdHJpbmcgb2JqZWN0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIi0xLjEiKSkgIT09IHBhcnNlRmxvYXQoIi0xLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQobmV3IFN0cmluZygiLTEuMSIpKSA9PT0gcGFyc2VGbG9hdCgiLTEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdChuZXcgU3RyaW5nKCItMS4xIikpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdChuZXcgU3RyaW5nKCJJbmZpbml0eSIpKSAhPT0gcGFyc2VGbG9hdCgiSW5maW5pdHkiKSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQobmV3IFN0cmluZygiSW5maW5pdHkiKSkgPT09IHBhcnNlRmxvYXQoIkluZmluaXR5IikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIkluZmluaXR5IikpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoU3RyaW5nKHBhcnNlRmxvYXQobmV3IFN0cmluZygiTmFOIikpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyMzOiBTdHJpbmcocGFyc2VGbG9hdChuZXcgU3RyaW5nKCJOYU4iKSkpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIk5hTiIpKSkpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIi4wMWUrMiIpKSAhPT0gcGFyc2VGbG9hdCgiLjAxZSsyIikpIHsKICAkRVJST1IoJyM0OiBwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIi4wMWUrMiIpKSA9PT0gcGFyc2VGbG9hdCgiLjAxZSsyIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG5ldyBTdHJpbmcoIi4wMWUrMiIpKSkpOwp9CgovL0NIRUNLIzUKaWYgKFN0cmluZyhwYXJzZUZsb2F0KG5ldyBTdHJpbmcoImZhbHNlIikpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM1OiBTdHJpbmcocGFyc2VGbG9hdChuZXcgU3RyaW5nKCJmYWxzZSIpKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQobmV3IFN0cmluZygiZmFsc2UiKSkpKSk7Cn0KCg==","commentary":"Operator use ToString","description":"Checking for String object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciB1c2UgVG9TdHJpbmcKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTFfVDcuanMKICogQGRlc2NyaXB0aW9uIElmIFR5cGUodmFsdWUpIGlzIE9iamVjdCwgZXZhbHVhdGUgVG9QcmltaXRpdmUodmFsdWUsIFN0cmluZykKICovCgovL0NIRUNLIzEKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19OwppZiAoaXNOYU4ocGFyc2VGbG9hdChvYmplY3QpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VGbG9hdChvYmplY3QpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG9iamVjdCkpKTsKfQoKLy9DSEVDSyMyCnZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDB9fTsKaWYgKHBhcnNlRmxvYXQob2JqZWN0KSAhPT0gMCkgewogICRFUlJPUignIzI6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDB9fTsgcGFyc2VGbG9hdChvYmplY3QpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdChvYmplY3QpKSk7Cn0gCgovL0NIRUNLIzMKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4gMX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsKaWYgKHBhcnNlRmxvYXQob2JqZWN0KSAhPT0gMSkgewogICRFUlJPUignIzM6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fX07IHBhcnNlRmxvYXQob2JqZWN0KSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQob2JqZWN0KSkpOwp9CgovL0NIRUNLIzQKdHJ5IHsKICB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsKICBpZiAocGFyc2VGbG9hdChvYmplY3QpICE9PSAxKSB7CiAgICAkRVJST1IoJyM0LjE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4gMX19OyBwYXJzZUZsb2F0KG9iamVjdCkgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG9iamVjdCkpKTsKICB9Cn0KY2F0Y2ggKGUpIHsKICBpZiAoZSA9PT0gImVycm9yIikgewogICAgJEVSUk9SKCcjNC4yOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VGbG9hdChvYmplY3QpIG5vdCB0aHJvdyAiZXJyb3IiJyk7CiAgfSBlbHNlIHsKICAgICRFUlJPUignIzQuMzogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHt0aHJvdyAiZXJyb3IifSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAxfX07IHBhcnNlRmxvYXQob2JqZWN0KSBub3QgdGhyb3cgRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfQp9CgovL0NIRUNLIzUKdmFyIG9iamVjdCA9IHt0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsKaWYgKHBhcnNlRmxvYXQob2JqZWN0KSAhPT0gMSkgewogICRFUlJPUignIzU6IHZhciBvYmplY3QgPSB7dG9TdHJpbmc6IGZ1bmN0aW9uKCkge3JldHVybiAxfX07IHBhcnNlRmxvYXQob2JqZWN0KSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQob2JqZWN0KSkpOwp9CgovL0NIRUNLIzYKdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fQppZiAocGFyc2VGbG9hdChvYmplY3QpICE9PSAxKSB7CiAgJEVSUk9SKCcjNjogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIDF9fTsgcGFyc2VGbG9hdChvYmplY3QpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdChvYmplY3QpKSk7Cn0KCi8vQ0hFQ0sjNwp0cnkgewogIHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn19OwogIHBhcnNlRmxvYXQob2JqZWN0KTsKICAkRVJST1IoJyM3LjE6IHZhciBvYmplY3QgPSB7dmFsdWVPZjogZnVuY3Rpb24oKSB7cmV0dXJuIDF9LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7dGhyb3cgImVycm9yIn19OyBwYXJzZUZsb2F0KG9iamVjdCkgdGhyb3cgImVycm9yIi4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQob2JqZWN0KSkpOwp9ICAKY2F0Y2ggKGUpIHsKICBpZiAoZSAhPT0gImVycm9yIikgewogICAgJEVSUk9SKCcjNy4yOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiAxfSwgdG9TdHJpbmc6IGZ1bmN0aW9uKCkge3Rocm93ICJlcnJvciJ9fTsgcGFyc2VGbG9hdChvYmplY3QpIHRocm93ICJlcnJvciIuIEFjdHVhbDogJyArIChlKSk7CiAgfSAKfQoKLy9DSEVDSyM4CnRyeSB7CiAgdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fX07CiAgcGFyc2VGbG9hdChvYmplY3QpOwogICRFUlJPUignIzguMTogdmFyIG9iamVjdCA9IHt2YWx1ZU9mOiBmdW5jdGlvbigpIHtyZXR1cm4ge319LCB0b1N0cmluZzogZnVuY3Rpb24oKSB7cmV0dXJuIHt9fX07IHBhcnNlRmxvYXQob2JqZWN0KSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KG9iamVjdCkpKTsKfSAgCmNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjOC4yOiB2YXIgb2JqZWN0ID0ge3ZhbHVlT2Y6IGZ1bmN0aW9uKCkge3JldHVybiB7fX0sIHRvU3RyaW5nOiBmdW5jdGlvbigpIHtyZXR1cm4ge319fTsgcGFyc2VGbG9hdChvYmplY3QpIHRocm93IFR5cGVFcnJvci4gQWN0dWFsOiAnICsgKGUpKTsKICB9IAp9Cgo=","commentary":"Operator use ToString","description":"If Type(value) is Object, evaluate ToPrimitive(value, String)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogVEFCIChVKzAwMDkpCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCJcdTAwMDkxLjEiKSAhPT0gcGFyc2VGbG9hdCgiMS4xIikpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KCJcXHUwMDA5MS4xIikgPT09IHBhcnNlRmxvYXQoIjEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMDA5MS4xIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCJcdTAwMDlcdTAwMDktMS4xIikgIT09IHBhcnNlRmxvYXQoIi0xLjEiKSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIlxcdTAwMDlcXHUwMDA5LTEuMSIpID09PSBwYXJzZUZsb2F0KCItMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMDlcdTAwMDktMS4xIikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUZsb2F0KCIJMS4xIikgIT09IHBhcnNlRmxvYXQoIjEuMSIpKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiCTEuMSIpID09PSBwYXJzZUZsb2F0KCIxLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIgkxLjEiKSkpOwp9CgovL0NIRUNLIzQKaWYgKHBhcnNlRmxvYXQoIgkJCTEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIgkJCTEuMSIpID09PSBwYXJzZUZsb2F0KCIxLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIgkJCTEuMSIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VGbG9hdCgiCQkJXHUwMDA5CQkJXHUwMDA5LTEuMSIpICE9PSBwYXJzZUZsb2F0KCItMS4xIikpIHsKICAkRVJST1IoJyM1OiBwYXJzZUZsb2F0KCIJCQlcXHUwMDA5CQkJXFx1MDAwOS0xLjEiKSA9PT0gcGFyc2VGbG9hdCgiLTEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiCQkJXHUwMDA5CQkJXHUwMDA5LTEuMSIpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAoaXNOYU4ocGFyc2VGbG9hdCgiXHUwMDA5IikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VGbG9hdCgiXFx1MDAwOSIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMDkiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: TAB (U+0009)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UMTAuanMKICogQGRlc2NyaXB0aW9uIFN0cldoaXRlU3BhY2VDaGFyIDo6IFVTUAogKi8KCi8vQ0hFQ0sjCnZhciBjb3VudCA9IDA7CnZhciBlcnJvckNvdW50ID0gMDsKdmFyIHVzcFUgPSBbIlx1MTY4MCIsICJcdTE4MEUiLCAiXHUyMDAwIiwgIlx1MjAwMSIsICJcdTIwMDIiLCAiXHUyMDAzIiwgIlx1MjAwNCIsICJcdTIwMDUiLCAiXHUyMDA2IiwgIlx1MjAwNyIsICJcdTIwMDgiLCAiXHUyMDA5IiwgIlx1MjAwQSIsICJcdTIwMkYiLCAiXHUyMDVGIiwgIlx1MzAwMCJdOwp2YXIgdXNwUyA9IFsiMTY4MCIsICIxODBFIiwgIjIwMDAiLCAiMjAwMSIsICIyMDAyIiwgIjIwMDMiLCAiMjAwNCIsICIyMDA1IiwgIjIwMDYiLCAiMjAwNyIsICIyMDA4IiwgIjIwMDkiLCAiMjAwQSIsICIyMDJGIiwgIjIwNUYiLCAiMzAwMCJdOwpmb3IgKHZhciBpbmRleCA9IDA7IGluZGV4IDwgdXNwVS5sZW5ndGg7IGluZGV4KyspIHsKICB2YXIgcmVzdWx0ID0gdHJ1ZTsgIAogIGlmIChwYXJzZUZsb2F0KHVzcFVbaW5kZXhdICsgIjEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICAgJEVSUk9SKCcjMS4nICsgIHVzcFNbaW5kZXhdICsgJyAnKTsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICAgaWYgKHBhcnNlRmxvYXQodXNwVVtpbmRleF0gKyB1c3BVW2luZGV4XSArIHVzcFVbaW5kZXhdICsgIjEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICAgJEVSUk9SKCcjMi4nICsgIHVzcFNbaW5kZXhdICsgJyAnKTsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICBpZiAoaXNOYU4ocGFyc2VGbG9hdCh1c3BVW2luZGV4XSkpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMzLicgKyAgdXNwU1tpbmRleF0gKyAnICcpOwogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQogIGlmIChyZXN1bHQgIT09IHRydWUpIHsKICAgICAgZXJyb3JDb3VudCsrOwogIH0KICBjb3VudCsrOwp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50KTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: USP","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogU1AgKFUrMDAyMCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MDAyMDEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTAwMjAxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMjAxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MDAyMFx1MDAyMC0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MDAyMFxcdTAwMjAtMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAyMFx1MDAyMC0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlRmxvYXQoIiAxLjEiKSAhPT0gcGFyc2VGbG9hdCgiMS4xIikpIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCIgMS4xIikgPT09IHBhcnNlRmxvYXQoIjEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiIDEuMSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VGbG9hdCgiICAgICAgIDEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIiAgICAgICAxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIgICAgICAgMS4xIikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUZsb2F0KCIgICAgICAgXHUwMDIwICAgICAgIFx1MDAyMC0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VGbG9hdCgiICAgICAgIFxcdTAwMjAgICAgICAgXFx1MDAyMC0xLjEiKSA9PT0gcGFyc2VGbG9hdCgiLTEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiICAgICAgIFx1MDAyMCAgICAgICBcdTAwMjAtMS4xIikpKTsKfQoKLy9DSEVDSyM2CmlmIChpc05hTihwYXJzZUZsb2F0KCJcdTAwMjAiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM2OiBwYXJzZUZsb2F0KCJcXHUwMDIwIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAyMCIpKSk7Cn0KCg==","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: SP (U+0020)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTkJTQiAoVSswMEEwKQogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VGbG9hdCgiXHUwMEEwMS4xIikgIT09IHBhcnNlRmxvYXQoIjEuMSIpKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiXFx1MDBBMDEuMSIpID09PSBwYXJzZUZsb2F0KCIxLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDBBMDEuMSIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdCgiXHUwMEEwXHUwMEEwLTEuMSIpICE9PSBwYXJzZUZsb2F0KCItMS4xIikpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCJcXHUwMEEwXFx1MDBBMC0xLjEiKSA9PT0gcGFyc2VGbG9hdCgiLTEuMSIpLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMEEwXHUwMEEwLTEuMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VGbG9hdCgiXHUwMEEwIikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiXFx1MDBBMCIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwQTAiKSkpOwp9Cgo=","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: NBSB (U+00A0)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogRkYgKFUrMDAwQykKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQzEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTAwMEMxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMEMxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQ1x1MDAwQy0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MDAwQ1xcdTAwMEMtMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAwQ1x1MDAwQy0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MDAwQyIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTAwMEMiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMDBDIikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: FF (U+000C)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UNS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogVlQgKFUrMDAwQikKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQjEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTAwMEIxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMEIxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQlx1MDAwQi0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MDAwQlxcdTAwMEItMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAwQlx1MDAwQi0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MDAwQiIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTAwMEIiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMDBCIikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: VT (U+000B)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UNi5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogQ1IgKFUrMDAwRCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MDAwRDEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTAwMEQxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMEQxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MDAwRFx1MDAwRC0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MDAwRFxcdTAwMEQtMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAwRFx1MDAwRC0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MDAwRCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTAwMEQiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMDBEIikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: CR (U+000D)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UNy5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTEYgKFUrMDAwQSkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQTEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTAwMEExLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTAwMEExLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MDAwQVx1MDAwQS0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MDAwQVxcdTAwMEEtMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MDAwQVx1MDAwQS0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MDAwQSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTAwMEEiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUwMDBBIikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: LF (U+000A)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UOC5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogTFMgKFUrMjAyOCkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MjAyODEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTIwMjgxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTIwMjgxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MjAyOFx1MjAyOC0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MjAyOFxcdTIwMjgtMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MjAyOFx1MjAyOC0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MjAyOCIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTIwMjgiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUyMDI4IikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: LS (U+2028)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBPcGVyYXRvciByZW1vdmUgbGVhZGluZyBTdHJXaGl0ZVNwYWNlQ2hhcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BMl9UOS5qcwogKiBAZGVzY3JpcHRpb24gU3RyV2hpdGVTcGFjZUNoYXIgOjogUFMgKFUrMjAyOSkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIlx1MjAyOTEuMSIpICE9PSBwYXJzZUZsb2F0KCIxLjEiKSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIlxcdTIwMjkxLjEiKSA9PT0gcGFyc2VGbG9hdCgiMS4xIikuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJcdTIwMjkxLjEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIlx1MjAyOVx1MjAyOS0xLjEiKSAhPT0gcGFyc2VGbG9hdCgiLTEuMSIpKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiXFx1MjAyOVxcdTIwMjktMS4xIikgPT09IHBhcnNlRmxvYXQoIi0xLjEiKS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIlx1MjAyOVx1MjAyOS0xLjEiKSkpOwp9CgovL0NIRUNLIzMKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIlx1MjAyOSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIlxcdTIwMjkiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiXHUyMDI5IikpKTsKfQoK","commentary":"Operator remove leading StrWhiteSpaceChar","description":"StrWhiteSpaceChar :: PS (U+2029)","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A2_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBuZWl0aGVyIFJlc3VsdCgyKSBub3IgYW55IHByZWZpeCBvZiBSZXN1bHQoMikgc2F0aXNmaWVzIHRoZSBzeW50YXggb2YgYQogKiBTdHJEZWNpbWFsTGl0ZXJhbCAoc2VlIDkuMy4xKSwgcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BM19UMS5qcwogKiBAZGVzY3JpcHRpb24gcGFyc2VGbG9hdCgic29tZSBzdHJpbmciKSByZXR1cm4gTmFOCiAqLwoKLy9DSEVDSyMxCmlmIChpc05hTihwYXJzZUZsb2F0KCJzdHIiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KCJzdHIiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgic3RyIikpKTsKfQoKLy9DSEVDSyMyCmlmIChpc05hTihwYXJzZUZsb2F0KCJzMSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoInMxIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoInMxIikpKTsKfQoKLy9DSEVDSyMzCmlmIChpc05hTihwYXJzZUZsb2F0KCIiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCIiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiIikpKTsKfQoKLy9DSEVDSyM0CmlmIChTdHJpbmcocGFyc2VGbG9hdCgic3RyIikpICE9PSAiTmFOIikgewogICRFUlJPUignIzQ6IFN0cmluZyhwYXJzZUZsb2F0KCJzdHIiKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoInN0ciIpKSkpOwp9CgovL0NIRUNLIzUKaWYgKFN0cmluZyhwYXJzZUZsb2F0KCJzMSIpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM1OiBTdHJpbmcocGFyc2VGbG9hdCgiczEiKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoInMxIikpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAoU3RyaW5nKHBhcnNlRmxvYXQoIiIpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM2OiBTdHJpbmcocGFyc2VGbG9hdCgiIikpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KCIiKSkpKTsKfQoKLy9DSEVDSyM3CmlmIChTdHJpbmcocGFyc2VGbG9hdCgiKyIpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM3OiBTdHJpbmcocGFyc2VGbG9hdCgiKyIpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VGbG9hdCgiKyIpKSkpOwp9Cgo=","commentary":"If neither Result(2) nor any prefix of Result(2) satisfies the syntax of a\nStrDecimalLiteral (see 9.3.1), return NaN","description":"parseFloat(\"some string\") return NaN","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBuZWl0aGVyIFJlc3VsdCgyKSBub3IgYW55IHByZWZpeCBvZiBSZXN1bHQoMikgc2F0aXNmaWVzIHRoZSBzeW50YXggb2YgYQogKiBTdHJEZWNpbWFsTGl0ZXJhbCAoc2VlIDkuMy4xKSwgcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BM19UMi5qcwogKiBAZGVzY3JpcHRpb24gcGFyc2VGbG9hdCgid3JvbmcgbnVtYmVyIGZvcm1hdCB3aXRoIEV4cG9uZW50SW5kaWNhdG9yIikgcmV0dXJuIE5hTgogKi8KCi8vQ0hFQ0sjMQppZiAoaXNOYU4ocGFyc2VGbG9hdCgiZTEiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KCJlMSIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJlMSIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoaXNOYU4ocGFyc2VGbG9hdCgiZS0xIikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiZS0xIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoImUtMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VGbG9hdCgiRSsxIikpICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiRSsxIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIkUrMSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoaXNOYU4ocGFyc2VGbG9hdCgiRTAiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM0OiBwYXJzZUZsb2F0KCJFMCIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJFMCIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAoU3RyaW5nKHBhcnNlRmxvYXQoImUxIikpICE9PSAiTmFOIikgewogICRFUlJPUignIzU6IFN0cmluZyhwYXJzZUZsb2F0KCJlMSIpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VGbG9hdCgiZTEiKSkpKTsKfQoKLy9DSEVDSyM2CmlmIChTdHJpbmcocGFyc2VGbG9hdCgiZS0xIikpICE9PSAiTmFOIikgewogICRFUlJPUignIzY6IFN0cmluZyhwYXJzZUZsb2F0KCJlLTEiKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoImUtMSIpKSkpOwp9CgovL0NIRUNLIzcKaWYgKFN0cmluZyhwYXJzZUZsb2F0KCJFKzEiKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjNzM6IFN0cmluZyhwYXJzZUZsb2F0KCJFKzEiKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoIkUrMSIpKSkpOwp9CgovL0NIRUNLIzgKaWYgKFN0cmluZyhwYXJzZUZsb2F0KCJFMCIpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM4OiBTdHJpbmcocGFyc2VGbG9hdCgiRTAiKSkgPT09ICJOYU4iLiBBY3R1YWw6ICcgKyAoU3RyaW5nKHBhcnNlRmxvYXQoIkUwIikpKSk7Cn0KCi8vQ0hFQ0sjOQppZiAoaXNOYU4ocGFyc2VGbG9hdCgiLS5lLTEiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyM5OiBwYXJzZUZsb2F0KCItLmUtMSIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCItLmUtMSIpKSk7Cn0KCi8vQ0hFQ0sjMTAKaWYgKGlzTmFOKHBhcnNlRmxvYXQoIi5lMSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzEwOiBwYXJzZUZsb2F0KCIuZTEiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiLmUxIikpKTsKfQoK","commentary":"If neither Result(2) nor any prefix of Result(2) satisfies the syntax of a\nStrDecimalLiteral (see 9.3.1), return NaN","description":"parseFloat(\"wrong number format with ExponentIndicator\") return NaN","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBuZWl0aGVyIFJlc3VsdCgyKSBub3IgYW55IHByZWZpeCBvZiBSZXN1bHQoMikgc2F0aXNmaWVzIHRoZSBzeW50YXggb2YgYQogKiBTdHJEZWNpbWFsTGl0ZXJhbCAoc2VlIDkuMy4xKSwgcmV0dXJuIE5hTgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BM19UMy5qcwogKiBAZGVzY3JpcHRpb24gcGFyc2VGbG9hdCgid3JvbmcgbnVtYnIgZm9ybWF0IikgcmV0dXJuIE5hTgogKi8KCi8vQ0hFQ0sjMQppZiAoaXNOYU4ocGFyc2VGbG9hdCgiLngiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KCIueCIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIueCIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAoaXNOYU4ocGFyc2VGbG9hdCgiK3giKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCIreCIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIreCIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ocGFyc2VGbG9hdCgiaW5maW5pdHkiKSkgIT09IHRydWUpIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCJpbmZpbml0eSIpID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJpbmZpbml0eSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAoaXNOYU4ocGFyc2VGbG9hdCgiQSIpKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIkEiKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiQSIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAoU3RyaW5nKHBhcnNlRmxvYXQoIi5zIikpICE9PSAiTmFOIikgewogICRFUlJPUignIzU6IFN0cmluZyhwYXJzZUZsb2F0KCIucyIpKSA9PT0gIk5hTiIuIEFjdHVhbDogJyArIChTdHJpbmcocGFyc2VGbG9hdCgiLnMiKSkpKTsKfQoKLy9DSEVDSyM2CmlmIChTdHJpbmcocGFyc2VGbG9hdCgiK3giKSkgIT09ICJOYU4iKSB7CiAgJEVSUk9SKCcjNjogU3RyaW5nKHBhcnNlRmxvYXQoIit4IikpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KCIreCIpKSkpOwp9CgovL0NIRUNLIzcKaWYgKFN0cmluZyhwYXJzZUZsb2F0KCJpbmZpbml0eSIpKSAhPT0gIk5hTiIpIHsKICAkRVJST1IoJyM3MzogU3RyaW5nKHBhcnNlRmxvYXQoImluZmluaXR5IikpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KCJpbmZpbml0eSIpKSkpOwp9CgovL0NIRUNLIzgKaWYgKFN0cmluZyhwYXJzZUZsb2F0KCJBIikpICE9PSAiTmFOIikgewogICRFUlJPUignIzg6IFN0cmluZyhwYXJzZUZsb2F0KCJBIikpID09PSAiTmFOIi4gQWN0dWFsOiAnICsgKFN0cmluZyhwYXJzZUZsb2F0KCJBIikpKSk7Cn0KCg==","commentary":"If neither Result(2) nor any prefix of Result(2) satisfies the syntax of a\nStrDecimalLiteral (see 9.3.1), return NaN","description":"parseFloat(\"wrong numbr format\") return NaN","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDEuanMKICogQGRlc2NyaXB0aW9uIFNvbWUgd3JvbmcgbnVtYmVyCiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCIweCIpICE9PSAwKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiMHgiKSA9PT0gMC4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjB4IikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCIxMXgiKSAhPT0gMTEpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCIxMXgiKSA9PT0gMTEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIxMXgiKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlRmxvYXQoIjExczEiKSAhPT0gMTEpIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCIxMXMxIikgPT09IDExLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMTFzMSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VGbG9hdCgiMTEuczEiKSAhPT0gMTEpIHsKICAkRVJST1IoJyM0OiBwYXJzZUZsb2F0KCIxMS5zMSIpID09PSAxMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjExLnMxIikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUZsb2F0KCIuMHMxIikgIT09IDApIHsKICAkRVJST1IoJyM1OiBwYXJzZUZsb2F0KCIuMHMxIikgPT09IDAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIuMHMxIikpKTsKfQoKLy9DSEVDSyM2CmlmIChwYXJzZUZsb2F0KCIxLnMxIikgIT09IDEpIHsKICAkRVJST1IoJyM2OiBwYXJzZUZsb2F0KCIxLnMxIikgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIxLnMxIikpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUZsb2F0KCIxLi4xIikgIT09IDEpIHsKICAkRVJST1IoJyM3OiBwYXJzZUZsb2F0KCIxLi4xIikgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIxLi4xIikpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUZsb2F0KCIwLjEuMSIpICE9PSAwLjEpIHsKICAkRVJST1IoJyM4OiBwYXJzZUZsb2F0KCIwLjEuMSIpID09PSAwLjEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwLjEuMSIpKSk7Cn0KCi8vQ0hFQ0sjOQppZiAocGFyc2VGbG9hdCgiMC4gMSIpICE9PSAwKSB7CiAgJEVSUk9SKCcjOTogcGFyc2VGbG9hdCgiMC4gMSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMC4gMSIpKSk7Cn0KCg==","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"Some wrong number","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDIuanMKICogQGRlc2NyaXB0aW9uIFdpdGggRXhwb25lbnRJbmRpY2F0b3IKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIjFleCIpICE9PSAxKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiMWV4IikgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIxZXgiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIjFlLXgiKSAhPT0gMSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIjFlLXgiKSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjFlLXgiKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlRmxvYXQoIjFlMXgiKSAhPT0gMTApIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCIxZTF4IikgPT09IDEwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMWUxeCIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VGbG9hdCgiMWUtMXgiKSAhPT0gMC4xKSB7CiAgJEVSUk9SKCcjNDogcGFyc2VGbG9hdCgiMWUtMXgiKSA9PT0gMC4xLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMWUtMXgiKSkpOwp9CgovL0NIRUNLIzUKaWYgKHBhcnNlRmxvYXQoIjAuMWUtMXgiKSAhPT0gMC4wMSkgewogICRFUlJPUignIzU6IHBhcnNlRmxvYXQoIjAuMWUtMXgiKSA9PT0gMC4wMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAuMWUtMXgiKSkpOwp9Cgo=","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"With ExponentIndicator","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDMuanMKICogQGRlc2NyaXB0aW9uIFN0ckRlY2ltYWxMaXRlcmFsIG5vdCBjb250YWluIEhleEludGVnZXJMaXRlcmFsCiAqLwoKLy9DSEVDSyMwCmlmIChwYXJzZUZsb2F0KCIweDAiKSAhPT0gMCkgewogICRFUlJPUignIzA6IHBhcnNlRmxvYXQoIjB4MCIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHgwIikpKTsKfQoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCIweDEiKSAhPT0gMCkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIjB4MSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHgxIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCIweDIiKSAhPT0gMCkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIjB4MiIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHgyIikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUZsb2F0KCIweDMiKSAhPT0gMCkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIjB4MyIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHgzIikpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUZsb2F0KCIweDQiKSAhPT0gMCkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIjB4NCIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg0IikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUZsb2F0KCIweDUiKSAhPT0gMCkgewogICRFUlJPUignIzU6IHBhcnNlRmxvYXQoIjB4NSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg1IikpKTsKfQoKLy9DSEVDSyM2CmlmIChwYXJzZUZsb2F0KCIweDYiKSAhPT0gMCkgewogICRFUlJPUignIzY6IHBhcnNlRmxvYXQoIjB4NiIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg2IikpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUZsb2F0KCIweDciKSAhPT0gMCkgewogICRFUlJPUignIzc6IHBhcnNlRmxvYXQoIjB4NyIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg3IikpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUZsb2F0KCIweDgiKSAhPT0gMCkgewogICRFUlJPUignIzg6IHBhcnNlRmxvYXQoIjB4OCIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg4IikpKTsKfQoKLy9DSEVDSyM5CmlmIChwYXJzZUZsb2F0KCIweDkiKSAhPT0gMCkgewogICRFUlJPUignIzk6IHBhcnNlRmxvYXQoIjB4OSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHg5IikpKTsKfQoKLy9DSEVDSyNBCmlmIChwYXJzZUZsb2F0KCIweEEiKSAhPT0gMCkgewogICRFUlJPUignI0E6IHBhcnNlRmxvYXQoIjB4QSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhBIikpKTsKfQoKLy9DSEVDSyNCCmlmIChwYXJzZUZsb2F0KCIweEIiKSAhPT0gMCkgewogICRFUlJPUignI0I6IHBhcnNlRmxvYXQoIjB4QiIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhCIikpKTsKfQoKLy9DSEVDSyNDCmlmIChwYXJzZUZsb2F0KCIweEMiKSAhPT0gMCkgewogICRFUlJPUignI0M6IHBhcnNlRmxvYXQoIjB4QyIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhDIikpKTsKfQoKLy9DSEVDSyNECmlmIChwYXJzZUZsb2F0KCIweEQiKSAhPT0gMCkgewogICRFUlJPUignI0Q6IHBhcnNlRmxvYXQoIjB4RCIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhEIikpKTsKfQoKLy9DSEVDSyNFCmlmIChwYXJzZUZsb2F0KCIweEUiKSAhPT0gMCkgewogICRFUlJPUignI0U6IHBhcnNlRmxvYXQoIjB4RSIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhFIikpKTsKfQoKLy9DSEVDSyNGCmlmIChwYXJzZUZsb2F0KCIweEYiKSAhPT0gMCkgewogICRFUlJPUignI0Y6IHBhcnNlRmxvYXQoIjB4RiIpID09PSAwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMHhGIikpKTsKfQoK","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"StrDecimalLiteral not contain HexIntegerLiteral","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDQuanMKICogQGRlc2NyaXB0aW9uICJJbmZpbml0eSIrInNvbWUgc3RyaW5nIgogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VGbG9hdCgiSW5maW5pdHkxIikgIT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIkluZmluaXR5MSIpID09PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCJJbmZpbml0eTEiKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIkluZmluaXR5eCIpICE9PSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCJJbmZpbml0eXgiKSA9PT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiSW5maW5pdHl4IikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUZsb2F0KCJJbmZpbml0eSsxIikgIT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIkluZmluaXR5KzEiKSA9PT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiSW5maW5pdHkrMSIpKSk7Cn0KCg==","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"\"Infinity\"+\"some string\"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDUuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIERlY2ltYWxEaWdpdHMgLiBEZWNpbWFsRGlnaXRzX29wdCBFeHBvbmVudFBhcnRfb3B0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCItMTEuc3RyaW5nIikgIT09IC0xMSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIi0xMS5zdHJpbmciKSA9PT0gLTExLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiLTExLnN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdCgiMDEuc3RyaW5nIikgIT09IDEpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCIwMS5zdHJpbmciKSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAxLnN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VGbG9hdCgiKzExLjFzdHJpbmciKSAhPT0gMTEuMSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIisxMS4xc3RyaW5nIikgPT09IDExLjEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIrMTEuMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VGbG9hdCgiMDEuMXN0cmluZyIpICE9PSAxLjEpIHsKICAkRVJST1IoJyM0OiBwYXJzZUZsb2F0KCIwMS4xc3RyaW5nIikgPT09IDEuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAxLjFzdHJpbmciKSkpOwp9CgovL0NIRUNLIzUKaWYgKHBhcnNlRmxvYXQoIi0xMS5lLTFzdHJpbmciKSAhPT0gLTEuMSkgewogICRFUlJPUignIzU6IHBhcnNlRmxvYXQoIi0xMS5lLTFzdHJpbmciKSA9PT0gLTEuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIi0xMS5lLTFzdHJpbmciKSkpOwp9CgovL0NIRUNLIzYKaWYgKHBhcnNlRmxvYXQoIjAxLmUxc3RyaW5nIikgIT09IDEwKSB7CiAgJEVSUk9SKCcjNjogcGFyc2VGbG9hdCgiMDEuZTFzdHJpbmciKSA9PT0gMTAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMS5lMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjNwppZiAocGFyc2VGbG9hdCgiKzExLjIyZS0xc3RyaW5nIikgIT09IDEuMTIyKSB7CiAgJEVSUk9SKCcjNzogcGFyc2VGbG9hdCgiKzExLjIyZS0xc3RyaW5nIikgPT09IDEuMTIyLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiKzExLjIyZS0xc3RyaW5nIikpKTsKfQoKLy9DSEVDSyM4CmlmIChwYXJzZUZsb2F0KCIwMS4wMWUxc3RyaW5nIikgIT09IDEwLjEpIHsKICAkRVJST1IoJyM4OiBwYXJzZUZsb2F0KCIwMS4wMWUxc3RyaW5nIikgPT09IDEwLjEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMS4wMWUxc3RyaW5nIikpKTsKfQoKLy9DSEVDSyM5CmlmIChwYXJzZUZsb2F0KCIwMDEuc3RyaW5nIikgIT09IDEpIHsKICAkRVJST1IoJyM5OiBwYXJzZUZsb2F0KCIwMDEuc3RyaW5nIikgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMDEuc3RyaW5nIikpKTsKfQoKLy9DSEVDSyMxMAppZiAocGFyc2VGbG9hdCgiMDEwLnN0cmluZyIpICE9PSAxMCkgewogICRFUlJPUignIzEwOiBwYXJzZUZsb2F0KCIwMTAuc3RyaW5nIikgPT09IDEwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDEwLnN0cmluZyIpKSk7Cn0KCg==","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"Checking DecimalDigits . DecimalDigits_opt ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDYuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIC4gRGVjaW1hbERpZ2l0cyBFeHBvbmVudFBhcnRfb3B0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCIrLjFzdHJpbmciKSAhPT0gMC4xKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiKy4xc3RyaW5nIikgPT09IDAuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIisuMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdCgiLjAxc3RyaW5nIikgIT09IDAuMDEpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCIuMDFzdHJpbmciKSA9PT0gMC4wMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIi4wMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VGbG9hdCgiKy4yMmUtMXN0cmluZyIpICE9PSAwLjAyMikgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIisuMjJlLTFzdHJpbmciKSA9PT0gMC4wMjIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIrLjIyZS0xc3RyaW5nIikpKTsKfQoK","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"Checking . DecimalDigits ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBDb21wdXRlIHRoZSBsb25nZXN0IHByZWZpeCBvZiBSZXN1bHQoMiksIHdoaWNoIG1pZ2h0IGJlIFJlc3VsdCgyKSBpdHNlbGYsCiAqIHdoaWNoIHNhdGlzZmllcyB0aGUgc3ludGF4IG9mIGEgU3RyRGVjaW1hbExpdGVyYWwKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTRfVDcuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIERlY2ltYWxEaWdpdHMgRXhwb25lbnRQYXJ0X29wdAogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VGbG9hdCgiLTExc3RyaW5nIikgIT09IC0xMSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIi0xMXN0cmluZyIpID09PSAtMTEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCItMTFzdHJpbmciKSkpOwp9CgovL0NIRUNLIzIKaWYgKHBhcnNlRmxvYXQoIjAxc3RyaW5nIikgIT09IDEpIHsKICAkRVJST1IoJyMyOiBwYXJzZUZsb2F0KCIwMXN0cmluZyIpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDFzdHJpbmciKSkpOwp9CgovL0NIRUNLIzMKaWYgKHBhcnNlRmxvYXQoIi0xMWUtMXN0cmluZyIpICE9PSAtMS4xKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiLTExZS0xc3RyaW5nIikgPT09IC0xLjEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCItMTFlLTFzdHJpbmciKSkpOwp9CgovL0NIRUNLIzQKaWYgKHBhcnNlRmxvYXQoIjAxZTFzdHJpbmciKSAhPT0gMTApIHsKICAkRVJST1IoJyM0OiBwYXJzZUZsb2F0KCIwMWUxc3RyaW5nIikgPT09IDEwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDFlMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VGbG9hdCgiMDAxc3RyaW5nIikgIT09IDEpIHsKICAkRVJST1IoJyM1OiBwYXJzZUZsb2F0KCIwMDFzdHJpbmciKSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAwMXN0cmluZyIpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAocGFyc2VGbG9hdCgiMWUwMDFzdHJpbmciKSAhPT0gMTApIHsKICAkRVJST1IoJyM2OiBwYXJzZUZsb2F0KCIxZTAwMXN0cmluZyIpID09PSAxMC4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjFlMDAxc3RyaW5nIikpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUZsb2F0KCIwMTBzdHJpbmciKSAhPT0gMTApIHsKICAkRVJST1IoJyM3OiBwYXJzZUZsb2F0KCIwMTBzdHJpbmciKSA9PT0gMTAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMTBzdHJpbmciKSkpOwp9Cgo=","commentary":"Compute the longest prefix of Result(2), which might be Result(2) itself,\nwhich satisfies the syntax of a StrDecimalLiteral","description":"Checking DecimalDigits ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A4_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gdGhlIG51bWJlciB2YWx1ZSBmb3IgdGhlIE1WIG9mIFJlc3VsdCg0KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgSW5maW5pdHkKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIkluZmluaXR5IikgIT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQoIkluZmluaXR5IikgPT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIkluZmluaXR5IikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCIrSW5maW5pdHkiKSAhPT0gTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSB7CiAgJEVSUk9SKCcjMjogcGFyc2VGbG9hdCgiK0luZmluaXR5IikgPT09IE51bWJlci5QT1NJVElWRV9JTkZJTklUWS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIitJbmZpbml0eSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VGbG9hdCgiLUluZmluaXR5IikgIT09IE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkgewogICRFUlJPUignIzM6IHBhcnNlRmxvYXQoIi1JbmZpbml0eSIpID09PSBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCItSW5maW5pdHkiKSkpOwp9Cgo=","commentary":"Return the number value for the MV of Result(4)","description":"Checking Infinity","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gdGhlIG51bWJlciB2YWx1ZSBmb3IgdGhlIE1WIG9mIFJlc3VsdCg0KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgRGVjaW1hbERpZ2l0cyAuIERlY2ltYWxEaWdpdHNfb3B0IEV4cG9uZW50UGFydF9vcHQKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIi0xMS4iKSAhPT0gLTExKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiLTExLiIpID09PSAtMTEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCItMTEuIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCIwMS4iKSAhPT0gMSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIjAxLiIpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDEuIikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUZsb2F0KCIrMTEuMSIpICE9PSAxMS4xKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiKzExLjEiKSA9PT0gMTEuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIisxMS4xIikpKTsKfQoKLy9DSEVDSyM0CmlmIChwYXJzZUZsb2F0KCIwMS4xIikgIT09IDEuMSkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIjAxLjEiKSA9PT0gMS4xLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDEuMSIpKSk7Cn0KCi8vQ0hFQ0sjNQppZiAocGFyc2VGbG9hdCgiLTExLmUtMSIpICE9PSAtMS4xKSB7CiAgJEVSUk9SKCcjNTogcGFyc2VGbG9hdCgiLTExLmUtMSIpID09PSAtMS4xLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiLTExLmUtMSIpKSk7Cn0KCi8vQ0hFQ0sjNgppZiAocGFyc2VGbG9hdCgiMDEuZTEiKSAhPT0gMTApIHsKICAkRVJST1IoJyM2OiBwYXJzZUZsb2F0KCIwMS5lMSIpID09PSAxMC4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAxLmUxIikpKTsKfQoKLy9DSEVDSyM3CmlmIChwYXJzZUZsb2F0KCIrMTEuMjJlLTEiKSAhPT0gMS4xMjIpIHsKICAkRVJST1IoJyM3OiBwYXJzZUZsb2F0KCIrMTEuMjJlLTEiKSA9PT0gMS4xMjIuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIrMTEuMjJlLTEiKSkpOwp9CgovL0NIRUNLIzgKaWYgKHBhcnNlRmxvYXQoIjAxLjAxZTEiKSAhPT0gMTAuMSkgewogICRFUlJPUignIzg6IHBhcnNlRmxvYXQoIjAxLjAxZTEiKSA9PT0gMTAuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAxLjAxZTEiKSkpOwp9CgovL0NIRUNLIzkKaWYgKHBhcnNlRmxvYXQoIjAwMS4iKSAhPT0gMSkgewogICRFUlJPUignIzk6IHBhcnNlRmxvYXQoIjAwMS4iKSA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAwMS4iKSkpOwp9CgovL0NIRUNLIzEwCmlmIChwYXJzZUZsb2F0KCIwMTAuIikgIT09IDEwKSB7CiAgJEVSUk9SKCcjMTA6IHBhcnNlRmxvYXQoIjAxMC4iKSA9PT0gMTAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMTAuIikpKTsKfQoK","commentary":"Return the number value for the MV of Result(4)","description":"Checking DecimalDigits . DecimalDigits_opt ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A5_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gdGhlIG51bWJlciB2YWx1ZSBmb3IgdGhlIE1WIG9mIFJlc3VsdCg0KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNV9UMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgLiBEZWNpbWFsRGlnaXRzIEV4cG9uZW50UGFydF9vcHQKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQoIisuMSIpICE9PSAwLjEpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0KCIrLjEiKSA9PT0gMC4xLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiKy4xIikpKTsKfQoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0KCIuMDEiKSAhPT0gMC4wMSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIi4wMSIpID09PSAwLjAxLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiLjAxIikpKTsKfQoKLy9DSEVDSyMzCmlmIChwYXJzZUZsb2F0KCIrLjIyZS0xIikgIT09IDAuMDIyKSB7CiAgJEVSUk9SKCcjMzogcGFyc2VGbG9hdCgiKy4yMmUtMSIpID09PSAwLjAyMi4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIisuMjJlLTEiKSkpOwp9Cgo=","commentary":"Return the number value for the MV of Result(4)","description":"Checking . DecimalDigits ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A5_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBSZXR1cm4gdGhlIG51bWJlciB2YWx1ZSBmb3IgdGhlIE1WIG9mIFJlc3VsdCg0KQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNV9UNC5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgRGVjaW1hbERpZ2l0cyBFeHBvbmVudFBhcnRfb3B0CiAqLwoKLy9DSEVDSyMxCmlmIChwYXJzZUZsb2F0KCItMTEiKSAhPT0gLTExKSB7CiAgJEVSUk9SKCcjMTogcGFyc2VGbG9hdCgiLTExIikgPT09IC0xMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIi0xMSIpKSk7Cn0KCi8vQ0hFQ0sjMgppZiAocGFyc2VGbG9hdCgiMDEiKSAhPT0gMSkgewogICRFUlJPUignIzI6IHBhcnNlRmxvYXQoIjAxIikgPT09IDEuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMSIpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VGbG9hdCgiLTExZS0xIikgIT09IC0xLjEpIHsKICAkRVJST1IoJyMzOiBwYXJzZUZsb2F0KCItMTFlLTEiKSA9PT0gLTEuMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIi0xMWUtMSIpKSk7Cn0KCi8vQ0hFQ0sjNAppZiAocGFyc2VGbG9hdCgiMDFlMSIpICE9PSAxMCkgewogICRFUlJPUignIzQ6IHBhcnNlRmxvYXQoIjAxZTEiKSA9PT0gMTAuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0KCIwMWUxIikpKTsKfQoKLy9DSEVDSyM1CmlmIChwYXJzZUZsb2F0KCIwMDEiKSAhPT0gMSkgewogICRFUlJPUignIzU6IHBhcnNlRmxvYXQoIjAwMSIpID09PSAxLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMDAxIikpKTsKfQoKLy9DSEVDSyM2CmlmIChwYXJzZUZsb2F0KCIxZTAwMSIpICE9PSAxMCkgewogICRFUlJPUignIzY6IHBhcnNlRmxvYXQoIjFlMDAxIikgPT09IDEwLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdCgiMWUwMDEiKSkpOwp9CgovL0NIRUNLIzcKaWYgKHBhcnNlRmxvYXQoIjAxMCIpICE9PSAxMCkgewogICRFUlJPUignIzc6IHBhcnNlRmxvYXQoIjAxMCIpID09PSAxMC4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQoIjAxMCIpKSk7Cn0KCg==","commentary":"Return the number value for the MV of Result(4)","description":"Checking DecimalDigits ExponentPart_opt","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A5_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBwYXJzZUZsb2F0IG1heSBpbnRlcnByZXQgb25seSBhIGxlYWRpbmcgcG9ydGlvbiBvZiB0aGUgc3RyaW5nIGFzCiAqIGEgbnVtYmVyIHZhbHVlOyBpdCBpZ25vcmVzIGFueSBjaGFyYWN0ZXJzIHRoYXQgY2Fubm90IGJlIGludGVycHJldGVkIGFzIHBhcnQKICogb2YgdGhlIG5vdGF0aW9uIG9mIGFuIGRlY2ltYWwgbGl0ZXJhbCwgYW5kIG5vIGluZGljYXRpb24gaXMgZ2l2ZW4gdGhhdCBhbnkgc3VjaAogKiBjaGFyYWN0ZXJzIHdlcmUgaWdub3JlZC4KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTYuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdCB3aXRob3V0IGV2YWwKICovCgovL0NIRUNLCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7CmZvciAodmFyIGluZGV4ID0gMDsgaW5kZXggPD0gNjU1MzU7IGluZGV4KyspIHsgIAogIGlmICgoaW5kZXggPCAweDAwMzApIHx8IChpbmRleCA+IDB4MDAzOSkpIHsgICAgCiAgICB2YXIgaGV4ID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4KTsKICAgIGlmIChwYXJzZUZsb2F0KCIwLjFlMSIgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4KSkgIT09IDEpIHsgICAgICAgCiAgICAgIGlmIChpbmRleE8gPT09IDApIHsgCiAgICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKChpbmRleCAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICAgIH0gCiAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgICAgfSAgCiAgICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgICB9ICAgICAgICAgCiAgICAgIH0KICAgICAgaW5kZXhQID0gaW5kZXg7CiAgICAgIGVycm9yQ291bnQrKzsgICAgCiAgICB9ICAgCiAgICBjb3VudCsrOwogIH0gIAp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"parseFloat may interpret only a leading portion of the string as\na number value; it ignores any characters that cannot be interpreted as part\nof the notation of an decimal literal, and no indication is given that any such\ncharacters were ignored.","description":"Complex test without eval","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlRmxvYXQgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTcuMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIHByb3BlcnR5SXNFbnVtZXJhYmxlLCBmb3ItaW4KICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpICE9PSBmYWxzZSkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdC5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykpKTsKfQoKLy9DSEVDSyMyCnZhciByZXN1bHQgPSB0cnVlOwpmb3IgKHZhciBwIGluIHBhcnNlRmxvYXQpewogIGlmIChwID09PSAibGVuZ3RoIikgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfSAgCn0KCmlmIChyZXN1bHQgIT09IHRydWUpIHsKICAkRVJST1IoJyMyOiByZXN1bHQgPSB0cnVlOyBmb3IgKHAgaW4gcGFyc2VGbG9hdCkgeyBpZiAocCA9PT0gImxlbmd0aCIpIHJlc3VsdCA9IGZhbHNlOyB9ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The length property of parseFloat has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlRmxvYXQgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udERlbGV0ZQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNy4yLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB1c2UgaGFzT3duUHJvcGVydHksIGRlbGV0ZQogKiBAbm9TdHJpY3QKICovCgovL0NIRUNLIzEKaWYgKHBhcnNlRmxvYXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpICE9PSB0cnVlKSB7CiAgJEZBSUwoJyMxOiBwYXJzZUZsb2F0Lmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdC5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykpKTsKfQoKZGVsZXRlIHBhcnNlRmxvYXQubGVuZ3RoOwoKLy9DSEVDSyMyCmlmIChwYXJzZUZsb2F0Lmhhc093blByb3BlcnR5KCdsZW5ndGgnKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IGRlbGV0ZSBwYXJzZUZsb2F0Lmxlbmd0aDsgcGFyc2VGbG9hdC5oYXNPd25Qcm9wZXJ0eShcJ2xlbmd0aFwnKSA9PT0gdHJ1ZS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAocGFyc2VGbG9hdC5sZW5ndGggPT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzM6IGRlbGV0ZSBwYXJzZUZsb2F0Lmxlbmd0aDsgcGFyc2VGbG9hdC5sZW5ndGggIT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"The length property of parseFloat has the attribute DontDelete","description":"Checking use hasOwnProperty, delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlRmxvYXQgaGFzIHRoZSBhdHRyaWJ1dGUgUmVhZE9ubHkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuMy9TMTUuMS4yLjNfQTcuMy5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgdmFyeWluZyB0aGUgbGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQp2YXIgeCA9IHBhcnNlRmxvYXQubGVuZ3RoOwpwYXJzZUZsb2F0Lmxlbmd0aCA9IEluZmluaXR5OwppZiAocGFyc2VGbG9hdC5sZW5ndGggIT09IHgpIHsKICAkRVJST1IoJyMxOiB4ID0gcGFyc2VGbG9hdC5sZW5ndGg7IHBhcnNlRmxvYXQubGVuZ3RoID0gSW5maW5pdHk7IHBhcnNlRmxvYXQubGVuZ3RoID09PSB4LiBBY3R1YWw6ICcgKyAocGFyc2VGbG9hdC5sZW5ndGgpKTsKfQoKCg==","commentary":"The length property of parseFloat has the attribute ReadOnly","description":"Checking if varying the length property fails","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIHBhcnNlRmxvYXQgaXMgMQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNy40LmpzCiAqIEBkZXNjcmlwdGlvbiBwYXJzZUZsb2F0Lmxlbmd0aCA9PT0gMQogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VGbG9hdC5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMxOiBwYXJzZUZsb2F0Lmxlbmd0aCA9PT0gMS4gQWN0dWFsOiAnICsgKHBhcnNlRmxvYXQubGVuZ3RoKSk7Cn0gCgoK","commentary":"The length property of parseFloat is 1","description":"parseFloat.length === 1","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VGbG9hdCBwcm9wZXJ0eSBoYXMgdGhlIGF0dHJpYnV0ZSBEb250RW51bQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNy41LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB1c2UgcHJvcGVydHlJc0VudW1lcmFibGUsIGZvci1pbgogKi8KCi8vQ0hFQ0sjMQppZiAodGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZSgncGFyc2VGbG9hdCcpICE9PSBmYWxzZSkgewogICRFUlJPUignIzE6dGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ3BhcnNlRmxvYXRcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAodGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZSgncGFyc2VGbG9hdCcpKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgcmVzdWx0ID0gdHJ1ZTsKZm9yICh2YXIgcCBpbiB0aGlzKXsKICBpZiAocCA9PT0gInBhcnNlRmxvYXQiKSB7CiAgICByZXN1bHQgPSBmYWxzZTsKICB9ICAKfQoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IHJlc3VsdCA9IHRydWU7IGZvciAocCBpbiB0aGlzKSB7IGlmIChwID09PSAicGFyc2VGbG9hdCIpIHJlc3VsdCA9IGZhbHNlOyB9ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The parseFloat property has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VGbG9hdCBwcm9wZXJ0eSBoYXMgbm90IHByb3RvdHlwZSBwcm9wZXJ0eQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi4zL1MxNS4xLjIuM19BNy42LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBwYXJzZUZsb2F0LnByb3RvdHlwZQogKi8KCi8vQ0hFQ0sjMQppZiAocGFyc2VGbG9hdC5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IHBhcnNlRmxvYXQucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJyArIChwYXJzZUZsb2F0LnByb3RvdHlwZSkpOwp9Cgo=","commentary":"The parseFloat property has not prototype property","description":"Checking parseFloat.prototype","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgcGFyc2VGbG9hdCBwcm9wZXJ0eSBjYW4ndCBiZSB1c2VkIGFzIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjMvUzE1LjEuMi4zX0E3LjcuanMKICogQGRlc2NyaXB0aW9uIElmIHByb3BlcnR5IGRvZXMgbm90IGltcGxlbWVudCB0aGUgaW50ZXJuYWwgW1tDb25zdHJ1Y3RdXSBtZXRob2QsIHRocm93IGEgVHlwZUVycm9yIGV4Y2VwdGlvbgogKi8KCi8vQ0hFQ0sjMQoKdHJ5IHsKICBuZXcgcGFyc2VGbG9hdCgpOwogICRFUlJPUignIzEuMTogbmV3IHBhcnNlRmxvYXQoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChuZXcgcGFyc2VGbG9hdCgpKSk7Cn0gY2F0Y2ggKGUpIHsKICBpZiAoKGUgaW5zdGFuY2VvZiBUeXBlRXJyb3IpICE9PSB0cnVlKSB7CiAgICAkRVJST1IoJyMxLjI6IG5ldyBwYXJzZUZsb2F0KCkgdGhyb3cgVHlwZUVycm9yLiBBY3R1YWw6ICcgKyAoZSkpOwogIH0KfQoK","commentary":"The parseFloat property can't be used as constructor","description":"If property does not implement the internal [[Construct]] method, throw a TypeError exception","path":"TestCases/ch15/15.1/15.1.2/15.1.2.3/S15.1.2.3_A7.7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBpc05hTiBhcHBsaWVzIFRvTnVtYmVyIHRvIGl0cyBhcmd1bWVudCwgdGhlbiByZXR1cm4gdHJ1ZSBpZiB0aGUgcmVzdWx0IGlzIE5hTiwgYW5kIG90aGVyd2lzZSByZXR1cm4gZmFsc2UKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGFsbCBwcmltaXRpdmUKICovCgovLyBDSEVDSyMxCmlmICghKGlzTmFOKE5hTikgPT09IHRydWUpKSB7CgkkRVJST1IoJyMxOiBOYU4gPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKE5hTikpOyAKfQoKLy8gQ0hFQ0sjMgppZiAoIShpc05hTihOdW1iZXIuTmFOKSA9PT0gdHJ1ZSkpIHsKCSRFUlJPUignIzI6IE51bWJlci5OYU4gPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKE51bWJlci5OYU4pKTsgCn0KCi8vIENIRUNLIzMKaWYgKCEoaXNOYU4oTnVtYmVyKHZvaWQgMCkpID09PSB0cnVlKSkgewoJJEVSUk9SKCcjMzogTnVtYmVyKHZvaWQgMCkgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKE51bWJlcih2b2lkIDApKSk7IAp9CgovLyBDSEVDSyM0CmlmICghKGlzTmFOKHZvaWQgMCkgPT09IHRydWUpKSB7CgkkRVJST1IoJyM0OiB2b2lkIDAgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKHZvaWQgMCkpOyAKfQoKLy8gQ0hFQ0sjNQppZiAoIShpc05hTigic3RyaW5nIikgPT09IHRydWUpKSB7CgkkRVJST1IoJyM1OiAic3RyaW5nIiA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAoInN0cmluZyIpKTsgCn0KCi8vIENIRUNLIzYKaWYgKGlzTmFOKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkgPT09IHRydWUpIHsKCSRFUlJPUignIzY6IE51bWJlci5QT1NJVElWRV9JTkZJTklUWSAhPT0gTm90LWEtTnVtYmVyJyk7IAp9CgovLyBDSEVDSyM3CmlmIChpc05hTihOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkpID09PSB0cnVlKSB7CgkkRVJST1IoJyM3OiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgIT09IE5vdC1hLU51bWJlcicpOyAKfQoKLy8gQ0hFQ0sjOAppZiAoaXNOYU4oTnVtYmVyLk1BWF9WQUxVRSkgPT09IHRydWUpIHsKCSRFUlJPUignIzg6IE51bWJlci5NQVhfVkFMVUUgIT09IE5vdC1hLU51bWJlcicpOyAKfQoKLy8gQ0hFQ0sjOQppZiAoaXNOYU4oTnVtYmVyLk1JTl9WQUxVRSkgPT09IHRydWUpIHsKCSRFUlJPUignIzk6IE51bWJlci5NSU5fVkFMVUUgIT09IE5vdC1hLU51bWJlcicpOyAKfQoKLy8gQ0hFQ0sjMTAKaWYgKGlzTmFOKC0wKSA9PT0gdHJ1ZSkgewoJJEVSUk9SKCcjMTA6IC0wICE9PSBOb3QtYS1OdW1iZXInKTsgCn0KCi8vIENIRUNLIzExCmlmIChpc05hTih0cnVlKSA9PT0gdHJ1ZSkgewogICRFUlJPUignIzExOiB0cnVlICE9PSBOb3QtYS1OdW1iZXInKTsgCn0KCi8vIENIRUNLIzEyCmlmIChpc05hTigiMSIpID09PSB0cnVlKSB7CiAgJEVSUk9SKCcjMTI6ICIxIiAhPT0gTm90LWEtTnVtYmVyJyk7IAp9CgoKCgoK","commentary":"isNaN applies ToNumber to its argument, then return true if the result is NaN, and otherwise return false","description":"Checking all primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBpc05hTiBhcHBsaWVzIFRvTnVtYmVyIHRvIGl0cyBhcmd1bWVudCwgdGhlbiByZXR1cm4gdHJ1ZSBpZiB0aGUgcmVzdWx0IGlzIE5hTiwgYW5kIG90aGVyd2lzZSByZXR1cm4gZmFsc2UKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTFfVDIuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGFsbCBvYmplY3QKICovCgovLyBDSEVDSyMxCmlmICghKGlzTmFOKHt9KSA9PT0gdHJ1ZSkpIHsKCSRFUlJPUignIzE6IHt9ID09PSBOb3QtYS1OdW1iZXIuIEFjdHVhbDogJyArICh7fSkpOyAKfQoKLy8gQ0hFQ0sjMgppZiAoIShpc05hTihuZXcgU3RyaW5nKCJzdHJpbmciKSkgPT09IHRydWUpKSB7CgkkRVJST1IoJyMyOiBuZXcgU3RyaW5nKCJzdHJpbmciKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAobmV3IFN0cmluZygic3RyaW5nIikpKTsgCn0KCi8vIENIRUNLIzMKaWYgKGlzTmFOKG5ldyBTdHJpbmcoIjEiKSkgPT09IHRydWUpIHsKICAkRVJST1IoJyMzOiBuZXcgU3RyaW5nKCIxIikgPT09IE5vdC1hLU51bWJlci4gQWN0dWFsOiAnICsgKG5ldyBTdHJpbmcoIjEiKSkpOyAKfQoKLy8gQ0hFQ0sjNAppZiAoaXNOYU4obmV3IE51bWJlcigxKSkgPT09IHRydWUpIHsKCSRFUlJPUignIzQ6IG5ldyBOdW1iZXIoMSkgIT09IE5vdC1hLU51bWJlcicpOyAKfQoKLy8gQ0hFQ0sjNQppZiAoIShpc05hTihuZXcgTnVtYmVyKE5hTikpID09PSB0cnVlKSkgewogICRFUlJPUignIzU6IG5ldyBOdW1iZXIoTmFOKSA9PT0gTm90LWEtTnVtYmVyLiBBY3R1YWw6ICcgKyAobmV3IE51bWJlcihOYU4pKSk7IAp9CgovLyBDSEVDSyM2CmlmIChpc05hTihuZXcgQm9vbGVhbih0cnVlKSkgPT09IHRydWUpIHsKICAkRVJST1IoJyM2OiBuZXcgQm9vbGVhbih0cnVlKSAhPT0gTm90LWEtTnVtYmVyJyk7IAp9CgoKCgoK","commentary":"isNaN applies ToNumber to its argument, then return true if the result is NaN, and otherwise return false","description":"Checking all object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzTmFOIGhhcyB0aGUgYXR0cmlidXRlIERvbnRFbnVtCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjQvUzE1LjEuMi40X0EyLjEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHVzZSBwcm9wZXJ0eUlzRW51bWVyYWJsZSwgZm9yLWluCiAqLwoKLy9DSEVDSyMxCmlmIChpc05hTi5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogaXNOYU4ucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAoaXNOYU4ucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgcmVzdWx0ID0gdHJ1ZTsKZm9yIChwIGluIGlzTmFOKXsKICBpZiAocCA9PT0gImxlbmd0aCIpIHsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0gIAp9CgppZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcmVzdWx0ID0gdHJ1ZTsgZm9yIChwIGluIGlzTmFOKSB7IGlmIChwID09PSAibGVuZ3RoIikgcmVzdWx0ID0gZmFsc2U7IH0gIHJlc3VsdCA9PT0gdHJ1ZTsnKTsKfQoK","commentary":"The length property of isNaN has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzTmFOIGhhcyB0aGUgYXR0cmlidXRlIERvbnREZWxldGUKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTIuMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIGhhc093blByb3BlcnR5LCBkZWxldGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmlmIChpc05hTi5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykgIT09IHRydWUpIHsKICAkRkFJTCgnIzE6IGlzTmFOLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAoaXNOYU4uaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCmRlbGV0ZSBpc05hTi5sZW5ndGg7CgovL0NIRUNLIzIKaWYgKGlzTmFOLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IGRlbGV0ZSBpc05hTi5sZW5ndGg7IGlzTmFOLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAoaXNOYU4uaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNOYU4ubGVuZ3RoID09PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMzOiBkZWxldGUgaXNOYU4ubGVuZ3RoOyBpc05hTi5sZW5ndGggIT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"The length property of isNaN has the attribute DontDelete","description":"Checking use hasOwnProperty, delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzTmFOIGhhcyB0aGUgYXR0cmlidXRlIFJlYWRPbmx5CiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjQvUzE1LjEuMi40X0EyLjMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIHZhcnlpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKiBAbm9TdHJpY3QKICovCgovL0NIRUNLIzEKeCA9IGlzTmFOLmxlbmd0aDsKaXNOYU4ubGVuZ3RoID0gSW5maW5pdHk7CmlmIChpc05hTi5sZW5ndGggIT09IHgpIHsKICAkRVJST1IoJyMxOiB4ID0gaXNOYU4ubGVuZ3RoOyBpc05hTi5sZW5ndGggPSBJbmZpbml0eTsgaXNOYU4ubGVuZ3RoID09PSB4LiBBY3R1YWw6ICcgKyAoaXNOYU4ubGVuZ3RoKSk7Cn0KCgo=","commentary":"The length property of isNaN has the attribute ReadOnly","description":"Checking if varying the length property fails","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzTmFOIGlzIDEKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTIuNC5qcwogKiBAZGVzY3JpcHRpb24gaXNOYU4ubGVuZ3RoID09PSAxCiAqLwoKLy9DSEVDSyMxCmlmIChpc05hTi5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMxOiBpc05hTi5sZW5ndGggPT09IDEuIEFjdHVhbDogJyArIChpc05hTi5sZW5ndGgpKTsKfSAKCgo=","commentary":"The length property of isNaN is 1","description":"isNaN.length === 1","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNOYU4gcHJvcGVydHkgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTIuNS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIHByb3BlcnR5SXNFbnVtZXJhYmxlLCBmb3ItaW4KICovCgovL0NIRUNLIzEKaWYgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ2lzTmFOJykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogdGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2lzTmFOXCcpID09PSBmYWxzZS4gQWN0dWFsOiAnICsgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ2lzTmFOJykpKTsKfQoKLy9DSEVDSyMyCnZhciByZXN1bHQgPSB0cnVlOwpmb3IgKHAgaW4gdGhpcyl7CiAgaWYgKHAgPT09ICJpc05hTiIpIHsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0gIAp9CgppZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcmVzdWx0ID0gdHJ1ZTsgZm9yIChwIGluIHRoaXMpIHsgaWYgKHAgPT09ICJpc05hTiIpIHJlc3VsdCA9IGZhbHNlOyB9ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The isNaN property has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNOYU4gcHJvcGVydHkgaGFzIG5vdCBwcm90b3R5cGUgcHJvcGVydHkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNC9TMTUuMS4yLjRfQTIuNi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaXNOYU4ucHJvdG90eXBlCiAqLwoKLy9DSEVDSyMxCmlmIChpc05hTi5wcm90b3R5cGUgIT09IHVuZGVmaW5lZCkgewogICRFUlJPUignIzE6IGlzTmFOLnByb3RvdHlwZSA9PT0gdW5kZWZpbmVkLiBBY3R1YWw6ICcgKyAoaXNOYU4ucHJvdG90eXBlKSk7Cn0KCg==","commentary":"The isNaN property has not prototype property","description":"Checking isNaN.prototype","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNOYU4gcHJvcGVydHkgY2FuJ3QgYmUgdXNlZCBhcyBjb25zdHJ1Y3RvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi40L1MxNS4xLjIuNF9BMi43LmpzCiAqIEBkZXNjcmlwdGlvbiBJZiBwcm9wZXJ0eSBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGludGVybmFsIFtbQ29uc3RydWN0XV0gbWV0aG9kLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24KICovCgovL0NIRUNLIzEKCnRyeSB7CiAgbmV3IGlzTmFOKCk7CiAgJEVSUk9SKCcjMS4xOiBuZXcgaXNOYU4oKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChuZXcgaXNOYU4oKSkpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBuZXcgaXNOYU4oKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfQp9Cgo=","commentary":"The isNaN property can't be used as constructor","description":"If property does not implement the internal [[Construct]] method, throw a TypeError exception","path":"TestCases/ch15/15.1/15.1.2/15.1.2.4/S15.1.2.4_A2.7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBpc0Zpbml0ZSBhcHBsaWVzIFRvTnVtYmVyIHRvIGl0cyBhcmd1bWVudCwgdGhlbiByZXR1cm4gZmFsc2UgaWYgdGhlIHJlc3VsdCBpcyBOYU4sICtJbmZpbml0eSwgLUluZmluaXR5LCBhbmQgb3RoZXJ3aXNlIHJldHVybiB0cnVlCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjUvUzE1LjEuMi41X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBhbGwgcHJpbWl0aXZlCiAqLwoKLy8gQ0hFQ0sjMQppZiAoIShpc0Zpbml0ZShOYU4pID09PSBmYWxzZSkpIHsKICAkRVJST1IoJyMxOiBOYU4gPT09IE5vdC1hLUZpbml0ZS4gQWN0dWFsOiAnICsgKE5hTikpOyAKfQoKLy8gQ0hFQ0sjMgppZiAoIShpc0Zpbml0ZShOdW1iZXIuTmFOKSA9PT0gZmFsc2UpKSB7CiAgJEVSUk9SKCcjMjogTnVtYmVyLk5hTiA9PT0gTm90LWEtRmluaXRlLiBBY3R1YWw6ICcgKyAoTnVtYmVyLk5hTikpOyAKfQoKLy8gQ0hFQ0sjMwppZiAoIShpc0Zpbml0ZShOdW1iZXIodm9pZCAwKSkgPT09IGZhbHNlKSkgewogICRFUlJPUignIzM6IE51bWJlcih2b2lkIDApID09PSBOb3QtYS1GaW5pdGUuIEFjdHVhbDogJyArIChOdW1iZXIodm9pZCAwKSkpOyAKfQoKLy8gQ0hFQ0sjNAppZiAoIShpc0Zpbml0ZSh2b2lkIDApID09PSBmYWxzZSkpIHsKICAkRVJST1IoJyM0OiB2b2lkIDAgPT09IE5vdC1hLUZpbml0ZS4gQWN0dWFsOiAnICsgKHZvaWQgMCkpOyAKfQoKLy8gQ0hFQ0sjNQppZiAoIShpc0Zpbml0ZSgic3RyaW5nIikgPT09IGZhbHNlKSkgewogICRFUlJPUignIzU6ICJzdHJpbmciID09PSBOb3QtYS1GaW5pdGUuIEFjdHVhbDogJyArICgic3RyaW5nIikpOyAKfQoKLy8gQ0hFQ0sjNgppZiAoaXNGaW5pdGUoTnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKSAhPT0gZmFsc2UpIHsKICAkRVJST1IoJyM2OiBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFkgPT09IE5vdC1hLUZpbml0ZS4gQWN0dWFsOiAnICsgKE51bWJlci5QT1NJVElWRV9JTkZJTklUWSkpOyAKfQoKLy8gQ0hFQ0sjNwppZiAoaXNGaW5pdGUoTnVtYmVyLk5FR0FUSVZFX0lORklOSVRZKSAhPT0gZmFsc2UpIHsKICAkRVJST1IoJyM3OiBOdW1iZXIuTkVHQVRJVkVfSU5GSU5JVFkgPT09IE5vdC1hLUZpbml0ZS4gQWN0dWFsOiAnICsgKE51bWJlci5ORUdBVElWRV9JTkZJTklUWSkpOyAKfQoKLy8gQ0hFQ0sjOAppZiAoaXNGaW5pdGUoTnVtYmVyLk1BWF9WQUxVRSkgPT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjODogTnVtYmVyLk1BWF9WQUxVRSAhPT0gTm90LWEtRmluaXRlJyk7IAp9CgovLyBDSEVDSyM5CmlmIChpc0Zpbml0ZShOdW1iZXIuTUlOX1ZBTFVFKSA9PT0gZmFsc2UpIHsKICAkRVJST1IoJyM5OiBOdW1iZXIuTUlOX1ZBTFVFICE9PSBOb3QtYS1GaW5pdGUnKTsgCn0KCi8vIENIRUNLIzEwCmlmIChpc0Zpbml0ZSgtMCkgPT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTA6IC0wICE9PSBOb3QtYS1GaW5pdGUnKTsgCn0KCi8vIENIRUNLIzExCmlmIChpc0Zpbml0ZShmYWxzZSkgPT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTE6IGZhbHNlICE9PSBOb3QtYS1GaW5pdGUnKTsgCn0KCi8vIENIRUNLIzEyCmlmIChpc0Zpbml0ZSgiMSIpID09PSBmYWxzZSkgewogICRFUlJPUignIzEyOiAiMSIgIT09IE5vdC1hLUZpbml0ZScpOyAKfQoK","commentary":"isFinite applies ToNumber to its argument, then return false if the result is NaN, +Infinity, -Infinity, and otherwise return true","description":"Checking all primitive","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBpc0Zpbml0ZSBhcHBsaWVzIFRvTnVtYmVyIHRvIGl0cyBhcmd1bWVudCwgdGhlbiByZXR1cm4gZmFsc2UgaWYgdGhlIHJlc3VsdCBpcyBOYU4sICtJbmZpbml0eSwgLUluZmluaXR5LCBhbmQgb3RoZXJ3aXNlIHJldHVybiB0cnVlCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjUvUzE1LjEuMi41X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBhbGwgb2JqZWN0CiAqLwoKLy8gQ0hFQ0sjMQppZiAoIShpc0Zpbml0ZSh7fSkgPT09IGZhbHNlKSkgewogICRFUlJPUignIzE6IHt9ID09PSBOb3QtYS1GaW5pdGUuIEFjdHVhbDogJyArICh7fSkpOyAKfQoKLy8gQ0hFQ0sjMgppZiAoIShpc0Zpbml0ZShuZXcgU3RyaW5nKCJzdHJpbmciKSkgPT09IGZhbHNlKSkgewogICRFUlJPUignIzI6IG5ldyBTdHJpbmcoInN0cmluZyIpID09PSBOb3QtYS1GaW5pdGUuIEFjdHVhbDogJyArIChuZXcgU3RyaW5nKCJzdHJpbmciKSkpOyAKfQoKLy8gQ0hFQ0sjMwppZiAoaXNGaW5pdGUobmV3IFN0cmluZygiMSIpKSA9PT0gZmFsc2UpIHsKICAkRVJST1IoJyMzOiBuZXcgU3RyaW5nKCIxIikgPT09IE5vdC1hLUZpbml0ZS4gQWN0dWFsOiAnICsgKG5ldyBTdHJpbmcoIjEiKSkpOyAKfQoKLy8gQ0hFQ0sjNAppZiAoaXNGaW5pdGUobmV3IE51bWJlcigxKSkgPT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjNDogbmV3IE51bWJlcigxKSAhPT0gTm90LWEtRmluaXRlJyk7IAp9CgovLyBDSEVDSyM1CmlmICghKGlzRmluaXRlKG5ldyBOdW1iZXIoTmFOKSkgPT09IGZhbHNlKSkgewogICRFUlJPUignIzU6IG5ldyBOdW1iZXIoTmFOKSA9PT0gTm90LWEtRmluaXRlLiBBY3R1YWw6ICcgKyAobmV3IE51bWJlcihOYU4pKSk7IAp9CgovLyBDSEVDSyM2CmlmIChpc0Zpbml0ZShuZXcgQm9vbGVhbih0cnVlKSkgPT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjNjogbmV3IEJvb2xlYW4odHJ1ZSkgIT09IE5vdC1hLUZpbml0ZScpOyAKfQoK","commentary":"isFinite applies ToNumber to its argument, then return false if the result is NaN, +Infinity, -Infinity, and otherwise return true","description":"Checking all object","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzRmluaXRlIGhhcyB0aGUgYXR0cmlidXRlIERvbnRFbnVtCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjUvUzE1LjEuMi41X0EyLjEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHVzZSBwcm9wZXJ0eUlzRW51bWVyYWJsZSwgZm9yLWluCiAqLwoKLy9DSEVDSyMxCmlmIChpc0Zpbml0ZS5wcm9wZXJ0eUlzRW51bWVyYWJsZSgnbGVuZ3RoJykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogaXNGaW5pdGUucHJvcGVydHlJc0VudW1lcmFibGUoXCdsZW5ndGhcJykgPT09IGZhbHNlLiBBY3R1YWw6ICcgKyAoaXNGaW5pdGUucHJvcGVydHlJc0VudW1lcmFibGUoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMgp2YXIgcmVzdWx0ID0gdHJ1ZTsKZm9yIChwIGluIGlzRmluaXRlKXsKICBpZiAocCA9PT0gImxlbmd0aCIpIHsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0gIAp9CgppZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcmVzdWx0ID0gdHJ1ZTsgZm9yIChwIGluIGlzRmluaXRlKSB7IGlmIChwID09PSAibGVuZ3RoIikgcmVzdWx0ID0gZmFsc2U7IH0gIHJlc3VsdCA9PT0gdHJ1ZTsnKTsKfQoK","commentary":"The length property of isFinite has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzRmluaXRlIGhhcyB0aGUgYXR0cmlidXRlIERvbnREZWxldGUKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNS9TMTUuMS4yLjVfQTIuMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIGhhc093blByb3BlcnR5LCBkZWxldGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmlmIChpc0Zpbml0ZS5oYXNPd25Qcm9wZXJ0eSgnbGVuZ3RoJykgIT09IHRydWUpIHsKICAkRkFJTCgnIzE6IGlzRmluaXRlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAoaXNGaW5pdGUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCmRlbGV0ZSBpc0Zpbml0ZS5sZW5ndGg7CgovL0NIRUNLIzIKaWYgKGlzRmluaXRlLmhhc093blByb3BlcnR5KCdsZW5ndGgnKSAhPT0gdHJ1ZSkgewogICRFUlJPUignIzI6IGRlbGV0ZSBpc0Zpbml0ZS5sZW5ndGg7IGlzRmluaXRlLmhhc093blByb3BlcnR5KFwnbGVuZ3RoXCcpID09PSB0cnVlLiBBY3R1YWw6ICcgKyAoaXNGaW5pdGUuaGFzT3duUHJvcGVydHkoJ2xlbmd0aCcpKSk7Cn0KCi8vQ0hFQ0sjMwppZiAoaXNGaW5pdGUubGVuZ3RoID09PSB1bmRlZmluZWQpIHsKICAkRVJST1IoJyMzOiBkZWxldGUgaXNGaW5pdGUubGVuZ3RoOyBpc0Zpbml0ZS5sZW5ndGggIT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"The length property of isFinite has the attribute DontDelete","description":"Checking use hasOwnProperty, delete","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzRmluaXRlIGhhcyB0aGUgYXR0cmlidXRlIFJlYWRPbmx5CiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjIvMTUuMS4yLjUvUzE1LjEuMi41X0EyLjMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIHZhcnlpbmcgdGhlIGxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKiBAbm9TdHJpY3QKICovCgovL0NIRUNLIzEKeCA9IGlzRmluaXRlLmxlbmd0aDsKaXNGaW5pdGUubGVuZ3RoID0gSW5maW5pdHk7CmlmIChpc0Zpbml0ZS5sZW5ndGggIT09IHgpIHsKICAkRVJST1IoJyMxOiB4ID0gaXNGaW5pdGUubGVuZ3RoOyBpc0Zpbml0ZS5sZW5ndGggPSBJbmZpbml0eTsgaXNGaW5pdGUubGVuZ3RoID09PSB4LiBBY3R1YWw6ICcgKyAoaXNGaW5pdGUubGVuZ3RoKSk7Cn0KCgo=","commentary":"The length property of isFinite has the attribute ReadOnly","description":"Checking if varying the length property fails","noStrict":"","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgbGVuZ3RoIHByb3BlcnR5IG9mIGlzRmluaXRlIGlzIDEKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNS9TMTUuMS4yLjVfQTIuNC5qcwogKiBAZGVzY3JpcHRpb24gaXNGaW5pdGUubGVuZ3RoID09PSAxCiAqLwoKLy9DSEVDSyMxCmlmIChpc0Zpbml0ZS5sZW5ndGggIT09IDEpIHsKICAkRVJST1IoJyMxOiBpc0Zpbml0ZS5sZW5ndGggPT09IDEuIEFjdHVhbDogJyArIChpc0Zpbml0ZS5sZW5ndGgpKTsKfSAKCgo=","commentary":"The length property of isFinite is 1","description":"isFinite.length === 1","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNGaW5pdGUgcHJvcGVydHkgaGFzIHRoZSBhdHRyaWJ1dGUgRG9udEVudW0KICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNS9TMTUuMS4yLjVfQTIuNS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgdXNlIHByb3BlcnR5SXNFbnVtZXJhYmxlLCBmb3ItaW4KICovCgovL0NIRUNLIzEKaWYgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ2lzRmluaXRlJykgIT09IGZhbHNlKSB7CiAgJEVSUk9SKCcjMTogdGhpcy5wcm9wZXJ0eUlzRW51bWVyYWJsZShcJ2lzRmluaXRlXCcpID09PSBmYWxzZS4gQWN0dWFsOiAnICsgKHRoaXMucHJvcGVydHlJc0VudW1lcmFibGUoJ2lzRmluaXRlJykpKTsKfQoKLy9DSEVDSyMyCnZhciByZXN1bHQgPSB0cnVlOwpmb3IgKHAgaW4gdGhpcyl7CiAgaWYgKHAgPT09ICJpc0Zpbml0ZSIpIHsKICAgIHJlc3VsdCA9IGZhbHNlOwogIH0gIAp9CgppZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMjogcmVzdWx0ID0gdHJ1ZTsgZm9yIChwIGluIHRoaXMpIHsgaWYgKHAgPT09ICJpc0Zpbml0ZSIpIHJlc3VsdCA9IGZhbHNlOyB9ICByZXN1bHQgPT09IHRydWU7Jyk7Cn0KCg==","commentary":"The isFinite property has the attribute DontEnum","description":"Checking use propertyIsEnumerable, for-in","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNGaW5pdGUgcHJvcGVydHkgaGFzIG5vdCBwcm90b3R5cGUgcHJvcGVydHkKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMi8xNS4xLjIuNS9TMTUuMS4yLjVfQTIuNi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaXNGaW5pdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKaWYgKGlzRmluaXRlLnByb3RvdHlwZSAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogaXNGaW5pdGUucHJvdG90eXBlID09PSB1bmRlZmluZWQuIEFjdHVhbDogJyArIChpc0Zpbml0ZS5wcm90b3R5cGUpKTsKfQoK","commentary":"The isFinite property has not prototype property","description":"Checking isFinit.prototype","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaXNGaW5pdGUgcHJvcGVydHkgY2FuJ3QgYmUgdXNlZCBhcyBjb25zdHJ1Y3RvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4yLzE1LjEuMi41L1MxNS4xLjIuNV9BMi43LmpzCiAqIEBkZXNjcmlwdGlvbiBJZiBwcm9wZXJ0eSBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIGludGVybmFsIFtbQ29uc3RydWN0XV0gbWV0aG9kLCB0aHJvdyBhIFR5cGVFcnJvciBleGNlcHRpb24KICovCgovL0NIRUNLIzEKCnRyeSB7CiAgbmV3IGlzRmluaXRlKCk7CiAgJEVSUk9SKCcjMS4xOiBuZXcgaXNGaW5pdGUoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChuZXcgaXNGaW5pdGUoKSkpOwp9IGNhdGNoIChlKSB7CiAgaWYgKChlIGluc3RhbmNlb2YgVHlwZUVycm9yKSAhPT0gdHJ1ZSkgewogICAgJEVSUk9SKCcjMS4yOiBuZXcgaXNGaW5pdGUoKSB0aHJvdyBUeXBlRXJyb3IuIEFjdHVhbDogJyArIChlKSk7CiAgfQp9Cgo=","commentary":"The isFinite property can't be used as constructor","description":"If property does not implement the internal [[Construct]] method, throw a TypeError exception","path":"TestCases/ch15/15.1/15.1.2/15.1.2.5/S15.1.2.5_A2.7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTEweHh4eHggKG4gPSAyKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgNCkgYW5kCiAqIHN0cmluZy5jaGFyQXQoayArIDUpIGRvIG5vdCByZXByZXNlbnQgaGV4YWRlY2ltYWwgZGlnaXRzLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS4xMF9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0cwogKi8KCi8vQ0hFQ0sKdmFyIHJlc3VsdCA9IHRydWU7CnZhciBpbnRlcnZhbCA9IFtbMHgwMCwgMHgyOV0sIFsweDQwLDB4NDBdLCBbMHg0NywgMHg2MF0sIFsweDY3LCAweEZGRkZdXTsKZm9yICh2YXIgaW5kZXhJID0gMDsgaW5kZXhJIDwgaW50ZXJ2YWwubGVuZ3RoOyBpbmRleEkrKykgewogIGZvciAodmFyIGluZGV4SiA9IGludGVydmFsW2luZGV4SV1bMF07IGluZGV4SiA8PSBpbnRlcnZhbFtpbmRleEldWzFdOyBpbmRleEorKykgewogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlQzAlIiArIFN0cmluZy5mcm9tQ2hhckNvZGUoaW5kZXhKLCBpbmRleEopKTsKICAgICAgcmVzdWx0ID0gZmFsc2U7ICAgICAgCiAgICB9IGNhdGNoIChlKSB7ICAgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgICAgIHJlc3VsdCA9IGZhbHNlOyAgICAgICAgCiAgICAgIH0KICAgIH0gICAgICAKICB9ICAKfSAgCgppZiAocmVzdWx0ICE9PSB0cnVlKSB7ICAgIAogICRFUlJPUignIzE6IElmIEIgPSAxMTB4eHh4eCAobiA9IDIpIGFuZCAoc3RyaW5nLmNoYXJBdChrICsgNCkgYW5kICBzdHJpbmcuY2hhckF0KGsgKyA1KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yJyk7Cn0KCg==","commentary":"If B = 110xxxxx (n = 2) and string.charAt(k + 4) and\nstring.charAt(k + 5) do not represent hexadecimal digits, throw URIError","description":"Complex tests","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.10_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDQpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA1KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA4KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0ExLjExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLCBzdHJpbmcuY2hhckF0KGsgKyA0KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgNSkKICogZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMKICovCgovL0NIRUNLCnZhciByZXN1bHQgPSB0cnVlOwp2YXIgaW50ZXJ2YWwgPSBbWzB4MDAsIDB4MjldLCBbMHg0MCwweDQwXSwgWzB4NDcsIDB4NjBdLCBbMHg2NywgMHhGRkZGXV07CmZvciAodmFyIGluZGV4SSA9IDA7IGluZGV4SSA8IGludGVydmFsLmxlbmd0aDsgaW5kZXhJKyspIHsKICBmb3IgKHZhciBpbmRleEogPSBpbnRlcnZhbFtpbmRleEldWzBdOyBpbmRleEogPD0gaW50ZXJ2YWxbaW5kZXhJXVsxXTsgaW5kZXhKKyspIHsKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJUUwJSIgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4SiwgaW5kZXhKKSArICIlQTAiKTsKICAgICAgcmVzdWx0ID0gZmFsc2U7ICAgICAgCiAgICB9IGNhdGNoIChlKSB7ICAgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgICAgIHJlc3VsdCA9IGZhbHNlOyAgICAgICAgCiAgICAgIH0KICAgIH0gICAgICAKICB9ICAKfSAgCgppZiAocmVzdWx0ICE9PSB0cnVlKSB7ICAgIAogICRFUlJPUignIzE6IElmIEIgPSAxMTEweHh4eCAobiA9IDMpIGFuZCAoc3RyaW5nLmNoYXJBdChrICsgNCkgYW5kICBzdHJpbmcuY2hhckF0KGsgKyA1KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yJyk7Cn0KCg==","commentary":"If B = 1110xxxx (n = 3) and (string.charAt(k + 4) and\nstring.charAt(k + 5)) or (string.charAt(k + 7) and\nstring.charAt(k + 8)) do not represent hexadecimal digits, throw URIError","description":"Complex tests, string.charAt(k + 4) and string.charAt(k + 5)\ndo not represent hexadecimal digits","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.11_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDQpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA1KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA4KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0ExLjExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLCBzdHJpbmcuY2hhckF0KGsgKyA3KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgOCkKICogZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMKICovCgovL0NIRUNLCnZhciByZXN1bHQgPSB0cnVlOwp2YXIgaW50ZXJ2YWwgPSBbWzB4MDAsIDB4MjldLCBbMHg0MCwweDQwXSwgWzB4NDcsIDB4NjBdLCBbMHg2NywgMHhGRkZGXV07CmZvciAodmFyIGluZGV4SSA9IDA7IGluZGV4SSA8IGludGVydmFsLmxlbmd0aDsgaW5kZXhJKyspIHsKICBmb3IgKHZhciBpbmRleEogPSBpbnRlcnZhbFtpbmRleEldWzBdOyBpbmRleEogPD0gaW50ZXJ2YWxbaW5kZXhJXVsxXTsgaW5kZXhKKyspIHsKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJUUwJSIgKyAiJUEwIiArIFN0cmluZy5mcm9tQ2hhckNvZGUoaW5kZXhKLCBpbmRleEopKTsKICAgICAgcmVzdWx0ID0gZmFsc2U7ICAgICAgCiAgICB9IGNhdGNoIChlKSB7ICAgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgICAgIHJlc3VsdCA9IGZhbHNlOyAgICAgICAgCiAgICAgIH0KICAgIH0gICAgICAKICB9ICAKfSAgCgppZiAocmVzdWx0ICE9PSB0cnVlKSB7ICAgIAogICRFUlJPUignIzE6IElmIEIgPSAxMTEweHh4eCAobiA9IDMpIGFuZCAoc3RyaW5nLmNoYXJBdChrICsgNykgYW5kICBzdHJpbmcuY2hhckF0KGsgKyA4KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yJyk7Cn0KCg==","commentary":"If B = 1110xxxx (n = 3) and (string.charAt(k + 4) and\nstring.charAt(k + 5)) or (string.charAt(k + 7) and\nstring.charAt(k + 8)) do not represent hexadecimal digits, throw URIError","description":"Complex tests, string.charAt(k + 7) and string.charAt(k + 8)\ndo not represent hexadecimal digits","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.11_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDQpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA1KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA4KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDEwKSBhbmQKICogc3RyaW5nLmNoYXJBdChrICsgMTEpKSBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cywgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTJfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHN0cmluZy5jaGFyQXQoayArIDQpIGFuZCBzdHJpbmcuY2hhckF0KGsgKyA1KQogKiBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cwogKi8KCi8vQ0hFQ0sKdmFyIHJlc3VsdCA9IHRydWU7CnZhciBpbnRlcnZhbCA9IFtbMHgwMCwgMHgyOV0sIFsweDQwLDB4NDBdLCBbMHg0NywgMHg2MF0sIFsweDY3LCAweEZGRkZdXTsKZm9yICh2YXIgaW5kZXhJID0gMDsgaW5kZXhJIDwgaW50ZXJ2YWwubGVuZ3RoOyBpbmRleEkrKykgewogIGZvciAodmFyIGluZGV4SiA9IGludGVydmFsW2luZGV4SV1bMF07IGluZGV4SiA8PSBpbnRlcnZhbFtpbmRleEldWzFdOyBpbmRleEorKykgewogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlRjAlIiArIFN0cmluZy5mcm9tQ2hhckNvZGUoaW5kZXhKLCBpbmRleEopICsgIiVBMCVBMCIpOwogICAgICByZXN1bHQgPSBmYWxzZTsgICAgICAKICAgIH0gY2F0Y2ggKGUpIHsgICAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpICE9PSB0cnVlKSB7CiAgICAgICAgcmVzdWx0ID0gZmFsc2U7ICAgICAgICAKICAgICAgfQogICAgfSAgICAgIAogIH0gIAp9ICAKCmlmIChyZXN1bHQgIT09IHRydWUpIHsgICAgCiAgJEVSUk9SKCcjMTogSWYgQiA9IDExMTEweHh4IChuID0gNCkgYW5kIChzdHJpbmcuY2hhckF0KGsgKyA0KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgNSkpIGRvIG5vdCByZXByZXNlbnQgaGV4YWRlY2ltYWwgZGlnaXRzLCB0aHJvdyBVUklFcnJvcicpOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and (string.charAt(k + 4) and\nstring.charAt(k + 5)) or (string.charAt(k + 7) and\nstring.charAt(k + 8)) or (string.charAt(k + 10) and\nstring.charAt(k + 11)) do not represent hexadecimal digits, throw URIError","description":"Complex tests, string.charAt(k + 4) and string.charAt(k + 5)\ndo not represent hexadecimal digits","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.12_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDQpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA1KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA4KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDEwKSBhbmQKICogc3RyaW5nLmNoYXJBdChrICsgMTEpKSBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cywgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTJfVDIuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHN0cmluZy5jaGFyQXQoayArIDcpIGFuZCBzdHJpbmcuY2hhckF0KGsgKyA3KQogKiBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cwogKi8KCi8vQ0hFQ0sKdmFyIHJlc3VsdCA9IHRydWU7CnZhciBpbnRlcnZhbCA9IFtbMHgwMCwgMHgyOV0sIFsweDQwLDB4NDBdLCBbMHg0NywgMHg2MF0sIFsweDY3LCAweEZGRkZdXTsKZm9yICh2YXIgaW5kZXhJID0gMDsgaW5kZXhJIDwgaW50ZXJ2YWwubGVuZ3RoOyBpbmRleEkrKykgewogIGZvciAodmFyIGluZGV4SiA9IGludGVydmFsW2luZGV4SV1bMF07IGluZGV4SiA8PSBpbnRlcnZhbFtpbmRleEldWzFdOyBpbmRleEorKykgewogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlRjAlIiArICIlQTAiICsgU3RyaW5nLmZyb21DaGFyQ29kZShpbmRleEosIGluZGV4SikgKyAiJUEwIik7CiAgICAgIHJlc3VsdCA9IGZhbHNlOyAgICAgIAogICAgfSBjYXRjaCAoZSkgeyAgIAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgIT09IHRydWUpIHsKICAgICAgICByZXN1bHQgPSBmYWxzZTsgICAgICAgIAogICAgICB9CiAgICB9ICAgICAgCiAgfSAgCn0gIAoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgeyAgICAKICAkRVJST1IoJyMxOiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZCBzdHJpbmcuY2hhckF0KGsgKyA4KSkgZG8gbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yJyk7Cn0KCg==","commentary":"If B = 11110xxx (n = 4) and (string.charAt(k + 4) and\nstring.charAt(k + 5)) or (string.charAt(k + 7) and\nstring.charAt(k + 8)) or (string.charAt(k + 10) and\nstring.charAt(k + 11)) do not represent hexadecimal digits, throw URIError","description":"Complex tests, string.charAt(k + 7) and string.charAt(k + 7)\ndo not represent hexadecimal digits","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.12_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDQpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA1KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDcpIGFuZAogKiBzdHJpbmcuY2hhckF0KGsgKyA4KSkgb3IgKHN0cmluZy5jaGFyQXQoayArIDEwKSBhbmQKICogc3RyaW5nLmNoYXJBdChrICsgMTEpKSBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cywgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTJfVDMuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHN0cmluZy5jaGFyQXQoayArIDEwKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMTEpCiAqIGRvIG5vdCByZXByZXNlbnQgaGV4YWRlY2ltYWwgZGlnaXRzCiAqLwoKLy9DSEVDSwp2YXIgcmVzdWx0ID0gdHJ1ZTsKdmFyIGludGVydmFsID0gW1sweDAwLCAweDI5XSwgWzB4NDAsMHg0MF0sIFsweDQ3LCAweDYwXSwgWzB4NjcsIDB4RkZGRl1dOwpmb3IgKHZhciBpbmRleEkgPSAwOyBpbmRleEkgPCBpbnRlcnZhbC5sZW5ndGg7IGluZGV4SSsrKSB7CiAgZm9yICh2YXIgaW5kZXhKID0gaW50ZXJ2YWxbaW5kZXhJXVswXTsgaW5kZXhKIDw9IGludGVydmFsW2luZGV4SV1bMV07IGluZGV4SisrKSB7CiAgICB0cnkgewogICAgICBkZWNvZGVVUkkoIiVGMCUiICsgIiVBMCVBMCIgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4SiwgaW5kZXhKKSk7CiAgICAgIHJlc3VsdCA9IGZhbHNlOyAgICAgIAogICAgfSBjYXRjaCAoZSkgeyAgIAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgIT09IHRydWUpIHsKICAgICAgICByZXN1bHQgPSBmYWxzZTsgICAgICAgIAogICAgICB9CiAgICB9ICAgICAgCiAgfSAgCn0gIAoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgeyAgICAKICAkRVJST1IoJyMxOiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKHN0cmluZy5jaGFyQXQoayArIDEwKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMTEpKSBkbyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cywgdGhyb3cgVVJJRXJyb3InKTsKfQoK","commentary":"If B = 11110xxx (n = 4) and (string.charAt(k + 4) and\nstring.charAt(k + 5)) or (string.charAt(k + 7) and\nstring.charAt(k + 8)) or (string.charAt(k + 10) and\nstring.charAt(k + 11)) do not represent hexadecimal digits, throw URIError","description":"Complex tests, string.charAt(k + 10) and string.charAt(k + 11)\ndo not represent hexadecimal digits","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.12_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTEweHh4eHggKG4gPSAyKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTNfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhDMCAtIDB4REZdLCBDID0gWzB4MDAsIDB4N0ZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4QzA7IGluZGV4QiA8PSAweERGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7ICAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweDAwOyBpbmRleEMgPD0gMHg3RjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlIiArIGhleEMuc3Vic3RyaW5nKDIpKTsKICAgIH0gY2F0Y2ggKGUpIHsgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSA9PT0gdHJ1ZSkgY29udGludWU7ICAgICAgICAgICAgICAgIAogICAgfQogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQogIGlmIChyZXN1bHQgIT09IHRydWUpIHsKICAgIGlmIChpbmRleE8gPT09IDApIHsgCiAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgIH0gZWxzZSB7CiAgICAgIGlmICgoaW5kZXhCIC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICB9IAogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICB9ICAKICAgICAgICBpbmRleE8gPSBpbmRleEI7CiAgICAgIH0gICAgICAgICAKICAgIH0KICAgIGluZGV4UCA9IGluZGV4QjsKICAgIGVycm9yQ291bnQrKzsgICAgICAgCiAgfQp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B = 110xxxxx (n = 2) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xC0 - 0xDF], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.13_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTEweHh4eHggKG4gPSAyKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTNfVDIuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhDMCAtIDB4REZdLCBDID0gWzB4QzAsIDB4RkZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4QzA7IGluZGV4QiA8PSAweERGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7ICAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweEMwOyBpbmRleEMgPD0gMHhGRjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlIiArIGhleEMuc3Vic3RyaW5nKDIpKTsKICAgIH0gY2F0Y2ggKGUpIHsgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSA9PT0gdHJ1ZSkgY29udGludWU7ICAgICAgICAgICAgICAgIAogICAgfQogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQogIGlmIChyZXN1bHQgIT09IHRydWUpIHsKICAgIGlmIChpbmRleE8gPT09IDApIHsgCiAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgIH0gZWxzZSB7CiAgICAgIGlmICgoaW5kZXhCIC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICB9IAogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICB9ICAKICAgICAgICBpbmRleE8gPSBpbmRleEI7CiAgICAgIH0gICAgICAgICAKICAgIH0KICAgIGluZGV4UCA9IGluZGV4QjsKICAgIGVycm9yQ291bnQrKzsgICAgICAgCiAgfQp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B = 110xxxxx (n = 2) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xC0 - 0xDF], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.13_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTRfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLCBDID0gWzB4MDAsIDB4N0ZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4RTA7IGluZGV4QiA8PSAweEVGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7IAogIHZhciByZXN1bHQgPSB0cnVlOwogIGZvciAodmFyIGluZGV4QyA9IDB4MDA7IGluZGV4QyA8PSAweDdGOyBpbmRleEMrKykgewogICAgdmFyIGhleEMgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhDKTsgIAogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlIiArIGhleEIuc3Vic3RyaW5nKDIpICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikgKyAiJUEwIik7CiAgICB9IGNhdGNoIChlKSB7IAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICAgIH0KICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICBpZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgICBpbmRleE8gPSBpbmRleEI7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4QiAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAKICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAgCiAgICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgICB9ICAgICAgICAgCiAgICB9CiAgICBpbmRleFAgPSBpbmRleEI7CiAgICBlcnJvckNvdW50Kys7ICAgICAgIAogIH0KfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 1110xxxx (n = 3) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xE0 - 0xEF], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.14_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTRfVDIuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLCBDID0gWzB4MDAsIDB4N0ZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4RTA7IGluZGV4QiA8PSAweEVGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7ICAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweDAwOyBpbmRleEMgPD0gMHg3RjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 1110xxxx (n = 3) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xE0 - 0xEF], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.14_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTRfVDMuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLCBDID0gWzB4QzAsIDB4RkZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4RTA7IGluZGV4QiA8PSAweEVGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7IAogIHZhciByZXN1bHQgPSB0cnVlOwogIGZvciAodmFyIGluZGV4QyA9IDB4QzA7IGluZGV4QyA8PSAweEZGOyBpbmRleEMrKykgewogICAgdmFyIGhleEMgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhDKTsgIAogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlIiArIGhleEIuc3Vic3RyaW5nKDIpICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikgKyAiJUEwIik7CiAgICB9IGNhdGNoIChlKSB7IAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICAgIH0KICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICBpZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgICBpbmRleE8gPSBpbmRleEI7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4QiAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAKICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAgCiAgICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgICB9ICAgICAgICAgCiAgICB9CiAgICBpbmRleFAgPSBpbmRleEI7CiAgICBlcnJvckNvdW50Kys7ICAgICAgIAogIH0KfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 1110xxxx (n = 3) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xE0 - 0xEF], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.14_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTRfVDQuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLCBDID0gWzB4QzAsIDB4RkZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4QiA9IDB4RTA7IGluZGV4QiA8PSAweEVGOyBpbmRleEIrKykgewogIGNvdW50Kys7IAogIHZhciBoZXhCID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qik7ICAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweEMwOyBpbmRleEMgPD0gMHhGRjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 1110xxxx (n = 3) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xE0 - 0xEF], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.14_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweDAwLCAweDdGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweDAwOyBpbmRleEMgPD0gMHg3RjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlIiArIGhleEMuc3Vic3RyaW5nKDIpICsgIiVBMCVBMCIpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDIuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweDAwLCAweDdGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweDAwOyBpbmRleEMgPD0gMHg3RjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikgKyAiJUEwIik7CiAgICB9IGNhdGNoIChlKSB7IAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICAgIH0KICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICBpZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgICBpbmRleE8gPSBpbmRleEI7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4QiAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAKICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAgCiAgICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgICB9ICAgICAgICAgCiAgICB9CiAgICBpbmRleFAgPSBpbmRleEI7CiAgICBlcnJvckNvdW50Kys7ICAgICAgIAogIH0KfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDMuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweDAwLCAweDdGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweDAwOyBpbmRleEMgPD0gMHg3RjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0x00, 0x7F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDQuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweEMwLCAweEZGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweEMwOyBpbmRleEMgPD0gMHhGRjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlIiArIGhleEMuc3Vic3RyaW5nKDIpICsgIiVBMCVBMCIpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDUuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweEMwLCAweEZGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweEMwOyBpbmRleEMgPD0gMHhGRjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikgKyAiJUEwIik7CiAgICB9IGNhdGNoIChlKSB7IAogICAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICAgIH0KICAgIHJlc3VsdCA9IGZhbHNlOwogIH0KICBpZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgICBpbmRleE8gPSBpbmRleEI7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4QiAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAKICAgICAgICBlbHNlIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgICAgfSAgCiAgICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgICB9ICAgICAgICAgCiAgICB9CiAgICBpbmRleFAgPSBpbmRleEI7CiAgICBlcnJvckNvdW50Kys7ICAgICAgIAogIH0KfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgQyAhPSAxMHh4eHh4eCAoQyAtIGZpcnN0IG9mIG9jdGV0cyBhZnRlciBCKSwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMTVfVDYuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhGMCAtIDB4MEY3XSwgQyA9IFsweEMwLCAweEZGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIgPSAweEYwOyBpbmRleEIgPD0gMHhGNzsgaW5kZXhCKyspIHsKICBjb3VudCsrOyAKICB2YXIgaGV4QiA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIpOyAKICB2YXIgcmVzdWx0ID0gdHJ1ZTsKICBmb3IgKHZhciBpbmRleEMgPSAweEMwOyBpbmRleEMgPD0gMHhGRjsgaW5kZXhDKyspIHsKICAgIHZhciBoZXhDID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Qyk7ICAKICAgIHRyeSB7CiAgICAgIGRlY29kZVVSSSgiJSIgKyBoZXhCLnN1YnN0cmluZygyKSArICIlQTAlQTAiICsgIiUiICsgaGV4Qy5zdWJzdHJpbmcoMikpOwogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXhCOwogICAgfSBlbHNlIHsKICAgICAgaWYgKChpbmRleEIgLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4QjsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXhCOwogICAgZXJyb3JDb3VudCsrOyAgICAgICAKICB9Cn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and C != 10xxxxxx (C - first of octets after B), throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7], C = [0xC0, 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.15_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBzdHJpbmcuY2hhckF0KGspIGVxdWFsICIlIiBhbmQgayArIDIgPj0gc3RyaW5nLmxlbmd0aCwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0cwogKi8KCnZhciByZXN1bHQgPSB0cnVlOwoKLy9DSEVDSyMxCnRyeSB7CiAgZGVjb2RlVVJJKCIlIik7CiAgcmVzdWx0ID0gZmFsc2U7Cn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQp9CgovL0NIRUNLIzIKdHJ5IHsKICBkZWNvZGVVUkkoIiVBIik7CiAgcmVzdWx0ID0gZmFsc2U7Cn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQp9CgovL0NIRUNLIzMKdHJ5IHsKICBkZWNvZGVVUkkoIiUxIik7CiAgcmVzdWx0ID0gZmFsc2U7Cn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQp9CgovL0NIRUNLIzQKdHJ5IHsKICBkZWNvZGVVUkkoIiUgIik7CiAgcmVzdWx0ID0gZmFsc2U7Cn0gY2F0Y2goZSkgewogIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgcmVzdWx0ID0gZmFsc2U7CiAgfQp9CgppZiAocmVzdWx0ICE9PSB0cnVlKSB7CiAgJEVSUk9SKCcjMTogSWYgc3RyaW5nLmNoYXJBdChrKSBlcXVhbCAiJSIgYW5kIGsgKyAyID49IHN0cmluZy5sZW5ndGgsIHRocm93IFVSSUVycm9yJyk7Cn0KCgoKCg==","commentary":"If string.charAt(k) equal \"%\" and k + 2 >= string.length, throw URIError","description":"Complex tests","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gc3RyaW5nLmNoYXJBdChrKzEpICsgc3RyaW5nLmNoYXJBdChrKzIpIGRvIG5vdCByZXByZXNlbnQKICogaGV4YWRlY2ltYWwgZGlnaXRzLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzCiAqLwoKLy9DSEVDSwp2YXIgcmVzdWx0ID0gdHJ1ZTsKdmFyIGludGVydmFsID0gW1sweDAwLCAweDI5XSwgWzB4NDAsMHg0MF0sIFsweDQ3LCAweDYwXSwgWzB4NjcsIDB4RkZGRl1dOwpmb3IgKHZhciBpbmRleEkgPSAwOyBpbmRleEkgPCBpbnRlcnZhbC5sZW5ndGg7IGluZGV4SSsrKSB7CiAgZm9yICh2YXIgaW5kZXhKID0gaW50ZXJ2YWxbaW5kZXhJXVswXTsgaW5kZXhKIDw9IGludGVydmFsW2luZGV4SV1bMV07IGluZGV4SisrKSB7CiAgICB0cnkgewogICAgICBkZWNvZGVVUkkoIiUiICsgU3RyaW5nLmZyb21DaGFyQ29kZShpbmRleEopICsgIjEiKTsKICAgICAgcmVzdWx0ID0gZmFsc2U7CiAgICB9IGNhdGNoIChlKSB7ICAgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgICAgIHJlc3VsdCA9IGZhbHNlOwogICAgICB9CiAgICB9ICAgIAogIH0gIAp9ICAKCmlmIChyZXN1bHQgIT09IHRydWUpIHsgICAgCiAgJEVSUk9SKCcjMTogSWYgc3RyaW5nLmNoYXJBdChrKzEpIGRvZXMgbm90IHJlcHJlc2VudCBoZXhhZGVjaW1hbCBkaWdpdHMsIHRocm93IFVSSUVycm9yJyk7Cn0KCg==","commentary":"If B = string.charAt(k+1) + string.charAt(k+2) do not represent\nhexadecimal digits, throw URIError","description":"Complex tests","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gc3RyaW5nLmNoYXJBdChrKzEpICsgc3RyaW5nLmNoYXJBdChrKzIpIGRvIG5vdCByZXByZXNlbnQKICogaGV4YWRlY2ltYWwgZGlnaXRzLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzCiAqLwoKLy9DSEVDSwp2YXIgcmVzdWx0ID0gdHJ1ZTsKdmFyIGludGVydmFsID0gW1sweDAwLCAweDI5XSwgWzB4NDAsMHg0MF0sIFsweDQ3LCAweDYwXSwgWzB4NjcsIDB4RkZGRl1dOwpmb3IgKHZhciBpbmRleEkgPSAwOyBpbmRleEkgPCBpbnRlcnZhbC5sZW5ndGg7IGluZGV4SSsrKSB7CiAgZm9yICh2YXIgaW5kZXhKID0gaW50ZXJ2YWxbaW5kZXhJXVswXTsgaW5kZXhKIDw9IGludGVydmFsW2luZGV4SV1bMV07IGluZGV4SisrKSB7CiAgICB0cnkgewogICAgICBkZWNvZGVVUkkoIiUiICsgIjEiICsgU3RyaW5nLmZyb21DaGFyQ29kZShpbmRleEopKTsKICAgICAgcmVzdWx0ID0gZmFsc2U7CiAgICB9IGNhdGNoIChlKSB7ICAgCiAgICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSAhPT0gdHJ1ZSkgewogICAgICAgIHJlc3VsdCA9IGZhbHNlOwogICAgICB9CiAgICB9ICAgICAgCiAgfSAgCn0gIAoKaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgeyAgICAKICAkRVJST1IoJyMxOiBJZiBzdHJpbmcuY2hhckF0KGsrMikgZG9lcyBub3QgcmVwcmVzZW50IGhleGFkZWNpbWFsIGRpZ2l0cywgdGhyb3cgVVJJRXJyb3InKTsKfQoK","commentary":"If B = string.charAt(k+1) + string.charAt(k+2) do not represent\nhexadecimal digits, throw URIError","description":"Complex tests","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTB4eHh4eHggb3IgQiA9IDExMTExeHh4LCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS4zX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gMTB4eHh4eHggLT4gQiBpbiBbMHg4MCAtIDB4QkZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4ID0gMHg4MDsgaW5kZXggPD0gMHhCRjsgaW5kZXgrKykgewogIGNvdW50Kys7IAogIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogIHRyeSB7CiAgICBkZWNvZGVVUkkoIiUiICsgaGV4LnN1YnN0cmluZygyKSk7CiAgfSBjYXRjaCAoZSkgeyAKICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSA9PT0gdHJ1ZSkgY29udGludWU7ICAgICAgICAgICAgICAgIAogIH0KICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgaW5kZXhPID0gaW5kZXg7CiAgfSBlbHNlIHsKICAgIGlmICgoaW5kZXggLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgfSAKICAgICAgZWxzZSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgIH0gIAogICAgICBpbmRleE8gPSBpbmRleDsKICAgIH0gICAgICAgICAKICB9CiAgaW5kZXhQID0gaW5kZXg7CiAgZXJyb3JDb3VudCsrOyAgICAgICAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 10xxxxxx or B = 11111xxx, throw URIError","description":"Complex tests. B = 10xxxxxx -> B in [0x80 - 0xBF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTB4eHh4eHggb3IgQiA9IDExMTExeHh4LCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS4zX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gMTExMTF4eHggLT4gQiBpbiBbMHhGOCAtIDB4RkZdCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4ID0gMHhGODsgaW5kZXggPD0gMHhGRjsgaW5kZXgrKykgewogIGNvdW50Kys7IAogIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogIHRyeSB7CiAgICBkZWNvZGVVUkkoIiUiICsgaGV4LnN1YnN0cmluZygyKSk7CiAgfSBjYXRjaCAoZSkgeyAKICAgIGlmICgoZSBpbnN0YW5jZW9mIFVSSUVycm9yKSA9PT0gdHJ1ZSkgY29udGludWU7ICAgICAgICAgICAgICAgIAogIH0KICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgaW5kZXhPID0gaW5kZXg7CiAgfSBlbHNlIHsKICAgIGlmICgoaW5kZXggLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgfSAKICAgICAgZWxzZSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgICAgIH0gIAogICAgICBpbmRleE8gPSBpbmRleDsKICAgIH0gICAgICAgICAKICB9CiAgaW5kZXhQID0gaW5kZXg7CiAgZXJyb3JDb3VudCsrOyAgICAgICAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 10xxxxxx or B = 11111xxx, throw URIError","description":"Complex tests. B = 11111xxx -> B in [0xF8 - 0xFF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTEweHh4eHggKG4gPSAyKSBhbmQgKGsgKyAyKSArIDMgPj0gbGVuZ3RoLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS40X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4QzAgLSAweERGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleCA9IDB4QzA7IGluZGV4IDw9IDB4REY7IGluZGV4KyspIHsKICBjb3VudCsrOyAKICB2YXIgc3RyID0gIiI7CiAgdmFyIHJlc3VsdCA9IHRydWU7CiAgZm9yICh2YXIgbGVuID0gMDsgbGVuIDwgMzsgbGVuKyspIHsKICAgIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlIiArIGhleC5zdWJzdHJpbmcoMikgKyBzdHIpOyAgICAgIAogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICAgIHN0ciA9IHN0ciArICIxIjsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICB9IAogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICB9ICAKICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXg7CiAgICBlcnJvckNvdW50Kys7ICAgICAgCiAgfSAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 110xxxxx (n = 2) and (k + 2) + 3 >= length, throw URIError","description":"Complex tests. B = [0xC0 - 0xDF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgKGsgKyAyKSArIDYgPj0gbGVuZ3RoLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS41X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4RTAgLSAweEVGXQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleCA9IDB4RTA7IGluZGV4IDw9IDB4RUY7IGluZGV4KyspIHsKICBjb3VudCsrOyAKICB2YXIgc3RyID0gIiI7CiAgdmFyIHJlc3VsdCA9IHRydWU7CiAgZm9yICh2YXIgbGVuID0gMDsgbGVuIDwgNjsgbGVuKyspIHsKICAgIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlIiArIGhleC5zdWJzdHJpbmcoMikgKyBzdHIpOyAgICAgIAogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICAgIHN0ciA9IHN0ciArICIxIjsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICB9IAogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICB9ICAKICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXg7CiAgICBlcnJvckNvdW50Kys7ICAgICAgCiAgfSAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 1110xxxx (n = 3) and (k + 2) + 6 >= length, throw URIError","description":"Complex tests. B = [0xE0 - 0xEF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgKGsgKyAyKSArIDkgPj0gbGVuZ3RoLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS42X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4RjAgLSAweEY3XQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleCA9IDB4RjA7IGluZGV4IDw9IDB4Rjc7IGluZGV4KyspIHsKICBjb3VudCsrOyAKICB2YXIgc3RyID0gIiI7CiAgdmFyIHJlc3VsdCA9IHRydWU7CiAgZm9yICh2YXIgbGVuID0gMDsgbGVuIDwgOTsgbGVuKyspIHsKICAgIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogICAgdHJ5IHsKICAgICAgZGVjb2RlVVJJKCIlIiArIGhleC5zdWJzdHJpbmcoMikgKyBzdHIpOyAgICAgIAogICAgfSBjYXRjaCAoZSkgeyAKICAgICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgICB9CiAgICByZXN1bHQgPSBmYWxzZTsKICAgIHN0ciA9IHN0ciArICIxIjsKICB9CiAgaWYgKHJlc3VsdCAhPT0gdHJ1ZSkgewogICAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9IGVsc2UgewogICAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICB9IAogICAgICAgIGVsc2UgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICB9ICAKICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgfSAgICAgICAgIAogICAgfQogICAgaW5kZXhQID0gaW5kZXg7CiAgICBlcnJvckNvdW50Kys7ICAgICAgCiAgfSAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B = 11110xxx (n = 4) and (k + 2) + 9 >= length, throw URIError","description":"Complex tests. B = [0xF0 - 0xF7]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.6_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTEweHh4eHggKG4gPSAyKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMykgbm90IGVxdWFsICIlIiwgdGhyb3cgVVJJRXJyb3IKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTEuN19UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0cy4gQiA9IFsweEMwIC0gMHhERl0KICovCgp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwoKZm9yICh2YXIgaW5kZXggPSAweEMwOyBpbmRleCA8PSAweERGOyBpbmRleCsrKSB7CiAgY291bnQrKzsgCiAgdmFyIGhleCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleCk7CiAgdHJ5IHsKICAgIGRlY29kZVVSSSgiJSIgKyBoZXguc3Vic3RyaW5nKDIpICsgIjExMSIpOwogIH0gY2F0Y2ggKGUpIHsgCiAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICB9CiAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgIGluZGV4TyA9IGluZGV4OwogIH0gZWxzZSB7CiAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgIH0gCiAgICAgIGVsc2UgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICB9ICAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9ICAgICAgICAgCiAgfQogIGluZGV4UCA9IGluZGV4OwogIGVycm9yQ291bnQrKzsgICAgICAgCn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 110xxxxx (n = 2) and string.charAt(k + 3) not equal \"%\", throw URIError","description":"Complex tests. B = [0xC0 - 0xDF]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.7_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMyksCiAqIHN0cmluZy5jaGFyQXQoayArIDYpIG5vdCBlcXVhbCAiJSIsIHRocm93IFVSSUVycm9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0ExLjhfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLAogKiBzdHJpbmcuY2hhckF0KGsgKyAzKSBub3QgZXF1YWwgIiUiCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4ID0gMHhFMDsgaW5kZXggPD0gMHhFRjsgaW5kZXgrKykgewogIGNvdW50Kys7IAogIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogIHRyeSB7CiAgICBkZWNvZGVVUkkoIiUiICsgaGV4LnN1YnN0cmluZygyKSArICIxMTElQTAiKTsKICB9IGNhdGNoIChlKSB7IAogICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgfQogIGlmIChpbmRleE8gPT09IDApIHsgCiAgICBpbmRleE8gPSBpbmRleDsKICB9IGVsc2UgewogICAgaWYgKChpbmRleCAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICB9IAogICAgICBlbHNlIHsKICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgfSAgCiAgICAgIGluZGV4TyA9IGluZGV4OwogICAgfSAgICAgICAgIAogIH0KICBpbmRleFAgPSBpbmRleDsKICBlcnJvckNvdW50Kys7ICAgICAgIAp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B = 1110xxxx (n = 3) and string.charAt(k + 3),\nstring.charAt(k + 6) not equal \"%\", throw URIError","description":"Complex tests. B = [0xE0 - 0xEF],\nstring.charAt(k + 3) not equal \"%\"","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.8_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMHh4eHggKG4gPSAzKSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMyksCiAqIHN0cmluZy5jaGFyQXQoayArIDYpIG5vdCBlcXVhbCAiJSIsIHRocm93IFVSSUVycm9yCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0ExLjhfVDIuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMuIEIgPSBbMHhFMCAtIDB4RUZdLAogKiBzdHJpbmcuY2hhckF0KGsgKyA2KSBub3QgZXF1YWwgIiUiCiAqLwoKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwp2YXIgaW5kZXhQOwp2YXIgaW5kZXhPID0gMDsKCmZvciAodmFyIGluZGV4ID0gMHhFMDsgaW5kZXggPD0gMHhFRjsgaW5kZXgrKykgewogIGNvdW50Kys7IAogIHZhciBoZXggPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXgpOwogIHRyeSB7CiAgICBkZWNvZGVVUkkoIiUiICsgaGV4LnN1YnN0cmluZygyKSArICIlQTAxMTEiKTsKICB9IGNhdGNoIChlKSB7IAogICAgaWYgKChlIGluc3RhbmNlb2YgVVJJRXJyb3IpID09PSB0cnVlKSBjb250aW51ZTsgICAgICAgICAgICAgICAgCiAgfQogIGlmIChpbmRleE8gPT09IDApIHsgCiAgICBpbmRleE8gPSBpbmRleDsKICB9IGVsc2UgewogICAgaWYgKChpbmRleCAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICB9IAogICAgICBlbHNlIHsKICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgfSAgCiAgICAgIGluZGV4TyA9IGluZGV4OwogICAgfSAgICAgICAgIAogIH0KICBpbmRleFAgPSBpbmRleDsKICBlcnJvckNvdW50Kys7ICAgICAgIAp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B = 1110xxxx (n = 3) and string.charAt(k + 3),\nstring.charAt(k + 6) not equal \"%\", throw URIError","description":"Complex tests. B = [0xE0 - 0xEF],\nstring.charAt(k + 6) not equal \"%\"","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.8_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMyksCiAqIHN0cmluZy5jaGFyQXQoayArIDYpLCBzdHJpbmcuY2hhckF0KGsgKyA5KSBub3QgZXF1YWwgIiUiLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS45X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4RjAgLSAweDBGN10sCiAqIHN0cmluZy5jaGFyQXQoayArIDMpIG5vdCBlcXVhbCAiJSIKICovCgp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwoKZm9yICh2YXIgaW5kZXggPSAweEYwOyBpbmRleCA8PSAweEY3OyBpbmRleCsrKSB7CiAgY291bnQrKzsgCiAgdmFyIGhleCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleCk7CiAgdHJ5IHsKICAgIGRlY29kZVVSSSgiJSIgKyBoZXguc3Vic3RyaW5nKDIpICsgIjExMSVBMCVBMCIpOwogIH0gY2F0Y2ggKGUpIHsgCiAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICB9CiAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgIGluZGV4TyA9IGluZGV4OwogIH0gZWxzZSB7CiAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgIH0gCiAgICAgIGVsc2UgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICB9ICAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9ICAgICAgICAgCiAgfQogIGluZGV4UCA9IGluZGV4OwogIGVycm9yQ291bnQrKzsgICAgICAgCn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and string.charAt(k + 3),\nstring.charAt(k + 6), string.charAt(k + 9) not equal \"%\", throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7],\nstring.charAt(k + 3) not equal \"%\"","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.9_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMyksCiAqIHN0cmluZy5jaGFyQXQoayArIDYpLCBzdHJpbmcuY2hhckF0KGsgKyA5KSBub3QgZXF1YWwgIiUiLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS45X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4RjAgLSAweDBGN10sCiAqIHN0cmluZy5jaGFyQXQoayArIDYpIG5vdCBlcXVhbCAiJSIKICovCgp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwoKZm9yICh2YXIgaW5kZXggPSAweEYwOyBpbmRleCA8PSAweEY3OyBpbmRleCsrKSB7CiAgY291bnQrKzsgCiAgdmFyIGhleCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleCk7CiAgdHJ5IHsKICAgIGRlY29kZVVSSSgiJSIgKyBoZXguc3Vic3RyaW5nKDIpICsgIiVBMDExMSVBMCIpOwogIH0gY2F0Y2ggKGUpIHsgCiAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICB9CiAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgIGluZGV4TyA9IGluZGV4OwogIH0gZWxzZSB7CiAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgIH0gCiAgICAgIGVsc2UgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICB9ICAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9ICAgICAgICAgCiAgfQogIGluZGV4UCA9IGluZGV4OwogIGVycm9yQ291bnQrKzsgICAgICAgCn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and string.charAt(k + 3),\nstring.charAt(k + 6), string.charAt(k + 9) not equal \"%\", throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7],\nstring.charAt(k + 6) not equal \"%\"","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.9_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCID0gMTExMTB4eHggKG4gPSA0KSBhbmQgc3RyaW5nLmNoYXJBdChrICsgMyksCiAqIHN0cmluZy5jaGFyQXQoayArIDYpLCBzdHJpbmcuY2hhckF0KGsgKyA5KSBub3QgZXF1YWwgIiUiLCB0aHJvdyBVUklFcnJvcgogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMS45X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLiBCID0gWzB4RjAgLSAweDBGN10sCiAqIHN0cmluZy5jaGFyQXQoayArIDkpIG5vdCBlcXVhbCAiJSIKICovCgp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwoKZm9yICh2YXIgaW5kZXggPSAweEYwOyBpbmRleCA8PSAweEY3OyBpbmRleCsrKSB7CiAgY291bnQrKzsgCiAgdmFyIGhleCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleCk7CiAgdHJ5IHsKICAgIGRlY29kZVVSSSgiJSIgKyBoZXguc3Vic3RyaW5nKDIpICsgIiVBMCVBMDExMSIpOwogIH0gY2F0Y2ggKGUpIHsgCiAgICBpZiAoKGUgaW5zdGFuY2VvZiBVUklFcnJvcikgPT09IHRydWUpIGNvbnRpbnVlOyAgICAgICAgICAgICAgICAKICB9CiAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgIGluZGV4TyA9IGluZGV4OwogIH0gZWxzZSB7CiAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgIH0gCiAgICAgIGVsc2UgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICB9ICAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9ICAgICAgICAgCiAgfQogIGluZGV4UCA9IGluZGV4OwogIGVycm9yQ291bnQrKzsgICAgICAgCn0KCmlmIChlcnJvckNvdW50ID4gMCkgewogIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogIH0gZWxzZSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogIH0gICAgIAogICRFUlJPUignVG90YWwgZXJyb3I6ICcgKyBlcnJvckNvdW50ICsgJyBiYWQgVW5pY29kZSBjaGFyYWN0ZXIgaW4gJyArIGNvdW50ICsgJyAnKTsKfQoKZnVuY3Rpb24gZGVjaW1hbFRvSGV4U3RyaW5nKG4pIHsKICBuID0gTnVtYmVyKG4pOwogIHZhciBoID0gIiI7CiAgZm9yICh2YXIgaSA9IDM7IGkgPj0gMDsgaS0tKSB7CiAgICBpZiAobiA+PSBNYXRoLnBvdygxNiwgaSkpIHsKICAgICAgdmFyIHQgPSBNYXRoLmZsb29yKG4gLyBNYXRoLnBvdygxNiwgaSkpOwogICAgICBuIC09IHQgKiBNYXRoLnBvdygxNiwgaSk7CiAgICAgIGlmICggdCA+PSAxMCApIHsKICAgICAgICBpZiAoIHQgPT0gMTAgKSB7IGggKz0gIkEiOyB9CiAgICAgICAgaWYgKCB0ID09IDExICkgeyBoICs9ICJCIjsgfQogICAgICAgIGlmICggdCA9PSAxMiApIHsgaCArPSAiQyI7IH0KICAgICAgICBpZiAoIHQgPT0gMTMgKSB7IGggKz0gIkQiOyB9CiAgICAgICAgaWYgKCB0ID09IDE0ICkgeyBoICs9ICJFIjsgfQogICAgICAgIGlmICggdCA9PSAxNSApIHsgaCArPSAiRiI7IH0KICAgICAgfSBlbHNlIHsKICAgICAgICBoICs9IFN0cmluZyh0KTsKICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgaCArPSAiMCI7CiAgICB9CiAgfQogIHJldHVybiBoOwp9Cgo=","commentary":"If B = 11110xxx (n = 4) and string.charAt(k + 3),\nstring.charAt(k + 6), string.charAt(k + 9) not equal \"%\", throw URIError","description":"Complex tests. B = [0xF0 - 0x0F7],\nstring.charAt(k + 9) not equal \"%\"","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A1.9_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBzdHJpbmcuY2hhckF0KGspIG5vdCBlcXVhbCAiJSIsIHJldHVybiB0aGlzIGNoYXIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ29tcGxleCB0ZXN0cwogKi8KCi8vQ0hFQ0sKdmFyIGVycm9yQ291bnQgPSAwOwp2YXIgY291bnQgPSAwOwpmb3IgKHZhciBpbmRleEkgPSAwOyBpbmRleEkgPD0gNjU1MzU7IGluZGV4SSsrKSB7CiAgaWYgKGluZGV4SSAhPT0gMHgyNSkgewogICAgdmFyIGhleCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEkpOwogICAgdHJ5IHsgICAgCiAgICAgIHZhciBzdHIgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4SSk7CiAgICAgIGlmIChkZWNvZGVVUkkoc3RyKSAhPT0gc3RyKSB7ICAgIAogICAgICAgICRFUlJPUignIycgKyBoZXggKyAnICcpOwogICAgICAgIGVycm9yQ291bnQrKzsKICAgICAgfSAgICAKICAgIH0gY2F0Y2ggKGUpewogICAgICAkRVJST1IoJyMnICsgaGV4ICsgJyAnKTsKICAgICAgZXJyb3JDb3VudCsrOwogICAgfSAKICAgIGNvdW50Kys7CiAgfQp9ICAKCmlmIChlcnJvckNvdW50ID4gMCkgeyAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If string.charAt(k) not equal \"%\", return this char","description":"Complex tests","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A2.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCMSA9IDB4eHh4eHh4eCAoWzB4MDAgLSAweDdGXSksIHdpdGhvdXQgW3VyaVJlc2VydmVkLCAjXSwgcmV0dXJuIEIxCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0EyLjJfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHVzZSBSRkMgMzYyOQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7CnZhciB1cmlSZXNlcnZlZCA9IFsiOyIsICIvIiwgIj8iLCAiOiIsICJAIiwgIiYiLCAiPSIsICIrIiwgIiQiLCAiLCJdOwpsOgpmb3IgKHZhciBpbmRleEIxID0gMHgwMDsgaW5kZXhCMSA8PSAweDdGOyBpbmRleEIxKyspIHsgICAgICAgCiAgY291bnQrKzsKICB2YXIgaGV4QjEgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhCMSk7ICAKICB2YXIgaW5kZXggPSBpbmRleEIxOyAgCiAgdHJ5IHsKICAgIHZhciBoZXggPSBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4KTsKICAgIGZvciAoaW5kZXhDID0gMDsgaW5kZXhDIDwgdXJpUmVzZXJ2ZWQubGVuZ3RoOyBpbmRleEMrKykgeyAgICAKICAgICAgaWYgKGhleCA9PT0gdXJpUmVzZXJ2ZWRbaW5kZXhDXSkgY29udGludWUgbDsgICAgICAgIAogICAgfSAKICAgIGlmIChoZXggPT09ICIjIikgY29udGludWUgbDsKICAgIGlmIChkZWNvZGVVUkkoIiUiICsgaGV4QjEuc3Vic3RyaW5nKDIpKSA9PT0gaGV4KSBjb250aW51ZTsKICB9IGNhdGNoIChlKSB7CiAgICBpZiAoZSBpbnN0YW5jZW9mIFRlc3QyNjJFcnJvcikgdGhyb3cgZTsKICB9ICAgCiAgaWYgKGluZGV4TyA9PT0gMCkgeyAKICAgIGluZGV4TyA9IGluZGV4OwogIH0gZWxzZSB7CiAgICBpZiAoKGluZGV4IC0gaW5kZXhQKSAhPT0gMSkgeyAgICAgICAgICAgICAKICAgICAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgICAgIH0gCiAgICAgIGVsc2UgewogICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICB9ICAKICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICB9ICAgICAgICAgCiAgfQogIGluZGV4UCA9IGluZGV4OwogIGVycm9yQ291bnQrKzsgICAgICAgICAKfQoKaWYgKGVycm9yQ291bnQgPiAwKSB7CiAgaWYgKChpbmRleFAgLSBpbmRleE8pICE9PSAwKSB7CiAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICRFUlJPUignIycgKyBoZXhPICsgJy0nICsgaGV4UCArICcgJyk7CiAgfSBlbHNlIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAkRVJST1IoJyMnICsgaGV4UCArICcgJyk7CiAgfSAgICAgCiAgJEVSUk9SKCdUb3RhbCBlcnJvcjogJyArIGVycm9yQ291bnQgKyAnIGJhZCBVbmljb2RlIGNoYXJhY3RlciBpbiAnICsgY291bnQgKyAnICcpOwp9CgpmdW5jdGlvbiBkZWNpbWFsVG9IZXhTdHJpbmcobikgewogIG4gPSBOdW1iZXIobik7CiAgdmFyIGggPSAiIjsKICBmb3IgKHZhciBpID0gMzsgaSA+PSAwOyBpLS0pIHsKICAgIGlmIChuID49IE1hdGgucG93KDE2LCBpKSkgewogICAgICB2YXIgdCA9IE1hdGguZmxvb3IobiAvIE1hdGgucG93KDE2LCBpKSk7CiAgICAgIG4gLT0gdCAqIE1hdGgucG93KDE2LCBpKTsKICAgICAgaWYgKCB0ID49IDEwICkgewogICAgICAgIGlmICggdCA9PSAxMCApIHsgaCArPSAiQSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTEgKSB7IGggKz0gIkIiOyB9CiAgICAgICAgaWYgKCB0ID09IDEyICkgeyBoICs9ICJDIjsgfQogICAgICAgIGlmICggdCA9PSAxMyApIHsgaCArPSAiRCI7IH0KICAgICAgICBpZiAoIHQgPT0gMTQgKSB7IGggKz0gIkUiOyB9CiAgICAgICAgaWYgKCB0ID09IDE1ICkgeyBoICs9ICJGIjsgfQogICAgICB9IGVsc2UgewogICAgICAgIGggKz0gU3RyaW5nKHQpOwogICAgICB9CiAgICB9IGVsc2UgewogICAgICBoICs9ICIwIjsKICAgIH0KICB9CiAgcmV0dXJuIGg7Cn0KCg==","commentary":"If B1 = 0xxxxxxxx ([0x00 - 0x7F]), without [uriReserved, #], return B1","description":"Complex tests, use RFC 3629","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A2.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCMSA9IDExMHh4eHh4IChbMHhDMCAtIDB4REZdKSwgQjIgPSAxMHh4eHh4eCAoWzB4ODAgLSAweEJGKSwgd2l0aG91dCBCMSA9IFsweEMwLCAweEMxXSwgcmV0dXJuIFVURjgoQjEsIEIyKQogKgogKiBAcGF0aCBjaDE1LzE1LjEvMTUuMS4zLzE1LjEuMy4xL1MxNS4xLjMuMV9BMi4zX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDb21wbGV4IHRlc3RzLCB1c2UgUkZDIDM2MjkKICovCgp2YXIgZXJyb3JDb3VudCA9IDA7CnZhciBjb3VudCA9IDA7CnZhciBpbmRleFA7CnZhciBpbmRleE8gPSAwOwoKZm9yICh2YXIgaW5kZXhCMSA9IDB4QzI7IGluZGV4QjEgPD0gMHhERjsgaW5kZXhCMSsrKSB7ICAgICAKICB2YXIgaGV4QjEgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhCMSk7CiAgZm9yICh2YXIgaW5kZXhCMiA9IDB4ODA7IGluZGV4QjIgPD0gMHhCRjsgaW5kZXhCMisrKSB7CiAgICBjb3VudCsrOwogICAgdmFyIGhleEIyID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4QjIpOwogICAgdmFyIGluZGV4ID0gKGluZGV4QjEgJiAweDFGKSAqIDB4NDAgKyAoaW5kZXhCMiAmIDB4M0YpOyAgCiAgICB0cnkgewogICAgICBpZiAoZGVjb2RlVVJJKCIlIiArIGhleEIxLnN1YnN0cmluZygyKSArICIlIiArIGhleEIyLnN1YnN0cmluZygyKSkgPT09IFN0cmluZy5mcm9tQ2hhckNvZGUoaW5kZXgpKSBjb250aW51ZTsNCiAgfSBjYXRjaCAoZSkgew0KICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUZXN0MjYyRXJyb3IpIHRocm93IGU7CiAgICB9ICAgCiAgICBpZiAoaW5kZXhPID09PSAwKSB7IAogICAgICBpbmRleE8gPSBpbmRleDsKICAgIH0gZWxzZSB7CiAgICAgIGlmICgoaW5kZXggLSBpbmRleFApICE9PSAxKSB7ICAgICAgICAgICAgIAogICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgIHZhciBoZXhPID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4Tyk7CiAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gCiAgICAgICAgZWxzZSB7CiAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgIH0gIAogICAgICAgIGluZGV4TyA9IGluZGV4OwogICAgICB9ICAgICAgICAgCiAgICB9CiAgICBpbmRleFAgPSBpbmRleDsKICAgIGVycm9yQ291bnQrKzsgICAgICAgCiAgfQp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B1 = 110xxxxx ([0xC0 - 0xDF]), B2 = 10xxxxxx ([0x80 - 0xBF), without B1 = [0xC0, 0xC1], return UTF8(B1, B2)","description":"Complex tests, use RFC 3629","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A2.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCMSA9IDExMTB4eHh4IChbMHhFMCAtIDB4RUZdKSwgQjIsIEIzID0gMTB4eHh4eHh4IChbMHg4MCAtIDB4QkZdKSwgd2l0aG91dCBbQjEsIEIyXSA9IFsweEUwLCAweDgwIC0gMHg5Rl0sIFsweEVELCAweEEwIC0gMHhCRl0gKDB4RDgwMCAtIDB4REZGRiksIHJldHVybiBVVEY4KEIxLCBCMiwgQjMpCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0EyLjRfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHVzZSBSRkMgMzYyOQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIxID0gMHhFMDsgaW5kZXhCMSA8PSAweEVGOyBpbmRleEIxKyspIHsgICAgIAogIHZhciBoZXhCMSA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIxKTsKICBmb3IgKHZhciBpbmRleEIyID0gMHg4MDsgaW5kZXhCMiA8PSAweEJGOyBpbmRleEIyKyspIHsKICAgIGlmICgoaW5kZXhCMSA9PT0gMHhFMCkgJiYgKGluZGV4QjIgPD0gMHg5RikpIGNvbnRpbnVlOwogICAgaWYgKChpbmRleEIxID09PSAweEVEKSAmJiAoMHhBMCA8PSBpbmRleEIyKSkgY29udGludWU7ICAgICAgICAgCiAgICB2YXIgaGV4QjIgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhCMik7CiAgICBmb3IgKHZhciBpbmRleEIzID0gMHg4MDsgaW5kZXhCMyA8PSAweEJGOyBpbmRleEIzKyspIHsKICAgICAgY291bnQrKzsKICAgICAgdmFyIGhleEIzID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4QjMpOwogICAgICB2YXIgaW5kZXggPSAoaW5kZXhCMSAmIDB4MEYpICogMHgxMDAwICsgKGluZGV4QjIgJiAweDNGKSAqIDB4NDAgKyAoaW5kZXhCMyAmIDB4M0YpOyAgCiAgICAgIHRyeSB7CiAgICAgICAgaWYgKGRlY29kZVVSSSgiJSIgKyBoZXhCMS5zdWJzdHJpbmcoMikgKyAiJSIgKyBoZXhCMi5zdWJzdHJpbmcoMikgKyAiJSIgKyBoZXhCMy5zdWJzdHJpbmcoMikpID09PSBTdHJpbmcuZnJvbUNoYXJDb2RlKGluZGV4KSkgY29udGludWU7DQogICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgIGlmIChlIGluc3RhbmNlb2YgVGVzdDI2MkVycm9yKSB0aHJvdyBlOwogICAgICB9ICAgCiAgICAgIGlmIChpbmRleE8gPT09IDApIHsgCiAgICAgICAgaW5kZXhPID0gaW5kZXg7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaWYgKChpbmRleCAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICAgICAgICAgIH0gCiAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICAgICAgICAgJEVSUk9SKCcjJyArIGhleFAgKyAnICcpOwogICAgICAgICAgfSAgCiAgICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgICB9ICAgICAgICAgCiAgICAgIH0KICAgICAgaW5kZXhQID0gaW5kZXg7CiAgICAgIGVycm9yQ291bnQrKzsgIAogICAgfSAgICAgCiAgfQp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSAzOyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B1 = 1110xxxx ([0xE0 - 0xEF]), B2, B3 = 10xxxxxxx ([0x80 - 0xBF]), without [B1, B2] = [0xE0, 0x80 - 0x9F], [0xED, 0xA0 - 0xBF] (0xD800 - 0xDFFF), return UTF8(B1, B2, B3)","description":"Complex tests, use RFC 3629","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A2.4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiBCMSA9IDExMTEweHh4IChbMHhGMCAtIDB4MEY0XSksIEIyLCBCMywgQjQgPSAxMHh4eHh4eHggKFsweDgwIC0gMHhCRl0pLCB3aXRob3V0IFtCMSwgQjJdID0gWzB4RjAsIDB4ODAgLSAweDlGXSwgWzB4RjQsIDB4OTAgLSAweEJGXSwgcmV0dXJuIFVURjgoQjEsIEIyLCBCMywgQjQpCiAqCiAqIEBwYXRoIGNoMTUvMTUuMS8xNS4xLjMvMTUuMS4zLjEvUzE1LjEuMy4xX0EyLjVfVDEuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdHMsIHVzZSBSRkMgMzYyOQogKi8KCnZhciBlcnJvckNvdW50ID0gMDsKdmFyIGNvdW50ID0gMDsKdmFyIGluZGV4UDsKdmFyIGluZGV4TyA9IDA7Cgpmb3IgKHZhciBpbmRleEIxID0gMHhGMDsgaW5kZXhCMSA8PSAweEY0OyBpbmRleEIxKyspIHsgICAgIAogIHZhciBoZXhCMSA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleEIxKTsKICBmb3IgKHZhciBpbmRleEIyID0gMHg4MDsgaW5kZXhCMiA8PSAweEJGOyBpbmRleEIyKyspIHsKICAgIGlmICgoaW5kZXhCMSA9PT0gMHhGMCkgJiYgKGluZGV4QjIgPD0gMHg5RikpIGNvbnRpbnVlOyAgICAgICAgICAgIAogICAgaWYgKChpbmRleEIxID09PSAweEY0KSAmJiAoaW5kZXhCMiA+PSAweDkwKSkgY29udGludWU7CiAgICB2YXIgaGV4QjIgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhCMik7CiAgICBmb3IgKHZhciBpbmRleEIzID0gMHg4MDsgaW5kZXhCMyA8PSAweEJGOyBpbmRleEIzKyspIHsKICAgICAgdmFyIGhleEIzID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4QjMpOwogICAgICBmb3IgKHZhciBpbmRleEI0ID0gMHg4MDsgaW5kZXhCNCA8PSAweEJGOyBpbmRleEI0KyspIHsKICAgICAgICB2YXIgaGV4QjQgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhCNCk7CiAgICAgICAgY291bnQrKzsKICAgICAgICB2YXIgaW5kZXggPSAoaW5kZXhCMSAmIDB4MDcpICogMHg0MDAwMCArIChpbmRleEIyICYgMHgzRikgKiAweDEwMDAgKyAoaW5kZXhCMyAmIDB4M0YpICogMHg0MCArIChpbmRleEI0ICYgMHgzRik7CiAgICAgICAgdmFyIEwgPSAoKGluZGV4IC0gMHgxMDAwMCkgJiAweDAzRkYpICsgMHhEQzAwOwogICAgICAgIHZhciBIID0gKCgoaW5kZXggLSAweDEwMDAwKSA+PiAxMCkgJiAweDAzRkYpICsgMHhEODAwOyAgCiAgICAgICAgdHJ5IHsKICAgICAgICAgIGlmIChkZWNvZGVVUkkoIiUiICsgaGV4QjEuc3Vic3RyaW5nKDMpICsgIiUiICsgaGV4QjIuc3Vic3RyaW5nKDMpICsgIiUiICsgaGV4QjMuc3Vic3RyaW5nKDMpICsgIiUiICsgaGV4QjQuc3Vic3RyaW5nKDMpKSA9PT0gU3RyaW5nLmZyb21DaGFyQ29kZShIKSArIFN0cmluZy5mcm9tQ2hhckNvZGUoTCkpIGNvbnRpbnVlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBUZXN0MjYyRXJyb3IpIHRocm93IGU7CiAgICAgICAgfSAgIAogICAgICAgIGlmIChpbmRleE8gPT09IDApIHsgCiAgICAgICAgICBpbmRleE8gPSBpbmRleDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgaWYgKChpbmRleCAtIGluZGV4UCkgIT09IDEpIHsgICAgICAgICAgICAgCiAgICAgICAgICAgIGlmICgoaW5kZXhQIC0gaW5kZXhPKSAhPT0gMCkgewogICAgICAgICAgICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICAgICAgICAgICAgdmFyIGhleE8gPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhPKTsKICAgICAgICAgICAgICAkRVJST1IoJyMnICsgaGV4TyArICctJyArIGhleFAgKyAnICcpOwogICAgICAgICAgICB9IAogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICB2YXIgaGV4UCA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleFApOwogICAgICAgICAgICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICAgICAgICAgICAgfSAgCiAgICAgICAgICAgIGluZGV4TyA9IGluZGV4OwogICAgICAgICAgfSAgICAgICAgIAogICAgICAgIH0KICAgICAgICBpbmRleFAgPSBpbmRleDsKICAgICAgICBlcnJvckNvdW50Kys7ICAKICAgICAgfQogICAgfSAgICAgCiAgfQp9CgppZiAoZXJyb3JDb3VudCA+IDApIHsKICBpZiAoKGluZGV4UCAtIGluZGV4TykgIT09IDApIHsKICAgIHZhciBoZXhQID0gZGVjaW1hbFRvSGV4U3RyaW5nKGluZGV4UCk7CiAgICB2YXIgaGV4TyA9IGRlY2ltYWxUb0hleFN0cmluZyhpbmRleE8pOwogICAgJEVSUk9SKCcjJyArIGhleE8gKyAnLScgKyBoZXhQICsgJyAnKTsKICB9IGVsc2UgewogICAgdmFyIGhleFAgPSBkZWNpbWFsVG9IZXhTdHJpbmcoaW5kZXhQKTsKICAgICRFUlJPUignIycgKyBoZXhQICsgJyAnKTsKICB9ICAgICAKICAkRVJST1IoJ1RvdGFsIGVycm9yOiAnICsgZXJyb3JDb3VudCArICcgYmFkIFVuaWNvZGUgY2hhcmFjdGVyIGluICcgKyBjb3VudCArICcgJyk7Cn0KCmZ1bmN0aW9uIGRlY2ltYWxUb0hleFN0cmluZyhuKSB7CiAgbiA9IE51bWJlcihuKTsKICB2YXIgaCA9ICIiOwogIGZvciAodmFyIGkgPSA0OyBpID49IDA7IGktLSkgewogICAgaWYgKG4gPj0gTWF0aC5wb3coMTYsIGkpKSB7CiAgICAgIHZhciB0ID0gTWF0aC5mbG9vcihuIC8gTWF0aC5wb3coMTYsIGkpKTsKICAgICAgbiAtPSB0ICogTWF0aC5wb3coMTYsIGkpOwogICAgICBpZiAoIHQgPj0gMTAgKSB7CiAgICAgICAgaWYgKCB0ID09IDEwICkgeyBoICs9ICJBIjsgfQogICAgICAgIGlmICggdCA9PSAxMSApIHsgaCArPSAiQiI7IH0KICAgICAgICBpZiAoIHQgPT0gMTIgKSB7IGggKz0gIkMiOyB9CiAgICAgICAgaWYgKCB0ID09IDEzICkgeyBoICs9ICJEIjsgfQogICAgICAgIGlmICggdCA9PSAxNCApIHsgaCArPSAiRSI7IH0KICAgICAgICBpZiAoIHQgPT0gMTUgKSB7IGggKz0gIkYiOyB9CiAgICAgIH0gZWxzZSB7CiAgICAgICAgaCArPSBTdHJpbmcodCk7CiAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgIGggKz0gIjAiOwogICAgfQogIH0KICByZXR1cm4gaDsKfQoK","commentary":"If B1 = 11110xxx ([0xF0 - 0x0F4]), B2, B3, B4 = 10xxxxxxx ([0x80 - 0xBF]), without [B1, B2] = [0xF0, 0x80 - 0x9F], [0xF4, 0x90 - 0xBF], return UTF8(B1, B2, B3, B4)","description":"Complex tests, use RFC 3629","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A2.5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBMZXQgcmVzZXJ2ZWRVUklTZXQgYmUgYSBzdHJpbmcgY29udGFpbmluZyBvbmUgaW5zdGFuY2Ugb2YgZWFjaCBjaGFyYWN0ZXIgdmFsaWQKICogaW4gdXJpUmVzZXJ2ZWQgcGx1cyAiIyIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTNfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGFsbCBjaGFyYWN0ZXIgaW4gcmVzZXJ2ZWRVUklTZXQuIEhleERpZ2l0IGluIFswLi45LCBBLi5GXQogKi8KCi8vQ0hFQ0sjMQppZiAoZGVjb2RlVVJJKCIlM0IiKSAhPT0gIiUzQiIpIHsKICAkRVJST1IoJyMxOiBkZWNvZGVVUkkoIiUzQiIpIGVxdWFsICIlM0IiLCBub3QgIjsiJyk7Cn0KCi8vQ0hFQ0sjMgppZiAoZGVjb2RlVVJJKCIlMkYiKSAhPT0gIiUyRiIpIHsKICAkRVJST1IoJyMyOiBkZWNvZGVVUkkoIiUyRiIpIGVxdWFsICIlMkYiLCBub3QgIi8iJyk7Cn0KCi8vQ0hFQ0sjMwppZiAoZGVjb2RlVVJJKCIlM0YiKSAhPT0gIiUzRiIpIHsKICAkRVJST1IoJyMzOiBkZWNvZGVVUkkoIiUzRiIpIGVxdWFsICIlM0YiLCBub3QgIj8iJyk7Cn0KCi8vQ0hFQ0sjNAppZiAoZGVjb2RlVVJJKCIlM0EiKSAhPT0gIiUzQSIpIHsKICAkRVJST1IoJyM0OiBkZWNvZGVVUkkoIiUzQSIpIGVxdWFsICIlM0EiLCBub3QgIjoiJyk7Cn0KCi8vQ0hFQ0sjNQppZiAoZGVjb2RlVVJJKCIlNDAiKSAhPT0gIiU0MCIpIHsKICAkRVJST1IoJyM1OiBkZWNvZGVVUkkoIiU0MCIpIGVxdWFsICIlNDAiLCBub3QgIkAiJyk7Cn0KCi8vQ0hFQ0sjNgppZiAoZGVjb2RlVVJJKCIlMjYiKSAhPT0gIiUyNiIpIHsKICAkRVJST1IoJyM2OiBkZWNvZGVVUkkoIiUyNiIpIGVxdWFsICIlMjYiLCBub3QgIiYiJyk7Cn0KCi8vQ0hFQ0sjNwppZiAoZGVjb2RlVVJJKCIlM0QiKSAhPT0gIiUzRCIpIHsKICAkRVJST1IoJyM3LjE6IGRlY29kZVVSSSgiJTNEIikgZXF1YWwgIiUzRCIsIG5vdCAiPSInKTsKfQoKLy9DSEVDSyM4CmlmIChkZWNvZGVVUkkoIiUyQiIpICE9PSAiJTJCIikgewogICRFUlJPUignIzguMTogZGVjb2RlVVJJKCIlMkIiKSBlcXVhbCAiJTJCIiwgbm90ICIrIicpOwp9CgovL0NIRUNLIzkKaWYgKGRlY29kZVVSSSgiJTI0IikgIT09ICIlMjQiKSB7CiAgJEVSUk9SKCcjOTogZGVjb2RlVVJJKCIlMjQiKSBlcXVhbCAiJTI0Iiwgbm90ICIkIicpOwp9CgovL0NIRUNLIzEwCmlmIChkZWNvZGVVUkkoIiUyQyIpICE9PSAiJTJDIikgewogICRFUlJPUignIzEwOiBkZWNvZGVVUkkoIiUyQyIpIGVxdWFsICIlMkMiLCBub3QgIiwiJyk7Cn0KCi8vQ0hFQ0sjMTEKaWYgKGRlY29kZVVSSSgiJTIzIikgIT09ICIlMjMiKSB7CiAgJEVSUk9SKCcjMTE6IGRlY29kZVVSSSgiJTIzIikgZXF1YWwgIiUyMyIsIG5vdCAiIyInKTsKfQoK","commentary":"Let reservedURISet be a string containing one instance of each character valid\nin uriReserved plus \"#\"","description":"Checking all character in reservedURISet. HexDigit in [0..9, A..F]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBMZXQgcmVzZXJ2ZWRVUklTZXQgYmUgYSBzdHJpbmcgY29udGFpbmluZyBvbmUgaW5zdGFuY2Ugb2YgZWFjaCBjaGFyYWN0ZXIgdmFsaWQKICogaW4gdXJpUmVzZXJ2ZWQgcGx1cyAiIyIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTNfVDIuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGFsbCBjaGFyYWN0ZXIgaW4gcmVzZXJ2ZWRVUklTZXQuIEhleERpZ2l0IGluIFswLi45LCBhLi5mXQogKi8KCi8vQ0hFQ0sjMQppZiAoZGVjb2RlVVJJKCIlM2IiKSAhPT0gIiUzYiIpIHsKICAkRVJST1IoJyMxOiBkZWNvZGVVUkkoIiUzYiIpIGVxdWFsICIlM2IiLCBub3QgIjsiIG9yICIlM0IiJyk7Cn0KCi8vQ0hFQ0sjMgppZiAoZGVjb2RlVVJJKCIlMmYiKSAhPT0gIiUyZiIpIHsKICAkRVJST1IoJyMyOiBkZWNvZGVVUkkoIiUyZiIpIGVxdWFsICIlMmYiLCBub3QgIi8iIG9yICIlMkYiJyk7Cn0KCi8vQ0hFQ0sjMwppZiAoZGVjb2RlVVJJKCIlM2YiKSAhPT0gIiUzZiIpIHsKICAkRVJST1IoJyMzOiBkZWNvZGVVUkkoIiUzZiIpIGVxdWFsICIlM2YiLCBub3QgIj8iIG9yICIlM0YiJyk7Cn0KCi8vQ0hFQ0sjNAppZiAoZGVjb2RlVVJJKCIlM2EiKSAhPT0gIiUzYSIpIHsKICAkRVJST1IoJyM0OiBkZWNvZGVVUkkoIiUzYSIpIGVxdWFsICIlM2EiLCBub3QgIjoiIG9yICIlM0EiJyk7Cn0KCi8vQ0hFQ0sjNQppZiAoZGVjb2RlVVJJKCIlNDAiKSAhPT0gIiU0MCIpIHsKICAkRVJST1IoJyM1OiBkZWNvZGVVUkkoIiU0MCIpIGVxdWFsICIlNDAiLCBub3QgIkAiJyk7Cn0KCi8vQ0hFQ0sjNgppZiAoZGVjb2RlVVJJKCIlMjYiKSAhPT0gIiUyNiIpIHsKICAkRVJST1IoJyM2OiBkZWNvZGVVUkkoIiUyNiIpIGVxdWFsICIlMjYiLCBub3QgIiYiJyk7Cn0KCi8vQ0hFQ0sjNwppZiAoZGVjb2RlVVJJKCIlM2QiKSAhPT0gIiUzZCIpIHsKICAkRVJST1IoJyM3LjE6IGRlY29kZVVSSSgiJTNkIikgZXF1YWwgIiUzZCIsIG5vdCAiPSIgb3IgIiUzRCInKTsKfQoKLy9DSEVDSyM4CmlmIChkZWNvZGVVUkkoIiUyYiIpICE9PSAiJTJiIikgewogICRFUlJPUignIzguMTogZGVjb2RlVVJJKCIlMmIiKSBlcXVhbCAiJTJiIiwgbm90ICIrIiBvciAiJTJCIicpOwp9CgovL0NIRUNLIzkKaWYgKGRlY29kZVVSSSgiJTI0IikgIT09ICIlMjQiKSB7CiAgJEVSUk9SKCcjOTogZGVjb2RlVVJJKCIlMjQiKSBlcXVhbCAiJTI0Iiwgbm90ICIkIicpOwp9CgovL0NIRUNLIzEwCmlmIChkZWNvZGVVUkkoIiUyYyIpICE9PSAiJTJjIikgewogICRFUlJPUignIzEwOiBkZWNvZGVVUkkoIiUyYyIpIGVxdWFsICIlMmMiLCBub3QgIiwiIG9yICIlMkMiJyk7Cn0KCi8vQ0hFQ0sjMTEKaWYgKGRlY29kZVVSSSgiJTIzIikgIT09ICIlMjMiKSB7CiAgJEVSUk9SKCcjMTE6IGRlY29kZVVSSSgiJTIzIikgZXF1YWwgIiUyMyIsIG5vdCAiIyInKTsKfQoK","commentary":"Let reservedURISet be a string containing one instance of each character valid\nin uriReserved plus \"#\"","description":"Checking all character in reservedURISet. HexDigit in [0..9, a..f]","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBMZXQgcmVzZXJ2ZWRVUklTZXQgYmUgYSBzdHJpbmcgY29udGFpbmluZyBvbmUgaW5zdGFuY2Ugb2YgZWFjaCBjaGFyYWN0ZXIgdmFsaWQKICogaW4gdXJpUmVzZXJ2ZWQgcGx1cyAiIyIKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTNfVDMuanMKICogQGRlc2NyaXB0aW9uIENvbXBsZXggdGVzdAogKi8KCi8vQ0hFQ0sjMQppZiAoZGVjb2RlVVJJKCIlM0IlMkYlM0YlM0ElNDAlMjYlM0QlMkIlMjQlMkMlMjMiKSAhPT0gIiUzQiUyRiUzRiUzQSU0MCUyNiUzRCUyQiUyNCUyQyUyMyIpIHsKICAkRVJST1IoJyMxOiBkZWNvZGVVUkkoIiUzQiUyRiUzRiUzQSU0MCUyNiUzRCUyQiUyNCUyQyUyMyIpIGVxdWFsICIlM0IlMkYlM0YlM0ElNDAlMjYlM0QlMkIlMjQlMkMlMjMiLCBub3QgIjsvPzpAJj0rJCwjIicpOwp9CgovL0NIRUNLIzIKaWYgKGRlY29kZVVSSSgiJTNiJTJmJTNmJTNhJTQwJTI2JTNkJTJiJTI0JTJjJTIzIikgIT09ICIlM2IlMmYlM2YlM2ElNDAlMjYlM2QlMmIlMjQlMmMlMjMiKSB7CiAgJEVSUk9SKCcjMjogZGVjb2RlVVJJKCIlM2IlMmYlM2YlM2ElNDAlMjYlM2QlMmIlMjQlMmMlMjMiKSBlcXVhbCAiJTNiJTJmJTNmJTNhJTQwJTI2JTNkJTJiJTI0JTJjJTIzIiwgbm90ICI7Lz86QCY9KyQsIyIgb3IgIiUzQiUyRiUzRiUzQSU0MCUyNiUzRCUyQiUyNCUyQyUyMyInKTsKfQoK","commentary":"Let reservedURISet be a string containing one instance of each character valid\nin uriReserved plus \"#\"","description":"Complex test","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBVUkkgdGVzdHMKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTRfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIEVOR0xJU0ggQUxQSEFCRVQKICovCgovL0NIRUNLIzEKaWYgKGRlY29kZVVSSSgiaHR0cDovL3VuaXByby5ydS8wMTIzNDU2Nzg5IikgIT09ICJodHRwOi8vdW5pcHJvLnJ1LzAxMjM0NTY3ODkiKSB7CiAgJEVSUk9SKCcjMTogaHR0cDovL3VuaXByby5ydS8wMTIzNDU2Nzg5Jyk7Cn0KCi8vQ0hFQ0sjMgppZiAoZGVjb2RlVVJJKCIlNDElNDIlNDMlNDQlNDUlNDYlNDclNDglNDklNEElNEIlNEMlNEQlNEUlNEYlNTAlNTElNTIlNTMlNTQlNTUlNTYlNTclNTglNTklNUEiKSAhPT0gIkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaIikgewogICRFUlJPUignIzI6IEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaJyk7Cn0KCi8vQ0hFQ0sjMwppZiAoZGVjb2RlVVJJKCIlNjElNjIlNjMlNjQlNjUlNjYlNjclNjglNjklNkElNkIlNkMlNkQlNkUlNkYlNzAlNzElNzIlNzMlNzQlNzUlNzYlNzclNzglNzklN0EiKSAhPT0gImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IikgewogICRFUlJPUignIzM6IGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6Jyk7Cn0KCg==","commentary":"URI tests","description":"Checking ENGLISH ALPHABET","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBVUkkgdGVzdHMKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTRfVDIuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIFJVU1NJQU4gQUxQSEFCRVQKICovCgovL0NIRUNLIzEKaWYgKGRlY29kZVVSSSgiaHR0cDovL3J1Lndpa2lwZWRpYS5vcmcvd2lraS8lZDAlYWUlRDAlYmQlRDAlQjglRDAlQkElRDAlQkUlRDAlQjQiKSAhPT0gImh0dHA6Ly9ydS53aWtpcGVkaWEub3JnL3dpa2kv0K7QvdC40LrQvtC0IikgewogICRFUlJPUignIzE6IGh0dHA6Ly9ydS53aWtpcGVkaWEub3JnL3dpa2kv0K7QvdC40LrQvtC0Jyk7Cn0KCi8vQ0hFQ0sjMgppZiAoZGVjb2RlVVJJKCJodHRwOi8vcnUud2lraXBlZGlhLm9yZy93aWtpLyVEMCVBRSVEMCVCRCVEMCVCOCVEMCVCQSVEMCVCRSVEMCVCNCMlRDAlQTElRDElODElRDElOEIlRDAlQkIlRDAlQkElRDAlQjgiKSAhPT0gImh0dHA6Ly9ydS53aWtpcGVkaWEub3JnL3dpa2kv0K7QvdC40LrQvtC0I9Ch0YHRi9C70LrQuCIpIHsKICAkRVJST1IoJyMyOiBodHRwOi8vcnUud2lraXBlZGlhLm9yZy93aWtpL9Cu0L3QuNC60L7QtCPQodGB0YvQu9C60LgnKTsKfQoKLy9DSEVDSyMzCmlmIChkZWNvZGVVUkkoImh0dHA6Ly9ydS53aWtpcGVkaWEub3JnL3dpa2kvJUQwJUFFJUQwJUJEJUQwJUI4JUQwJUJBJUQwJUJFJUQwJUI0JTIzJUQwJTkyJUQwJUI1JUQxJTgwJUQxJTgxJUQwJUI4JUQwJUI4JTIwJUQwJUFFJUQwJUJEJUQwJUI4JUQwJUJBJUQwJUJFJUQwJUI0JUQwJUIwIikgIT09ICJodHRwOi8vcnUud2lraXBlZGlhLm9yZy93aWtpL9Cu0L3QuNC60L7QtCUyM9CS0LXRgNGB0LjQuCDQrtC90LjQutC+0LTQsCIpIHsKICAkRVJST1IoJyMzOiBodHRwOi8vcnUud2lraXBlZGlhLm9yZy93aWtpL9Cu0L3QuNC60L7QtCUyM9CS0LXRgNGB0LjQuCDQrtC90LjQutC+0LTQsCcpOwp9Cgo=","commentary":"URI tests","description":"Checking RUSSIAN ALPHABET","path":"TestCases/ch15/15.1/15.1.3/15.1.3.1/S15.1.3.1_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBVUkkgdGVzdHMKICoKICogQHBhdGggY2gxNS8xNS4xLzE1LjEuMy8xNS4xLjMuMS9TMTUuMS4zLjFfQTRfVDMuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIFVSTCB3aXRoIExpbmUgVGVybWluYXRvcgogKi8KCi8vQ0hFQ0sjMQppZiAoZGVjb2RlVVJJKCJodHRwOi8vdW5pcHJvLnJ1LyUwQWFib3V0IikgIT09ICJodHRwOi8vdW5pcHJvLnJ1L1xuYWJvdXQiKSB7CiAgJEVSUk9SKCcjMTogaHR0cDovL3VuaXByby5ydS8lQTBhYm91dCcpOwp9CgovL0NIRUNLIzIKaWYgKGRlY29kZVVSSSgiaHR0cDovL3VuaXByby5ydS8lMEJhYm91dCIpICE9PSAiaHR0cDovL3VuaXByby5ydS9cdmFib3V0IikgewogICRFUlJPUignIzI6IGh0dHA6Ly91bmlwcm8ucnUvJTBCYWJvdXQnKTsKfQoKLy9DSEVDSyMzCmlmIChkZWNvZGVVUkkoImh0dHA6Ly91bmlwcm8ucnUvJTBDYWJvdXQiKSAhPT0gImh0dHA6Ly91bmlwcm8ucnUvXGZhYm91dCIpIHsKICAkRVJST1IoJyMzOiBodHRwOi8vdW5pcHJvLnJ1LyUwQ2Fib3V0Jyk7Cn0KCi8vQ0hFQ0sjNAppZiAoZGVjb2RlVVJJKCJodH