aboutsummaryrefslogtreecommitdiffstats
path: root/website/json/ch10.json
blob: e7702a755205e8aa0851ebffb08591b24a4afbc4 (plain)
1
{"testsCollection":{"name":"Chapter - ch10","numTests":"88","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBEZWZpbmluZyBmdW5jdGlvbiBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24KICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gMTsKfQppZih0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIicpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbgogKi8KCi8vQ0hFQ0sjMQp2YXIgeD1mdW5jdGlvbiBmMSgpe3JldHVybiAxO30oKTsKaWYoeCE9PTEpCiAgJEVSUk9SKCcjMTogQ3JlYXRlIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwoKLy9DSEVDSyMyCnZhciB5PWZ1bmN0aW9uICAoKXtyZXR1cm4gMjt9KCk7CmlmKHkhPT0yKXsKICAkRVJST1IoJyMyOiBDcmVhdGUgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwp9CgovL0NIRUNLIzIKdmFyIHogPSAoZnVuY3Rpb24oKXtyZXR1cm4gMzt9KSgpOwppZih6IT09Myl7CiAgJEVSUk9SKCcjMzogQ3JlYXRlIGFuIGFub255bW91cyBmdW5jdGlvbiBkeW5hbWljYWxseSBlaXRoZXIgYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gd3JhcHBlZCBpbiBhIGdyb3VwIG9wZXJhdG9yJyk7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyB0aGUgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0IGFzIGEgY29uc3RydWN0b3IKICovCgovL0NIRUNLIzEKdmFyIHg9bmV3IGZ1bmN0aW9uIGYxKCl7cmV0dXJuIDE7fTsKaWYodHlwZW9mKHguY29uc3RydWN0b3IpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoeC5jb25zdHJ1Y3RvcikhPT0iZnVuY3Rpb24iJyk7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIEZ1bmN0aW9uIG9iamVjdHMuIEludGVybmFsIGZ1bmN0aW9ucwogKiBhcmUgYnVpbHQtaW4gb2JqZWN0cyBvZiB0aGUgbGFuZ3VhZ2UsIHN1Y2ggYXMgcGFyc2VJbnQgYW5kIE1hdGguZXhwCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlcyBvZiBwYXJzZUludCBhbmQgTWF0aC5leHAKICovCgovL0NIRUNLIzEKaWYodHlwZW9mKE1hdGguZXhwKSE9PSJmdW5jdGlvbiIpCiAgJEVSUk9SKCcjMTogdHlwZW9mKE1hdGguZXhwKDEwKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKE1hdGguZXhwKCkpKTsKCi8vQ0hFQ0sjMgppZih0eXBlb2YocGFyc2VJbnQpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMyOiB0eXBlb2YocGFyc2VJbnQoKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKHBhcnNlSW50KCkpKTsKICAKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBmdW5jdGlvbiBwYXJhbWV0ZXIgaXMgcG9zc2libGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKGEpewogIGRlbGV0ZSBhOwogIHJldHVybiBhOwp9CmlmIChmMSgxKSAhPT0gMSkKICAkRVJST1IoJyMxOiBGdW5jdGlvbiBwYXJhbWV0ZXIgd2FzIGRlbGV0ZWQnKTsKCgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW50aW9uIHdoaWNoIHJldHVybnMgcHJvcGVydHkgImFyZ3VtZW50cyIKICovCgp2YXIgQVJHX1NUUklORyA9ICJ2YWx1ZSBvZiB0aGUgYXJndW1lbnQgcHJvcGVydHkiOwoKZnVuY3Rpb24gZjEoKSB7CiAgdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuYXJndW1lbnRzID0gQVJHX1NUUklORzsKICByZXR1cm4gYXJndW1lbnRzOwp9CiAgCi8vQ0hFQ0sjMQppZiAoKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGggIT09IDUpCiAgJEVSUk9SKCcjMTogKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGg9PT01LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMiAgCmlmICgobmV3IGYxKDEsMiwzLDQsNSkpWzNdICE9PSA0KQogICRFUlJPUignIzI6IChuZXcgZjEoMSwyLDMsNCw1KSlbM109PT00LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMwp2YXIgeCA9IG5ldyBmMSgxLDIsMyw0LDUpOyAKaWYgKGRlbGV0ZSB4WzNdICE9PSB0cnVlKQogICRFUlJPUignIzMuMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0nKTsKICAKaWYgKHhbM10gPT09IDQpCiAgJEVSUk9SKCcjMy4yOiBGdW5jdGlvbiBwYXJhbWV0ZXJzIGhhdmUgYXR0cmlidXRlIHtEb250RGVsZXRlfScpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW5jdGlvbiB3aGljaCByZXR1cm5zICJ0aGlzIgogKiBAbm9TdHJpY3QKICovCgpmdW5jdGlvbiBmMSgpIHsKICBpZiAoZGVsZXRlIGFyZ3VtZW50cykgewogICAgJEVSUk9SKCIjMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0iICsgYXJndW1lbnRzKTsKICB9CiAgcmV0dXJuIGFyZ3VtZW50czsKfQoKZjEoKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBJZiB0aGUgY2FsbGVyIHN1cHBsaWVzIGZld2VyIHBhcmFtZXRlciB2YWx1ZXMgdGhhbiB0aGVyZSBhcmUKICogZm9ybWFsIHBhcmFtZXRlcnMsIHRoZSBleHRyYSBmb3JtYWwgcGFyYW1ldGVycyBoYXZlIHZhbHVlIHVuZGVmaW5lZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTEuanMKICogQGRlc2NyaXB0aW9uIENhbGxpbmcgZnVuY3Rpb24gZXhjbHVkaW5nIGEgZmV3IHBhcmFtZXRlcnMKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoYSwgYil7CiAgcmV0dXJuIChiID09PSB1bmRlZmluZWQpOwp9CmlmKCEoZjEoMSwgMikgPT09IGZhbHNlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSwgMikgPT09IGZhbHNlJyk7Cn0gZWxzZSBpZighKGYxKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSkgPT09IHRydWUnKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKGEsIGIsIGMpewogIHJldHVybiAoYiA9PT0gdW5kZWZpbmVkKSAmJiAoYyA9PT0gdW5kZWZpbmVkKTsKfQppZighKGYyKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMjogZjIoMSwgMikgPT09IHRydWUnKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBJZiB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycyBzaGFyZSB0aGUgc2FtZSBuYW1lLCBoZW5jZQogKiB0aGUgc2FtZSBwcm9wZXJ0eSwgdGhlIGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaXMgZ2l2ZW4gdGhlIHZhbHVlIHRoYXQgd2FzCiAqIHN1cHBsaWVkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXIgd2l0aCB0aGlzIG5hbWUKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgaW5pdGlhbGl6ZWQgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywgd2hpY2ggaGF2ZSB0aGUgc2FtZSBuYW1lCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSh4LCB4KSB7CiAgcmV0dXJuIHg7Cn0KaWYoIShmMSgxLCAyKSA9PT0gMikpIHsKICAkRVJST1IoIiMxOiBmMSgxLCAyKSA9PT0gMiIpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoeCwgeCwgeCl7CiAgcmV0dXJuIHgqeCp4Owp9CmlmKCEoZjIoMSwgMiwgMykgPT09IDI3KSl7CiAgJEVSUk9SKCJmMigxLCAyLCAzKSA9PT0gMjciKTsKfQoKLy9DSEVDSyMzCmZ1bmN0aW9uIGYzKHgsIHgpIHsKICByZXR1cm4gJ2EnICsgeDsKfQppZighKGYzKDEsIDIpID09PSAnYTInKSl7CiAgJEVSUk9SKCIjMzogZjMoMSwgMikgPT09ICdhMiciKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBJZiB0aGUgdmFsdWUgb2YgdGhpcyBsYXN0IHBhcmFtZXRlciAod2hpY2ggaGFzIHRoZSBzYW1lCiAqIG5hbWUgYXMgc29tZSBwcmV2aW91cyBwYXJhbWV0ZXJzIGRvKSB3YXMgbm90IHN1cHBsaWVkIGJ5IHRoZQogKiBjYWxsZXIsIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywKICogdGhhdCBoYXZlIHRoZSBzYW1lIG5hbWUuIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBleGNsdWRpbmcgYSBmZXcgbGFzdCBwYXJhbWV0ZXJzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgsIGEsIGIsIHgpewogIHJldHVybiB4Owp9CmlmKCEoZjEoMSwgMikgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUignIzE6IGYxKDEsIDIpID09PSB1bmRlZmluZWQnKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIHBhc3NlZCBwYXJhbWV0ZXIKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHJldHVybiB4OwoKICBmdW5jdGlvbiB4KCl7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYoIShmMSgpLmNvbnN0cnVjdG9yLnByb3RvdHlwZSA9PT0gRnVuY3Rpb24ucHJvdG90eXBlKSl7CiAgJEVSUk9SKCcjMTogZjEoKSByZXR1cm5zIGZ1bmN0aW9uJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICByZXR1cm4gdHlwZW9mIHg7CgogIGZ1bmN0aW9uIHgoKXsKICAgIHJldHVybiA3OwogIH0KfQppZighKGYyKCkgPT09ICJmdW5jdGlvbiIpKXsKICAkRVJST1IoJyMyOiBmMigpID09PSAiZnVuY3Rpb24iJyk7Cn0KCi8vQ0hFQ0sjMwpmdW5jdGlvbiBmMygpIHsKICByZXR1cm4gdHlwZW9mIGFyZ3VtZW50czsKICBmdW5jdGlvbiBhcmd1bWVudHMoKSB7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYgKCEoZjMoKSA9PT0gImZ1bmN0aW9uIikpewogICRFUlJPUignIzM6IGYzKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIGRlY2xhcmVkIHZhcmlhYmxlCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjEoKS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgPT09IEZ1bmN0aW9uLnByb3RvdHlwZSkpewogICRQUklOVCgnIzE6IGYxKCkgcmV0dXJucyBmdW5jdGlvbicpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoKXsKICB2YXIgeDsKICAKICByZXR1cm4gdHlwZW9mIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjIoKSA9PT0gImZ1bmN0aW9uIikpewogICRQUklOVCgnIzI6IGYyKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB2YXJpYWJsZSBleGlzdGVuY2Ugb25seQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgpID09PSAidW5kZWZpbmVkIikpewogICRQUklOVCgnIzE6IGYxKCkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMigpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKCkgPT09IHVuZGVmaW5lZCkpewogICRQUklOVCgnIzE6IGYyKCkgPT09IHVuZGVmaW5lZCcpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgdGhlIHZhcmlhYmxlIG9iamVjdCBwcm9wZXJ0eSB3aXRoIGZvcm1hbCBwYXJhbWV0ZXIKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoeCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHR5cGVvZiB4Owp9CgppZighKGYxKCkgPT09ICJ1bmRlZmluZWQiKSl7CiAgJFBSSU5UKCcjMTogZjEoMSkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICB2YXIgeDsKICAKICByZXR1cm4geDsKfQoKaWYoIShmMigpID09PSB1bmRlZmluZWQpKXsKICAkUFJJTlQoJyMxOiBmMigxKSA9PT0gdW5kZWZpbmVkJyk7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb2YgdGhlIHZhcmlhYmxlIG9iamVjdCB3aXRoIHRoZQogKiBuYW1lIG9mIGEgZGVjbGFyZWQgdmFyaWFibGUsIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYW5kIGl0cyBhdHRyaWJ1dGVzCiAqIGFyZSBub3QgY2hhbmdlZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTUuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZXhpc3RlbmNlIG9mIHRoZSB2YXJpYWJsZSBvYmplY3QgcHJvcGVydHkgd2l0aCBmb3JtYWwgcGFyYW1ldGVyCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgxKSA9PT0gIm51bWJlciIpKXsKICAkUFJJTlQoJyMxOiBmMSgxKSA9PT0gIm51bWJlciInKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKHgpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKDEpID09PSAxKSl7CiAgJFBSSU5UKCcjMTogZjIoMSkgPT09IDEnKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHggPSAxOwogIGZ1bmN0aW9uIGYyKCl7CiAgICByZXR1cm4geDsKICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09IDEpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gMCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7CiAgCiAgdmFyIHggPSAxOwp9CgppZighKGYxKCkgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9CgoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAxKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB2YXIgeCA9IDE7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHdpdGgobXlPYmopewogICAgICByZXR1cm4geDsKICAgIH0KICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09ICJvYmoiKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gIm9iaiIpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7CgogIHZhciB4ID0gMTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB3aXRoKG15T2JqKXsKICAgIHJldHVybiB4OwogIH0KfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQppZiAoIE5hTiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyCmlmICggSW5maW5pdHkgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjogSW5maW5pdHkgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMzCmlmICggdW5kZWZpbmVkID09PSBudWxsICkgewogICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjNAppZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzUKaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHsKICAkRVJST1IoIiM1OiBwYXJzZUludCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzYKaWYgKCBwYXJzZUZsb2F0ID09PSBudWxsICkgewogICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM3CmlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyM4CmlmICggaXNGaW5pdGUgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjODogaXNGaW5pdGUgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM5CmlmICggZGVjb2RlVVJJID09PSBudWxsICkgewogICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzEwCmlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxMQppZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxMTogZW5jb2RlVVJJID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTIKaWYgKCBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMTMKaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE0CmlmICggRnVuY3Rpb24gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTQ6IEZ1bmN0aW9uID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTUKaWYgKCBTdHJpbmcgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE2CmlmICggTnVtYmVyID09PSBudWxsICkgewogICRFUlJPUigiIzE2OiBOdW1iZXIgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxNwppZiAoIEFycmF5ID09PSBudWxsICkgewogICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggRGF0ZSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxODogRGF0ZSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE5CmlmICggUmVnRXhwID09PSBudWxsICkgewogICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMAppZiAoIEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzIxCmlmICggRXZhbEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIxOiBFdmFsRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMgppZiAoIFJhbmdlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMwppZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI0CmlmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjQ6IFN5bnRheEVycm9yID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMjUKaWYgKCBUeXBlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI2CmlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7Cn0KCgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMjcKaWYgKCBNYXRoID09PSBudWxsICkgewogICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBpZiAoIE5hTiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE6IE5hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyCiAgaWYgKCBJbmZpbml0eSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI6IEluZmluaXR5ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzMKICBpZiAoIHVuZGVmaW5lZCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzQKICBpZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM0OiBldmFsID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzUKICBpZiAoIHBhcnNlSW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjNTogcGFyc2VJbnQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNgogIGlmICggcGFyc2VGbG9hdCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNwogIGlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM3OiBpc05hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyM4CiAgaWYgKCBpc0Zpbml0ZSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzg6IGlzRmluaXRlID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzkKICBpZiAoIGRlY29kZVVSSSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMAogIGlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTA6IGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMQogIGlmICggZW5jb2RlVVJJID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTE6IGVuY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMgogIGlmICggZW5jb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEzCiAgaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMxMzogT2JqZWN0ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE0CiAgaWYgKCBGdW5jdGlvbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE0OiBGdW5jdGlvbiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNQogIGlmICggU3RyaW5nID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNgogIGlmICggTnVtYmVyID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTY6IEZ1bmN0aW9uID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE3CiAgaWYgKCBBcnJheSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxOAogIGlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzIwOiBCb29sZWFuID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE4CiAgaWYgKCBEYXRlID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTg6IERhdGUgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMTkKICBpZiAoIFJlZ0V4cCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjAKICBpZiAoIEVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjA6IEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIxCiAgaWYgKCBFdmFsRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyMTogRXZhbEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIyCiAgaWYgKCBSYW5nZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjMKICBpZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjM6IFJlZmVyZW5jZUVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzI0CiAgaWYgKCBTeW50YXhFcnJvciA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI0OiBTeW50YXhFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNQogIGlmICggVHlwZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNgogIGlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyNjogVVJJRXJyb3IgPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzI3CiAgaWYgKCBNYXRoID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjc6IE1hdGggPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIFZhbHVlIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxXG4nKwonaWYgKCBOYU4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMlxuJysKJ2lmICggSW5maW5pdHkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyOiBJbmZpbml0eSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMzXG4nKwonaWYgKCB1bmRlZmluZWQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMzOiB1bmRlZmluZWQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIEZ1bmN0aW9uIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyM0XG4nKwonaWYgKCBldmFsID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM1XG4nKwonaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzU6IHBhcnNlSW50ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzZcbicrCidpZiAoIHBhcnNlRmxvYXQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM2OiBwYXJzZUZsb2F0ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzdcbicrCidpZiAoIGlzTmFOID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjOFxuJysKJ2lmICggaXNGaW5pdGUgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM4OiBpc0Zpbml0ZSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM5XG4nKwonaWYgKCBkZWNvZGVVUkkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM5OiBkZWNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTBcbicrCidpZiAoIGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTFcbicrCidpZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzExOiBlbmNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTJcbicrCidpZiAoIGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEyOiBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIENvbnN0cnVjdG9yIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxM1xuJysKJ2lmICggT2JqZWN0ID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxNFxuJysKJ2lmICggRnVuY3Rpb24gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNDogRnVuY3Rpb24gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTVcbicrCidpZiAoIFN0cmluZyA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE1OiBTdHJpbmcgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTZcbicrCidpZiAoIE51bWJlciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE2OiBGdW5jdGlvbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxN1xuJysKJ2lmICggQXJyYXkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNzogQXJyYXkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMThcbicrCidpZiAoIEJvb2xlYW4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxOFxuJysKJ2lmICggRGF0ZSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE4OiBEYXRlID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzE5XG4nKwonaWYgKCBSZWdFeHAgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOTogUmVnRXhwID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIwXG4nKwonaWYgKCBFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMVxuJysKJ2lmICggRXZhbEVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjE6IEV2YWxFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMlxuJysKJ2lmICggUmFuZ2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIyOiBSYW5nZUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIzXG4nKwonaWYgKCBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyNFxuJysKJ2lmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyNDogU3ludGF4RXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjVcbicrCidpZiAoIFR5cGVFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI1OiBUeXBlRXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjZcbicrCidpZiAoIFVSSUVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIE90aGVyIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMyN1xuJysKJ2lmICggTWF0aCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdOYU4nICkgewogICAgJEVSUk9SKCIjMTogJ05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgJEVSUk9SKCIjMTogJ0luZmluaXR5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICd1bmRlZmluZWQnICkgewogICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdldmFsJyApIHsKICAgICRFUlJPUigiIzE6ICdldmFsJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAkRVJST1IoIiMxOiAncGFyc2VJbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ3BhcnNlRmxvYXQnICkgewogICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2lzTmFOJyApIHsKICAgICRFUlJPUigiIzE6ICdpc05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgJEVSUk9SKCIjMTogJ2lzRmluaXRlJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUkknICkgewogICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICRFUlJPUigiIzE6ICdkZWNvZGVVUklDb21wb25lbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAkRVJST1IoIiMxOiAnZW5jb2RlVVJJJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdlbmNvZGVVUklDb21wb25lbnQnICkgewogICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdPYmplY3QnICkgewogICAgJEVSUk9SKCIjMTogJ3Byb3BlcnR5ICdPYmplY3QnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgJEVSUk9SKCIjMTogJ0Z1bmN0aW9uJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdTdHJpbmcnICkgewogICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnTnVtYmVyJyApIHsKICAgICRFUlJPUigiIzE6ICdOdW1iZXInIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICRFUlJPUigiIzE6ICdBcnJheScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnQm9vbGVhbicgKSB7CiAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRGF0ZScgKSB7CiAgICAkRVJST1IoIiMxOiAnRGF0ZScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWdFeHAnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Vycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRXZhbEVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFdmFsRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1JhbmdlRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JlZmVyZW5jZUVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnU3ludGF4RXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1N5bnRheEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1R5cGVFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnVVJJRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdNYXRoJyApIHsKICAgICRFUlJPUigiIzE6ICdNYXRoJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ05hTicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgICAkRVJST1IoIiMxOiAnSW5maW5pdHknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAndW5kZWZpbmVkJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ2V2YWwnICkgewogICAgICAkRVJST1IoIiMxOiAnZXZhbCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwYXJzZUludCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUZsb2F0JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNOYU4nICkgewogICAgICAkRVJST1IoIiMxOiAnaXNOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgICAkRVJST1IoIiMxOiAnaXNGaW5pdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUklDb21wb25lbnQnICkgewogICAgICAkRVJST1IoIiMxOiAnZGVjb2RlVVJJQ29tcG9uZW50JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAgICRFUlJPUigiIzE6ICdlbmNvZGVVUkknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZW5jb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ09iamVjdCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwcm9wZXJ0eSAnT2JqZWN0JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgICAkRVJST1IoIiMxOiAnRnVuY3Rpb24nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnU3RyaW5nJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdOdW1iZXInICkgewogICAgICAkRVJST1IoIiMxOiAnTnVtYmVyJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0FycmF5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Jvb2xlYW4nICkgewogICAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdEYXRlJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0RhdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1JlZ0V4cCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFdmFsRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnRXZhbEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnUmFuZ2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdSZWZlcmVuY2VFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdTeW50YXhFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdTeW50YXhFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnVHlwZUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1VSSUVycm9yJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSAKICB9Cn0KCnRlc3QoKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ01hdGgnICkgewogICAgICAkRVJST1IoIiMxOiAnTWF0aCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0KICB9Cn0KCnRlc3QoKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdOYU5cJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdJbmZpbml0eVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0luZmluaXR5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwndW5kZWZpbmVkXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwndW5kZWZpbmVkXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdldmFsXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZXZhbFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ3BhcnNlSW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VJbnRcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdwYXJzZUZsb2F0XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VGbG9hdFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ2lzTmFOXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnaXNOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdpc0Zpbml0ZVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ2lzRmluaXRlXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdPYmplY3RcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdPYmplY3RcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdGdW5jdGlvblwnKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRnVuY3Rpb25cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTdHJpbmdcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdTdHJpbmdcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdOdW1iZXJcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOdW1iZXJcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdBcnJheVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0FycmF5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnQm9vbGVhblwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0Jvb2xlYW5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdEYXRlXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRGF0ZVwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZ0V4cFwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1JlZ0V4cFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ0Vycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdFdmFsRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdFdmFsRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdSYW5nZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmFuZ2VFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZmVyZW5jZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmVmZXJlbmNlRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTeW50YXhFcnJvclwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1N5bnRheEVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVHlwZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnVHlwZUVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVVJJRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdVUklFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdNYXRoXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnTWF0aFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRBMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSZWN1cnNpdmUgZnVuY3Rpb24gY2FsbAogKi8KCnZhciB5OwoKZnVuY3Rpb24gZihhKXsKICB2YXIgeDsKICAKICBpZiAoYSA9PT0gMSkgCiAgICByZXR1cm4geDsKICBlbHNlIHsKICAgIGlmKHggPT09IHVuZGVmaW5lZCkgewogICAgICB4ID0gMDsKICAgIH0gZWxzZSB7CiAgICAgIHggPSAxOwogICAgfQogICAgcmV0dXJuIGYoMSk7CiAgfQp9Cgp5ID0gZigwKTsKCmlmKCEoeSA9PT0gdW5kZWZpbmVkKSl7CiAgJEVSUk9SKCIjMTogUmVjdXJzaXZlIGZ1bmN0aW9uIGNhbGxzIHNoYXJlcyBleGVjdXRpb24gY29udGV4dCIpOwp9Cgo=","commentary":"Every function call enters a new execution context","description":"Recursive function call","path":"TestCases/ch10/10.4/S10.4A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gU2VxdWVuY2Ugb2YgZnVuY3Rpb24gY2FsbHMKICovCgp2YXIgeTsKCmZ1bmN0aW9uIGYoKXsKICB2YXIgeDsKICAKICBpZih4ID09PSB1bmRlZmluZWQpIHsKICAgIHggPSAwOwogIH0gZWxzZSB7CiAgICB4ID0gMTsKICB9CiAgCiAgcmV0dXJuIHg7Cn0KCnkgPSBmKCk7CnkgPSBmKCk7CgppZighKHkgPT09IDApKXsKICAkRVJST1IoIiMxOiBTZXF1ZW5jZWQgZnVuY3Rpb24gY2FsbHMgc2hhcmVzIGV4ZWN1dGlvbiBjb250ZXh0Iik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHZhciB4ID0gMSwgZmFpbHMKICogQG5vU3RyaWN0CiAqLwoKdmFyIHggPSAxOwoKaWYgKHRoaXMueCAhPT0gMSkgewogICRFUlJPUigiIzE6IHZhcmlhYmxlIHggaXMgYSBwcm9wZXJ0eSBvZiBnbG9iYWwgb2JqZWN0Iik7Cn0KCmlmKGRlbGV0ZSB0aGlzLnggIT09IGZhbHNlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHggPSAxLCBmYWlscwogKiBAbm9TdHJpY3QKICovCgp4ID0gMTsKCmlmICh0aGlzLnggIT09IDEpIHsKICAkRVJST1IoIiMxOiB2YXJpYWJsZSB4IGlzIGEgcHJvcGVydHkgb2YgZ2xvYmFsIG9iamVjdCIpOwp9CgppZihkZWxldGUgdGhpcy54ICE9PSB0cnVlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKdmFyIHggPSAxOwp2YXIgeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB4ID0gMTsKdmFyIHkgPSAyOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp5ID0gMjsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp2YXIgeCA9IDE7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKdmFyIHkgPSAyOwoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnRoaXMueSA9IDI7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp2YXIgeSA9IDI7Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB5ID0gMjsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnggPSAxOwp5ID0gMjsKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOyAKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKZnVuY3Rpb24gZigpewogIHZhciBpOwogIHZhciBqOwogIHN0cjEgPSAnJzsKICBzdHIyID0gJyc7CiAgdmFyIHggPSAxOwogIHZhciB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqIEBub1N0cmljdAogKi8KCmZ1bmN0aW9uIGYoKXsKICB2YXIgaTsKICB2YXIgajsKICBzdHIxID0gJyc7CiAgc3RyMiA9ICcnOwoKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQoKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CgogIHRoaXMueCA9IDE7CiAgdGhpcy55ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICB2YXIgeCA9IDE7CiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIHRoaXMueSA9IDI7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7IAp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCgogIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB2YXIgeCA9IDE7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CiAgCiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHRoaXMueSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB2YXIgeSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoKCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHZhciB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB4ID0gMTsKICB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","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":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgovLyBUaGlzIGNvZGUgaXMgZ292ZXJuZWQgYnkgdGhlIEJTRCBsaWNlbnNlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCgovKioKICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy9TMTAuNC4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBXaGVuIGNhbGxpbmcgYSBzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIGFzIGEKICogZnVuY3Rpb24sICJ0aGlzIiBzaG91bGQgYmUgYm91bmQgdG8gdW5kZWZpbmVkLgogKiBAb25seVN0cmljdAogKi8KCiJ1c2Ugc3RyaWN0IjsKdmFyIHRoYXQgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpOwppZiAodGhhdCAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogInRoaXMiIGxlYWtlZCBhczogJyArIHRoYXQpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBXaGVuIGNvbnRyb2wgZW50ZXJzIGFuIGV4ZWN1dGlvbiBjb250ZXh0IGZvciBmdW5jdGlvbiBjb2RlLAogKiBhbiBhcmd1bWVudHMgb2JqZWN0IGlzIGNyZWF0ZWQgYW5kIGluaXRpYWxpc2VkCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMS5qcwogKiBAZGVzY3JpcHRpb24gRXhlY3V0aW5nIGZ1bmN0aW9uIHdoaWNoIHVzZXMgYXJndW1lbnRzIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYxKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYyKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgdmFsdWUgb2YgdGhlIGludGVybmFsIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgdGhlCiAqIGNyZWF0ZWQgYXJndW1lbnRzIG9iamVjdCBpcyB0aGUgb3JpZ2luYWwgT2JqZWN0IHByb3RvdHlwZSBvYmplY3QsIHRoZSBvbmUKICogdGhhdCBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBPYmplY3QucHJvdG90eXBlCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZT09PU9iamVjdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTsKfQp0cnl7CiAgaWYoZjEoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMxOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTt9Owp0cnl7CiAgaWYoZjIoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMyOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzI6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJjYWxsZWUiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgY2FsbGVlIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAiY2FsbGVlIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMuY2FsbGVlIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiAoZGVsZXRlIGFyZ3VtZW50cy5jYWxsZWUpOwp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBjYWxsZWUgaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmNhbGxlZSk7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5jYWxsZWUgcHJvcGVydHkKICogQG5vU3RyaWN0CiAqLwoKdmFyIHN0ciA9ICJzb21ldGhpbmcgZGlmZmVyZW50IjsKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgYXJndW1lbnRzLmNhbGxlZSA9IHN0cjsKICByZXR1cm4gYXJndW1lbnRzOwp9Cgp0cnl7CiAgaWYoZjEoKS5jYWxsZWUgIT09IHN0cil7CiAgICAkRVJST1IoIiMxOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IFJlYWRPbmx5IH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgICBhcmd1bWVudHMuY2FsbGVlID0gc3RyOwogICAgcmV0dXJuIGFyZ3VtZW50czsKICB9CnRyeXsKICBpZihmMigpLmNhbGxlZSAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgY2FsbGVlIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBjYWxsZWUgaXMgdGhlCiAqIEZ1bmN0aW9uIG9iamVjdCBiZWluZyBleGVjdXRlZAogKgogKiBAcGF0aCBjaDEwLzEwLjYvUzEwLjZfQTQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHRoYXQgYXJndW1lbnRzLmNhbGxlZSA9PT0gZnVuY3Rpb24gb2JqZWN0CiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuY2FsbGVlOwp9Cgp0cnl7CiAgaWYoZjEgIT09IGYxKCkpewogICAgJEVSUk9SKCcjMTogYXJndW1lbnRzLmNhbGxlZSA9PT0gZjEnKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZTt9OwoKdHJ5ewogIGlmKGYyICE9PSBmMigpKXsKICAgICRFUlJPUignIzI6IGFyZ3VtZW50cy5jYWxsZWUgPT09IGYyJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBleGlzdHMiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJsZW5ndGgiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAibGVuZ3RoIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGxlbmd0aCBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYyKCkpewogICAgJEVSUk9SKCIjMjogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5sZW5ndGggcHJvcGVydHkKICovCgp2YXIgc3RyID0gInNvbWV0aGluZyBkaWZmZXJlbnQiOwovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICBhcmd1bWVudHMubGVuZ3RoID0gc3RyOwogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICBpZihmMSgpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICAgIGFyZ3VtZW50cy5sZW5ndGggPSBzdHI7CiAgICByZXR1cm4gYXJndW1lbnRzOwogIH07CnRyeXsKICBpZihmMigpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBsZW5ndGggaXMgdGhlIG51bWJlcgogKiBvZiBhY3R1YWwgcGFyYW1ldGVyIHZhbHVlcyBzdXBwbGllZCBieSB0aGUgY2FsbGVyCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNi5qcwogKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGZ1bmN0aW9uLCB0aGF0IHJldHVybmVkIGFyZ3VtZW50cy5sZW5ndGgKICovCgpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMubGVuZ3RoOwp9CgovL0NIRUNLIzEKaWYoIShmMSgpID09PSAwKSl7CiAgJEVSUk9SKCcjMTogYXJndW1lbnQubGVuZ3RoID09PSAwJyk7Cn0KCi8vQ0hFQ0sjMgppZighKGYxKDApID09PSAxKSl7CiAgJEVSUk9SKCcjMjogYXJndW1lbnQubGVuZ3RoID09PSAxJyk7Cn0KCi8vQ0hFQ0sjMwppZighKGYxKDAsIDEpID09PSAyKSl7CiAgJEVSUk9SKCcjMzogYXJndW1lbnQubGVuZ3RoID09PSAyJyk7Cn0KCi8vQ0hFQ0sjNAppZighKGYxKDAsIDEsIDIpID09PSAzKSl7CiAgJEVSUk9SKCcjNDogYXJndW1lbnQubGVuZ3RoID09PSAzJyk7Cn0KCi8vQ0hFQ0sjNQppZighKGYxKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjNTogYXJndW1lbnQubGVuZ3RoID09PSA0Jyk7Cn0KCnZhciBmMiA9IGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fTsKCi8vQ0hFQ0sjNgppZighKGYyKCkgPT09IDApKXsKICAkRVJST1IoJyM2OiBhcmd1bWVudC5sZW5ndGggPT09IDAnKTsKfQoKLy9DSEVDSyM3CmlmKCEoZjIoMCkgPT09IDEpKXsKICAkRVJST1IoJyM3OiBhcmd1bWVudC5sZW5ndGggPT09IDEnKTsKfQoKLy9DSEVDSyM4CmlmKCEoZjIoMCwgMSkgPT09IDIpKXsKICAkRVJST1IoJyM4OiBhcmd1bWVudC5sZW5ndGggPT09IDInKTsKfQoKLy9DSEVDSyM5CmlmKCEoZjIoMCwgMSwgMikgPT09IDMpKXsKICAkRVJST1IoJyM5OiBhcmd1bWVudC5sZW5ndGggPT09IDMnKTsKfQoKLy9DSEVDSyMxMAppZighKGYyKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjMTA6IGFyZ3VtZW50Lmxlbmd0aCA9PT0gNCcpOwp9Cgo=","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":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8vIFRoaXMgY29kZSBpcyBnb3Zlcm5lZCBieSB0aGUgQlNEIGxpY2Vuc2UgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KCi8qKgogKiBHZXQgYXJndW1lbnRzIG9mIGZ1bmN0aW9uCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNy5qcwogKiBAZGVzY3JpcHRpb24gVXNlIHByb3BlcnR5IGFyZ3VtZW50cwogKi8KCmZ1bmN0aW9uIGYxKCkgewogIHJldHVybiBhcmd1bWVudHM7Cn0KICAKLy9DSEVDSyMxLTUKZm9yKHZhciBpID0gMTsgaSA8IDU7IGkrKyl7ICAKaWYgKGYxKDEsMiwzLDQsNSlbaV0gIT09IChpKzEpKQogICRFUlJPUigiIyIraSsiOiBSZXR1cm5pbmcgZnVuY3Rpb24ncyBhcmd1bWVudHMgd29yayB3cm9uZywgZjEoMSwyLDMsNCw1KVsiK2krIl0gIT09ICIrKGkrMSkpOwp9Cgo=","commentary":"Get arguments of function","description":"Use property arguments","path":"TestCases/ch10/10.6/S10.6_A7.js"}]}}