diff --git a/console/harness/helper.js b/console/harness/helper.js
index d44f3c32928f1aa98855caadb24d0e22f148edf5..75a6b93ba2ec263e9bb286eaedc2756047352a3d 100644
--- a/console/harness/helper.js
+++ b/console/harness/helper.js
@@ -13,13 +13,13 @@ function Presenter() {
         table,
         backLink,
 
-        globalSection = new Section(null, "0", "ECMA-262"),
+        globalSection = new Section(null, "0", STANDARD),
         currentSection = globalSection,
         tests = {},
         totalTests = 0;
 
     var progressBar;
-    TOCFILEPATH = "metadata/ecma-262-toc.xml";
+    TOCFILEPATH = "metadata/" + STANDARD.toLowerCase() + "-toc.xml";
   //**INTERFACE****************************************************************
   /* Updates progress with the given test, which should have its results in it as well. */
     this.addTestResult = function(test) {
diff --git a/test/harness/helper.js b/test/harness/helper.js
index 1e97d4a90e84d5bb09425d9f1885d6fe76a17182..04c6cb6b72a3768918397bd2f6bae2db29177833 100644
--- a/test/harness/helper.js
+++ b/test/harness/helper.js
@@ -13,13 +13,13 @@ function Presenter() {
         table,
         backLink,
 
-        globalSection = new Section(null, "0", "ECMA-262"),
+        globalSection = new Section(null, "0", STANDARD),
         currentSection = globalSection,
         tests = {},
         totalTests = 0;
 
     var progressBar;
-    TOCFILEPATH = "metadata/ecma-262-toc.xml";
+    TOCFILEPATH = "metadata/" + STANDARD.toLowerCase() + "-toc.xml";
   //**INTERFACE****************************************************************
   /* Updates progress with the given test, which should have its results in it as well. */
     this.addTestResult = function(test) {
diff --git a/tools/packaging/packager.py b/tools/packaging/packager.py
index 17417489833d37edeb70ed4c96ae1c77653bb92e..dbdde06a41c9015c645974eb234cc82935c1b87a 100644
--- a/tools/packaging/packager.py
+++ b/tools/packaging/packager.py
@@ -171,6 +171,10 @@ for temp in os.listdir(TEST262_CASES_DIR):
         print "The expected ES5 test directory,", temp, "did not exist!"
         sys.exit(1)
     
+    if temp.find("/.") != -1:
+        # skip hidden files on Unix, such as ".DS_Store" on Mac
+        continue
+
     if not ONE_JSON_PER_CHAPTER:
         dirWalker(temp)
     else:
diff --git a/tools/packaging/templates/runner.bestPractice.html b/tools/packaging/templates/runner.bestPractice.html
index aafde33211a66c5a7b8efe61567a29cfe14ac95a..60c3bbef6f66115c1a1cb8759352721f0082169f 100644
--- a/tools/packaging/templates/runner.bestPractice.html
+++ b/tools/packaging/templates/runner.bestPractice.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,6 +6,7 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
+    var STANDARD = "ECMA-262";
     var TEST_LIST_PATH = "json/testcaseslist.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
@@ -13,7 +14,7 @@
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262 Best Practices</title>
+<title>ECMAScript Best Practices – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"> <p class="headers">ecma<font color="#868686">script</font><font color="black"> test262 <b>Best Practices</b></font></p>   <!-- <img src="images/logo.png" /> --> </div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Best Practices</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -109,11 +108,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests to run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -127,19 +126,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -147,7 +146,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/tools/packaging/templates/runner.intl402.html b/tools/packaging/templates/runner.intl402.html
index 1c9a5e589332b5410a32da20ad486b93aa43b600..a4b1695bb3840a513318093275a86957800767fd 100644
--- a/tools/packaging/templates/runner.intl402.html
+++ b/tools/packaging/templates/runner.intl402.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,6 +6,7 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
+    var STANDARD = "ECMA-402";
     var TEST_LIST_PATH = "json/testcaseslist.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
@@ -13,7 +14,7 @@
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test402</title>
+<title>ECMAScript Internationalization – test402</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"> <p class="headers"><b>Experimental</b> <i>ecmascript test402</i></p>   <!-- <img src="images/logo.png" /> --> </div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Internationalization</strong> test402
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,15 +63,28 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test402?</p>
-                <p class="content">Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus.</p>
+                <p class="content">test402 is a test suite intended to check agreement between JavaScript implementations and the ECMAScript Internationalization API Specification.
+                    The test suite contains many individual tests, each of which tests some specific requirements of the ECMAScript Internationalization API Specification.</p>
+                <p class="headers">What is the ECMAScript Internationalization API?</p>
+                <p class="content">The ECMAScript Internationalization API is a complement to the ECMAScript Language Specification, 5.1 edition.
+                    It enables internationalization of JavaScript applications by providing collation (string comparison), number formatting, and date and time formatting, and lets applications choose the language and tailor the functionality to their needs.
+                    The specification is currently under development and likely to become standard ECMA-402.
+                    Current drafts of the specification are available on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=globalization:specification_drafts"));'>ECMAScript web site</a>.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test402?</p>
-                <p class="content">Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci.</p>
+                <p class="content">Development of test402 is a project of Ecma TC39.
+                    The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test402.
+                    For more information about how test402 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test402?</p>
-                <p class="content">Aenean nec lorem. In porttitor. Donec laoreet nonummy augue.</p>
-                <p class="headers">Where can I found out more?</p>
-                <p class="content">Suspendisse dui purus, scelerisque at, vulputate vitae, pretium mattis, nunc. Mauris eget neque at sem venenatis eleifend. Ut nonummy.</p>       
+                <p class="content"><strong>test402 is very very very incomplete.
+                    It is still undergoing active development.</strong></p>
+                <p class="headers">Where can I find out more?</p>
+                <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
                 <p class="content">Click the “Run” tab at the top of this page for instructions and follow the instructions to run the tests.</p> 
@@ -83,7 +95,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Fusce aliquet pede non pede. Suspendisse dapibus lorem pellentesque magna. Integer nulla.
+               <p class="content">Test402 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test402 and its sibling test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
             </div>
 
@@ -113,11 +126,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests to run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -131,19 +144,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -151,7 +164,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/tools/packaging/templates/runner.test262.html b/tools/packaging/templates/runner.test262.html
index 88c9b1afc31ee99e984abfbf4bb50a63e7166b68..aff4f187c2dcf1117742b3960fe19d37444294d0 100644
--- a/tools/packaging/templates/runner.test262.html
+++ b/tools/packaging/templates/runner.test262.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,6 +6,7 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
+    var STANDARD = "ECMA-262";
     var TEST_LIST_PATH = "json/testcaseslist.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
@@ -13,7 +14,7 @@
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/default.html b/website/default.html
index f363bb212ddd4c93e36f4bdef52bf83fc653baf0..ba5ad0f6862651db836a1bfe88c5bcaa087d1a00 100644
--- a/website/default.html
+++ b/website/default.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/default.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/default.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/harness/helper.js b/website/harness/helper.js
index 1e97d4a90e84d5bb09425d9f1885d6fe76a17182..04c6cb6b72a3768918397bd2f6bae2db29177833 100644
--- a/website/harness/helper.js
+++ b/website/harness/helper.js
@@ -13,13 +13,13 @@ function Presenter() {
         table,
         backLink,
 
-        globalSection = new Section(null, "0", "ECMA-262"),
+        globalSection = new Section(null, "0", STANDARD),
         currentSection = globalSection,
         tests = {},
         totalTests = 0;
 
     var progressBar;
-    TOCFILEPATH = "metadata/ecma-262-toc.xml";
+    TOCFILEPATH = "metadata/" + STANDARD.toLowerCase() + "-toc.xml";
   //**INTERFACE****************************************************************
   /* Updates progress with the given test, which should have its results in it as well. */
     this.addTestResult = function(test) {
diff --git a/website/images/ecmascriptlogo.png b/website/images/ecmascriptlogo.png
deleted file mode 100644
index 221ecd913eef6cb4e09c3cf62270a0ea13ce3405..0000000000000000000000000000000000000000
Binary files a/website/images/ecmascriptlogo.png and /dev/null differ
diff --git a/website/images/logo.png b/website/images/logo.png
deleted file mode 100644
index 60c96ee67dfd31672baef91e4a8816c4eee383fc..0000000000000000000000000000000000000000
Binary files a/website/images/logo.png and /dev/null differ
diff --git a/website/json/ch10.json b/website/json/ch10.json
index 04ed51099398df78d226af4c9667b67a27cec974..51a11043d87ea427e513492990065e21a57f310c 100644
--- a/website/json/ch10.json
+++ b/website/json/ch10.json
@@ -1 +1 @@
-{"testsCollection":{"name":"Chapter - ch10","numTests":"377","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBEZWZpbmluZyBmdW5jdGlvbiBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24KICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gMTsKfQppZih0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIicpOwoK","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Defining function by a FunctionDeclaration","path":"TestCases/ch10/10.1/S10.1.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbgogKi8KCi8vQ0hFQ0sjMQp2YXIgeD1mdW5jdGlvbiBmMSgpe3JldHVybiAxO30oKTsKaWYoeCE9PTEpCiAgJEVSUk9SKCcjMTogQ3JlYXRlIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwoKLy9DSEVDSyMyCnZhciB5PWZ1bmN0aW9uICAoKXtyZXR1cm4gMjt9KCk7CmlmKHkhPT0yKXsKICAkRVJST1IoJyMyOiBDcmVhdGUgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwp9CgovL0NIRUNLIzIKdmFyIHogPSAoZnVuY3Rpb24oKXtyZXR1cm4gMzt9KSgpOwppZih6IT09Myl7CiAgJEVSUk9SKCcjMzogQ3JlYXRlIGFuIGFub255bW91cyBmdW5jdGlvbiBkeW5hbWljYWxseSBlaXRoZXIgYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gd3JhcHBlZCBpbiBhIGdyb3VwIG9wZXJhdG9yJyk7Cn0KCg==","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using a FunctionExpression","path":"TestCases/ch10/10.1/S10.1.1_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyB0aGUgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0IGFzIGEgY29uc3RydWN0b3IKICovCgovL0NIRUNLIzEKdmFyIHg9bmV3IGZ1bmN0aW9uIGYxKCl7cmV0dXJuIDE7fTsKaWYodHlwZW9mKHguY29uc3RydWN0b3IpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoeC5jb25zdHJ1Y3RvcikhPT0iZnVuY3Rpb24iJyk7Cgo=","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using the built-in Function object as a constructor","path":"TestCases/ch10/10.1/S10.1.1_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIEZ1bmN0aW9uIG9iamVjdHMuIEludGVybmFsIGZ1bmN0aW9ucwogKiBhcmUgYnVpbHQtaW4gb2JqZWN0cyBvZiB0aGUgbGFuZ3VhZ2UsIHN1Y2ggYXMgcGFyc2VJbnQgYW5kIE1hdGguZXhwCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlcyBvZiBwYXJzZUludCBhbmQgTWF0aC5leHAKICovCgovL0NIRUNLIzEKaWYodHlwZW9mKE1hdGguZXhwKSE9PSJmdW5jdGlvbiIpCiAgJEVSUk9SKCcjMTogdHlwZW9mKE1hdGguZXhwKDEwKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKE1hdGguZXhwKCkpKTsKCi8vQ0hFQ0sjMgppZih0eXBlb2YocGFyc2VJbnQpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMyOiB0eXBlb2YocGFyc2VJbnQoKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKHBhcnNlSW50KCkpKTsKICAKCg==","commentary":"There are two types of Function objects. Internal functions\nare built-in objects of the language, such as parseInt and Math.exp","description":"Checking types of parseInt and Math.exp","path":"TestCases/ch10/10.1/S10.1.1_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBmdW5jdGlvbiBwYXJhbWV0ZXIgaXMgcG9zc2libGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKGEpewogIGRlbGV0ZSBhOwogIHJldHVybiBhOwp9CmlmIChmMSgxKSAhPT0gMSkKICAkRVJST1IoJyMxOiBGdW5jdGlvbiBwYXJhbWV0ZXIgd2FzIGRlbGV0ZWQnKTsKCgo=","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking if deleting function parameter is possible","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW50aW9uIHdoaWNoIHJldHVybnMgcHJvcGVydHkgImFyZ3VtZW50cyIKICovCgp2YXIgQVJHX1NUUklORyA9ICJ2YWx1ZSBvZiB0aGUgYXJndW1lbnQgcHJvcGVydHkiOwoKZnVuY3Rpb24gZjEoKSB7CiAgdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuYXJndW1lbnRzID0gQVJHX1NUUklORzsKICByZXR1cm4gYXJndW1lbnRzOwp9CiAgCi8vQ0hFQ0sjMQppZiAoKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGggIT09IDUpCiAgJEVSUk9SKCcjMTogKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGg9PT01LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMiAgCmlmICgobmV3IGYxKDEsMiwzLDQsNSkpWzNdICE9PSA0KQogICRFUlJPUignIzI6IChuZXcgZjEoMSwyLDMsNCw1KSlbM109PT00LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMwp2YXIgeCA9IG5ldyBmMSgxLDIsMyw0LDUpOyAKaWYgKGRlbGV0ZSB4WzNdICE9PSB0cnVlKQogICRFUlJPUignIzMuMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0nKTsKICAKaWYgKHhbM10gPT09IDQpCiAgJEVSUk9SKCcjMy4yOiBGdW5jdGlvbiBwYXJhbWV0ZXJzIGhhdmUgYXR0cmlidXRlIHtEb250RGVsZXRlfScpOwoK","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking funtion which returns property \"arguments\"","path":"TestCases/ch10/10.1/S10.1.6_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW5jdGlvbiB3aGljaCByZXR1cm5zICJ0aGlzIgogKiBAbm9TdHJpY3QKICovCgpmdW5jdGlvbiBmMSgpIHsKICBpZiAoZGVsZXRlIGFyZ3VtZW50cykgewogICAgJEVSUk9SKCIjMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0iICsgYXJndW1lbnRzKTsKICB9CiAgcmV0dXJuIGFyZ3VtZW50czsKfQoKZjEoKTsKCg==","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking function which returns \"this\"","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdGhpcyB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhlY3V0aW9uY29udGV4dCBpcyBpbW11dGFibGUKICoKICogQHBhdGggY2gxMC8xMC4xL1MxMC4xLjdfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIGRlbGV0aW5nICJ0aGlzIiBmYWlscwogKi8KCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIHRoaXMgIT09IHRydWUpCiAgJEVSUk9SKCcjMTogVGhlIHRoaXMgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGFuIGV4ZWN1dGlvbmNvbnRleHQgaXMgaW1tdXRhYmxlLiBBY3R1YWw6IHRoaXMgd2FzIGRlbGV0ZWQnKTsKICAKCg==","commentary":"The this value associated with an executioncontext is immutable","description":"Checking if deleting \"this\" fails","path":"TestCases/ch10/10.1/S10.1.7_A1_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAndXNlICBzdHJpY3QnOyB3aGljaCBjb250YWlucyB0d28gc3BhY2UgYmV0d2VlbiAndXNlJyBhbmQgJ3N0cmljdCcNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2UgIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is 'use  strict'; which contains two space between 'use' and 'strict'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVXNlIFN0cmljdCBEaXJlY3RpdmUgUHJvbG9ndWUgaXMgJydVU0UgU1RSSUNUJzsnIGluIHdoaWNoIGFsbCBjaGFyYWN0ZXJzIGFyZSB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVU0UgU1RSSUNUIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''USE STRICT';' in which all characters are uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBjb2RlIHdpdGggYSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoIid1c2Ugc3RyaWN0JzsgdmFyIHB1YmxpYyA9IDE7IHZhciBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9IDI7Iik7DQoNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvciAmJiB0eXBlb2YgcHVibGljID09PSAidW5kZWZpbmVkIiAmJg0KICAgICAgICAgICAgICAgIHR5cGVvZiBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9PT0gInVuZGVmaW5lZCI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Eval code is strict code with a Use Strict Directive at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgJ3VzZSBzdHJpY3QnOyB2YXIgYW5vdGhlclZhcmlhYmxlTm90UmVzZXJ2ZVdvcmQgPSAyOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgdmFyIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID0gMjsgJ3VzZSBzdHJpY3QnOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGNhbGwgdG8gZXZhbCBmdW5jdGlvbiBpcyBjb250YWluZWQgaW4gYSBTdHJpY3QgTW9kZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgJ3VzZSBzdHJpY3QnOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The call to eval function is contained in a Strict Mode block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGlzIHN0cmljdCBmdW5jdGlvbiBjb2RlIGlmIEZ1bmN0aW9uRGVjbGFyYXRpb24gaXMgY29udGFpbmVkIGluIHVzZSBzdHJpY3QNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a FunctionDeclaration is strict function code if FunctionDeclaration is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkV4cHJlc3Npb24gaXMgc3RyaWN0IGZ1bmN0aW9uIGNvZGUgaWYgRnVuY3Rpb25FeHByZXNzaW9uIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0DQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a FunctionExpression is strict function code if FunctionExpression is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgicHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDExOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB2YXIgdGVtcCA9IG9iai5hY2NQcm9wZXJ0eSA9PT0gMTE7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgImFjY1Byb3BlcnR5Iiwgew0KICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yICYmIGRhdGEgPT09ICJkYXRhIjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBmdW5jdGlvbiBmdW4oKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0Ig0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCAiYWNjUHJvcGVydHkiLCB7DQogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciB0ZW1wID0gb2JqLmFjY1Byb3BlcnR5ID09PSAxMTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICB2YXIgZGF0YSA9ICJkYXRhIjsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KDQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jayhnZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoInB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIHJldHVybiBvYmouYWNjUHJvcGVydHkgPT09IDExICYmIHB1YmxpYyA9PT0gMTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears in the middle of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jayhzZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIHZhciBkYXRhOw0KDQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgdmFyIF8xMF8xXzFfMjhfcyA9IHthOjEsIGE6Mn07DQogICAgICAgICAgICAgICAgZGF0YSA9IHZhbHVlOw0KICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICByZXR1cm4gZGF0YT09PSJvdmVycmlkZURhdGEiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the end of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGJ1aWx0LWluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0IGNvZGUNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIGZ1bk9iaiA9IG5ldyBGdW5jdGlvbigiYSIsICJldmFsKCdwdWJsaWMgPSAxOycpOyIpOw0KICAgICAgICBmdW5PYmooKTsNCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The built-in Function constructor is contained in use strict code","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiDQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJyB1c2Ugc3RyaWN0JzsnIHdoaWNoIHRoZSBmaXJzdCBjaGFyYWN0ZXIgaXMgc3BhY2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICIgdXNlIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KDQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is '' use strict';' which the first character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgIid1c2Ugc3RyaWN0JzsgZXZhbCgncHVibGljID0gMTsnKTsiKTsNCiAgICAgICAgICAgIGZ1bk9iaigpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7ICd1c2Ugc3RyaWN0JzsgYW5vdGhlclZhcmlhYmxlID0gMjsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7IGFub3RoZXJWYXJpYWJsZSA9IDI7ICd1c2Ugc3RyaWN0JzsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QgJzsnIHdoaWNoIHRoZSBsYXN0IGNoYXJhY3RlciBpcyBzcGFjZQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QgIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict ';' which the last character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGNvZGUNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCnZhciBwdWJsaWMgPSAxOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the start of the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIGludGVyZmFjZSA9IDI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgaW50ZXJmYWNlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgZGlyZWN0aXZlIHByb2xvZ3VlDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the directive prologue","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgY29kZQ0KICogQG5vU3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQoidXNlIHN0cmljdCI7DQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ1VzZSBzdHJpY3QnOycgaW4gd2hpY2ggdGhlIGZpcnN0IGNoYXJhY3RlciBpcyB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVc2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''Use strict';' in which the first character is uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgY2FsbGVyIHN1cHBsaWVzIGZld2VyIHBhcmFtZXRlciB2YWx1ZXMgdGhhbiB0aGVyZSBhcmUKICogZm9ybWFsIHBhcmFtZXRlcnMsIHRoZSBleHRyYSBmb3JtYWwgcGFyYW1ldGVycyBoYXZlIHZhbHVlIHVuZGVmaW5lZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTEuanMKICogQGRlc2NyaXB0aW9uIENhbGxpbmcgZnVuY3Rpb24gZXhjbHVkaW5nIGEgZmV3IHBhcmFtZXRlcnMKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoYSwgYil7CiAgcmV0dXJuIChiID09PSB1bmRlZmluZWQpOwp9CmlmKCEoZjEoMSwgMikgPT09IGZhbHNlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSwgMikgPT09IGZhbHNlJyk7Cn0gZWxzZSBpZighKGYxKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSkgPT09IHRydWUnKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKGEsIGIsIGMpewogIHJldHVybiAoYiA9PT0gdW5kZWZpbmVkKSAmJiAoYyA9PT0gdW5kZWZpbmVkKTsKfQppZighKGYyKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMjogZjIoMSwgMikgPT09IHRydWUnKTsKfQoK","commentary":"If the caller supplies fewer parameter values than there are\nformal parameters, the extra formal parameters have value undefined","description":"Calling function excluding a few parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycyBzaGFyZSB0aGUgc2FtZSBuYW1lLCBoZW5jZQogKiB0aGUgc2FtZSBwcm9wZXJ0eSwgdGhlIGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaXMgZ2l2ZW4gdGhlIHZhbHVlIHRoYXQgd2FzCiAqIHN1cHBsaWVkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXIgd2l0aCB0aGlzIG5hbWUKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgaW5pdGlhbGl6ZWQgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywgd2hpY2ggaGF2ZSB0aGUgc2FtZSBuYW1lCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSh4LCB4KSB7CiAgcmV0dXJuIHg7Cn0KaWYoIShmMSgxLCAyKSA9PT0gMikpIHsKICAkRVJST1IoIiMxOiBmMSgxLCAyKSA9PT0gMiIpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoeCwgeCwgeCl7CiAgcmV0dXJuIHgqeCp4Owp9CmlmKCEoZjIoMSwgMiwgMykgPT09IDI3KSl7CiAgJEVSUk9SKCJmMigxLCAyLCAzKSA9PT0gMjciKTsKfQoKLy9DSEVDSyMzCmZ1bmN0aW9uIGYzKHgsIHgpIHsKICByZXR1cm4gJ2EnICsgeDsKfQppZighKGYzKDEsIDIpID09PSAnYTInKSl7CiAgJEVSUk9SKCIjMzogZjMoMSwgMikgPT09ICdhMiciKTsKfQoK","commentary":"If two or more formal parameters share the same name, hence\nthe same property, the corresponding property is given the value that was\nsupplied for the last parameter with this name","description":"Creating functions initialized with two or more formal parameters, which have the same name","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgdmFsdWUgb2YgdGhpcyBsYXN0IHBhcmFtZXRlciAod2hpY2ggaGFzIHRoZSBzYW1lCiAqIG5hbWUgYXMgc29tZSBwcmV2aW91cyBwYXJhbWV0ZXJzIGRvKSB3YXMgbm90IHN1cHBsaWVkIGJ5IHRoZQogKiBjYWxsZXIsIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywKICogdGhhdCBoYXZlIHRoZSBzYW1lIG5hbWUuIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBleGNsdWRpbmcgYSBmZXcgbGFzdCBwYXJhbWV0ZXJzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgsIGEsIGIsIHgpewogIHJldHVybiB4Owp9CmlmKCEoZjEoMSwgMikgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUignIzE6IGYxKDEsIDIpID09PSB1bmRlZmluZWQnKTsKfQoK","commentary":"If the value of this last parameter (which has the same\nname as some previous parameters do) was not supplied by the\ncaller, the value of the corresponding property is undefined","description":"Creating functions with two or more formal parameters,\nthat have the same name. Calling this function excluding a few last parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIHBhc3NlZCBwYXJhbWV0ZXIKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHJldHVybiB4OwoKICBmdW5jdGlvbiB4KCl7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYoIShmMSgpLmNvbnN0cnVjdG9yLnByb3RvdHlwZSA9PT0gRnVuY3Rpb24ucHJvdG90eXBlKSl7CiAgJEVSUk9SKCcjMTogZjEoKSByZXR1cm5zIGZ1bmN0aW9uJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICByZXR1cm4gdHlwZW9mIHg7CgogIGZ1bmN0aW9uIHgoKXsKICAgIHJldHVybiA3OwogIH0KfQppZighKGYyKCkgPT09ICJmdW5jdGlvbiIpKXsKICAkRVJST1IoJyMyOiBmMigpID09PSAiZnVuY3Rpb24iJyk7Cn0KCi8vQ0hFQ0sjMwpmdW5jdGlvbiBmMygpIHsKICByZXR1cm4gdHlwZW9mIGFyZ3VtZW50czsKICBmdW5jdGlvbiBhcmd1bWVudHMoKSB7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYgKCEoZjMoKSA9PT0gImZ1bmN0aW9uIikpewogICRFUlJPUignIzM6IGYzKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with passed parameter","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIGRlY2xhcmVkIHZhcmlhYmxlCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjEoKS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgPT09IEZ1bmN0aW9uLnByb3RvdHlwZSkpewogICRQUklOVCgnIzE6IGYxKCkgcmV0dXJucyBmdW5jdGlvbicpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoKXsKICB2YXIgeDsKICAKICByZXR1cm4gdHlwZW9mIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjIoKSA9PT0gImZ1bmN0aW9uIikpewogICRQUklOVCgnIzI6IGYyKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with declared variable","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB2YXJpYWJsZSBleGlzdGVuY2Ugb25seQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgpID09PSAidW5kZWZpbmVkIikpewogICRQUklOVCgnIzE6IGYxKCkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMigpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKCkgPT09IHVuZGVmaW5lZCkpewogICRQUklOVCgnIzE6IGYyKCkgPT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking variable existence only","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgdGhlIHZhcmlhYmxlIG9iamVjdCBwcm9wZXJ0eSB3aXRoIGZvcm1hbCBwYXJhbWV0ZXIKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoeCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHR5cGVvZiB4Owp9CgppZighKGYxKCkgPT09ICJ1bmRlZmluZWQiKSl7CiAgJFBSSU5UKCcjMTogZjEoMSkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICB2YXIgeDsKICAKICByZXR1cm4geDsKfQoKaWYoIShmMigpID09PSB1bmRlZmluZWQpKXsKICAkUFJJTlQoJyMxOiBmMigxKSA9PT0gdW5kZWZpbmVkJyk7Cn0KCg==","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb2YgdGhlIHZhcmlhYmxlIG9iamVjdCB3aXRoIHRoZQogKiBuYW1lIG9mIGEgZGVjbGFyZWQgdmFyaWFibGUsIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYW5kIGl0cyBhdHRyaWJ1dGVzCiAqIGFyZSBub3QgY2hhbmdlZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTUuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZXhpc3RlbmNlIG9mIHRoZSB2YXJpYWJsZSBvYmplY3QgcHJvcGVydHkgd2l0aCBmb3JtYWwgcGFyYW1ldGVyCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgxKSA9PT0gIm51bWJlciIpKXsKICAkUFJJTlQoJyMxOiBmMSgxKSA9PT0gIm51bWJlciInKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKHgpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKDEpID09PSAxKSl7CiAgJFBSSU5UKCcjMTogZjIoMSkgPT09IDEnKTsKfQoK","commentary":"If there is already a property of the variable object with the\nname of a declared variable, the value of the property and its attributes\nare not changed","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.2_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKE5hTikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBOYU4gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBUeXBlRXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKHVuZGVmaW5lZCkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdW5kZWZpbmVkID0gMTI7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgVHlwZUVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoT2JqZWN0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBvYmpCYWsgPSBPYmplY3Q7DQoNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE9iamVjdCA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBPYmplY3QgPSBvYmpCYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Object)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIG51bUJhayA9IE51bWJlcjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE51bWJlciA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBOdW1iZXIgPSBudW1CYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Number)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHggPSAxOwogIGZ1bmN0aW9uIGYyKCl7CiAgICByZXR1cm4geDsKICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09IDEpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gMCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7CiAgCiAgdmFyIHggPSAxOwp9CgppZighKGYxKCkgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9CgoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAxKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB2YXIgeCA9IDE7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHdpdGgobXlPYmopewogICAgICByZXR1cm4geDsKICAgIH0KICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09ICJvYmoiKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gIm9iaiIpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7CgogIHZhciB4ID0gMTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB3aXRoKG15T2JqKXsKICAgIHJldHVybiB4OwogIH0KfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQppZiAoIE5hTiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyCmlmICggSW5maW5pdHkgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjogSW5maW5pdHkgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMzCmlmICggdW5kZWZpbmVkID09PSBudWxsICkgewogICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjNAppZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzUKaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHsKICAkRVJST1IoIiM1OiBwYXJzZUludCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzYKaWYgKCBwYXJzZUZsb2F0ID09PSBudWxsICkgewogICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM3CmlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyM4CmlmICggaXNGaW5pdGUgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjODogaXNGaW5pdGUgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM5CmlmICggZGVjb2RlVVJJID09PSBudWxsICkgewogICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzEwCmlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxMQppZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxMTogZW5jb2RlVVJJID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTIKaWYgKCBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMTMKaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE0CmlmICggRnVuY3Rpb24gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTQ6IEZ1bmN0aW9uID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTUKaWYgKCBTdHJpbmcgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE2CmlmICggTnVtYmVyID09PSBudWxsICkgewogICRFUlJPUigiIzE2OiBOdW1iZXIgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxNwppZiAoIEFycmF5ID09PSBudWxsICkgewogICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggRGF0ZSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxODogRGF0ZSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE5CmlmICggUmVnRXhwID09PSBudWxsICkgewogICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMAppZiAoIEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzIxCmlmICggRXZhbEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIxOiBFdmFsRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMgppZiAoIFJhbmdlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMwppZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI0CmlmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjQ6IFN5bnRheEVycm9yID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMjUKaWYgKCBUeXBlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI2CmlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7Cn0KCgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMjcKaWYgKCBNYXRoID09PSBudWxsICkgewogICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7Cn0KCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBpZiAoIE5hTiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE6IE5hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyCiAgaWYgKCBJbmZpbml0eSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI6IEluZmluaXR5ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzMKICBpZiAoIHVuZGVmaW5lZCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzQKICBpZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM0OiBldmFsID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzUKICBpZiAoIHBhcnNlSW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjNTogcGFyc2VJbnQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNgogIGlmICggcGFyc2VGbG9hdCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNwogIGlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM3OiBpc05hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyM4CiAgaWYgKCBpc0Zpbml0ZSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzg6IGlzRmluaXRlID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzkKICBpZiAoIGRlY29kZVVSSSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMAogIGlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTA6IGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMQogIGlmICggZW5jb2RlVVJJID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTE6IGVuY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMgogIGlmICggZW5jb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEzCiAgaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMxMzogT2JqZWN0ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE0CiAgaWYgKCBGdW5jdGlvbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE0OiBGdW5jdGlvbiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNQogIGlmICggU3RyaW5nID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNgogIGlmICggTnVtYmVyID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTY6IEZ1bmN0aW9uID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE3CiAgaWYgKCBBcnJheSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxOAogIGlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzIwOiBCb29sZWFuID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE4CiAgaWYgKCBEYXRlID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTg6IERhdGUgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMTkKICBpZiAoIFJlZ0V4cCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjAKICBpZiAoIEVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjA6IEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIxCiAgaWYgKCBFdmFsRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyMTogRXZhbEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIyCiAgaWYgKCBSYW5nZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjMKICBpZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjM6IFJlZmVyZW5jZUVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzI0CiAgaWYgKCBTeW50YXhFcnJvciA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI0OiBTeW50YXhFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNQogIGlmICggVHlwZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNgogIGlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyNjogVVJJRXJyb3IgPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzI3CiAgaWYgKCBNYXRoID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjc6IE1hdGggPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIFZhbHVlIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxXG4nKwonaWYgKCBOYU4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMlxuJysKJ2lmICggSW5maW5pdHkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyOiBJbmZpbml0eSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMzXG4nKwonaWYgKCB1bmRlZmluZWQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMzOiB1bmRlZmluZWQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIEZ1bmN0aW9uIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyM0XG4nKwonaWYgKCBldmFsID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM1XG4nKwonaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzU6IHBhcnNlSW50ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzZcbicrCidpZiAoIHBhcnNlRmxvYXQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM2OiBwYXJzZUZsb2F0ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzdcbicrCidpZiAoIGlzTmFOID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjOFxuJysKJ2lmICggaXNGaW5pdGUgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM4OiBpc0Zpbml0ZSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM5XG4nKwonaWYgKCBkZWNvZGVVUkkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM5OiBkZWNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTBcbicrCidpZiAoIGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTFcbicrCidpZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzExOiBlbmNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTJcbicrCidpZiAoIGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEyOiBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIENvbnN0cnVjdG9yIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxM1xuJysKJ2lmICggT2JqZWN0ID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxNFxuJysKJ2lmICggRnVuY3Rpb24gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNDogRnVuY3Rpb24gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTVcbicrCidpZiAoIFN0cmluZyA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE1OiBTdHJpbmcgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTZcbicrCidpZiAoIE51bWJlciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE2OiBGdW5jdGlvbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxN1xuJysKJ2lmICggQXJyYXkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNzogQXJyYXkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMThcbicrCidpZiAoIEJvb2xlYW4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxOFxuJysKJ2lmICggRGF0ZSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE4OiBEYXRlID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzE5XG4nKwonaWYgKCBSZWdFeHAgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOTogUmVnRXhwID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIwXG4nKwonaWYgKCBFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMVxuJysKJ2lmICggRXZhbEVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjE6IEV2YWxFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMlxuJysKJ2lmICggUmFuZ2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIyOiBSYW5nZUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIzXG4nKwonaWYgKCBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyNFxuJysKJ2lmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyNDogU3ludGF4RXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjVcbicrCidpZiAoIFR5cGVFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI1OiBUeXBlRXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjZcbicrCidpZiAoIFVSSUVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIE90aGVyIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMyN1xuJysKJ2lmICggTWF0aCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdOYU4nICkgewogICAgJEVSUk9SKCIjMTogJ05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgJEVSUk9SKCIjMTogJ0luZmluaXR5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICd1bmRlZmluZWQnICkgewogICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdldmFsJyApIHsKICAgICRFUlJPUigiIzE6ICdldmFsJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAkRVJST1IoIiMxOiAncGFyc2VJbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ3BhcnNlRmxvYXQnICkgewogICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2lzTmFOJyApIHsKICAgICRFUlJPUigiIzE6ICdpc05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgJEVSUk9SKCIjMTogJ2lzRmluaXRlJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUkknICkgewogICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICRFUlJPUigiIzE6ICdkZWNvZGVVUklDb21wb25lbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAkRVJST1IoIiMxOiAnZW5jb2RlVVJJJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdlbmNvZGVVUklDb21wb25lbnQnICkgewogICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdPYmplY3QnICkgewogICAgJEVSUk9SKCIjMTogJ3Byb3BlcnR5ICdPYmplY3QnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgJEVSUk9SKCIjMTogJ0Z1bmN0aW9uJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdTdHJpbmcnICkgewogICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnTnVtYmVyJyApIHsKICAgICRFUlJPUigiIzE6ICdOdW1iZXInIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICRFUlJPUigiIzE6ICdBcnJheScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnQm9vbGVhbicgKSB7CiAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRGF0ZScgKSB7CiAgICAkRVJST1IoIiMxOiAnRGF0ZScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWdFeHAnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Vycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRXZhbEVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFdmFsRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1JhbmdlRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JlZmVyZW5jZUVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnU3ludGF4RXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1N5bnRheEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1R5cGVFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnVVJJRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdNYXRoJyApIHsKICAgICRFUlJPUigiIzE6ICdNYXRoJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ05hTicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgICAkRVJST1IoIiMxOiAnSW5maW5pdHknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAndW5kZWZpbmVkJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ2V2YWwnICkgewogICAgICAkRVJST1IoIiMxOiAnZXZhbCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwYXJzZUludCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUZsb2F0JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNOYU4nICkgewogICAgICAkRVJST1IoIiMxOiAnaXNOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgICAkRVJST1IoIiMxOiAnaXNGaW5pdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUklDb21wb25lbnQnICkgewogICAgICAkRVJST1IoIiMxOiAnZGVjb2RlVVJJQ29tcG9uZW50JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAgICRFUlJPUigiIzE6ICdlbmNvZGVVUkknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZW5jb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ09iamVjdCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwcm9wZXJ0eSAnT2JqZWN0JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgICAkRVJST1IoIiMxOiAnRnVuY3Rpb24nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnU3RyaW5nJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdOdW1iZXInICkgewogICAgICAkRVJST1IoIiMxOiAnTnVtYmVyJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0FycmF5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Jvb2xlYW4nICkgewogICAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdEYXRlJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0RhdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1JlZ0V4cCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFdmFsRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnRXZhbEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnUmFuZ2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdSZWZlcmVuY2VFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdTeW50YXhFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdTeW50YXhFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnVHlwZUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1VSSUVycm9yJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSAKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ01hdGgnICkgewogICAgICAkRVJST1IoIiMxOiAnTWF0aCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0KICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdOYU5cJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdJbmZpbml0eVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0luZmluaXR5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwndW5kZWZpbmVkXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwndW5kZWZpbmVkXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdldmFsXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZXZhbFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ3BhcnNlSW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VJbnRcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdwYXJzZUZsb2F0XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VGbG9hdFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ2lzTmFOXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnaXNOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdpc0Zpbml0ZVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ2lzRmluaXRlXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdPYmplY3RcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdPYmplY3RcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdGdW5jdGlvblwnKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRnVuY3Rpb25cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTdHJpbmdcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdTdHJpbmdcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdOdW1iZXJcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOdW1iZXJcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdBcnJheVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0FycmF5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnQm9vbGVhblwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0Jvb2xlYW5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdEYXRlXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRGF0ZVwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZ0V4cFwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1JlZ0V4cFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ0Vycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdFdmFsRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdFdmFsRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdSYW5nZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmFuZ2VFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZmVyZW5jZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmVmZXJlbmNlRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTeW50YXhFcnJvclwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1N5bnRheEVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVHlwZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnVHlwZUVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVVJJRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdVUklFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdNYXRoXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnTWF0aFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRBMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSZWN1cnNpdmUgZnVuY3Rpb24gY2FsbAogKi8KCnZhciB5OwoKZnVuY3Rpb24gZihhKXsKICB2YXIgeDsKICAKICBpZiAoYSA9PT0gMSkgCiAgICByZXR1cm4geDsKICBlbHNlIHsKICAgIGlmKHggPT09IHVuZGVmaW5lZCkgewogICAgICB4ID0gMDsKICAgIH0gZWxzZSB7CiAgICAgIHggPSAxOwogICAgfQogICAgcmV0dXJuIGYoMSk7CiAgfQp9Cgp5ID0gZigwKTsKCmlmKCEoeSA9PT0gdW5kZWZpbmVkKSl7CiAgJEVSUk9SKCIjMTogUmVjdXJzaXZlIGZ1bmN0aW9uIGNhbGxzIHNoYXJlcyBleGVjdXRpb24gY29udGV4dCIpOwp9Cgo=","commentary":"Every function call enters a new execution context","description":"Recursive function call","path":"TestCases/ch10/10.4/S10.4A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gU2VxdWVuY2Ugb2YgZnVuY3Rpb24gY2FsbHMKICovCgp2YXIgeTsKCmZ1bmN0aW9uIGYoKXsKICB2YXIgeDsKICAKICBpZih4ID09PSB1bmRlZmluZWQpIHsKICAgIHggPSAwOwogIH0gZWxzZSB7CiAgICB4ID0gMTsKICB9CiAgCiAgcmV0dXJuIHg7Cn0KCnkgPSBmKCk7CnkgPSBmKCk7CgppZighKHkgPT09IDApKXsKICAkRVJST1IoIiMxOiBTZXF1ZW5jZWQgZnVuY3Rpb24gY2FsbHMgc2hhcmVzIGV4ZWN1dGlvbiBjb250ZXh0Iik7Cn0KCg==","commentary":"Every function call enters a new execution context","description":"Sequence of function calls","path":"TestCases/ch10/10.4/S10.4_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHZhciB4ID0gMSwgZmFpbHMKICogQG5vU3RyaWN0CiAqLwoKdmFyIHggPSAxOwoKaWYgKHRoaXMueCAhPT0gMSkgewogICRFUlJPUigiIzE6IHZhcmlhYmxlIHggaXMgYSBwcm9wZXJ0eSBvZiBnbG9iYWwgb2JqZWN0Iik7Cn0KCmlmKGRlbGV0ZSB0aGlzLnggIT09IGZhbHNlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as var x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHggPSAxLCBmYWlscwogKiBAbm9TdHJpY3QKICovCgp4ID0gMTsKCmlmICh0aGlzLnggIT09IDEpIHsKICAkRVJST1IoIiMxOiB2YXJpYWJsZSB4IGlzIGEgcHJvcGVydHkgb2YgZ2xvYmFsIG9iamVjdCIpOwp9CgppZihkZWxldGUgdGhpcy54ICE9PSB0cnVlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dA0KICovDQoNCnZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHRyeSB7DQoNCiAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgIHZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIxIjsNCiAgICBpZihfZXZhbCgiXCdzdHJcJyA9PT0gX18xMF80XzJfMV8xXzEiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgIGV2YWwoIlwnc3RyMVwnID09PSBfXzEwXzRfMl8xXzFfMSIpID09PSB0cnVlKSB7ICAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQogICAgcmV0dXJuIGZhbHNlOw0KICB9IGZpbmFsbHkgew0KICAgIGRlbGV0ZSB0aGlzLl9fMTBfNF8yXzFfMV8xOw0KICB9DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0yLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAobmVzdGVkIGZ1bmN0aW9uKQ0KICovDQoNCnZhciBfXzEwXzRfMl8xXzIgPSAic3RyIjsNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KDQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfMiA9ICJzdHIxIjsNCiAgICAgICAgICAgIGZ1bmN0aW9uIGZvbygpIHsNCiAgICAgICAgICAgICAgICB2YXIgX18xMF80XzJfMV8yID0gInN0cjIiOw0KICAgICAgICAgICAgICAgIGlmKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzIiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8yIikgPT09IHRydWUpIHsgICAvLyBkaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZvbygpOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV8xXzI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (nested function)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0zLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoY2F0Y2ggYmxvY2spDQogKi8NCg0KdmFyIF9fMTBfNF8yXzFfMyA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9ldmFsID0gZXZhbDsNCiAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMSI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIHRocm93ICJlcnJvciI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBjYXRjaCAoZSkgew0KICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMiI7DQogICAgICAgICAgICAgICAgaWYgKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzMiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8zIikgPT09IHRydWUpIHsgIC8vIGRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzM7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (catch block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS00LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAod2l0aCBibG9jaykNCiAqLw0KDQp2YXIgX18xMF80XzJfMV80ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvID0gbmV3IE9iamVjdCgpOw0KICAgICAgICAgICAgby5fXzEwXzRfMl8xXzQgPSAic3RyMiI7DQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNCA9ICJzdHIxIjsNCiAgICAgICAgICAgIHdpdGggKG8pIHsNCiAgICAgICAgICAgICAgICBpZiAoX2V2YWwoIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNCIpID09PSB0cnVlICYmICAvLyBpbmRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIGV2YWwoIlwnc3RyMlwnID09PSBfXzEwXzRfMl8xXzQiKSA9PT0gdHJ1ZSkgeyAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV80Ow0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Indirect call to eval has context set to global context (with block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS01LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoaW5zaWRlIGFub3RoZXIgZXZhbCkNCiAqLw0KDQp2YXIgX18xMF80XzJfMV81ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNSA9ICJzdHIxIjsNCiAgICAgICAgICAgIHZhciByID0gZXZhbCgiXA0KICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOyBcDQogICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzUgPSBcJ3N0cjJcJzsgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZhbChcIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNSBcIikgJiYgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKFwiXCdzdHIyXCcgPT09IF9fMTBfNF8yXzFfNVwiKVwNCiAgICAgICAgICAgICAgICAgICAgICAgICIpOw0KICAgICAgICAgICAgcmV0dXJuIHI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzU7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (inside another eval)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1jLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBEaXJlY3QgdmFsIGNvZGUgaW4gbm9uLXN0cmljdCBtb2RlIC0gY2FuIGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIGNhbGxpbmcgY29udGV4dA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciB4ID0gMDsNCiAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyKCkgew0KICAgICBldmFsKCJ2YXIgeCA9IDEiKTsNCiAgICAgaWYgKHggPT09IDEpDQogICAgICAgIHJldHVybiB0cnVlOw0KICAgICB9ICgpOw0KICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Direct val code in non-strict mode - can instantiate variable in calling context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBTdHJpY3QgbW9kZSBldmFsIGNvZGUgY2Fubm90IGluc3RhbnRpYXRlIGZ1bmN0aW9ucyBpbiB0aGUgdmFyaWFibGUgZW52aXJvbm1lbnQgb2YgdGhlIGNhbGxlciB0byBldmFsDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZXZhbCgiKGZ1bmN0aW9uIGZ1bih4KXsgcmV0dXJuIHggfSkoMTApIik7DQogICAgICAgIHJldHVybiB0eXBlb2YgKGZ1bikgPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIERpcmVjdCBldmFsIGNvZGUgaW4gc3RyaWN0IG1vZGUgLSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdmFyIF8xMF80XzJfM19jXzFfcyA9IDA7DQogIGZ1bmN0aW9uIF8xMF80XzJfM19jXzFfc0Z1bmMoKSB7DQogICAgIGV2YWwoIid1c2Ugc3RyaWN0Jzt2YXIgXzEwXzRfMl8zX2NfMV9zID0gMSIpOw0KICAgICByZXR1cm4gXzEwXzRfMl8zX2NfMV9zPT09MDsNCiAgfSANCiAgcmV0dXJuIF8xMF80XzJfM19jXzFfc0Z1bmMoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Direct eval code in strict mode - cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIENhbGxpbmcgY29kZSBpbiBzdHJpY3QgbW9kZSAtIGV2YWwgY2Fubm90IGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGluZyBjb250ZXh0DQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciBfMTBfNF8yXzNfY18yX3MgPSAwOw0KICBmdW5jdGlvbiBfMTBfNF8yXzNfY18yX3NGdW5jKCkgew0KICAgICAndXNlIHN0cmljdCc7DQogICAgIGV2YWwoInZhciBfMTBfNF8yXzNfY18yX3MgPSAxIik7DQogICAgIHJldHVybiBfMTBfNF8yXzNfY18yX3M9PT0wOw0KICB9DQogIHJldHVybiBfMTBfNF8yXzNfY18yX3NGdW5jKCk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Calling code in strict mode - eval cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0xZ3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgdGhhdCBpbnZva2VkIHRoZSBldmFsIGlmIHRoZSBjb2RlIG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgaXMgc3RyaWN0IGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpldmFsKCJ2YXIgeCA9IDc7Iik7DQp4ID0gOTsNCnRocm93IE5vdEVhcmx5RXJyb3I7DQo=","commentary":"","description":"Strict Mode - eval code cannot instantiate variable in the variable environment of the calling context that invoked the eval if the code of the calling context is strict code","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGV2YWwoImZ1bmN0aW9uIF8xMF80XzJfMV8yX2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfMl9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwgd2hpY2ggaXMgY29udGFpbmVkIGluIHN0cmljdCBtb2RlIGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICAgICAgICBldmFsKCIndXNlIHN0cmljdCc7IGZ1bmN0aW9uIF8xMF80XzJfMV80X2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfNF9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval which is contained in strict mode code","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4yL1MxMC40LjIuMV9BMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyaWN0IGluZGlyZWN0IGV2YWwgc2hvdWxkIG5vdCBsZWFrIHRvcCBsZXZlbAogKiBkZWNsYXJhdGlvbnMgaW50byB0aGUgZ2xvYmFsIHNjb3BlCiAqIEBvbmx5U3RyaWN0CiAqLwoKInVzZSBzdHJpY3QiOwppZiAoISgnZm9vJyBpbiB0aGlzKSkgewogICgxLGV2YWwpKCcidXNlIHN0cmljdCI7IHZhciBmb28gPSA4ODsnKTsKICBpZiAoJ2ZvbycgaW4gdGhpcykgewogICAgJEVSUk9SKCJTdHJpY3QgaW5kaXJlY3QgZXZhbCBsZWFrZWQgYSB0b3AgbGV2ZWwgZGVjbGFyYXRpb24iKTsKICB9Cn0K","commentary":"","description":"Strict indirect eval should not leak top level\ndeclarations into the global scope","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKdmFyIHggPSAxOwp2YXIgeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB4ID0gMTsKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp2YXIgeCA9IDE7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnRoaXMueSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp2YXIgeSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnggPSAxOwp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOyAKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKZnVuY3Rpb24gZigpewogIHZhciBpOwogIHZhciBqOwogIHN0cjEgPSAnJzsKICBzdHIyID0gJyc7CiAgdmFyIHggPSAxOwogIHZhciB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqIEBub1N0cmljdAogKi8KCmZ1bmN0aW9uIGYoKXsKICB2YXIgaTsKICB2YXIgajsKICBzdHIxID0gJyc7CiAgc3RyMiA9ICcnOwoKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQoKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CgogIHRoaXMueCA9IDE7CiAgdGhpcy55ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","noStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICB2YXIgeCA9IDE7CiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIHRoaXMueSA9IDI7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7IAp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCgogIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB2YXIgeCA9IDE7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CiAgCiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHRoaXMueSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB2YXIgeSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHZhciB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB4ID0gMTsKICB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T9.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKDEpID09PSAnbnVtYmVyJyAmJiBiYXIuY2FsbCgxKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (Number)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMzsNCg0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDBncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQppZiAoKCJhYiIucmVwbGFjZSgiYiIsIGYpIT09ImFhIikgfHwgKHghPT11bmRlZmluZWQpKSB7DQogICAgICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCg0KcmV0dXJuIChmdW5jdGlvbigpIHsidXNlIHN0cmljdCI7IHJldHVybiAiYWIiLnJlcGxhY2UoImIiLCBmKT09PSJhYSI7fSgpKSAmJiAoeD09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDFncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KDQpmdW5jdGlvbiBmKCkgew0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQoNCmlmICggKCEoZnVuY3Rpb24oKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiO30oKSkpIHx8ICh4IT09Zm5HbG9iYWxPYmplY3QoKSkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSk9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDJncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KaWYgKCAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSkhPT0iYWEiKSB8fCAoeCE9PXVuZGVmaW5lZCkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDMuanMNCiAqIEBkZXNjcmlwdGlvbiBOb24gc3RyaWN0IG1vZGUgc2hvdWxkIFRvT2JqZWN0IHRoaXNBcmcgaWYgbm90IGFuIG9iamVjdC4gIEFic3RyYWN0IGVxdWFsaXR5IG9wZXJhdG9yIHNob3VsZCBzdWNjZWVkLg0KICovDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCl7DQogIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAieCIsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9IH0pOyANCiAgaWYoKDUpLnggPT0gMCkgcmV0dXJuIGZhbHNlOw0KICBpZighKCg1KS54ID09IDUpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Non strict mode should ToObject thisArg if not an object.  Abstract equality operator should succeed.","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-103.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICoNCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjMvMTAuNC4zLTEtMTA0LmpzDQogKiBAb25seVN0cmljdA0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBtb2RlIHNob3VsZCBub3QgVG9PYmplY3QgdGhpc0FyZyBpZiBub3QgYW4gb2JqZWN0LiAgU3RyaWN0IGVxdWFsaXR5IG9wZXJhdG9yIHNob3VsZCBzdWNjZWVkLg0KICovDQogDQogDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpew0KICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgIngiLCB7IGdldDogZnVuY3Rpb24gKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0pOyANCiAgaWYoISgoNSkueCA9PT0gNSkpIHJldHVybiBmYWxzZTsNCiAgcmV0dXJuIHRydWU7DQp9DQoNCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict mode should not ToObject thisArg if not an object.  Strict equality operator should succeed.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-104.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQ3JlYXRlZCBiYXNlZCBvbiBmZWVkYmFjayBpbiBodHRwczovL2J1Z3MuZWNtYXNjcmlwdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMyANCiAqDQogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4zLzEwLjQuMy0xLTEwNS5qcw0KICogQGRlc2NyaXB0aW9uIE5vbiBzdHJpY3QgbW9kZSBzaG91bGQgVG9PYmplY3QgdGhpc0FyZyBpZiBub3QgYW4gb2JqZWN0LiAgUmV0dXJuIHR5cGUgc2hvdWxkIGJlIG9iamVjdCBhbmQgc3RyaWN0IGVxdWFsaXR5IHNob3VsZCBmYWlsLg0KICovDQogDQogZnVuY3Rpb24gdGVzdGNhc2UoKXsNCiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE9iamVjdC5wcm90b3R5cGUsICJ4IiwgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0gfSk7IA0KICBpZigoNSkueCA9PT0gNSkgcmV0dXJuIGZhbHNlOw0KICBpZighKHR5cGVvZiAoNSkueCA9PT0gIm9iamVjdCIpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQoNCg==","commentary":"Created based on feedback in https://bugs.ecmascript.org/show_bug.cgi?id=333","description":"Non strict mode should ToObject thisArg if not an object.  Return type should be object and strict equality should fail.","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-105.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQ3JlYXRlZCBiYXNlZCBvbiBmZWVkYmFjayBpbiBodHRwczovL2J1Z3MuZWNtYXNjcmlwdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMyANCiAqDQogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4zLzEwLjQuMy0xLTEwNi5qcw0KICogQG9ubHlTdHJpY3QNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgbW9kZSBzaG91bGQgbm90IFRvT2JqZWN0IHRoaXNBcmcgaWYgbm90IGFuIG9iamVjdC4gIFJldHVybiB0eXBlIHNob3VsZCBiZSAnbnVtYmVyJy4NCiAqLw0KIA0KIGZ1bmN0aW9uIHRlc3RjYXNlKCl7DQogIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAieCIsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7IA0KICBpZighKHR5cGVvZiAoNSkueCA9PT0gIm51bWJlciIpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"Created based on feedback in https://bugs.ecmascript.org/show_bug.cgi?id=333","description":"Strict mode should not ToObject thisArg if not an object.  Return type should be 'number'.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-106.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpICE9PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpID09PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCnJldHVybiBmKCkgIT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCmlmIChmKCkgPT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZXZhbCgidHlwZW9mIHRoaXMiKSA9PT0gInVuZGVmaW5lZCIpICYmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKGV2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-18gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCnJldHVybiBteV9ldmFsKCJ0aGlzIikgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCmlmIChteV9ldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoc3RyaW5nKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKCcxJykgPT09ICdzdHJpbmcnICYmIGJhci5jYWxsKCcxJykgPT09ICdvYmplY3QnOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"this is not coerced to an object in strict mode (string)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG15X2V2YWwgPSBldmFsOw0KcmV0dXJuIG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG15X2V2YWwgPSBldmFsOw0KaWYgKG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpICkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAodW5kZWZpbmVkKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KICByZXR1cm4gZm9vLmNhbGwodW5kZWZpbmVkKSA9PT0gJ3VuZGVmaW5lZCcgJiYgYmFyLmNhbGwoKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (undefined)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoYm9vbGVhbikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gYmFyKCkNCiAgew0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KDQogIHJldHVybiBmb28uY2FsbCh0cnVlKSA9PT0gJ2Jvb2xlYW4nICYmIGJhci5jYWxsKHRydWUpID09PSAnb2JqZWN0JzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (boolean)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQppZiAoISAoKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoZnVuY3Rpb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9IA0KDQogIGZ1bmN0aW9uIGJhcigpDQogIHsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gZm9vYmFyKCkNCiAgew0KICB9DQoNCiAgcmV0dXJuIGZvby5jYWxsKGZvb2JhcikgPT09ICdmdW5jdGlvbicgJiYgYmFyLmNhbGwoZm9vYmFyKSA9PT0gJ2Z1bmN0aW9uJzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (function)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KcmV0dXJuIG8uZm9vPT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCnJldHVybiBvLmZvbz09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCmlmIChvLmZvbyE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KcmV0dXJuIHg9PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KaWYgKHghPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0IDogZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9IH0pOw0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQppZiAoby5mb28hPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCnJldHVybiB4PT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCmlmICh4IT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCnJldHVybiBmb28oKT09PXVuZGVmaW5lZDsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCmlmIChmb28oKSE9PXVuZGVmaW5lZCl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZXZhbCgiZigpOyIpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISBldmFsKCJmKCk7Iikpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZm5HbG9iYWxPYmplY3QoKS5mID0gZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKEZ1bmN0aW9uKCJyZXR1cm4gZigpOyIpKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkgIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIChuZXcgRnVuY3Rpb24oInJldHVybiBmKCk7IikpKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghICggKG5ldyBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSkgKCkgKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KcmV0dXJuIGYuYXBwbHkobnVsbCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KaWYgKCEgZi5hcHBseShudWxsKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkodW5kZWZpbmVkKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiBmLmFwcGx5KG8pOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghIGYuYXBwbHkobykpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGYoKSB7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiBmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCmlmIChmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpICE9PSBmbkdsb2JhbE9iamVjdCgpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQpyZXR1cm4gZi5jYWxsKG51bGwpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQppZiAoISBmLmNhbGwobnVsbCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKHVuZGVmaW5lZCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIGYuY2FsbChvKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgZi5jYWxsKG8pKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSA9PT0gZm5HbG9iYWxPYmplY3QoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KaWYgKGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCnJldHVybiBmLmJpbmQobnVsbCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCmlmICghIChmLmJpbmQobnVsbCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKHVuZGVmaW5lZCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gZi5iaW5kKG8pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoZi5iaW5kKG8pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZigpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQpyZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQppZiAoZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgIT09IGZuR2xvYmFsT2JqZWN0KCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQpyZXR1cm4gZm9vKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQppZiAoISBmb28oKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpKSApew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO3JldHVybiBmKCk7IikoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7cmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkge3JldHVybiBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmbkdsb2JhbE9iamVjdCgpLmYgPSBmdW5jdGlvbigpICB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gbmV3IEZ1bmN0aW9uKCJcInVzZSBzdHJpY3RcIjtyZXR1cm4gZigpOyIpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7cmV0dXJuIG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKX07DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5hcHBseSh1bmRlZmluZWQpO30pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7IH0pKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCmlmICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7fSkoKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9gs.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgovKioKICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy9TMTAuNC4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBXaGVuIGNhbGxpbmcgYSBzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIGFzIGEKICogZnVuY3Rpb24sICJ0aGlzIiBzaG91bGQgYmUgYm91bmQgdG8gdW5kZWZpbmVkLgogKiBAb25seVN0cmljdAogKi8KCiJ1c2Ugc3RyaWN0IjsKdmFyIHRoYXQgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpOwppZiAodGhhdCAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogInRoaXMiIGxlYWtlZCBhczogJyArIHRoYXQpOwp9Cgo=","commentary":"","description":"When calling a strict anonymous function as a\nfunction, \"this\" should be bound to undefined.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/S10.4.3_A1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgb2JqZWN0IGlzIGltbXV0YWJsZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICAoZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoImFyZ3VtZW50cyA9IDEwIik7DQogICAgICAgICAgICB9KSgzMCk7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiAoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgY2Fubm90IGJlIGFzc2lnbmVkIHRvIGluIGEgc3RyaWN0IGZ1bmN0aW9uDQogKiBAb25seVN0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCg0KZnVuY3Rpb24gZl8xMF81XzFfZ3MoKXsNCiAgICBhcmd1bWVudHMgPSA3Ow0KfQ0KDQo=","commentary":"","description":"Strict Mode - arguments cannot be assigned to in a strict function","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpcyBpbW11dGFibGUgaW4gZXZhbCdlZCBmdW5jdGlvbnMNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBldmFsKCIoZnVuY3Rpb24gXzEwXzVfN19iXzFfZnVuKCkgeyBhcmd1bWVudHMgPSAxMDt9ICgpKTsiKTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable in eval'ed functions","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpbmRleCBhc3NpZ25tZW50IGlzIGFsbG93ZWQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGZ1bmN0aW9uIF8xMF81XzdfYl8yX2Z1bigpIHsNCiAgICAgICAgICAgIGFyZ3VtZW50c1s3XSA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1s3XSA9PT0gMTI7DQogICAgICAgIH07DQoNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl8yX2Z1bigzMCk7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - arguments object index assignment is allowed","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gQWRkaW5nIHByb3BlcnR5IHRvIHRoZSBhcmd1bWVudHMgb2JqZWN0IHN1Y2Nlc3NmdWwgdW5kZXIgc3RyaWN0IG1vZGUgDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICBmdW5jdGlvbiBfMTBfNV83X2JfM19mdW4oKSB7DQogICAgICAgICAgICBhcmd1bWVudHNbMV0gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHNbMF0gPSAzMCAmJiBhcmd1bWVudHNbMV0gPT09IDEyOw0KICAgICAgICB9Ow0KDQogICAgICAgIHJldHVybiBfMTBfNV83X2JfM19mdW4oMzApOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Adding property to the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRGVsZXRpbmcgcHJvcGVydHkgb2YgdGhlIGFyZ3VtZW50cyBvYmplY3Qgc3VjY2Vzc2Z1bCB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgZnVuY3Rpb24gXzEwXzVfN19iXzRfZnVuKCkgew0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzEgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIGFyZ3VtZW50c1sxXSA9PT0gMTI7DQogICAgICAgICAgICBkZWxldGUgYXJndW1lbnRzWzFdOw0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzIgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIHR5cGVvZiBhcmd1bWVudHNbMV0gPT09ICJ1bmRlZmluZWQiOw0KICAgICAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80XzEgJiYgXzEwXzVfN19iXzRfMjsNCiAgICAgICAgfTsNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80X2Z1bigzMCwgMTIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Deleting property of the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gcmVtYWlucyBzYW1lIGFmdGVyIGNoYW5naW5nIGFjdHVhbCBwYXJhbWV0ZXJzIGluIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICBhID0gMTsgYiA9ICdzdHInOyBjID0gMi4xOw0KICAgIHJldHVybiAoYXJndW1lbnRzWzBdID09PSAxMCAmJiBhcmd1bWVudHNbMV0gPT09ICdzc3MnICYmIGFyZ3VtZW50c1syXSA9PT0gMSk7DQogIH0NCiAgcmV0dXJuIGZvbygxMCwgJ3NzcycsIDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] remains same after changing actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIGNoYW5nZSB3aXRoIGFjdHVhbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgZnVuY3Rpb24gZm9vKGEsYixjKQ0KICB7DQogICAgYSA9IDE7IGIgPSAnc3RyJzsgYyA9IDIuMTsNCiAgICBpZihhcmd1bWVudHNbMF0gPT09IDEgJiYgYXJndW1lbnRzWzFdID09PSAnc3RyJyAmJiBhcmd1bWVudHNbMl0gPT09IDIuMSkNCiAgICAgIHJldHVybiB0cnVlOyAgIA0KICB9DQogIHJldHVybiBmb28oMTAsJ3NzcycsMSk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments[i] change with actual parameters","path":"TestCases/ch10/10.6/10.6-10-c-ii-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gZG9lc24ndCBtYXAgdG8gYWN0dWFsIHBhcmFtZXRlcnMgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsgICAgDQogICAgYXJndW1lbnRzWzBdID0gMTsgYXJndW1lbnRzWzFdID0gJ3N0cic7IGFyZ3VtZW50c1syXSA9IDIuMTsNCiAgICByZXR1cm4gMTAgPT09IGEgJiYgJ3NzcycgPT09IGIgJiYgMSA9PT0gYzsNCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] doesn't map to actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIG1hcCB0byBhY3R1YWwgcGFyYW1ldGVyDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgIGFyZ3VtZW50c1swXSA9IDE7IGFyZ3VtZW50c1sxXSA9ICdzdHInOyBhcmd1bWVudHNbMl0gPSAyLjE7DQogICAgaWYoMSA9PT0gYSAmJiAnc3RyJyA9PT0gYiAmJiAyLjEgPT09IGMpDQogICAgICByZXR1cm4gdHJ1ZTsgICANCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] map to actual parameter","path":"TestCases/ch10/10.6/10.6-10-c-ii-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTEtYi0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgaW5kZXggcHJvcGVydHkgJzAnIGFzIGl0cyBvd24gcHJvcGVydHksIGl0IHNob3VsZGUgYmUgd3JpdGFibGUsIGVudW1lcmFibGUsIGNvbmZpZ3VyYWJsZSBhbmQgZG9lcyBub3QgaW52b2tlIHRoZSBzZXR0ZXIgZGVmaW5lZCBvbiBPYmplY3QucHJvdG90eXBlWzBdIChTdGVwIDExLmIpDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgdmFyIGdldEZ1bmMgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAiMCIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGdldEZ1bmMsDQogICAgICAgICAgICAgICAgc2V0OiBzZXRGdW5jLA0KICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIHZhciBhcmdPYmogPSAoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzIH0pKDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5VmFsdWUgPSBmYWxzZTsNCiAgICAgICAgICAgIHZlcmlmeVZhbHVlID0gKGFyZ09ialswXSA9PT0gMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiMCIgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCIwIikpIHsNCiAgICAgICAgICAgICAgICAgICAgdmVyaWZ5RW51bWVyYWJsZSA9IHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09ialswXSA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmpbMF0gPT09IDEwMDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5Q29uZmlndXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBkZWxldGUgYXJnT2JqWzBdOw0KICAgICAgICAgICAgdmVyaWZ5Q29uZmlndXJhYmxlID0gYXJnT2JqLmhhc093blByb3BlcnR5KCIwIik7DQoNCiAgICAgICAgICAgIHJldHVybiB2ZXJpZnlWYWx1ZSAmJiB2ZXJpZnlXcml0YWJsZSAmJiB2ZXJpZnlFbnVtZXJhYmxlICYmICF2ZXJpZnlDb25maWd1cmFibGUgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbMF07DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has index property '0' as its own property, it shoulde be writable, enumerable, configurable and does not invoke the setter defined on Object.prototype[0] (Step 11.b)","path":"TestCases/ch10/10.6/10.6-11-b-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZWUgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlZTsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing callee property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-12-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMi5qcw0KICogQGRlc2NyaXB0aW9uIGFyZ3VtZW50cy5jYWxsZWUgaGFzIGNvcnJlY3QgYXR0cmlidXRlcw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZWUiKTsNCiAgaWYoZGVzYy5jb25maWd1cmFibGUgPT09IHRydWUgJiYNCiAgICAgZGVzYy5lbnVtZXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLndyaXRhYmxlID09PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ2dldCcpID09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3B1dCcpID09IGZhbHNlKQ0KICAgIHJldHVybiB0cnVlOyAgIA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee has correct attributes","path":"TestCases/ch10/10.6/10.6-12-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZXIgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlcjsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing caller property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-13-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW4gbm9uLXN0cmljdCBtb2RlLCBhcmd1bWVudHMgb2JqZWN0IHNob3VsZCBoYXZlIGl0cyBvd24gJ2NhbGxlZScgcHJvcGVydHkgZGVmaW5lZCAoU3RlcCAxMy5hKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNhbGxlZSIsIHsNCiAgICAgICAgICAgICAgICB2YWx1ZTogMSwNCiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIGFyZ09iaiA9IChmdW5jdGlvbiAoKSB7IHJldHVybiBhcmd1bWVudHMgfSkoKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2ZXJpZnlWYWx1ZSA9IHR5cGVvZiBhcmdPYmouY2FsbGVlID09PSAiZnVuY3Rpb24iOw0KICAgICAgICAgICAgDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09iai5jYWxsZWUgPSAxMDAxOw0KICAgICAgICAgICAgdmVyaWZ5V3JpdGFibGUgPSAoYXJnT2JqLmNhbGxlZSA9PT0gMTAwMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiY2FsbGVlIiAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5jYWxsZWU7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZTsNCiAgICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgICAgIGRlbGV0ZSBPYmplY3QucHJvdG90eXBlLmNhbGxlZTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)","path":"TestCases/ch10/10.6/10.6-13-a-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0yLmpzDQogKiBAZGVzY3JpcHRpb24gQSBkaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgew0KICAgICAgICBpZihhcmd1bWVudHMuY2FsbGVlLmNhbGxlcj09PXVuZGVmaW5lZCkgew0KICAgICAgICAgIGNhbGxlZD10cnVlOyAvLyBFeHRlbnNpb24gbm90IHN1cHBvcnRlZCAtIGZha2UgaXQNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcih0cnVlKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICANCiAgICB0ZXN0MSgpOw0KICAgIHJldHVybiBjYWxsZWQ7ICAgDQp9DQoNCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"A direct call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0zLmpzDQogKiBAZGVzY3JpcHRpb24gQW4gaW5kaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgDQogICAgICAgaWYgKGFyZ3VtZW50cy5jYWxsZWUuY2FsbGVyPT09dW5kZWZpbmVkKSB7DQogICAgICAgICBjYWxsZWQgPSB0cnVlOyAgLy9FeHRlbnNpb24gbm90IHN1cHBvcnRlZCAtIGZha2UgaXQNCiAgICAgICB9IGVsc2UgeyAgICAgDQogICAgICAgICB2YXIgZXhwbGljaXQgPSBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcjsNCiAgICAgICAgIGV4cGxpY2l0KHRydWUpOw0KICAgICAgIH0NCiAgICB9DQogICAgDQogICAgdGVzdDEoKTsNCiAgICByZXR1cm4gY2FsbGVkOyAgIA0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"An indirect call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVyIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZXI7DQogIH0NCiAgY2F0Y2ggKGUpIHsNCiAgICBpZihlIGluc3RhbmNlb2YgVHlwZUVycm9yKQ0KICAgICAgcmV0dXJuIHRydWU7DQogIH0NCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Accessing caller property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVyIik7DQogIHJldHVybiBkZXNjIT09IHVuZGVmaW5lZDsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"arguments.caller exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgIA0KICAndXNlIHN0cmljdCc7ICAgIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZXIiKTsNCiAgDQogIHJldHVybiAoZGVzYy5jb25maWd1cmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCd2YWx1ZScpID09IGZhbHNlICAmJiANCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdzZXQnKSA9PSB0cnVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgDQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.caller is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVlIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQogIGNhdGNoIChlKSB7DQogICAgcmV0dXJuIChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Accessing callee property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVlIik7DQogIHJldHVybiBkZXNjICE9PSB1bmRlZmluZWQ7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.callee is exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogICd1c2Ugc3RyaWN0JzsgICAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImNhbGxlZSIpOw0KICByZXR1cm4gKGRlc2MuY29uZmlndXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgPT0gZmFsc2UgJiYNCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3NldCcpID09IHRydWUpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSAnY2FsbGVlJyBleGlzdHMgYW5kICdjYWxsZXInIGV4aXN0cyB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBhcmdPYmogPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzOw0KICAgICAgICB9ICgpOw0KICAgICAgICByZXR1cm4gYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKSAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlciIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - 'callee' exists and 'caller' exists under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVyJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfYl8xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9iXzEpICYmIF8xMF82XzE0X2JfMSA9PT0gImNhbGxlciIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZXIiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'caller' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZXInIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlciA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVlJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfY18xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9jXzEpICYmIF8xMF82XzE0X2NfMSA9PT0gImNhbGxlZSIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'callee' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZWUnIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlZSA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbiwgYnV0IGRvZXMgbm90IHRocm93IGFuIGVhcmx5IGVycm9yDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGZfMTBfNl8xX2dzKCl7DQogICAgcmV0dXJuIGFyZ3VtZW50cy5jYWxsZWU7DQp9DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function, but does not throw an early error","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbg0KICogQG9ubHlTdHJpY3QNCiAqIEBuZWdhdGl2ZSAuDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZl8xMF82XzFfZ3MoKXsNCiAgICByZXR1cm4gYXJndW1lbnRzLmNhbGxlZTsNCn0NCmZfMTBfNl8xX2dzKCk7DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function","negative":".","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNS0xLmpzDQogKiBAZGVzY3JpcHRpb24gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBBcmd1bWVudHMgaXMgc2V0IHRvIE9iamVjdCBwcm90b3R5cGUgb2JqZWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgaWYoT2JqZWN0LmdldFByb3RvdHlwZU9mKGFyZ3VtZW50cykgPT09IE9iamVjdC5nZXRQcm90b3R5cGVPZih7fSkpDQogICAgcmV0dXJuIHRydWU7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"[[Prototype]] property of Arguments is set to Object prototype object","path":"TestCases/ch10/10.6/10.6-5-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0xLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCBwcm9wZXJ0eSBvZiBhcmd1bWVudHMgb2JqZWN0IGV4aXN0cw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJsZW5ndGgiKTsNCiAgcmV0dXJuIGRlc2MgIT09IHVuZGVmaW5lZA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length property of arguments object exists","path":"TestCases/ch10/10.6/10.6-6-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0yLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBoYXMgY29ycmVjdCBhdHRyaWJ1dGVzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImxlbmd0aCIpOw0KICBpZihkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gdHJ1ZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2Mud3JpdGFibGUgPT09IHRydWUgKQ0KICAgIHJldHVybiB0cnVlOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object has correct attributes","path":"TestCases/ch10/10.6/10.6-6-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0zLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBleGlzdHMNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgdmFyIGFyZ3VtZW50cz0gdW5kZWZpbmVkOw0KCXJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBhcmd1bWVudHMubGVuZ3RoICE9PSB1bmRlZmluZWR9KSgpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object for 0 argument function exists","path":"TestCases/ch10/10.6/10.6-6-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi00LmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBjYWxsIGlzIDAgZXZlbiB3aXRoIGZvcm1hbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgIHZhciBhcmd1bWVudHM9IHVuZGVmaW5lZDsNCglyZXR1cm4gKGZ1bmN0aW9uIChhLGIsYykge3JldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAwfSkoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"'length' property of arguments object for 0 argument function call is 0 even with formal parameters","path":"TestCases/ch10/10.6/10.6-6-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNy0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgbGVuZ3RoIGFzIGl0cyBvd24gcHJvcGVydHkgYW5kIGRvZXMgbm90IGludm9rZSB0aGUgc2V0dGVyIGRlZmluZWQgb24gT2JqZWN0LnByb3RvdHlwZS5sZW5ndGggKFN0ZXAgNykNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdmFyIGRhdGEgPSAiZGF0YSI7DQogICAgICAgICAgICB2YXIgZ2V0RnVuYyA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gMTI7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAibGVuZ3RoIiwgew0KICAgICAgICAgICAgICAgIGdldDogZ2V0RnVuYywNCiAgICAgICAgICAgICAgICBzZXQ6IHNldEZ1bmMsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2YXIgYXJnT2JqID0gKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGFyZ3VtZW50cyB9KSgpOw0KICAgICAgICAgICAgdmVyaWZ5VmFsdWUgPSAoYXJnT2JqLmxlbmd0aCA9PT0gMCk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlXcml0YWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgYXJnT2JqLmxlbmd0aCA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmoubGVuZ3RoID09PSAxMDAxKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gYXJnT2JqKSB7DQogICAgICAgICAgICAgICAgaWYgKHAgPT09ICJsZW5ndGgiKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5sZW5ndGg7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZSAmJiBkYXRhID09PSAiZGF0YSI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgT2JqZWN0LnByb3RvdHlwZS5sZW5ndGg7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)","path":"TestCases/ch10/10.6/10.6-7-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBXaGVuIGNvbnRyb2wgZW50ZXJzIGFuIGV4ZWN1dGlvbiBjb250ZXh0IGZvciBmdW5jdGlvbiBjb2RlLAogKiBhbiBhcmd1bWVudHMgb2JqZWN0IGlzIGNyZWF0ZWQgYW5kIGluaXRpYWxpc2VkCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMS5qcwogKiBAZGVzY3JpcHRpb24gRXhlY3V0aW5nIGZ1bmN0aW9uIHdoaWNoIHVzZXMgYXJndW1lbnRzIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYxKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYyKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"When control enters an execution context for function code,\nan arguments object is created and initialised","description":"Executing function which uses arguments object","path":"TestCases/ch10/10.6/S10.6_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdmFsdWUgb2YgdGhlIGludGVybmFsIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgdGhlCiAqIGNyZWF0ZWQgYXJndW1lbnRzIG9iamVjdCBpcyB0aGUgb3JpZ2luYWwgT2JqZWN0IHByb3RvdHlwZSBvYmplY3QsIHRoZSBvbmUKICogdGhhdCBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBPYmplY3QucHJvdG90eXBlCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZT09PU9iamVjdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTsKfQp0cnl7CiAgaWYoZjEoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMxOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTt9Owp0cnl7CiAgaWYoZjIoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMyOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzI6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"The value of the internal [[Prototype]] property of the\ncreated arguments object is the original Object prototype object, the one\nthat is the initial value of Object.prototype","description":"Checking arguments.constructor.prototype===Object.prototype","path":"TestCases/ch10/10.6/S10.6_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.callee property","path":"TestCases/ch10/10.6/S10.6_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJjYWxsZWUiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgY2FsbGVlIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAiY2FsbGVlIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.callee property fails","path":"TestCases/ch10/10.6/S10.6_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMuY2FsbGVlIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiAoZGVsZXRlIGFyZ3VtZW50cy5jYWxsZWUpOwp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBjYWxsZWUgaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmNhbGxlZSk7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.callee property fails","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5jYWxsZWUgcHJvcGVydHkKICogQG5vU3RyaWN0CiAqLwoKdmFyIHN0ciA9ICJzb21ldGhpbmcgZGlmZmVyZW50IjsKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgYXJndW1lbnRzLmNhbGxlZSA9IHN0cjsKICByZXR1cm4gYXJndW1lbnRzOwp9Cgp0cnl7CiAgaWYoZjEoKS5jYWxsZWUgIT09IHN0cil7CiAgICAkRVJST1IoIiMxOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IFJlYWRPbmx5IH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgICBhcmd1bWVudHMuY2FsbGVlID0gc3RyOwogICAgcmV0dXJuIGFyZ3VtZW50czsKICB9CnRyeXsKICBpZihmMigpLmNhbGxlZSAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgY2FsbGVlIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Overriding arguments.callee property","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBjYWxsZWUgaXMgdGhlCiAqIEZ1bmN0aW9uIG9iamVjdCBiZWluZyBleGVjdXRlZAogKgogKiBAcGF0aCBjaDEwLzEwLjYvUzEwLjZfQTQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHRoYXQgYXJndW1lbnRzLmNhbGxlZSA9PT0gZnVuY3Rpb24gb2JqZWN0CiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuY2FsbGVlOwp9Cgp0cnl7CiAgaWYoZjEgIT09IGYxKCkpewogICAgJEVSUk9SKCcjMTogYXJndW1lbnRzLmNhbGxlZSA9PT0gZjEnKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZTt9OwoKdHJ5ewogIGlmKGYyICE9PSBmMigpKXsKICAgICRFUlJPUignIzI6IGFyZ3VtZW50cy5jYWxsZWUgPT09IGYyJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBleGlzdHMiKTsKfQoK","commentary":"The initial value of the created property callee is the\nFunction object being executed","description":"Checking that arguments.callee === function object","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJsZW5ndGgiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAibGVuZ3RoIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGxlbmd0aCBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYyKCkpewogICAgJEVSUk9SKCIjMjogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5sZW5ndGggcHJvcGVydHkKICovCgp2YXIgc3RyID0gInNvbWV0aGluZyBkaWZmZXJlbnQiOwovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICBhcmd1bWVudHMubGVuZ3RoID0gc3RyOwogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICBpZihmMSgpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICAgIGFyZ3VtZW50cy5sZW5ndGggPSBzdHI7CiAgICByZXR1cm4gYXJndW1lbnRzOwogIH07CnRyeXsKICBpZihmMigpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Overriding arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBsZW5ndGggaXMgdGhlIG51bWJlcgogKiBvZiBhY3R1YWwgcGFyYW1ldGVyIHZhbHVlcyBzdXBwbGllZCBieSB0aGUgY2FsbGVyCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNi5qcwogKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGZ1bmN0aW9uLCB0aGF0IHJldHVybmVkIGFyZ3VtZW50cy5sZW5ndGgKICovCgpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMubGVuZ3RoOwp9CgovL0NIRUNLIzEKaWYoIShmMSgpID09PSAwKSl7CiAgJEVSUk9SKCcjMTogYXJndW1lbnQubGVuZ3RoID09PSAwJyk7Cn0KCi8vQ0hFQ0sjMgppZighKGYxKDApID09PSAxKSl7CiAgJEVSUk9SKCcjMjogYXJndW1lbnQubGVuZ3RoID09PSAxJyk7Cn0KCi8vQ0hFQ0sjMwppZighKGYxKDAsIDEpID09PSAyKSl7CiAgJEVSUk9SKCcjMzogYXJndW1lbnQubGVuZ3RoID09PSAyJyk7Cn0KCi8vQ0hFQ0sjNAppZighKGYxKDAsIDEsIDIpID09PSAzKSl7CiAgJEVSUk9SKCcjNDogYXJndW1lbnQubGVuZ3RoID09PSAzJyk7Cn0KCi8vQ0hFQ0sjNQppZighKGYxKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjNTogYXJndW1lbnQubGVuZ3RoID09PSA0Jyk7Cn0KCnZhciBmMiA9IGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fTsKCi8vQ0hFQ0sjNgppZighKGYyKCkgPT09IDApKXsKICAkRVJST1IoJyM2OiBhcmd1bWVudC5sZW5ndGggPT09IDAnKTsKfQoKLy9DSEVDSyM3CmlmKCEoZjIoMCkgPT09IDEpKXsKICAkRVJST1IoJyM3OiBhcmd1bWVudC5sZW5ndGggPT09IDEnKTsKfQoKLy9DSEVDSyM4CmlmKCEoZjIoMCwgMSkgPT09IDIpKXsKICAkRVJST1IoJyM4OiBhcmd1bWVudC5sZW5ndGggPT09IDInKTsKfQoKLy9DSEVDSyM5CmlmKCEoZjIoMCwgMSwgMikgPT09IDMpKXsKICAkRVJST1IoJyM5OiBhcmd1bWVudC5sZW5ndGggPT09IDMnKTsKfQoKLy9DSEVDSyMxMAppZighKGYyKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjMTA6IGFyZ3VtZW50Lmxlbmd0aCA9PT0gNCcpOwp9Cgo=","commentary":"The initial value of the created property length is the number\nof actual parameter values supplied by the caller","description":"Create function, that returned arguments.length","path":"TestCases/ch10/10.6/S10.6_A6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHZXQgYXJndW1lbnRzIG9mIGZ1bmN0aW9uCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNy5qcwogKiBAZGVzY3JpcHRpb24gVXNlIHByb3BlcnR5IGFyZ3VtZW50cwogKi8KCmZ1bmN0aW9uIGYxKCkgewogIHJldHVybiBhcmd1bWVudHM7Cn0KICAKLy9DSEVDSyMxLTUKZm9yKHZhciBpID0gMTsgaSA8IDU7IGkrKyl7ICAKaWYgKGYxKDEsMiwzLDQsNSlbaV0gIT09IChpKzEpKQogICRFUlJPUigiIyIraSsiOiBSZXR1cm5pbmcgZnVuY3Rpb24ncyBhcmd1bWVudHMgd29yayB3cm9uZywgZjEoMSwyLDMsNCw1KVsiK2krIl0gIT09ICIrKGkrMSkpOwp9Cgo=","commentary":"Get arguments of function","description":"Use property arguments","path":"TestCases/ch10/10.6/S10.6_A7.js"}]}}
\ No newline at end of file
+{"testsCollection":{"name":"Chapter - ch10","numTests":"377","tests":[{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBEZWZpbmluZyBmdW5jdGlvbiBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24KICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gMTsKfQppZih0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoZjEpIT09ImZ1bmN0aW9uIicpOwoK","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Defining function by a FunctionDeclaration","path":"TestCases/ch10/10.1/S10.1.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbgogKi8KCi8vQ0hFQ0sjMQp2YXIgeD1mdW5jdGlvbiBmMSgpe3JldHVybiAxO30oKTsKaWYoeCE9PTEpCiAgJEVSUk9SKCcjMTogQ3JlYXRlIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwoKLy9DSEVDSyMyCnZhciB5PWZ1bmN0aW9uICAoKXtyZXR1cm4gMjt9KCk7CmlmKHkhPT0yKXsKICAkRVJST1IoJyMyOiBDcmVhdGUgYW4gYW5vbnltb3VzIGZ1bmN0aW9uIGR5bmFtaWNhbGx5IGVpdGhlciBieSB1c2luZyBhIEZ1bmN0aW9uRXhwcmVzc2lvbicpOwp9CgovL0NIRUNLIzIKdmFyIHogPSAoZnVuY3Rpb24oKXtyZXR1cm4gMzt9KSgpOwppZih6IT09Myl7CiAgJEVSUk9SKCcjMzogQ3JlYXRlIGFuIGFub255bW91cyBmdW5jdGlvbiBkeW5hbWljYWxseSBlaXRoZXIgYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gd3JhcHBlZCBpbiBhIGdyb3VwIG9wZXJhdG9yJyk7Cn0KCg==","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using a FunctionExpression","path":"TestCases/ch10/10.1/S10.1.1_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBQcm9ncmFtIGZ1bmN0aW9ucyBhcmUgZGVmaW5lZCBpbiBzb3VyY2UgdGV4dCBieSBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gb3IgY3JlYXRlZCBkeW5hbWljYWxseSBlaXRoZXIKICogYnkgdXNpbmcgYSBGdW5jdGlvbkV4cHJlc3Npb24gb3IgYnkgdXNpbmcgdGhlIGJ1aWx0LWluIEZ1bmN0aW9uIG9iamVjdCBhcyBhIGNvbnN0cnVjdG9yCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbiBkeW5hbWljYWxseSBieSB1c2luZyB0aGUgYnVpbHQtaW4gRnVuY3Rpb24gb2JqZWN0IGFzIGEgY29uc3RydWN0b3IKICovCgovL0NIRUNLIzEKdmFyIHg9bmV3IGZ1bmN0aW9uIGYxKCl7cmV0dXJuIDE7fTsKaWYodHlwZW9mKHguY29uc3RydWN0b3IpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMxOiB0eXBlb2YoeC5jb25zdHJ1Y3RvcikhPT0iZnVuY3Rpb24iJyk7Cgo=","commentary":"Program functions are defined in source text by a FunctionDeclaration or created dynamically either\nby using a FunctionExpression or by using the built-in Function object as a constructor","description":"Creating function dynamically by using the built-in Function object as a constructor","path":"TestCases/ch10/10.1/S10.1.1_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGVyZSBhcmUgdHdvIHR5cGVzIG9mIEZ1bmN0aW9uIG9iamVjdHMuIEludGVybmFsIGZ1bmN0aW9ucwogKiBhcmUgYnVpbHQtaW4gb2JqZWN0cyBvZiB0aGUgbGFuZ3VhZ2UsIHN1Y2ggYXMgcGFyc2VJbnQgYW5kIE1hdGguZXhwCiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS4xX0EyX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB0eXBlcyBvZiBwYXJzZUludCBhbmQgTWF0aC5leHAKICovCgovL0NIRUNLIzEKaWYodHlwZW9mKE1hdGguZXhwKSE9PSJmdW5jdGlvbiIpCiAgJEVSUk9SKCcjMTogdHlwZW9mKE1hdGguZXhwKDEwKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKE1hdGguZXhwKCkpKTsKCi8vQ0hFQ0sjMgppZih0eXBlb2YocGFyc2VJbnQpIT09ImZ1bmN0aW9uIikKICAkRVJST1IoJyMyOiB0eXBlb2YocGFyc2VJbnQoKSkhPT0iZnVuY3Rpb24iICcrdHlwZW9mKHBhcnNlSW50KCkpKTsKICAKCg==","commentary":"There are two types of Function objects. Internal functions\nare built-in objects of the language, such as parseInt and Math.exp","description":"Checking types of parseInt and Math.exp","path":"TestCases/ch10/10.1/S10.1.1_A2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBmdW5jdGlvbiBwYXJhbWV0ZXIgaXMgcG9zc2libGUKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKGEpewogIGRlbGV0ZSBhOwogIHJldHVybiBhOwp9CmlmIChmMSgxKSAhPT0gMSkKICAkRVJST1IoJyMxOiBGdW5jdGlvbiBwYXJhbWV0ZXIgd2FzIGRlbGV0ZWQnKTsKCgo=","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking if deleting function parameter is possible","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW50aW9uIHdoaWNoIHJldHVybnMgcHJvcGVydHkgImFyZ3VtZW50cyIKICovCgp2YXIgQVJHX1NUUklORyA9ICJ2YWx1ZSBvZiB0aGUgYXJndW1lbnQgcHJvcGVydHkiOwoKZnVuY3Rpb24gZjEoKSB7CiAgdGhpcy5jb25zdHJ1Y3Rvci5wcm90b3R5cGUuYXJndW1lbnRzID0gQVJHX1NUUklORzsKICByZXR1cm4gYXJndW1lbnRzOwp9CiAgCi8vQ0hFQ0sjMQppZiAoKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGggIT09IDUpCiAgJEVSUk9SKCcjMTogKG5ldyBmMSgxLDIsMyw0LDUpKS5sZW5ndGg9PT01LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMiAgCmlmICgobmV3IGYxKDEsMiwzLDQsNSkpWzNdICE9PSA0KQogICRFUlJPUignIzI6IChuZXcgZjEoMSwyLDMsNCw1KSlbM109PT00LCB3aGVyZSBmMSByZXR1cm5zICJhcmd1bWVudHMiIHRoYXQgaXMgc2V0IHRvICInKyBBUkdfU1RSSU5HICsgJyInKTsKCi8vQ0hFQ0sjMwp2YXIgeCA9IG5ldyBmMSgxLDIsMyw0LDUpOyAKaWYgKGRlbGV0ZSB4WzNdICE9PSB0cnVlKQogICRFUlJPUignIzMuMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0nKTsKICAKaWYgKHhbM10gPT09IDQpCiAgJEVSUk9SKCcjMy4yOiBGdW5jdGlvbiBwYXJhbWV0ZXJzIGhhdmUgYXR0cmlidXRlIHtEb250RGVsZXRlfScpOwoK","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking funtion which returns property \"arguments\"","path":"TestCases/ch10/10.1/S10.1.6_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgYWN0aXZhdGlvbiBvYmplY3QgaXMgaW5pdGlhbGlzZWQgd2l0aCBhIHByb3BlcnR5IHdpdGggbmFtZSBhcmd1bWVudHMgYW5kIGF0dHJpYnV0ZXMge0RvbnREZWxldGV9CiAqCiAqIEBwYXRoIGNoMTAvMTAuMS9TMTAuMS42X0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBmdW5jdGlvbiB3aGljaCByZXR1cm5zICJ0aGlzIgogKiBAbm9TdHJpY3QKICovCgpmdW5jdGlvbiBmMSgpIHsKICBpZiAoZGVsZXRlIGFyZ3VtZW50cykgewogICAgJEVSUk9SKCIjMTogRnVuY3Rpb24gcGFyYW1ldGVycyBoYXZlIGF0dHJpYnV0ZSB7RG9udERlbGV0ZX0iICsgYXJndW1lbnRzKTsKICB9CiAgcmV0dXJuIGFyZ3VtZW50czsKfQoKZjEoKTsKCg==","commentary":"The activation object is initialised with a property with name arguments and attributes {DontDelete}","description":"Checking function which returns \"this\"","noStrict":"","path":"TestCases/ch10/10.1/S10.1.6_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdGhpcyB2YWx1ZSBhc3NvY2lhdGVkIHdpdGggYW4gZXhlY3V0aW9uY29udGV4dCBpcyBpbW11dGFibGUKICoKICogQHBhdGggY2gxMC8xMC4xL1MxMC4xLjdfQTFfVDEuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIGlmIGRlbGV0aW5nICJ0aGlzIiBmYWlscwogKi8KCi8vQ0hFQ0sjMQppZiAoZGVsZXRlIHRoaXMgIT09IHRydWUpCiAgJEVSUk9SKCcjMTogVGhlIHRoaXMgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGFuIGV4ZWN1dGlvbmNvbnRleHQgaXMgaW1tdXRhYmxlLiBBY3R1YWw6IHRoaXMgd2FzIGRlbGV0ZWQnKTsKICAKCg==","commentary":"The this value associated with an executioncontext is immutable","description":"Checking if deleting \"this\" fails","path":"TestCases/ch10/10.1/S10.1.7_A1_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAndXNlICBzdHJpY3QnOyB3aGljaCBjb250YWlucyB0d28gc3BhY2UgYmV0d2VlbiAndXNlJyBhbmQgJ3N0cmljdCcNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2UgIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is 'use  strict'; which contains two space between 'use' and 'strict'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVXNlIFN0cmljdCBEaXJlY3RpdmUgUHJvbG9ndWUgaXMgJydVU0UgU1RSSUNUJzsnIGluIHdoaWNoIGFsbCBjaGFyYWN0ZXJzIGFyZSB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVU0UgU1RSSUNUIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''USE STRICT';' in which all characters are uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBjb2RlIHdpdGggYSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoIid1c2Ugc3RyaWN0JzsgdmFyIHB1YmxpYyA9IDE7IHZhciBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9IDI7Iik7DQoNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvciAmJiB0eXBlb2YgcHVibGljID09PSAidW5kZWZpbmVkIiAmJg0KICAgICAgICAgICAgICAgIHR5cGVvZiBhbm90aGVyVmFyaWFibGVOb3RSZXNlcnZlV29yZCA9PT0gInVuZGVmaW5lZCI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Eval code is strict code with a Use Strict Directive at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgJ3VzZSBzdHJpY3QnOyB2YXIgYW5vdGhlclZhcmlhYmxlTm90UmVzZXJ2ZVdvcmQgPSAyOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRXZhbCBjb2RlIGlzIHN0cmljdCBldmFsIGNvZGUgd2l0aCBhIFVzZSBTdHJpY3QgRGlyZWN0aXZlIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsgdmFyIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID0gMjsgJ3VzZSBzdHJpY3QnOyIpOw0KICAgICAgICByZXR1cm4gcHVibGljID09PSAxICYmIGFub3RoZXJWYXJpYWJsZU5vdFJlc2VydmVXb3JkID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Eval code is strict eval code with a Use Strict Directive at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGNhbGwgdG8gZXZhbCBmdW5jdGlvbiBpcyBjb250YWluZWQgaW4gYSBTdHJpY3QgTW9kZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgJ3VzZSBzdHJpY3QnOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The call to eval function is contained in a Strict Mode block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGlzIHN0cmljdCBmdW5jdGlvbiBjb2RlIGlmIEZ1bmN0aW9uRGVjbGFyYXRpb24gaXMgY29udGFpbmVkIGluIHVzZSBzdHJpY3QNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgICAgICBldmFsKCJ2YXIgcHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a FunctionDeclaration is strict function code if FunctionDeclaration is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBGdW5jdGlvbkV4cHJlc3Npb24gaXMgc3RyaWN0IGZ1bmN0aW9uIGNvZGUgaWYgRnVuY3Rpb25FeHByZXNzaW9uIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0DQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a FunctionExpression is strict function code if FunctionExpression is contained in use strict","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgicHVibGljID0gMTsiKTsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDExOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pOw0KDQogICAgICAgICAgICB2YXIgdGVtcCA9IG9iai5hY2NQcm9wZXJ0eSA9PT0gMTE7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSB0aGF0IGlzIHBhcnQgb2YgYSBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgaXMgaW4gU3RyaWN0IE1vZGUgaWYgQWNjZXNzb3IgUHJvcGVydHlBc3NpZ25tZW50IGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0KHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvYmogPSB7fTsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwgImFjY1Byb3BlcnR5Iiwgew0KICAgICAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yICYmIGRhdGEgPT09ICJkYXRhIjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code that is part of a Accessor PropertyAssignment is in Strict Mode if Accessor PropertyAssignment is contained in use strict(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMTktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICBmdW5jdGlvbiBmdW4oKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0Ig0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiBmdW4oKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of a FunctionDeclaration contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICByZXR1cm4gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICByZXR1cm4gcHVibGljID09PSAxOw0KICAgICAgICB9ICgpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of a FunctionExpression contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjUtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKGdldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkob2JqLCAiYWNjUHJvcGVydHkiLCB7DQogICAgICAgICAgICAgICAgZ2V0OiBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgIHZhciB0ZW1wID0gb2JqLmFjY1Byb3BlcnR5ID09PSAxMTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjYtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGJsb2NrKHNldHRlcikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgICAgICB2YXIgZGF0YSA9ICJkYXRhIjsNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgICAgICBzZXQ6IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgICAgICAgICBkYXRhID0gdmFsdWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KDQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3IgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the start of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjctcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jayhnZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIGdldDogZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoInB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICAgICAgICAgIHJldHVybiAxMTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIHJldHVybiBvYmouYWNjUHJvcGVydHkgPT09IDExICYmIHB1YmxpYyA9PT0gMTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears in the middle of the block(getter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjgtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBBY2Nlc3NvciBQcm9wZXJ0eUFzc2lnbm1lbnQgY29udGFpbnMgVXNlIFN0cmljdCBEaXJlY3RpdmUgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jayhzZXR0ZXIpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgb2JqID0ge307DQogICAgICAgIHZhciBkYXRhOw0KDQogICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShvYmosICJhY2NQcm9wZXJ0eSIsIHsNCiAgICAgICAgICAgIHNldDogZnVuY3Rpb24gKHZhbHVlKSB7DQogICAgICAgICAgICAgICAgdmFyIF8xMF8xXzFfMjhfcyA9IHthOjEsIGE6Mn07DQogICAgICAgICAgICAgICAgZGF0YSA9IHZhbHVlOw0KICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgICAgIG9iai5hY2NQcm9wZXJ0eSA9ICJvdmVycmlkZURhdGEiOw0KICAgICAgICByZXR1cm4gZGF0YT09PSJvdmVycmlkZURhdGEiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of Accessor PropertyAssignment contains Use Strict Directive which appears at the end of the block(setter)","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMjktcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gVGhlIGJ1aWx0LWluIEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGlzIGNvbnRhaW5lZCBpbiB1c2Ugc3RyaWN0IGNvZGUNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIGZ1bk9iaiA9IG5ldyBGdW5jdGlvbigiYSIsICJldmFsKCdwdWJsaWMgPSAxOycpOyIpOw0KICAgICAgICBmdW5PYmooKTsNCiAgICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - The built-in Function constructor is contained in use strict code","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnJyB3aGljaCBsb3N0IHRoZSBsYXN0IGNoYXJhY3RlciAnOycNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiDQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict'' which lost the last character ';'","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJyB1c2Ugc3RyaWN0JzsnIHdoaWNoIHRoZSBmaXJzdCBjaGFyYWN0ZXIgaXMgc3BhY2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICIgdXNlIHN0cmljdCI7DQogICAgICAgIHZhciBwdWJsaWMgPSAxOw0KDQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is '' use strict';' which the first character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBzdGFydCBvZiB0aGUgYmxvY2sNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgIid1c2Ugc3RyaWN0JzsgZXZhbCgncHVibGljID0gMTsnKTsiKTsNCiAgICAgICAgICAgIGZ1bk9iaigpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the start of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGluIHRoZSBtaWRkbGUgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7ICd1c2Ugc3RyaWN0JzsgYW5vdGhlclZhcmlhYmxlID0gMjsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtMzItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRnVuY3Rpb24gY29kZSBvZiBidWlsdC1pbiBGdW5jdGlvbiBjb25zdHJ1Y3RvciBjb250YWlucyBVc2UgU3RyaWN0IERpcmVjdGl2ZSB3aGljaCBhcHBlYXJzIGF0IHRoZSBlbmQgb2YgdGhlIGJsb2NrDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB2YXIgZnVuT2JqID0gbmV3IEZ1bmN0aW9uKCJhIiwgImV2YWwoJ3B1YmxpYyA9IDE7Jyk7IGFub3RoZXJWYXJpYWJsZSA9IDI7ICd1c2Ugc3RyaWN0JzsiKTsNCiAgICAgICAgZnVuT2JqKCk7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgYW5vdGhlclZhcmlhYmxlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Function code of built-in Function constructor contains Use Strict Directive which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QgJzsnIHdoaWNoIHRoZSBsYXN0IGNoYXJhY3RlciBpcyBzcGFjZQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QgIjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict ';' which the last character is space","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgZXZhbCgidmFyIHB1YmxpYyA9IDE7Iik7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgU3ludGF4RXJyb3I7DQogICAgICAgIH0NCg0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the beginning of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgc3RhcnQgb2YgdGhlIGNvZGUNCiAqIEBub1N0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCnZhciBwdWJsaWMgPSAxOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the start of the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-5gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBpbiB0aGUgbWlkZGxlIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIGludGVyZmFjZSA9IDI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDEgJiYgaW50ZXJmYWNlID09PSAyOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears in the middle of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-6-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyBhdCB0aGUgZW5kIG9mIHRoZSBibG9jaw0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears at the end of the block","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgZGlyZWN0aXZlIHByb2xvZ3VlDQogKiBAbm9TdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGV2YWwoInZhciBwdWJsaWMgPSAxOyIpOw0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the directive prologue","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ3VzZSBzdHJpY3QnOycgd2hpY2ggYXBwZWFycyB0d2ljZSBpbiB0aGUgY29kZQ0KICogQG5vU3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQoidXNlIHN0cmljdCI7DQp0aHJvdyBOb3RFYXJseUVycm9yOw0KdmFyIHB1YmxpYyA9IDE7DQo=","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''use strict';' which appears twice in the code","negative":"^((?!NotEarlyError).)*$","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4xLzEwLjEuMS8xMC4xLjEtOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBVc2UgU3RyaWN0IERpcmVjdGl2ZSBQcm9sb2d1ZSBpcyAnJ1VzZSBzdHJpY3QnOycgaW4gd2hpY2ggdGhlIGZpcnN0IGNoYXJhY3RlciBpcyB1cHBlcmNhc2UNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJVc2Ugc3RyaWN0IjsNCiAgICAgICAgdmFyIHB1YmxpYyA9IDE7DQogICAgICAgIHJldHVybiBwdWJsaWMgPT09IDE7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - Use Strict Directive Prologue is ''Use strict';' in which the first character is uppercase","noStrict":"","path":"TestCases/ch10/10.1/10.1.1/10.1.1-9-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgY2FsbGVyIHN1cHBsaWVzIGZld2VyIHBhcmFtZXRlciB2YWx1ZXMgdGhhbiB0aGVyZSBhcmUKICogZm9ybWFsIHBhcmFtZXRlcnMsIHRoZSBleHRyYSBmb3JtYWwgcGFyYW1ldGVycyBoYXZlIHZhbHVlIHVuZGVmaW5lZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTEuanMKICogQGRlc2NyaXB0aW9uIENhbGxpbmcgZnVuY3Rpb24gZXhjbHVkaW5nIGEgZmV3IHBhcmFtZXRlcnMKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoYSwgYil7CiAgcmV0dXJuIChiID09PSB1bmRlZmluZWQpOwp9CmlmKCEoZjEoMSwgMikgPT09IGZhbHNlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSwgMikgPT09IGZhbHNlJyk7Cn0gZWxzZSBpZighKGYxKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMTogZjEoMSkgPT09IHRydWUnKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKGEsIGIsIGMpewogIHJldHVybiAoYiA9PT0gdW5kZWZpbmVkKSAmJiAoYyA9PT0gdW5kZWZpbmVkKTsKfQppZighKGYyKDEpID09PSB0cnVlKSl7CiAgJEVSUk9SKCcjMjogZjIoMSwgMikgPT09IHRydWUnKTsKfQoK","commentary":"If the caller supplies fewer parameter values than there are\nformal parameters, the extra formal parameters have value undefined","description":"Calling function excluding a few parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycyBzaGFyZSB0aGUgc2FtZSBuYW1lLCBoZW5jZQogKiB0aGUgc2FtZSBwcm9wZXJ0eSwgdGhlIGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaXMgZ2l2ZW4gdGhlIHZhbHVlIHRoYXQgd2FzCiAqIHN1cHBsaWVkIGZvciB0aGUgbGFzdCBwYXJhbWV0ZXIgd2l0aCB0aGlzIG5hbWUKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EyLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgaW5pdGlhbGl6ZWQgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywgd2hpY2ggaGF2ZSB0aGUgc2FtZSBuYW1lCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSh4LCB4KSB7CiAgcmV0dXJuIHg7Cn0KaWYoIShmMSgxLCAyKSA9PT0gMikpIHsKICAkRVJST1IoIiMxOiBmMSgxLCAyKSA9PT0gMiIpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoeCwgeCwgeCl7CiAgcmV0dXJuIHgqeCp4Owp9CmlmKCEoZjIoMSwgMiwgMykgPT09IDI3KSl7CiAgJEVSUk9SKCJmMigxLCAyLCAzKSA9PT0gMjciKTsKfQoKLy9DSEVDSyMzCmZ1bmN0aW9uIGYzKHgsIHgpIHsKICByZXR1cm4gJ2EnICsgeDsKfQppZighKGYzKDEsIDIpID09PSAnYTInKSl7CiAgJEVSUk9SKCIjMzogZjMoMSwgMikgPT09ICdhMiciKTsKfQoK","commentary":"If two or more formal parameters share the same name, hence\nthe same property, the corresponding property is given the value that was\nsupplied for the last parameter with this name","description":"Creating functions initialized with two or more formal parameters, which have the same name","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGUgdmFsdWUgb2YgdGhpcyBsYXN0IHBhcmFtZXRlciAod2hpY2ggaGFzIHRoZSBzYW1lCiAqIG5hbWUgYXMgc29tZSBwcmV2aW91cyBwYXJhbWV0ZXJzIGRvKSB3YXMgbm90IHN1cHBsaWVkIGJ5IHRoZQogKiBjYWxsZXIsIHRoZSB2YWx1ZSBvZiB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpcyB1bmRlZmluZWQKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0EzLmpzCiAqIEBkZXNjcmlwdGlvbiBDcmVhdGluZyBmdW5jdGlvbnMgd2l0aCB0d28gb3IgbW9yZSBmb3JtYWwgcGFyYW1ldGVycywKICogdGhhdCBoYXZlIHRoZSBzYW1lIG5hbWUuIENhbGxpbmcgdGhpcyBmdW5jdGlvbiBleGNsdWRpbmcgYSBmZXcgbGFzdCBwYXJhbWV0ZXJzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgsIGEsIGIsIHgpewogIHJldHVybiB4Owp9CmlmKCEoZjEoMSwgMikgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUignIzE6IGYxKDEsIDIpID09PSB1bmRlZmluZWQnKTsKfQoK","commentary":"If the value of this last parameter (which has the same\nname as some previous parameters do) was not supplied by the\ncaller, the value of the corresponding property is undefined","description":"Creating functions with two or more formal parameters,\nthat have the same name. Calling this function excluding a few last parameters","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIHBhc3NlZCBwYXJhbWV0ZXIKICogQG5vU3RyaWN0CiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHJldHVybiB4OwoKICBmdW5jdGlvbiB4KCl7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYoIShmMSgpLmNvbnN0cnVjdG9yLnByb3RvdHlwZSA9PT0gRnVuY3Rpb24ucHJvdG90eXBlKSl7CiAgJEVSUk9SKCcjMTogZjEoKSByZXR1cm5zIGZ1bmN0aW9uJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICByZXR1cm4gdHlwZW9mIHg7CgogIGZ1bmN0aW9uIHgoKXsKICAgIHJldHVybiA3OwogIH0KfQppZighKGYyKCkgPT09ICJmdW5jdGlvbiIpKXsKICAkRVJST1IoJyMyOiBmMigpID09PSAiZnVuY3Rpb24iJyk7Cn0KCi8vQ0hFQ0sjMwpmdW5jdGlvbiBmMygpIHsKICByZXR1cm4gdHlwZW9mIGFyZ3VtZW50czsKICBmdW5jdGlvbiBhcmd1bWVudHMoKSB7CiAgICByZXR1cm4gNzsKICB9Cn0KaWYgKCEoZjMoKSA9PT0gImZ1bmN0aW9uIikpewogICRFUlJPUignIzM6IGYzKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with passed parameter","noStrict":"","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGdW5jdGlvbiBkZWNsYXJhdGlvbiBpbiBmdW5jdGlvbiBjb2RlIC0gSWYgdGhlIHZhcmlhYmxlIG9iamVjdAogKiBhbHJlYWR5IGhhcyBhIHByb3BlcnR5IHdpdGggdGhlIG5hbWUgb2YgRnVuY3Rpb24gSWRlbnRpZmllciwgcmVwbGFjZSBpdHMKICogdmFsdWUgYW5kIGF0dHJpYnV0ZXMuIFNlbWFudGljYWxseSwgdGhpcyBzdGVwIG11c3QgZm9sbG93IHRoZSBjcmVhdGlvbiBvZgogKiBGb3JtYWxQYXJhbWV0ZXJMaXN0IHByb3BlcnRpZXMKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS9TMTAuMi4xX0E0X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYSBmdW5jdGlvbiB3aXRoIGRlY2xhcmVkIHZhcmlhYmxlCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjEoKS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUgPT09IEZ1bmN0aW9uLnByb3RvdHlwZSkpewogICRQUklOVCgnIzE6IGYxKCkgcmV0dXJucyBmdW5jdGlvbicpOwp9CgovL0NIRUNLIzIKZnVuY3Rpb24gZjIoKXsKICB2YXIgeDsKICAKICByZXR1cm4gdHlwZW9mIHg7CiAgCiAgZnVuY3Rpb24geCgpewogICAgcmV0dXJuIDc7CiAgfQp9CmlmKCEoZjIoKSA9PT0gImZ1bmN0aW9uIikpewogICRQUklOVCgnIzI6IGYyKCkgPT09ICJmdW5jdGlvbiInKTsKfQoK","commentary":"Function declaration in function code - If the variable object\nalready has a property with the name of Function Identifier, replace its\nvalue and attributes. Semantically, this step must follow the creation of\nFormalParameterList properties","description":"Checking existence of a function with declared variable","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A4_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyB2YXJpYWJsZSBleGlzdGVuY2Ugb25seQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgpID09PSAidW5kZWZpbmVkIikpewogICRQUklOVCgnIzE6IGYxKCkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMigpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKCkgPT09IHVuZGVmaW5lZCkpewogICRQUklOVCgnIzE6IGYyKCkgPT09IHVuZGVmaW5lZCcpOwp9Cgo=","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking variable existence only","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBGb3IgZWFjaCBWYXJpYWJsZURlY2xhcmF0aW9uIG9yIFZhcmlhYmxlRGVjbGFyYXRpb25Ob0luIGluIHRoZQogKiBjb2RlLCBjcmVhdGUgYSBwcm9wZXJ0eSBvZiB0aGUgdmFyaWFibGUgb2JqZWN0IHdob3NlIG5hbWUgaXMgdGhlIElkZW50aWZpZXIKICogaW4gdGhlIFZhcmlhYmxlRGVjbGFyYXRpb24gb3IgVmFyaWFibGVEZWNsYXJhdGlvbk5vSW4sIHdob3NlIHZhbHVlIGlzCiAqIHVuZGVmaW5lZCBhbmQgd2hvc2UgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgdHlwZSBvZiBjb2RlCiAqCiAqIEBwYXRoIGNoMTAvMTAuMi8xMC4yLjEvUzEwLjIuMV9BNS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgdGhlIHZhcmlhYmxlIG9iamVjdCBwcm9wZXJ0eSB3aXRoIGZvcm1hbCBwYXJhbWV0ZXIKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoeCl7CiAgdmFyIHg7CiAgCiAgcmV0dXJuIHR5cGVvZiB4Owp9CgppZighKGYxKCkgPT09ICJ1bmRlZmluZWQiKSl7CiAgJFBSSU5UKCcjMTogZjEoMSkgPT09ICJ1bmRlZmluZWQiJyk7Cn0KCi8vQ0hFQ0sjMgpmdW5jdGlvbiBmMih4KXsKICB2YXIgeDsKICAKICByZXR1cm4geDsKfQoKaWYoIShmMigpID09PSB1bmRlZmluZWQpKXsKICAkUFJJTlQoJyMxOiBmMigxKSA9PT0gdW5kZWZpbmVkJyk7Cn0KCg==","commentary":"For each VariableDeclaration or VariableDeclarationNoIn in the\ncode, create a property of the variable object whose name is the Identifier\nin the VariableDeclaration or VariableDeclarationNoIn, whose value is\nundefined and whose attributes are determined by the type of code","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgcHJvcGVydHkgb2YgdGhlIHZhcmlhYmxlIG9iamVjdCB3aXRoIHRoZQogKiBuYW1lIG9mIGEgZGVjbGFyZWQgdmFyaWFibGUsIHRoZSB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgYW5kIGl0cyBhdHRyaWJ1dGVzCiAqIGFyZSBub3QgY2hhbmdlZAogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4xL1MxMC4yLjFfQTUuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgZXhpc3RlbmNlIG9mIHRoZSB2YXJpYWJsZSBvYmplY3QgcHJvcGVydHkgd2l0aCBmb3JtYWwgcGFyYW1ldGVyCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKHgpewogIHZhciB4OwogIAogIHJldHVybiB0eXBlb2YgeDsKfQoKaWYoIShmMSgxKSA9PT0gIm51bWJlciIpKXsKICAkUFJJTlQoJyMxOiBmMSgxKSA9PT0gIm51bWJlciInKTsKfQoKLy9DSEVDSyMyCmZ1bmN0aW9uIGYyKHgpewogIHZhciB4OwogIAogIHJldHVybiB4Owp9CgppZighKGYyKDEpID09PSAxKSl7CiAgJFBSSU5UKCcjMTogZjIoMSkgPT09IDEnKTsKfQoK","commentary":"If there is already a property of the variable object with the\nname of a declared variable, the value of the property and its attributes\nare not changed","description":"Checking existence of the variable object property with formal parameter","path":"TestCases/ch10/10.2/10.2.1/S10.2.1_A5.2_T1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKE5hTikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBOYU4gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBUeXBlRXJyb3I7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (NaN)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0xOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgdGhyb3duIHdoZW4gY2hhbmdpbmcgdGhlIHZhbHVlIG9mIGEgVmFsdWUgUHJvcGVydHkgb2YgdGhlIEdsb2JhbCBPYmplY3QgdW5kZXIgc3RyaWN0IG1vZGUgKHVuZGVmaW5lZCkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdW5kZWZpbmVkID0gMTI7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiBlIGluc3RhbmNlb2YgVHlwZUVycm9yOw0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - TypeError is thrown when changing the value of a Value Property of the Global Object under strict mode (undefined)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-18-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoT2JqZWN0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBvYmpCYWsgPSBPYmplY3Q7DQoNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE9iamVjdCA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBPYmplY3QgPSBvYmpCYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Object)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMS8xMC4yLjEuMS8xMC4yLjEuMS4zLzEwLjIuMS4xLjMtNC0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBUeXBlRXJyb3IgaXMgbm90IHRocm93biB3aGVuIGNoYW5naW5nIHRoZSB2YWx1ZSBvZiB0aGUgQ29uc3RydWN0b3IgUHJvcGVydGllcyBvZiB0aGUgR2xvYmFsIE9iamVjdCB1bmRlciBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIG51bUJhayA9IE51bWJlcjsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIE51bWJlciA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBOdW1iZXIgPSBudW1CYWs7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - TypeError is not thrown when changing the value of the Constructor Properties of the Global Object under strict mode (Number)","onlyStrict":"","path":"TestCases/ch10/10.2/10.2.1/10.2.1.1/10.2.1.1.3/10.2.1.1.3-4-27-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgdmFyIHggPSAxOwogIGZ1bmN0aW9uIGYyKCl7CiAgICByZXR1cm4geDsKICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09IDEpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gMCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CiAgcmV0dXJuIGYyKCk7CiAgCiAgdmFyIHggPSAxOwp9CgppZighKGYxKCkgPT09IHVuZGVmaW5lZCkpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9CgoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucwogKi8KCnZhciB4ID0gMDsKCmZ1bmN0aW9uIGYxKCl7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHJldHVybiB4OwogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAxKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB2YXIgeCA9IDE7CiAgZnVuY3Rpb24gZjIoKXsKICAgIHdpdGgobXlPYmopewogICAgICByZXR1cm4geDsKICAgIH0KICB9OwogIHJldHVybiBmMigpOwp9CgppZighKGYxKCkgPT09ICJvYmoiKSl7CiAgJEVSUk9SKCIjMTogU2NvcGUgY2hhaW4gZGlzdHVyYmVkIik7Cn0KCg==","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7Cn0KCmlmKCEoZjEoKSA9PT0gIm9iaiIpKXsKICAkRVJST1IoIiMxOiBTY29wZSBjaGFpbiBkaXN0dXJiZWQiKTsKfQoK","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CiAgcmV0dXJuIGYyKCk7CgogIHZhciB4ID0gMTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICBmdW5jdGlvbiBmMigpewogICAgd2l0aChteU9iail7CiAgICAgIHJldHVybiB4OwogICAgfQogIH07CgogIHZhciB4ID0gMTsKICByZXR1cm4gZjIoKTsKfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBleGVjdXRpb24gY29udGV4dCBoYXMgYXNzb2NpYXRlZCB3aXRoIGl0IGEgc2NvcGUgY2hhaW4uCiAqIEEgc2NvcGUgY2hhaW4gaXMgYSBsaXN0IG9mIG9iamVjdHMgdGhhdCBhcmUgc2VhcmNoZWQgd2hlbiBldmFsdWF0aW5nIGFuCiAqIElkZW50aWZpZXIKICoKICogQHBhdGggY2gxMC8xMC4yLzEwLjIuMi9TMTAuMi4yX0ExX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBzY29wZSBjaGFpbiBjb250YWluaW5nIGZ1bmN0aW9uIGRlY2xhcmF0aW9ucyBhbmQgIndpdGgiCiAqIEBub1N0cmljdAogKi8KCnZhciB4ID0gMDsKCnZhciBteU9iaiA9IHt4IDogIm9iaiJ9OwoKZnVuY3Rpb24gZjEoKXsKICB3aXRoKG15T2JqKXsKICAgIHJldHVybiB4OwogIH0KfQoKaWYoIShmMSgpID09PSAib2JqIikpewogICRFUlJPUigiIzE6IFNjb3BlIGNoYWluIGRpc3R1cmJlZCIpOwp9Cgo=","commentary":"Every execution context has associated with it a scope chain.\nA scope chain is a list of objects that are searched when evaluating an\nIdentifier","description":"Checking scope chain containing function declarations and \"with\"","noStrict":"","path":"TestCases/ch10/10.2/10.2.2/S10.2.2_A1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQppZiAoIE5hTiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyCmlmICggSW5maW5pdHkgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjogSW5maW5pdHkgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMzCmlmICggdW5kZWZpbmVkID09PSBudWxsICkgewogICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjNAppZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzUKaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHsKICAkRVJST1IoIiM1OiBwYXJzZUludCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzYKaWYgKCBwYXJzZUZsb2F0ID09PSBudWxsICkgewogICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM3CmlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTsKfQoKLy9DSEVDSyM4CmlmICggaXNGaW5pdGUgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjODogaXNGaW5pdGUgPT09IG51bGwiKTsKfQoKLy9DSEVDSyM5CmlmICggZGVjb2RlVVJJID09PSBudWxsICkgewogICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzEwCmlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxMQppZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxMTogZW5jb2RlVVJJID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTIKaWYgKCBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwp9Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMTMKaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE0CmlmICggRnVuY3Rpb24gPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTQ6IEZ1bmN0aW9uID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMTUKaWYgKCBTdHJpbmcgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE2CmlmICggTnVtYmVyID09PSBudWxsICkgewogICRFUlJPUigiIzE2OiBOdW1iZXIgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMxNwppZiAoIEFycmF5ID09PSBudWxsICkgewogICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE4CmlmICggRGF0ZSA9PT0gbnVsbCApIHsKICAkRVJST1IoIiMxODogRGF0ZSA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzE5CmlmICggUmVnRXhwID09PSBudWxsICkgewogICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMAppZiAoIEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzIxCmlmICggRXZhbEVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIxOiBFdmFsRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMgppZiAoIFJhbmdlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKfQoKLy9DSEVDSyMyMwppZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI0CmlmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjQ6IFN5bnRheEVycm9yID09PSBudWxsIik7Cn0KCi8vQ0hFQ0sjMjUKaWYgKCBUeXBlRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwp9CgovL0NIRUNLIzI2CmlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7Cn0KCgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMjcKaWYgKCBNYXRoID09PSBudWxsICkgewogICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7Cn0KCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBpZiAoIE5hTiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE6IE5hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyCiAgaWYgKCBJbmZpbml0eSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI6IEluZmluaXR5ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzMKICBpZiAoIHVuZGVmaW5lZCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzM6IHVuZGVmaW5lZCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzQKICBpZiAoIGV2YWwgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM0OiBldmFsID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzUKICBpZiAoIHBhcnNlSW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjNTogcGFyc2VJbnQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNgogIGlmICggcGFyc2VGbG9hdCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzY6IHBhcnNlRmxvYXQgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjNwogIGlmICggaXNOYU4gPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiM3OiBpc05hTiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyM4CiAgaWYgKCBpc0Zpbml0ZSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzg6IGlzRmluaXRlID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzkKICBpZiAoIGRlY29kZVVSSSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzk6IGRlY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMAogIGlmICggZGVjb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTA6IGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMQogIGlmICggZW5jb2RlVVJJID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTE6IGVuY29kZVVSSSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxMgogIGlmICggZW5jb2RlVVJJQ29tcG9uZW50ID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTI6IGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCIpOwogIH0KfQoKdGVzdCgpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEzCiAgaWYgKCBPYmplY3QgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMxMzogT2JqZWN0ID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE0CiAgaWYgKCBGdW5jdGlvbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE0OiBGdW5jdGlvbiA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNQogIGlmICggU3RyaW5nID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTU6IFN0cmluZyA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxNgogIGlmICggTnVtYmVyID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTY6IEZ1bmN0aW9uID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE3CiAgaWYgKCBBcnJheSA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE3OiBBcnJheSA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMxOAogIGlmICggQm9vbGVhbiA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzIwOiBCb29sZWFuID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzE4CiAgaWYgKCBEYXRlID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMTg6IERhdGUgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMTkKICBpZiAoIFJlZ0V4cCA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzE5OiBSZWdFeHAgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjAKICBpZiAoIEVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjA6IEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIxCiAgaWYgKCBFdmFsRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyMTogRXZhbEVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzIyCiAgaWYgKCBSYW5nZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjI6IFJhbmdlRXJyb3IgPT09IG51bGwiKTsKICB9CgogIC8vQ0hFQ0sjMjMKICBpZiAoIFJlZmVyZW5jZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjM6IFJlZmVyZW5jZUVycm9yID09PSBudWxsIik7CiAgfQoKICAvL0NIRUNLIzI0CiAgaWYgKCBTeW50YXhFcnJvciA9PT0gbnVsbCApIHsKICAgICRFUlJPUigiIzI0OiBTeW50YXhFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNQogIGlmICggVHlwZUVycm9yID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjU6IFR5cGVFcnJvciA9PT0gbnVsbCIpOwogIH0KCiAgLy9DSEVDSyMyNgogIGlmICggVVJJRXJyb3IgPT09IG51bGwgKSB7CiAgICAkRVJST1IoIiMyNjogVVJJRXJyb3IgPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzI3CiAgaWYgKCBNYXRoID09PSBudWxsICkgewogICAgJEVSUk9SKCIjMjc6IE1hdGggPT09IG51bGwiKTsKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIFZhbHVlIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxXG4nKwonaWYgKCBOYU4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOiBOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMlxuJysKJ2lmICggSW5maW5pdHkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyOiBJbmZpbml0eSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMzXG4nKwonaWYgKCB1bmRlZmluZWQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMzOiB1bmRlZmluZWQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIEZ1bmN0aW9uIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyM0XG4nKwonaWYgKCBldmFsID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNDogZXZhbCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM1XG4nKwonaWYgKCBwYXJzZUludCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzU6IHBhcnNlSW50ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzZcbicrCidpZiAoIHBhcnNlRmxvYXQgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM2OiBwYXJzZUZsb2F0ID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzdcbicrCidpZiAoIGlzTmFOID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjNzogaXNOYU4gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjOFxuJysKJ2lmICggaXNGaW5pdGUgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM4OiBpc0Zpbml0ZSA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyM5XG4nKwonaWYgKCBkZWNvZGVVUkkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiM5OiBkZWNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTBcbicrCidpZiAoIGRlY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEwOiBkZWNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTFcbicrCidpZiAoIGVuY29kZVVSSSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzExOiBlbmNvZGVVUkkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTJcbicrCidpZiAoIGVuY29kZVVSSUNvbXBvbmVudCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzEyOiBlbmNvZGVVUklDb21wb25lbnQgPT09IG51bGwiKTtcbicrCid9XG4nKwonO1xuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIENvbnN0cnVjdG9yIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMxM1xuJysKJ2lmICggT2JqZWN0ID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMTM6IE9iamVjdCA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxNFxuJysKJ2lmICggRnVuY3Rpb24gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNDogRnVuY3Rpb24gPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTVcbicrCidpZiAoIFN0cmluZyA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE1OiBTdHJpbmcgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMTZcbicrCidpZiAoIE51bWJlciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE2OiBGdW5jdGlvbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxN1xuJysKJ2lmICggQXJyYXkgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxNzogQXJyYXkgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMThcbicrCidpZiAoIEJvb2xlYW4gPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyMDogQm9vbGVhbiA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMxOFxuJysKJ2lmICggRGF0ZSA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzE4OiBEYXRlID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzE5XG4nKwonaWYgKCBSZWdFeHAgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMxOTogUmVnRXhwID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIwXG4nKwonaWYgKCBFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIwOiBFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMVxuJysKJ2lmICggRXZhbEVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjE6IEV2YWxFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyMlxuJysKJ2lmICggUmFuZ2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIyOiBSYW5nZUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKCicvL0NIRUNLIzIzXG4nKwonaWYgKCBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzIzOiBSZWZlcmVuY2VFcnJvciA9PT0gbnVsbCIpO1xuJysKJ31cbicrCgonLy9DSEVDSyMyNFxuJysKJ2lmICggU3ludGF4RXJyb3IgPT09IG51bGwgKSB7XG4nKwonICAkRVJST1IoIiMyNDogU3ludGF4RXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjVcbicrCidpZiAoIFR5cGVFcnJvciA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI1OiBUeXBlRXJyb3IgPT09IG51bGwiKTtcbicrCid9XG4nKwoKJy8vQ0hFQ0sjMjZcbicrCidpZiAoIFVSSUVycm9yID09PSBudWxsICkge1xuJysKJyAgJEVSUk9SKCIjMjY6IFVSSUVycm9yID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IGhhcyBwcm9wZXJ0aWVzIHN1Y2ggYXMgYnVpbHQtaW4gb2JqZWN0cyBzdWNoIGFzCiAqIE1hdGgsIFN0cmluZywgRGF0ZSwgcGFyc2VJbnQsIGV0YwogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTEuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gRXZhbCBleGVjdXRpb24gY29udGV4dCAtIE90aGVyIFByb3BlcnRpZXMKICovCgp2YXIgZXZhbFN0ciA9IAonLy9DSEVDSyMyN1xuJysKJ2lmICggTWF0aCA9PT0gbnVsbCApIHtcbicrCicgICRFUlJPUigiIzI3OiBNYXRoID09PSBudWxsIik7XG4nKwonfVxuJysKJztcbic7CgpldmFsKGV2YWxTdHIpOwoK","commentary":"Global object has properties such as built-in objects such as\nMath, String, Date, parseInt, etc","description":"Eval execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A1.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdOYU4nICkgewogICAgJEVSUk9SKCIjMTogJ05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgJEVSUk9SKCIjMTogJ0luZmluaXR5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICd1bmRlZmluZWQnICkgewogICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdldmFsJyApIHsKICAgICRFUlJPUigiIzE6ICdldmFsJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAkRVJST1IoIiMxOiAncGFyc2VJbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ3BhcnNlRmxvYXQnICkgewogICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2lzTmFOJyApIHsKICAgICRFUlJPUigiIzE6ICdpc05hTicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgJEVSUk9SKCIjMTogJ2lzRmluaXRlJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUkknICkgewogICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICRFUlJPUigiIzE6ICdkZWNvZGVVUklDb21wb25lbnQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAkRVJST1IoIiMxOiAnZW5jb2RlVVJJJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdlbmNvZGVVUklDb21wb25lbnQnICkgewogICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IAp9Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdPYmplY3QnICkgewogICAgJEVSUk9SKCIjMTogJ3Byb3BlcnR5ICdPYmplY3QnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgJEVSUk9SKCIjMTogJ0Z1bmN0aW9uJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdTdHJpbmcnICkgewogICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnTnVtYmVyJyApIHsKICAgICRFUlJPUigiIzE6ICdOdW1iZXInIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICRFUlJPUigiIzE6ICdBcnJheScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnQm9vbGVhbicgKSB7CiAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRGF0ZScgKSB7CiAgICAkRVJST1IoIiMxOiAnRGF0ZScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWdFeHAnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ0Vycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnRXZhbEVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdFdmFsRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1JhbmdlRXJyb3InIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgfSBlbHNlIGlmICggeCA9PT0gJ1JlZmVyZW5jZUVycm9yJyApIHsKICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnU3ludGF4RXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1N5bnRheEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1R5cGVFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICB9IGVsc2UgaWYgKCB4ID09PSAnVVJJRXJyb3InICkgewogICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMV9UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCi8vQ0hFQ0sjMQpmb3IgKHZhciB4IGluIHRoaXMpIHsKICBpZiAoIHggPT09ICdNYXRoJyApIHsKICAgICRFUlJPUigiIzE6ICdNYXRoJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogIH0KfQoK","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMS5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBWYWx1ZSBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ05hTicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnSW5maW5pdHknICkgewogICAgICAkRVJST1IoIiMxOiAnSW5maW5pdHknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAndW5kZWZpbmVkJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3VuZGVmaW5lZCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMi5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBGdW5jdGlvbiBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ2V2YWwnICkgewogICAgICAkRVJST1IoIiMxOiAnZXZhbCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUludCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwYXJzZUludCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdwYXJzZUZsb2F0JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ3BhcnNlRmxvYXQnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNOYU4nICkgewogICAgICAkRVJST1IoIiMxOiAnaXNOYU4nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnaXNGaW5pdGUnICkgewogICAgICAkRVJST1IoIiMxOiAnaXNGaW5pdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZGVjb2RlVVJJJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2RlY29kZVVSSScgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdkZWNvZGVVUklDb21wb25lbnQnICkgewogICAgICAkRVJST1IoIiMxOiAnZGVjb2RlVVJJQ29tcG9uZW50JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ2VuY29kZVVSSScgKSB7CiAgICAgICRFUlJPUigiIzE6ICdlbmNvZGVVUkknIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnZW5jb2RlVVJJQ29tcG9uZW50JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ2VuY29kZVVSSUNvbXBvbmVudCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gCiAgfQp9Cgp0ZXN0KCk7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UMy5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBDb25zdHJ1Y3RvciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ09iamVjdCcgKSB7CiAgICAgICRFUlJPUigiIzE6ICdwcm9wZXJ0eSAnT2JqZWN0JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Z1bmN0aW9uJykgewogICAgICAkRVJST1IoIiMxOiAnRnVuY3Rpb24nIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnU3RyaW5nJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1N0cmluZycgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdOdW1iZXInICkgewogICAgICAkRVJST1IoIiMxOiAnTnVtYmVyJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0FycmF5JyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0FycmF5JyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ0Jvb2xlYW4nICkgewogICAgICAkRVJST1IoIiMxOiAnQm9vbGVhbicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdEYXRlJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ0RhdGUnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7CiAgICB9IGVsc2UgaWYgKCB4ID09PSAnUmVnRXhwJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1JlZ0V4cCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdFdmFsRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnRXZhbEVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1JhbmdlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnUmFuZ2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdSZWZlcmVuY2VFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdSZWZlcmVuY2VFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdTeW50YXhFcnJvcicgKSB7CiAgICAgICRFUlJPUigiIzE6ICdTeW50YXhFcnJvcicgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0gZWxzZSBpZiAoIHggPT09ICdUeXBlRXJyb3InICkgewogICAgICAkRVJST1IoIiMxOiAnVHlwZUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSBlbHNlIGlmICggeCA9PT0gJ1VSSUVycm9yJyApIHsKICAgICAgJEVSUk9SKCIjMTogJ1VSSUVycm9yJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpOwogICAgfSAKICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuMl9UNC5qcwogKiBAZGVzY3JpcHRpb24gRnVuY3Rpb24gZXhlY3V0aW9uIGNvbnRleHQgLSBPdGhlciBQcm9wZXJ0aWVzCiAqLwoKZnVuY3Rpb24gdGVzdCgpIHsKICAvL0NIRUNLIzEKICBmb3IgKHZhciB4IGluIHRoaXMpIHsKICAgIGlmICggeCA9PT0gJ01hdGgnICkgewogICAgICAkRVJST1IoIiMxOiAnTWF0aCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTsKICAgIH0KICB9Cn0KCnRlc3QoKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Function execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMS5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gVmFsdWUgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdOYU5cJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdJbmZpbml0eVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0luZmluaXR5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwndW5kZWZpbmVkXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwndW5kZWZpbmVkXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Value Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMi5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gRnVuY3Rpb24gUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdldmFsXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZXZhbFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ3BhcnNlSW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VJbnRcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdwYXJzZUZsb2F0XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwncGFyc2VGbG9hdFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ2lzTmFOXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnaXNOYU5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdpc0Zpbml0ZVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ2lzRmluaXRlXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZGVjb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnZW5jb2RlVVJJQ29tcG9uZW50XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH1cbicrCid9XG4nOwoKZXZhbChldmFsU3RyKTsKCg==","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Function Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UMy5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gQ29uc3RydWN0b3IgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdPYmplY3RcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdPYmplY3RcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdGdW5jdGlvblwnKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRnVuY3Rpb25cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTdHJpbmdcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdTdHJpbmdcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdOdW1iZXJcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdOdW1iZXJcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdBcnJheVwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0FycmF5XCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnQm9vbGVhblwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ0Jvb2xlYW5cJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdEYXRlXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRGF0ZVwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZ0V4cFwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1JlZ0V4cFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ0Vycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdFdmFsRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdFdmFsRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdSYW5nZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmFuZ2VFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9IGVsc2UgaWYgKCB4ID09PSBcJ1JlZmVyZW5jZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnUmVmZXJlbmNlRXJyb3JcJyBoYXZlIGF0dHJpYnV0ZSBEb250RW51bSIpO1xuJysKJyAgfSBlbHNlIGlmICggeCA9PT0gXCdTeW50YXhFcnJvclwnICkge1xuJysKJyAgICAkRVJST1IoIiMxOiBcJ1N5bnRheEVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVHlwZUVycm9yXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnVHlwZUVycm9yXCcgaGF2ZSBhdHRyaWJ1dGUgRG9udEVudW0iKTtcbicrCicgIH0gZWxzZSBpZiAoIHggPT09IFwnVVJJRXJyb3JcJyApIHtcbicrCicgICAgJEVSUk9SKCIjMTogXCdVUklFcnJvclwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Constructor Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHbG9iYWwgb2JqZWN0IHByb3BlcnRpZXMgaGF2ZSBhdHRyaWJ1dGVzIHsgRG9udEVudW0gfQogKgogKiBAcGF0aCBjaDEwLzEwLjIvMTAuMi4zL1MxMC4yLjNfQTIuM19UNC5qcwogKiBAZGVzY3JpcHRpb24gR2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0IC0gT3RoZXIgUHJvcGVydGllcwogKi8KCnZhciBldmFsU3RyID0gCicvL0NIRUNLIzFcbicrCidmb3IgKHZhciB4IGluIHRoaXMpIHtcbicrCicgIGlmICggeCA9PT0gXCdNYXRoXCcgKSB7XG4nKwonICAgICRFUlJPUigiIzE6IFwnTWF0aFwnIGhhdmUgYXR0cmlidXRlIERvbnRFbnVtIik7XG4nKwonICB9XG4nKwonfVxuJzsKCmV2YWwoZXZhbFN0cik7Cgo=","commentary":"Global object properties have attributes { DontEnum }","description":"Global execution context - Other Properties","path":"TestCases/ch10/10.2/10.2.3/S10.2.3_A2.3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRfQTEuMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gU2VxdWVuY2Ugb2YgZnVuY3Rpb24gY2FsbHMKICovCgp2YXIgeTsKCmZ1bmN0aW9uIGYoKXsKICB2YXIgeDsKICAKICBpZih4ID09PSB1bmRlZmluZWQpIHsKICAgIHggPSAwOwogIH0gZWxzZSB7CiAgICB4ID0gMTsKICB9CiAgCiAgcmV0dXJuIHg7Cn0KCnkgPSBmKCk7CnkgPSBmKCk7CgppZighKHkgPT09IDApKXsKICAkRVJST1IoIiMxOiBTZXF1ZW5jZWQgZnVuY3Rpb24gY2FsbHMgc2hhcmVzIGV4ZWN1dGlvbiBjb250ZXh0Iik7Cn0KCg==","commentary":"Every function call enters a new execution context","description":"Sequence of function calls","path":"TestCases/ch10/10.4/S10.4_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBFdmVyeSBmdW5jdGlvbiBjYWxsIGVudGVycyBhIG5ldyBleGVjdXRpb24gY29udGV4dAogKgogKiBAcGF0aCBjaDEwLzEwLjQvUzEwLjRBMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBSZWN1cnNpdmUgZnVuY3Rpb24gY2FsbAogKi8KCnZhciB5OwoKZnVuY3Rpb24gZihhKXsKICB2YXIgeDsKICAKICBpZiAoYSA9PT0gMSkgCiAgICByZXR1cm4geDsKICBlbHNlIHsKICAgIGlmKHggPT09IHVuZGVmaW5lZCkgewogICAgICB4ID0gMDsKICAgIH0gZWxzZSB7CiAgICAgIHggPSAxOwogICAgfQogICAgcmV0dXJuIGYoMSk7CiAgfQp9Cgp5ID0gZigwKTsKCmlmKCEoeSA9PT0gdW5kZWZpbmVkKSl7CiAgJEVSUk9SKCIjMTogUmVjdXJzaXZlIGZ1bmN0aW9uIGNhbGxzIHNoYXJlcyBleGVjdXRpb24gY29udGV4dCIpOwp9Cgo=","commentary":"Every function call enters a new execution context","description":"Recursive function call","path":"TestCases/ch10/10.4/S10.4A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMS5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHZhciB4ID0gMSwgZmFpbHMKICogQG5vU3RyaWN0CiAqLwoKdmFyIHggPSAxOwoKaWYgKHRoaXMueCAhPT0gMSkgewogICRFUlJPUigiIzE6IHZhcmlhYmxlIHggaXMgYSBwcm9wZXJ0eSBvZiBnbG9iYWwgb2JqZWN0Iik7Cn0KCmlmKGRlbGV0ZSB0aGlzLnggIT09IGZhbHNlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as var x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBWYXJpYWJsZSBpbnN0YW50aWF0aW9uIGlzIHBlcmZvcm1lZCB1c2luZyB0aGUgZ2xvYmFsIG9iamVjdCBhcwogKiB0aGUgdmFyaWFibGUgb2JqZWN0IGFuZCB1c2luZyBwcm9wZXJ0eSBhdHRyaWJ1dGVzIHsgRG9udERlbGV0ZSB9CiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjEvUzEwLjQuMV9BMV9UMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgaWYgZGVsZXRpbmcgdmFyaWFibGUgeCwgdGhhdCBpcyBkZWZpbmVkIGFzIHggPSAxLCBmYWlscwogKiBAbm9TdHJpY3QKICovCgp4ID0gMTsKCmlmICh0aGlzLnggIT09IDEpIHsKICAkRVJST1IoIiMxOiB2YXJpYWJsZSB4IGlzIGEgcHJvcGVydHkgb2YgZ2xvYmFsIG9iamVjdCIpOwp9CgppZihkZWxldGUgdGhpcy54ICE9PSB0cnVlKXsKICAkRVJST1IoIiMyOiB2YXJpYWJsZSB4IGhhcyBwcm9wZXJ0eSBhdHRyaWJ1dGUgRG9udERlbGV0ZSIpOwp9Cgo=","commentary":"Variable instantiation is performed using the global object as\nthe variable object and using property attributes { DontDelete }","description":"Checking if deleting variable x, that is defined as x = 1, fails","noStrict":"","path":"TestCases/ch10/10.4/10.4.1/S10.4.1_A1_T2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dA0KICovDQoNCnZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHRyeSB7DQoNCiAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgIHZhciBfXzEwXzRfMl8xXzFfMSA9ICJzdHIxIjsNCiAgICBpZihfZXZhbCgiXCdzdHJcJyA9PT0gX18xMF80XzJfMV8xXzEiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgIGV2YWwoIlwnc3RyMVwnID09PSBfXzEwXzRfMl8xXzFfMSIpID09PSB0cnVlKSB7ICAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICB9DQogICAgcmV0dXJuIGZhbHNlOw0KICB9IGZpbmFsbHkgew0KICAgIGRlbGV0ZSB0aGlzLl9fMTBfNF8yXzFfMV8xOw0KICB9DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0yLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAobmVzdGVkIGZ1bmN0aW9uKQ0KICovDQoNCnZhciBfXzEwXzRfMl8xXzIgPSAic3RyIjsNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KDQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfMiA9ICJzdHIxIjsNCiAgICAgICAgICAgIGZ1bmN0aW9uIGZvbygpIHsNCiAgICAgICAgICAgICAgICB2YXIgX18xMF80XzJfMV8yID0gInN0cjIiOw0KICAgICAgICAgICAgICAgIGlmKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzIiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8yIikgPT09IHRydWUpIHsgICAvLyBkaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZvbygpOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV8xXzI7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (nested function)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS0zLmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoY2F0Y2ggYmxvY2spDQogKi8NCg0KdmFyIF9fMTBfNF8yXzFfMyA9ICJzdHIiOw0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9ldmFsID0gZXZhbDsNCiAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMSI7DQogICAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgICAgIHRocm93ICJlcnJvciI7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBjYXRjaCAoZSkgew0KICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzMgPSAic3RyMiI7DQogICAgICAgICAgICAgICAgaWYgKF9ldmFsKCJcJ3N0clwnID09PSBfXzEwXzRfMl8xXzMiKSA9PT0gdHJ1ZSAmJiAgLy8gaW5kaXJlY3QgZXZhbA0KICAgICAgICAgICAgICAgICAgICBldmFsKCJcJ3N0cjJcJyA9PT0gX18xMF80XzJfMV8zIikgPT09IHRydWUpIHsgIC8vIGRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzM7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (catch block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS00LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAod2l0aCBibG9jaykNCiAqLw0KDQp2YXIgX18xMF80XzJfMV80ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBvID0gbmV3IE9iamVjdCgpOw0KICAgICAgICAgICAgby5fXzEwXzRfMl8xXzQgPSAic3RyMiI7DQogICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOw0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNCA9ICJzdHIxIjsNCiAgICAgICAgICAgIHdpdGggKG8pIHsNCiAgICAgICAgICAgICAgICBpZiAoX2V2YWwoIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNCIpID09PSB0cnVlICYmICAvLyBpbmRpcmVjdCBldmFsDQogICAgICAgICAgICAgICAgICAgIGV2YWwoIlwnc3RyMlwnID09PSBfXzEwXzRfMl8xXzQiKSA9PT0gdHJ1ZSkgeyAgLy8gZGlyZWN0IGV2YWwNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIHRoaXMuX18xMF80XzJfMV80Ow0KICAgICAgICB9DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Indirect call to eval has context set to global context (with block)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMS01LmpzDQogKiBAZGVzY3JpcHRpb24gSW5kaXJlY3QgY2FsbCB0byBldmFsIGhhcyBjb250ZXh0IHNldCB0byBnbG9iYWwgY29udGV4dCAoaW5zaWRlIGFub3RoZXIgZXZhbCkNCiAqLw0KDQp2YXIgX18xMF80XzJfMV81ID0gInN0ciI7DQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCg0KICAgICAgICAgICAgdmFyIF9fMTBfNF8yXzFfNSA9ICJzdHIxIjsNCiAgICAgICAgICAgIHZhciByID0gZXZhbCgiXA0KICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgX2V2YWwgPSBldmFsOyBcDQogICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBfXzEwXzRfMl8xXzUgPSBcJ3N0cjJcJzsgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBfZXZhbChcIlwnc3RyXCcgPT09IF9fMTBfNF8yXzFfNSBcIikgJiYgXA0KICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKFwiXCdzdHIyXCcgPT09IF9fMTBfNF8yXzFfNVwiKVwNCiAgICAgICAgICAgICAgICAgICAgICAgICIpOw0KICAgICAgICAgICAgcmV0dXJuIHI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgdGhpcy5fXzEwXzRfMl8xXzU7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Indirect call to eval has context set to global context (inside another eval)","path":"TestCases/ch10/10.4/10.4.2/10.4.2-1-5.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1jLTEuanMNCiAqIEBkZXNjcmlwdGlvbiBEaXJlY3QgdmFsIGNvZGUgaW4gbm9uLXN0cmljdCBtb2RlIC0gY2FuIGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIGNhbGxpbmcgY29udGV4dA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciB4ID0gMDsNCiAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyKCkgew0KICAgICBldmFsKCJ2YXIgeCA9IDEiKTsNCiAgICAgaWYgKHggPT09IDEpDQogICAgICAgIHJldHVybiB0cnVlOw0KICAgICB9ICgpOw0KICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Direct val code in non-strict mode - can instantiate variable in calling context","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-c-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBTdHJpY3QgbW9kZSBldmFsIGNvZGUgY2Fubm90IGluc3RhbnRpYXRlIGZ1bmN0aW9ucyBpbiB0aGUgdmFyaWFibGUgZW52aXJvbm1lbnQgb2YgdGhlIGNhbGxlciB0byBldmFsDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgZXZhbCgiKGZ1bmN0aW9uIGZ1bih4KXsgcmV0dXJuIHggfSkoMTApIik7DQogICAgICAgIHJldHVybiB0eXBlb2YgKGZ1bikgPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIERpcmVjdCBldmFsIGNvZGUgaW4gc3RyaWN0IG1vZGUgLSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdmFyIF8xMF80XzJfM19jXzFfcyA9IDA7DQogIGZ1bmN0aW9uIF8xMF80XzJfM19jXzFfc0Z1bmMoKSB7DQogICAgIGV2YWwoIid1c2Ugc3RyaWN0Jzt2YXIgXzEwXzRfMl8zX2NfMV9zID0gMSIpOw0KICAgICByZXR1cm4gXzEwXzRfMl8zX2NfMV9zPT09MDsNCiAgfSANCiAgcmV0dXJuIF8xMF80XzJfM19jXzFfc0Z1bmMoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Direct eval code in strict mode - cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjItMy1jLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIENhbGxpbmcgY29kZSBpbiBzdHJpY3QgbW9kZSAtIGV2YWwgY2Fubm90IGluc3RhbnRpYXRlIHZhcmlhYmxlIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGluZyBjb250ZXh0DQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIHZhciBfMTBfNF8yXzNfY18yX3MgPSAwOw0KICBmdW5jdGlvbiBfMTBfNF8yXzNfY18yX3NGdW5jKCkgew0KICAgICAndXNlIHN0cmljdCc7DQogICAgIGV2YWwoInZhciBfMTBfNF8yXzNfY18yX3MgPSAxIik7DQogICAgIHJldHVybiBfMTBfNF8yXzNfY18yX3M9PT0wOw0KICB9DQogIHJldHVybiBfMTBfNF8yXzNfY18yX3NGdW5jKCk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Calling code in strict mode - eval cannot instantiate variable in the variable environment of the calling context","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2-3-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0xZ3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgdmFyaWFibGUgaW4gdGhlIHZhcmlhYmxlIGVudmlyb25tZW50IG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgdGhhdCBpbnZva2VkIHRoZSBldmFsIGlmIHRoZSBjb2RlIG9mIHRoZSBjYWxsaW5nIGNvbnRleHQgaXMgc3RyaWN0IGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKiBAbmVnYXRpdmUgXigoPyFOb3RFYXJseUVycm9yKS4pKiQNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpldmFsKCJ2YXIgeCA9IDc7Iik7DQp4ID0gOTsNCnRocm93IE5vdEVhcmx5RXJyb3I7DQo=","commentary":"","description":"Strict Mode - eval code cannot instantiate variable in the variable environment of the calling context that invoked the eval if the code of the calling context is strict code","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGV2YWwoImZ1bmN0aW9uIF8xMF80XzJfMV8yX2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfMl9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMi8xMC40LjIuMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFN0cmljdCBtb2RlIGV2YWwgY29kZSBjYW5ub3QgaW5zdGFudGlhdGUgZnVuY3Rpb25zIGluIHRoZSB2YXJpYWJsZSBlbnZpcm9ubWVudCBvZiB0aGUgY2FsbGVyIHRvIGV2YWwgd2hpY2ggaXMgY29udGFpbmVkIGluIHN0cmljdCBtb2RlIGNvZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICAgICAgICBldmFsKCIndXNlIHN0cmljdCc7IGZ1bmN0aW9uIF8xMF80XzJfMV80X2Z1bigpe30iKTsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiBfMTBfNF8yXzFfNF9mdW4gPT09ICJ1bmRlZmluZWQiOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Strict mode eval code cannot instantiate functions in the variable environment of the caller to eval which is contained in strict mode code","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/10.4.2.1-4-s.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4yL1MxMC40LjIuMV9BMS5qcwogKiBAZGVzY3JpcHRpb24gU3RyaWN0IGluZGlyZWN0IGV2YWwgc2hvdWxkIG5vdCBsZWFrIHRvcCBsZXZlbAogKiBkZWNsYXJhdGlvbnMgaW50byB0aGUgZ2xvYmFsIHNjb3BlCiAqIEBvbmx5U3RyaWN0CiAqLwoKInVzZSBzdHJpY3QiOwppZiAoISgnZm9vJyBpbiB0aGlzKSkgewogICgxLGV2YWwpKCcidXNlIHN0cmljdCI7IHZhciBmb28gPSA4ODsnKTsKICBpZiAoJ2ZvbycgaW4gdGhpcykgewogICAgJEVSUk9SKCJTdHJpY3QgaW5kaXJlY3QgZXZhbCBsZWFrZWQgYSB0b3AgbGV2ZWwgZGVjbGFyYXRpb24iKTsKICB9Cn0K","commentary":"","description":"Strict indirect eval should not leak top level\ndeclarations into the global scope","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2.1_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKdmFyIHggPSAxOwp2YXIgeSA9IDI7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKdmFyIGk7CnZhciBqOwpzdHIxID0gJyc7CnN0cjIgPSAnJzsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB4ID0gMTsKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwp0aGlzLnkgPSAyOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp2YXIgeCA9IDE7Cgpmb3IoaSBpbiB0aGlzKXsKICBzdHIxKz1pOwp9CgpldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgppZighKHN0cjEgPT09IHN0cjIpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKdmFyIHkgPSAyOwoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnRoaXMueSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp4ID0gMTsKCmZvcihpIGluIHRoaXMpewogIHN0cjErPWk7Cn0KCmV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCmlmKCEoc3RyMSA9PT0gc3RyMikpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgp2YXIgeSA9IDI7Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwp0aGlzLnggPSAxOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnZhciB5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4xX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgp2YXIgaTsKdmFyIGo7CnN0cjEgPSAnJzsKc3RyMiA9ICcnOwoKZm9yKGkgaW4gdGhpcyl7CiAgc3RyMSs9aTsKfQoKZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKaWYoIShzdHIxID09PSBzdHIyKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCnggPSAxOwp5ID0gMjsKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.1_T9.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOyAKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMC5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqLwoKZnVuY3Rpb24gZigpewogIHZhciBpOwogIHZhciBqOwogIHN0cjEgPSAnJzsKICBzdHIyID0gJyc7CiAgdmFyIHggPSAxOwogIHZhciB5ID0gMjsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9Cgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T10.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QxMS5qcwogKiBAZGVzY3JpcHRpb24gZXZhbCB3aXRoaW4gZ2xvYmFsIGV4ZWN1dGlvbiBjb250ZXh0CiAqIEBub1N0cmljdAogKi8KCmZ1bmN0aW9uIGYoKXsKICB2YXIgaTsKICB2YXIgajsKICBzdHIxID0gJyc7CiAgc3RyMiA9ICcnOwoKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQoKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CgogIHRoaXMueCA9IDE7CiAgdGhpcy55ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","noStrict":"","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T11.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICB2YXIgeCA9IDE7CiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIHRoaXMueSA9IDI7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7IAp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsgCgogIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q1LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB2YXIgeCA9IDE7CiAgCiAgZm9yKGkgaW4gdGhpcyl7CiAgICBzdHIxKz1pOwogIH0KICAKICBldmFsKCdmb3IoaiBpbiB0aGlzKXtcbnN0cjIrPWo7XG59Jyk7CgogIHJldHVybiAoc3RyMSA9PT0gc3RyMik7CiAgCiAgdmFyIHkgPSAyOwp9CgppZighZigpKXsKICAkRVJST1IoIiMxOiBzY29wZSBjaGFpbiBtdXN0IGNvbnRhaW4gc2FtZSBvYmplY3RzIGluIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBjYWxsaW5nIGNvbnRleHQiKTsKfQoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T5.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q2LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHRoaXMueSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoK","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q3LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB4ID0gMTsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB2YXIgeSA9IDI7Cn0KCmlmKCFmKCkpewogICRFUlJPUigiIzE6IHNjb3BlIGNoYWluIG11c3QgY29udGFpbiBzYW1lIG9iamVjdHMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIGNhbGxpbmcgY29udGV4dCIpOwp9CgoKCg==","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T7.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q4LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICB0aGlzLnggPSAxOwogIAogIGZvcihpIGluIHRoaXMpewogICAgc3RyMSs9aTsKICB9CiAgCiAgZXZhbCgnZm9yKGogaW4gdGhpcyl7XG5zdHIyKz1qO1xufScpOwoKICByZXR1cm4gKHN0cjEgPT09IHN0cjIpOwogIAogIHZhciB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T8.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgc2NvcGUgY2hhaW4gaXMgaW5pdGlhbGlzZWQgdG8gY29udGFpbiB0aGUgc2FtZSBvYmplY3RzLAogKiBpbiB0aGUgc2FtZSBvcmRlciwgYXMgdGhlIGNhbGxpbmcgY29udGV4dCdzIHNjb3BlIGNoYWluCiAqCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjIvUzEwLjQuMl9BMS4yX1Q5LmpzCiAqIEBkZXNjcmlwdGlvbiBldmFsIHdpdGhpbiBnbG9iYWwgZXhlY3V0aW9uIGNvbnRleHQKICovCgpmdW5jdGlvbiBmKCl7CiAgdmFyIGk7CiAgdmFyIGo7CiAgc3RyMSA9ICcnOwogIHN0cjIgPSAnJzsKICAKICBmb3IoaSBpbiB0aGlzKXsKICAgIHN0cjErPWk7CiAgfQogIAogIGV2YWwoJ2ZvcihqIGluIHRoaXMpe1xuc3RyMis9ajtcbn0nKTsKCiAgcmV0dXJuIChzdHIxID09PSBzdHIyKTsKICAKICB4ID0gMTsKICB5ID0gMjsKfQoKaWYoIWYoKSl7CiAgJEVSUk9SKCIjMTogc2NvcGUgY2hhaW4gbXVzdCBjb250YWluIHNhbWUgb2JqZWN0cyBpbiB0aGUgc2FtZSBvcmRlciBhcyB0aGUgY2FsbGluZyBjb250ZXh0Iik7Cn0KCgo=","commentary":"The scope chain is initialised to contain the same objects,\nin the same order, as the calling context's scope chain","description":"eval within global execution context","path":"TestCases/ch10/10.4/10.4.2/S10.4.2_A1.2_T9.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoTnVtYmVyKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKDEpID09PSAnbnVtYmVyJyAmJiBiYXIuY2FsbCgxKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (Number)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDAtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMzsNCg0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDBncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgZnVuY3Rpb24gcGFzc2VkIGFzIGFyZyB0byBTdHJpbmcucHJvdG90eXBlLnJlcGxhY2UgZnJvbSBub24tc3RyaWN0IGNvbnRleHQpDQogKiBAb25seVN0cmljdA0KICovDQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQppZiAoKCJhYiIucmVwbGFjZSgiYiIsIGYpIT09ImFhIikgfHwgKHghPT11bmRlZmluZWQpKSB7DQogICAgICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict Mode - checking 'this' (strict function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-100gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgeCA9IHRoaXM7DQogICAgcmV0dXJuICJhIjsNCn0NCg0KcmV0dXJuIChmdW5jdGlvbigpIHsidXNlIHN0cmljdCI7IHJldHVybiAiYWIiLnJlcGxhY2UoImIiLCBmKT09PSJhYSI7fSgpKSAmJiAoeD09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDFncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChub24tc3RyaWN0IGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gc3RyaWN0IGNvbnRleHQpDQogKiBAbm9TdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KDQpmdW5jdGlvbiBmKCkgew0KICAgIHggPSB0aGlzOw0KICAgIHJldHVybiAiYSI7DQp9DQoNCmlmICggKCEoZnVuY3Rpb24oKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gImFiIi5yZXBsYWNlKCJiIiwgZik9PT0iYWEiO30oKSkpIHx8ICh4IT09Zm5HbG9iYWxPYmplY3QoKSkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function passed as arg to String.prototype.replace from strict context)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-101gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgeCA9IDM7DQoNCnJldHVybiAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSk9PT0iYWEiKSAmJiAoeD09PXVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDJncy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gY2hlY2tpbmcgJ3RoaXMnIChzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIHBhc3NlZCBhcyBhcmcgdG8gU3RyaW5nLnByb3RvdHlwZS5yZXBsYWNlIGZyb20gbm9uLXN0cmljdCBjb250ZXh0KQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KdmFyIHggPSAzOw0KaWYgKCAoImFiIi5yZXBsYWNlKCJiIiwgKGZ1bmN0aW9uICgpIHsgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggPSB0aGlzOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICJhIjsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkoKSkhPT0iYWEiKSB8fCAoeCE9PXVuZGVmaW5lZCkpIHsNCiAgICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict Mode - checking 'this' (strict anonymous function passed as arg to String.prototype.replace from non-strict context)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-102gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMDMuanMNCiAqIEBkZXNjcmlwdGlvbiBOb24gc3RyaWN0IG1vZGUgc2hvdWxkIFRvT2JqZWN0IHRoaXNBcmcgaWYgbm90IGFuIG9iamVjdC4gIEFic3RyYWN0IGVxdWFsaXR5IG9wZXJhdG9yIHNob3VsZCBzdWNjZWVkLg0KICovDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCl7DQogIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAieCIsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9IH0pOyANCiAgaWYoKDUpLnggPT0gMCkgcmV0dXJuIGZhbHNlOw0KICBpZighKCg1KS54ID09IDUpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Non strict mode should ToObject thisArg if not an object.  Abstract equality operator should succeed.","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-103.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICoNCiAqIEBwYXRoIGNoMTAvMTAuNC8xMC40LjMvMTAuNC4zLTEtMTA0LmpzDQogKiBAb25seVN0cmljdA0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBtb2RlIHNob3VsZCBub3QgVG9PYmplY3QgdGhpc0FyZyBpZiBub3QgYW4gb2JqZWN0LiAgU3RyaWN0IGVxdWFsaXR5IG9wZXJhdG9yIHNob3VsZCBzdWNjZWVkLg0KICovDQogDQogDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpew0KICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgIngiLCB7IGdldDogZnVuY3Rpb24gKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0pOyANCiAgaWYoISgoNSkueCA9PT0gNSkpIHJldHVybiBmYWxzZTsNCiAgcmV0dXJuIHRydWU7DQp9DQoNCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict mode should not ToObject thisArg if not an object.  Strict equality operator should succeed.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-104.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQ3JlYXRlZCBiYXNlZCBvbiBmZWVkYmFjayBpbiBodHRwczovL2J1Z3MuZWNtYXNjcmlwdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMyANCiAqDQogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4zLzEwLjQuMy0xLTEwNS5qcw0KICogQGRlc2NyaXB0aW9uIE5vbiBzdHJpY3QgbW9kZSBzaG91bGQgVG9PYmplY3QgdGhpc0FyZyBpZiBub3QgYW4gb2JqZWN0LiAgUmV0dXJuIHR5cGUgc2hvdWxkIGJlIG9iamVjdCBhbmQgc3RyaWN0IGVxdWFsaXR5IHNob3VsZCBmYWlsLg0KICovDQogDQogZnVuY3Rpb24gdGVzdGNhc2UoKXsNCiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KE9iamVjdC5wcm90b3R5cGUsICJ4IiwgeyBnZXQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXM7IH0gfSk7IA0KICBpZigoNSkueCA9PT0gNSkgcmV0dXJuIGZhbHNlOw0KICBpZighKHR5cGVvZiAoNSkueCA9PT0gIm9iamVjdCIpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQoNCg==","commentary":"Created based on feedback in https://bugs.ecmascript.org/show_bug.cgi?id=333","description":"Non strict mode should ToObject thisArg if not an object.  Return type should be object and strict equality should fail.","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-105.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQ3JlYXRlZCBiYXNlZCBvbiBmZWVkYmFjayBpbiBodHRwczovL2J1Z3MuZWNtYXNjcmlwdC5vcmcvc2hvd19idWcuY2dpP2lkPTMzMyANCiAqDQogKiBAcGF0aCBjaDEwLzEwLjQvMTAuNC4zLzEwLjQuMy0xLTEwNi5qcw0KICogQG9ubHlTdHJpY3QNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgbW9kZSBzaG91bGQgbm90IFRvT2JqZWN0IHRoaXNBcmcgaWYgbm90IGFuIG9iamVjdC4gIFJldHVybiB0eXBlIHNob3VsZCBiZSAnbnVtYmVyJy4NCiAqLw0KIA0KIGZ1bmN0aW9uIHRlc3RjYXNlKCl7DQogIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAieCIsIHsgZ2V0OiBmdW5jdGlvbiAoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7IA0KICBpZighKHR5cGVvZiAoNSkueCA9PT0gIm51bWJlciIpKSByZXR1cm4gZmFsc2U7DQogIHJldHVybiB0cnVlOw0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"Created based on feedback in https://bugs.ecmascript.org/show_bug.cgi?id=333","description":"Strict mode should not ToObject thisArg if not an object.  Return type should be 'number'.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-106.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-10gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-11gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgPT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0eXBlb2YgdGhpczsNCn0pKCkgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-12gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpICE9PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IEZ1bmN0aW9uKCJyZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpID09PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-13gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uIGNvbnN0cnVjdG9yIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmID0gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO1xucmV0dXJuIHR5cGVvZiB0aGlzOyIpOw0KaWYgKGYoKSAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-14gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCnJldHVybiBmKCkgIT09ICJ1bmRlZmluZWQiOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIGYgPSBuZXcgRnVuY3Rpb24oInJldHVybiB0eXBlb2YgdGhpczsiKTsNCmlmIChmKCkgPT09ICJ1bmRlZmluZWQiKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-15gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBGdW5jdGlvbiBjb25zdHJ1Y3RvciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgZiA9IG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7XG5yZXR1cm4gdHlwZW9mIHRoaXM7Iik7DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed Function constructor includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-16gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZXZhbCgidHlwZW9mIHRoaXMiKSA9PT0gInVuZGVmaW5lZCIpICYmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmIChldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-17gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKGV2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-18gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCnJldHVybiBteV9ldmFsKCJ0aGlzIikgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0xOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgdXNlZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBteV9ldmFsID0gZXZhbDsNCmlmIChteV9ldmFsKCJ0aGlzIikgIT09IGZuR2xvYmFsT2JqZWN0KCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval used within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-19gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoc3RyaW5nKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KDQoNCiAgcmV0dXJuIGZvby5jYWxsKCcxJykgPT09ICdzdHJpbmcnICYmIGJhci5jYWxsKCcxJykgPT09ICdvYmplY3QnOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"this is not coerced to an object in strict mode (string)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG15X2V2YWwgPSBldmFsOw0KcmV0dXJuIG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKGluZGlyZWN0IGV2YWwgaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG15X2V2YWwgPSBldmFsOw0KaWYgKG15X2V2YWwoIlwidXNlIHN0cmljdFwiO1xudGhpcyIpICE9PSBmbkdsb2JhbE9iamVjdCgpICkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (indirect eval includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-20gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-21gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg0K","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-22gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCg0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmID0gZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-23gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KcmV0dXJuICggKG5ldyBmKCkpIT09Zm5HbG9iYWxPYmplY3QoKSkgJiYgKHR5cGVvZiAobmV3IGYoKSkgIT09ICJ1bmRlZmluZWQiKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBGdW5jdGlvbkV4cHJlc3Npb24gaW5jbHVkZXMgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiB0aGlzOw0KfQ0KaWYgKCgobmV3IGYoKSkgPT09IGZuR2xvYmFsT2JqZWN0KCkpIHx8ICh0eXBlb2YgKG5ldyBmKCkpID09PSAidW5kZWZpbmVkIikpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-24gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgb2JqID0gbmV3IChmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQoNCg==","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-25gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCnJldHVybiAob2JqICE9PSBmbkdsb2JhbE9iamVjdCgpKSAmJiAoKHR5cGVvZiBvYmopICE9PSAidW5kZWZpbmVkIik7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKE5ldydlZCBvYmplY3QgZnJvbSBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvYmogPSBuZXcgKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHRoaXM7DQp9KTsNCmlmICgob2JqID09PSBmbkdsb2JhbE9iamVjdCgpKSB8fCAodHlwZW9mIG9iaiA9PT0gInVuZGVmaW5lZCIpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (New'ed object from Anonymous FunctionExpression includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-26gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-27gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-28gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0yOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-29gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAodW5kZWZpbmVkKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCg0KICBmdW5jdGlvbiBmb28oKQ0KICB7DQogICAgJ3VzZSBzdHJpY3QnOw0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KICBmdW5jdGlvbiBiYXIoKQ0KICB7DQogICAgcmV0dXJuIHR5cGVvZih0aGlzKTsNCiAgfQ0KICByZXR1cm4gZm9vLmNhbGwodW5kZWZpbmVkKSA9PT0gJ3VuZGVmaW5lZCcgJiYgYmFyLmNhbGwoKSA9PT0gJ29iamVjdCc7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"this is not coerced to an object in strict mode (undefined)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-30gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-31gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gaW5zaWRlIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-32gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zMy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zM2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-33gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIGluc2lkZSBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-34gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiBpbnNpZGUgc3RyaWN0IG1vZGUpDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression inside strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-35gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-36gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zNy1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zN2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYxKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-37gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionDeclaration with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-38gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS0zOWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-39gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoYm9vbGVhbikNCiAqIEBub1N0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gYmFyKCkNCiAgew0KICAgIHJldHVybiB0eXBlb2YodGhpcyk7DQogIH0NCg0KDQogIHJldHVybiBmb28uY2FsbCh0cnVlKSA9PT0gJ2Jvb2xlYW4nICYmIGJhci5jYWxsKHRydWUpID09PSAnb2JqZWN0JzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (boolean)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIGYxID0gZnVuY3Rpb24gKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-40gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCnJldHVybiBmMSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAoKHR5cGVvZiB0aGlzKT09PSJ1bmRlZmluZWQiKTsNCn0NCmlmICghIGYxKCkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within a FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-41gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-42gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uIHdpdGggYSBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQppZiAoISAoKGZ1bmN0aW9uICgpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9DQogICAgcmV0dXJuIChmKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-43gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgInVzZSBzdHJpY3QiOw0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0pKCk9PT0idW5kZWZpbmVkIikgJiYgKCh0eXBlb2YgdGhpcyk9PT0idW5kZWZpbmVkIik7DQp9KSgpKSkgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression defined within an Anonymous FunctionExpression with a strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-44gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-45gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRGVjbGFyYXRpb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmMSgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-46gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkRlY2xhcmF0aW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZjEoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionDeclaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-47gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgZnVuY3Rpb24gZigpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-48gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS00OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCnZhciBmMSA9IGZ1bmN0aW9uICgpIHsNCiAgICB2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfQ0KICAgIHJldHVybiAoZigpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-49gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01LXMuanMNCiAqIEBkZXNjcmlwdGlvbiB0aGlzIGlzIG5vdCBjb2VyY2VkIHRvIGFuIG9iamVjdCBpbiBzdHJpY3QgbW9kZSAoZnVuY3Rpb24pDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoNCiAgZnVuY3Rpb24gZm9vKCkNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9IA0KDQogIGZ1bmN0aW9uIGJhcigpDQogIHsNCiAgICByZXR1cm4gdHlwZW9mKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gZm9vYmFyKCkNCiAgew0KICB9DQoNCiAgcmV0dXJuIGZvby5jYWxsKGZvb2JhcikgPT09ICdmdW5jdGlvbicgJiYgYmFyLmNhbGwoZm9vYmFyKSA9PT0gJ2Z1bmN0aW9uJzsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"this is not coerced to an object in strict mode (function)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-5-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQpyZXR1cm4gZjEoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYSBGdW5jdGlvbkV4cHJlc3Npb24pDQogKiBAbm9TdHJpY3QNCiAqLw0KDQp2YXIgZjEgPSBmdW5jdGlvbiAoKSB7DQogICAgcmV0dXJuICgoZnVuY3Rpb24gKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHJldHVybiB0eXBlb2YgdGhpczsNCiAgICB9KSgpPT09InVuZGVmaW5lZCIpICYmICh0aGlzPT09Zm5HbG9iYWxPYmplY3QoKSk7DQp9DQppZiAoISBmMSgpKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within a FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-50gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRGVjbGFyYXRpb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIGZ1bmN0aW9uIGYoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-51gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KcmV0dXJuIChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEZ1bmN0aW9uRXhwcmVzc2lvbiB3aXRoIGEgc3RyaWN0IGRpcmVjdGl2ZSBwcm9sb2d1ZSBkZWZpbmVkIHdpdGhpbiBhbiBBbm9ueW1vdXMgRnVuY3Rpb25FeHByZXNzaW9uKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KaWYgKCEgKChmdW5jdGlvbiAoKSB7DQogICAgdmFyIGYgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCiAgICAgICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gKGYoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-52gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnJldHVybiAoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEFub255bW91cyBGdW5jdGlvbkV4cHJlc3Npb24gd2l0aCBhIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUgZGVmaW5lZCB3aXRoaW4gYW4gQW5vbnltb3VzIEZ1bmN0aW9uRXhwcmVzc2lvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmlmICghICgoZnVuY3Rpb24gKCkgew0KICAgIHJldHVybiAoKGZ1bmN0aW9uICgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KICAgICAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQogICAgfSkoKT09PSJ1bmRlZmluZWQiKSAmJiAodGhpcz09PWZuR2xvYmFsT2JqZWN0KCkpOw0KfSkoKSkpIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Anonymous FunctionExpression with a strict directive prologue defined within an Anonymous FunctionExpression)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-53gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KcmV0dXJuIG8uZm9vPT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgbyA9IHsgZ2V0IGZvbygpIHsgcmV0dXJuIHRoaXM7IH0gfQ0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-54gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCnJldHVybiBvLmZvbz09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgZ2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0geyBnZXQgZm9vKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzOyB9IH0NCmlmIChvLmZvbyE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-55gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KcmV0dXJuIHg9PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgeCA9IDI7DQp2YXIgbyA9IHsgc2V0IGZvbyhzdHVmZikgeyB4PXRoaXM7IH0gfQ0Kby5mb28gPSAzOw0KaWYgKHghPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-56gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKExpdGVyYWwgc2V0dGVyIGluY2x1ZGVzIHN0cmljdCBkaXJlY3RpdmUgcHJvbG9ndWUpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciB4ID0gMjsNCnZhciBvID0geyBzZXQgZm9vKHN0dWZmKSB7ICJ1c2Ugc3RyaWN0IjsgeD10aGlzOyAgfSB9DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Literal setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-57gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0OiBmdW5jdGlvbigpIHsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgIHsgZ2V0IDogZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9IH0pOw0KaWYgKG8uZm9vIT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-58gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQpyZXR1cm4gby5mb289PT1vOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS01OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIGdldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IGdldDogZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7IH0gfSk7DQppZiAoby5mb28hPT1vKSB7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (Injected getter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-59gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCnJldHVybiB4PT09bzsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdmFyIG8gPSB7fTsNCnZhciB4ID0gMjsNCk9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLCAiZm9vIiwgeyBzZXQ6IGZ1bmN0aW9uKHN0dWZmKSB7IHg9dGhpczsgfSB9KTsNCm8uZm9vID0gMzsNCmlmICh4IT09bykgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-60gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQpyZXR1cm4geD09PW87DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKEluamVjdGVkIHNldHRlciBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KdmFyIHggPSAyOw0KT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sICJmb28iLCB7IHNldDogZnVuY3Rpb24oc3R1ZmYpIHsgInVzZSBzdHJpY3QiOyB4PXRoaXM7IH0gfSk7DQpvLmZvbyA9IDM7DQppZiAoeCE9PW8pIHsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (Injected setter includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-61gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCnJldHVybiBmb28oKT09PXVuZGVmaW5lZDsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KZnVuY3Rpb24gZm9vKCkgeyByZXR1cm4gZigpO30NCmlmIChmb28oKSE9PXVuZGVmaW5lZCl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict function declaration)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-62gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZXZhbCgiZigpOyIpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBldmFsKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISBldmFsKCJmKCk7Iikpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict eval)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-63gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZm5HbG9iYWxPYmplY3QoKS5mID0gZnVuY3Rpb24oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKEZ1bmN0aW9uKCJyZXR1cm4gZigpOyIpKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-64gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkgIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIChuZXcgRnVuY3Rpb24oInJldHVybiBmKCk7IikpKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgbm9uLXN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghICggKG5ldyBGdW5jdGlvbigicmV0dXJuIGYoKTsiKSkgKCkgKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by non-strict new'ed Function constructor)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-65gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-66gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KcmV0dXJuIGYuYXBwbHkobnVsbCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KG51bGwpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bnVsbDt9Ow0KaWYgKCEgZi5hcHBseShudWxsKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-67gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCnJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHVuZGVmaW5lZCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT11bmRlZmluZWQ7fTsNCmlmICghIGYuYXBwbHkodW5kZWZpbmVkKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-68gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiBmLmFwcGx5KG8pOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS02OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KHNvbWVPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghIGYuYXBwbHkobykpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-69gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGYoKSB7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiBmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpID09PSBmbkdsb2JhbE9iamVjdCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5KGdsb2JhbE9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM7fTsNCmlmIChmLmFwcGx5KGZuR2xvYmFsT2JqZWN0KCkpICE9PSBmbkdsb2JhbE9iamVjdCgpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-70gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-71gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQpyZXR1cm4gZi5jYWxsKG51bGwpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwobnVsbCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1udWxsO307DQppZiAoISBmLmNhbGwobnVsbCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(null))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-72gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KcmV0dXJuIGYuY2FsbCh1bmRlZmluZWQpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwodW5kZWZpbmVkKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PXVuZGVmaW5lZDt9Ow0KaWYgKCEgZi5jYWxsKHVuZGVmaW5lZCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(undefined))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-73gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIGYuY2FsbChvKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgZi5jYWxsKG8pKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-74gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSA9PT0gZm5HbG9iYWxPYmplY3QoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmNhbGwoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpczt9Ow0KaWYgKGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-75gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind()())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-76gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCnJldHVybiBmLmJpbmQobnVsbCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQobnVsbCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgInVzZSBzdHJpY3QiOyByZXR1cm4gdGhpcz09PW51bGw7fTsNCmlmICghIChmLmJpbmQobnVsbCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(null)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-77gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQpyZXR1cm4gZi5iaW5kKHVuZGVmaW5lZCkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQodW5kZWZpbmVkKSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzPT09dW5kZWZpbmVkO307DQppZiAoISAoZi5iaW5kKHVuZGVmaW5lZCkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(undefined)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-78gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gZi5iaW5kKG8pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoc29tZU9iamVjdCkoKSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoZi5iaW5kKG8pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-79gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS03Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBkZWZpbmVkIHdpdGhpbiBzdHJpY3QgbW9kZSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZigpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-7gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsNCiAgICAidXNlIHN0cmljdCI7DQogICAgcmV0dXJuIHR5cGVvZiB0aGlzOw0KfQ0KcmV0dXJuIGYoKSA9PT0gInVuZGVmaW5lZCI7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - checking 'this' (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQpyZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbiBjYWxsZWQgYnkgRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQoZ2xvYmFsT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyAidXNlIHN0cmljdCI7IHJldHVybiB0aGlzO307DQppZiAoZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCkgIT09IGZuR2xvYmFsT2JqZWN0KCkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (strict function declaration called by Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-80gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQpyZXR1cm4gZm9vKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBmdW5jdGlvbiBkZWNsYXJhdGlvbikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpmdW5jdGlvbiBmb28oKSB7ICJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYoKTt9DQppZiAoISBmb28oKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict function declaration)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-81gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBldmFsKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGV2YWwoImYoKTsiKTt9KSgpKSApew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict eval)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-82gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZuR2xvYmFsT2JqZWN0KCkuZiA9IGZ1bmN0aW9uKCkge3JldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gRnVuY3Rpb24oIlwidXNlIHN0cmljdFwiO3JldHVybiBmKCk7IikoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbiBjb25zdHJ1Y3RvcikNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7cmV0dXJuIHRoaXMhPT11bmRlZmluZWQ7fTsNCmlmICghICgoZnVuY3Rpb24gKCkge3JldHVybiBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-83gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmbkdsb2JhbE9iamVjdCgpLmYgPSBmdW5jdGlvbigpICB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHtyZXR1cm4gbmV3IEZ1bmN0aW9uKCJcInVzZSBzdHJpY3RcIjtyZXR1cm4gZigpOyIpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBuZXcnZWQgRnVuY3Rpb24gY29uc3RydWN0b3IpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcyE9PXVuZGVmaW5lZDt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7cmV0dXJuIG5ldyBGdW5jdGlvbigiXCJ1c2Ugc3RyaWN0XCI7cmV0dXJuIGYoKTsiKSgpO30pKCkpICl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict new'ed Function constructor)","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-84gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzIT09dW5kZWZpbmVkO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-85gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkobnVsbCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobnVsbCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-86gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKX07DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmFwcGx5KHVuZGVmaW5lZCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkodW5kZWZpbmVkKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5hcHBseSh1bmRlZmluZWQpO30pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-87gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoc29tZU9iamVjdCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCnZhciBvID0ge307DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PW87fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkobyk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-88gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7IH0pKCkgPT09IGZuR2xvYmFsT2JqZWN0KCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkoZ2xvYmFsT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM7fTsNCmlmICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYXBwbHkoZm5HbG9iYWxPYmplY3QoKSk7fSkoKSAhPT0gZm5HbG9iYWxPYmplY3QoKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.apply(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-89gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS04Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25EZWNsYXJhdGlvbiBpbmNsdWRlcyBzdHJpY3QgZGlyZWN0aXZlIHByb2xvZ3VlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgew0KICAgICJ1c2Ugc3RyaWN0IjsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionDeclaration includes strict directive prologue)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-8gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIGNoZWNraW5nICd0aGlzJyAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQpyZXR1cm4gZigpID09PSAidW5kZWZpbmVkIjsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-90gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChudWxsKSkNCiAqIEBub1N0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG51bGwpOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(null))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-91gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Mi1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05MmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbCh1bmRlZmluZWQpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmNhbGwodW5kZWZpbmVkKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(undefined))","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-92gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05My1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05M2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChzb21lT2JqZWN0KSkNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KdmFyIG8gPSB7fTsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09bzt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5jYWxsKG8pOyB9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(someObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-93gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbChnbG9iYWxPYmplY3QpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuY2FsbChmbkdsb2JhbE9iamVjdCgpKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.call(globalObject))","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-94gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCk7DQp9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCgpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCgpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind()())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-95gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ni1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCiAgICANCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05NmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChudWxsKSgpKQ0KICogQG5vU3RyaWN0DQogKi8NCg0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1mbkdsb2JhbE9iamVjdCgpO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobnVsbCkoKTsgfSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(null)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-96gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Ny1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCnJldHVybiAoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05N2dzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZCh1bmRlZmluZWQpKCkpDQogKiBAbm9TdHJpY3QNCiAqLw0KDQpmdW5jdGlvbiBmKCkgeyByZXR1cm4gdGhpcz09PWZuR2xvYmFsT2JqZWN0KCk7fTsNCmlmICghICgoZnVuY3Rpb24gKCkgeyJ1c2Ugc3RyaWN0IjsgcmV0dXJuIGYuYmluZCh1bmRlZmluZWQpKCk7IH0pKCkpKXsNCiAgICB0aHJvdyAiJ3RoaXMnIGhhZCBpbmNvcnJlY3QgdmFsdWUhIjsNCn0NCg==","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(undefined)())","noStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-97gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OC1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KICAgIA0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQpyZXR1cm4gKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpOw0KfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw==","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OGdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChzb21lT2JqZWN0KSgpKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQp2YXIgbyA9IHt9Ow0KZnVuY3Rpb24gZigpIHsgcmV0dXJuIHRoaXM9PT1vO307DQppZiAoISAoKGZ1bmN0aW9uICgpIHsidXNlIHN0cmljdCI7IHJldHVybiBmLmJpbmQobykoKTt9KSgpKSl7DQogICAgdGhyb3cgIid0aGlzJyBoYWQgaW5jb3JyZWN0IHZhbHVlISI7DQp9DQo=","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(someObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-98gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBjaGVja2luZyAndGhpcycgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQogICAgDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KcmV0dXJuIChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKTsNCn0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"Strict Mode - checking 'this' (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05OWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IC0gY2hlY2tpbmcgJ3RoaXMnIGZyb20gYSBnbG9iYWwgc2NvcGUgKG5vbi1zdHJpY3QgZnVuY3Rpb24gZGVjbGFyYXRpb24gY2FsbGVkIGJ5IHN0cmljdCBGdW5jdGlvbi5wcm90b3R5cGUuYmluZChnbG9iYWxPYmplY3QpKCkpDQogKiBAb25seVN0cmljdA0KICovDQoNCmZ1bmN0aW9uIGYoKSB7IHJldHVybiB0aGlzPT09Zm5HbG9iYWxPYmplY3QoKTt9Ow0KaWYgKCEgKChmdW5jdGlvbiAoKSB7InVzZSBzdHJpY3QiOyByZXR1cm4gZi5iaW5kKGZuR2xvYmFsT2JqZWN0KCkpKCk7fSkoKSkpew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ0K","commentary":"","description":"Strict - checking 'this' from a global scope (non-strict function declaration called by strict Function.prototype.bind(globalObject)())","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-99gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy8xMC40LjMtMS05Z3MuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgLSBjaGVja2luZyAndGhpcycgZnJvbSBhIGdsb2JhbCBzY29wZSAoRnVuY3Rpb25FeHByZXNzaW9uIGRlZmluZWQgd2l0aGluIHN0cmljdCBtb2RlKQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoidXNlIHN0cmljdCI7DQp2YXIgZiA9IGZ1bmN0aW9uICgpIHsNCiAgICByZXR1cm4gdHlwZW9mIHRoaXM7DQp9DQppZiAoZigpICE9PSAidW5kZWZpbmVkIikgew0KICAgIHRocm93ICIndGhpcycgaGFkIGluY29ycmVjdCB2YWx1ZSEiOw0KfQ==","commentary":"","description":"Strict - checking 'this' from a global scope (FunctionExpression defined within strict mode)","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/10.4.3-1-9gs.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMTEgR29vZ2xlLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgovKioKICogQHBhdGggY2gxMC8xMC40LzEwLjQuMy9TMTAuNC4zX0ExLmpzCiAqIEBkZXNjcmlwdGlvbiBXaGVuIGNhbGxpbmcgYSBzdHJpY3QgYW5vbnltb3VzIGZ1bmN0aW9uIGFzIGEKICogZnVuY3Rpb24sICJ0aGlzIiBzaG91bGQgYmUgYm91bmQgdG8gdW5kZWZpbmVkLgogKiBAb25seVN0cmljdAogKi8KCiJ1c2Ugc3RyaWN0IjsKdmFyIHRoYXQgPSAoZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSgpOwppZiAodGhhdCAhPT0gdW5kZWZpbmVkKSB7CiAgJEVSUk9SKCcjMTogInRoaXMiIGxlYWtlZCBhczogJyArIHRoYXQpOwp9Cgo=","commentary":"","description":"When calling a strict anonymous function as a\nfunction, \"this\" should be bound to undefined.","onlyStrict":"","path":"TestCases/ch10/10.4/10.4.3/S10.4.3_A1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgb2JqZWN0IGlzIGltbXV0YWJsZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICAoZnVuY3Rpb24gZnVuKCkgew0KICAgICAgICAgICAgICAgIGV2YWwoImFyZ3VtZW50cyA9IDEwIik7DQogICAgICAgICAgICB9KSgzMCk7DQogICAgICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAgIH0gY2F0Y2ggKGUpIHsNCiAgICAgICAgICAgIHJldHVybiAoZSBpbnN0YW5jZW9mIFN5bnRheEVycm9yKTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMgY2Fubm90IGJlIGFzc2lnbmVkIHRvIGluIGEgc3RyaWN0IGZ1bmN0aW9uDQogKiBAb25seVN0cmljdA0KICogQG5lZ2F0aXZlIF4oKD8hTm90RWFybHlFcnJvcikuKSokDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KdGhyb3cgTm90RWFybHlFcnJvcjsNCg0KZnVuY3Rpb24gZl8xMF81XzFfZ3MoKXsNCiAgICBhcmd1bWVudHMgPSA3Ow0KfQ0KDQo=","commentary":"","description":"Strict Mode - arguments cannot be assigned to in a strict function","negative":"^((?!NotEarlyError).)*$","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTEtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpcyBpbW11dGFibGUgaW4gZXZhbCdlZCBmdW5jdGlvbnMNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBldmFsKCIoZnVuY3Rpb24gXzEwXzVfN19iXzFfZnVuKCkgeyBhcmd1bWVudHMgPSAxMDt9ICgpKTsiKTsNCiAgICAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgICAgfSBjYXRjaCAoZSkgew0KICAgICAgICAgICAgcmV0dXJuIGUgaW5zdGFuY2VvZiBTeW50YXhFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - arguments object is immutable in eval'ed functions","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTItcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gYXJndW1lbnRzIG9iamVjdCBpbmRleCBhc3NpZ25tZW50IGlzIGFsbG93ZWQNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgInVzZSBzdHJpY3QiOw0KDQogICAgICAgIGZ1bmN0aW9uIF8xMF81XzdfYl8yX2Z1bigpIHsNCiAgICAgICAgICAgIGFyZ3VtZW50c1s3XSA9IDEyOw0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50c1s3XSA9PT0gMTI7DQogICAgICAgIH07DQoNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl8yX2Z1bigzMCk7DQogICAgfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Strict Mode - arguments object index assignment is allowed","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTMtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gQWRkaW5nIHByb3BlcnR5IHRvIHRoZSBhcmd1bWVudHMgb2JqZWN0IHN1Y2Nlc3NmdWwgdW5kZXIgc3RyaWN0IG1vZGUgDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICBmdW5jdGlvbiBfMTBfNV83X2JfM19mdW4oKSB7DQogICAgICAgICAgICBhcmd1bWVudHNbMV0gPSAxMjsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHNbMF0gPSAzMCAmJiBhcmd1bWVudHNbMV0gPT09IDEyOw0KICAgICAgICB9Ow0KDQogICAgICAgIHJldHVybiBfMTBfNV83X2JfM19mdW4oMzApOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Adding property to the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC41LzEwLjUtNy1iLTQtcy5qcw0KICogQGRlc2NyaXB0aW9uIFN0cmljdCBNb2RlIC0gRGVsZXRpbmcgcHJvcGVydHkgb2YgdGhlIGFyZ3VtZW50cyBvYmplY3Qgc3VjY2Vzc2Z1bCB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgZnVuY3Rpb24gXzEwXzVfN19iXzRfZnVuKCkgew0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzEgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIGFyZ3VtZW50c1sxXSA9PT0gMTI7DQogICAgICAgICAgICBkZWxldGUgYXJndW1lbnRzWzFdOw0KICAgICAgICAgICAgdmFyIF8xMF81XzdfYl80XzIgPSBhcmd1bWVudHNbMF0gPT09IDMwICYmIHR5cGVvZiBhcmd1bWVudHNbMV0gPT09ICJ1bmRlZmluZWQiOw0KICAgICAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80XzEgJiYgXzEwXzVfN19iXzRfMjsNCiAgICAgICAgfTsNCiAgICAgICAgcmV0dXJuIF8xMF81XzdfYl80X2Z1bigzMCwgMTIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - Deleting property of the arguments object successful under strict mode","onlyStrict":"","path":"TestCases/ch10/10.5/10.5-7-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gcmVtYWlucyBzYW1lIGFmdGVyIGNoYW5naW5nIGFjdHVhbCBwYXJhbWV0ZXJzIGluIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICBhID0gMTsgYiA9ICdzdHInOyBjID0gMi4xOw0KICAgIHJldHVybiAoYXJndW1lbnRzWzBdID09PSAxMCAmJiBhcmd1bWVudHNbMV0gPT09ICdzc3MnICYmIGFyZ3VtZW50c1syXSA9PT0gMSk7DQogIH0NCiAgcmV0dXJuIGZvbygxMCwgJ3NzcycsIDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] remains same after changing actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0xLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIGNoYW5nZSB3aXRoIGFjdHVhbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgZnVuY3Rpb24gZm9vKGEsYixjKQ0KICB7DQogICAgYSA9IDE7IGIgPSAnc3RyJzsgYyA9IDIuMTsNCiAgICBpZihhcmd1bWVudHNbMF0gPT09IDEgJiYgYXJndW1lbnRzWzFdID09PSAnc3RyJyAmJiBhcmd1bWVudHNbMl0gPT09IDIuMSkNCiAgICAgIHJldHVybiB0cnVlOyAgIA0KICB9DQogIHJldHVybiBmb28oMTAsJ3NzcycsMSk7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments[i] change with actual parameters","path":"TestCases/ch10/10.6/10.6-10-c-ii-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHNbaV0gZG9lc24ndCBtYXAgdG8gYWN0dWFsIHBhcmFtZXRlcnMgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgICd1c2Ugc3RyaWN0JzsgICAgDQogICAgYXJndW1lbnRzWzBdID0gMTsgYXJndW1lbnRzWzFdID0gJ3N0cic7IGFyZ3VtZW50c1syXSA9IDIuMTsNCiAgICByZXR1cm4gMTAgPT09IGEgJiYgJ3NzcycgPT09IGIgJiYgMSA9PT0gYzsNCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] doesn't map to actual parameters in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-10-c-ii-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTAtYy1paS0yLmpzDQogKiBAZGVzY3JpcHRpb24gYXJndW1lbnRzW2ldIG1hcCB0byBhY3R1YWwgcGFyYW1ldGVyDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIGZ1bmN0aW9uIGZvbyhhLGIsYykNCiAgew0KICAgIGFyZ3VtZW50c1swXSA9IDE7IGFyZ3VtZW50c1sxXSA9ICdzdHInOyBhcmd1bWVudHNbMl0gPSAyLjE7DQogICAgaWYoMSA9PT0gYSAmJiAnc3RyJyA9PT0gYiAmJiAyLjEgPT09IGMpDQogICAgICByZXR1cm4gdHJ1ZTsgICANCiAgfQ0KICByZXR1cm4gZm9vKDEwLCdzc3MnLDEpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments[i] map to actual parameter","path":"TestCases/ch10/10.6/10.6-10-c-ii-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTEtYi0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgaW5kZXggcHJvcGVydHkgJzAnIGFzIGl0cyBvd24gcHJvcGVydHksIGl0IHNob3VsZGUgYmUgd3JpdGFibGUsIGVudW1lcmFibGUsIGNvbmZpZ3VyYWJsZSBhbmQgZG9lcyBub3QgaW52b2tlIHRoZSBzZXR0ZXIgZGVmaW5lZCBvbiBPYmplY3QucHJvdG90eXBlWzBdIChTdGVwIDExLmIpDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHZhciBkYXRhID0gImRhdGEiOw0KICAgICAgICAgICAgdmFyIGdldEZ1bmMgPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAiMCIsIHsNCiAgICAgICAgICAgICAgICBnZXQ6IGdldEZ1bmMsDQogICAgICAgICAgICAgICAgc2V0OiBzZXRGdW5jLA0KICAgICAgICAgICAgICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZQ0KICAgICAgICAgICAgfSk7DQoNCiAgICAgICAgICAgIHZhciBhcmdPYmogPSAoZnVuY3Rpb24gKCkgeyByZXR1cm4gYXJndW1lbnRzIH0pKDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5VmFsdWUgPSBmYWxzZTsNCiAgICAgICAgICAgIHZlcmlmeVZhbHVlID0gKGFyZ09ialswXSA9PT0gMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiMCIgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCIwIikpIHsNCiAgICAgICAgICAgICAgICAgICAgdmVyaWZ5RW51bWVyYWJsZSA9IHRydWU7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09ialswXSA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmpbMF0gPT09IDEwMDEpOw0KDQogICAgICAgICAgICB2YXIgdmVyaWZ5Q29uZmlndXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBkZWxldGUgYXJnT2JqWzBdOw0KICAgICAgICAgICAgdmVyaWZ5Q29uZmlndXJhYmxlID0gYXJnT2JqLmhhc093blByb3BlcnR5KCIwIik7DQoNCiAgICAgICAgICAgIHJldHVybiB2ZXJpZnlWYWx1ZSAmJiB2ZXJpZnlXcml0YWJsZSAmJiB2ZXJpZnlFbnVtZXJhYmxlICYmICF2ZXJpZnlDb25maWd1cmFibGUgJiYgZGF0YSA9PT0gImRhdGEiOw0KICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgZGVsZXRlIE9iamVjdC5wcm90b3R5cGVbMF07DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has index property '0' as its own property, it shoulde be writable, enumerable, configurable and does not invoke the setter defined on Object.prototype[0] (Step 11.b)","path":"TestCases/ch10/10.6/10.6-11-b-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZWUgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlZTsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing callee property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-12-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTItMi5qcw0KICogQGRlc2NyaXB0aW9uIGFyZ3VtZW50cy5jYWxsZWUgaGFzIGNvcnJlY3QgYXR0cmlidXRlcw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZWUiKTsNCiAgaWYoZGVzYy5jb25maWd1cmFibGUgPT09IHRydWUgJiYNCiAgICAgZGVzYy5lbnVtZXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLndyaXRhYmxlID09PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ2dldCcpID09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3B1dCcpID09IGZhbHNlKQ0KICAgIHJldHVybiB0cnVlOyAgIA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee has correct attributes","path":"TestCases/ch10/10.6/10.6-12-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtMS5qcw0KICogQGRlc2NyaXB0aW9uIEFjY2Vzc2luZyBjYWxsZXIgcHJvcGVydHkgb2YgQXJndW1lbnRzIG9iamVjdCBpcyBhbGxvd2VkDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgdHJ5IA0KICB7DQogICAgYXJndW1lbnRzLmNhbGxlcjsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KICBjYXRjaCAoZSkgew0KICB9DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"Accessing caller property of Arguments object is allowed","path":"TestCases/ch10/10.6/10.6-13-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0xLmpzDQogKiBAZGVzY3JpcHRpb24gSW4gbm9uLXN0cmljdCBtb2RlLCBhcmd1bWVudHMgb2JqZWN0IHNob3VsZCBoYXZlIGl0cyBvd24gJ2NhbGxlZScgcHJvcGVydHkgZGVmaW5lZCAoU3RlcCAxMy5hKQ0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgIHRyeSB7DQogICAgICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoT2JqZWN0LnByb3RvdHlwZSwgImNhbGxlZSIsIHsNCiAgICAgICAgICAgICAgICB2YWx1ZTogMSwNCiAgICAgICAgICAgICAgICB3cml0YWJsZTogZmFsc2UsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIGFyZ09iaiA9IChmdW5jdGlvbiAoKSB7IHJldHVybiBhcmd1bWVudHMgfSkoKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2ZXJpZnlWYWx1ZSA9IHR5cGVvZiBhcmdPYmouY2FsbGVlID09PSAiZnVuY3Rpb24iOw0KICAgICAgICAgICAgDQogICAgICAgICAgICB2YXIgdmVyaWZ5V3JpdGFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGFyZ09iai5jYWxsZWUgPSAxMDAxOw0KICAgICAgICAgICAgdmVyaWZ5V3JpdGFibGUgPSAoYXJnT2JqLmNhbGxlZSA9PT0gMTAwMSk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlFbnVtZXJhYmxlID0gZmFsc2U7DQogICAgICAgICAgICBmb3IgKHZhciBwIGluIGFyZ09iaikgew0KICAgICAgICAgICAgICAgIGlmIChwID09PSAiY2FsbGVlIiAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5jYWxsZWU7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZTsNCiAgICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgICAgIGRlbGV0ZSBPYmplY3QucHJvdG90eXBlLmNhbGxlZTsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"In non-strict mode, arguments object should have its own 'callee' property defined (Step 13.a)","path":"TestCases/ch10/10.6/10.6-13-a-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0yLmpzDQogKiBAZGVzY3JpcHRpb24gQSBkaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgew0KICAgICAgICBpZihhcmd1bWVudHMuY2FsbGVlLmNhbGxlcj09PXVuZGVmaW5lZCkgew0KICAgICAgICAgIGNhbGxlZD10cnVlOyAvLyBFeHRlbnNpb24gbm90IHN1cHBvcnRlZCAtIGZha2UgaXQNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcih0cnVlKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICANCiAgICB0ZXN0MSgpOw0KICAgIHJldHVybiBjYWxsZWQ7ICAgDQp9DQoNCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTs=","commentary":"","description":"A direct call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYS0zLmpzDQogKiBAZGVzY3JpcHRpb24gQW4gaW5kaXJlY3QgY2FsbCB0byBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciBzaG91bGQgd29yaw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgdmFyIGNhbGxlZCA9IGZhbHNlOw0KICAgIA0KICAgIGZ1bmN0aW9uIHRlc3QxKGZsYWcpIHsNCiAgICAgICAgaWYgKGZsYWchPT10cnVlKSB7DQogICAgICAgICAgICB0ZXN0MigpOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgY2FsbGVkID0gdHJ1ZTsNCiAgICAgICAgfQ0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIHRlc3QyKCkgeyAgDQogICAgICAgaWYgKGFyZ3VtZW50cy5jYWxsZWUuY2FsbGVyPT09dW5kZWZpbmVkKSB7DQogICAgICAgICBjYWxsZWQgPSB0cnVlOyAgLy9FeHRlbnNpb24gbm90IHN1cHBvcnRlZCAtIGZha2UgaXQNCiAgICAgICB9IGVsc2UgeyAgICAgDQogICAgICAgICB2YXIgZXhwbGljaXQgPSBhcmd1bWVudHMuY2FsbGVlLmNhbGxlcjsNCiAgICAgICAgIGV4cGxpY2l0KHRydWUpOw0KICAgICAgIH0NCiAgICB9DQogICAgDQogICAgdGVzdDEoKTsNCiAgICByZXR1cm4gY2FsbGVkOyAgIA0KfQ0KDQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7","commentary":"","description":"An indirect call to arguments.callee.caller should work","path":"TestCases/ch10/10.6/10.6-13-a-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVyIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZXI7DQogIH0NCiAgY2F0Y2ggKGUpIHsNCiAgICBpZihlIGluc3RhbmNlb2YgVHlwZUVycm9yKQ0KICAgICAgcmV0dXJuIHRydWU7DQogIH0NCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Accessing caller property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVyIik7DQogIHJldHVybiBkZXNjIT09IHVuZGVmaW5lZDsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"arguments.caller exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYi0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVyIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgIA0KICAndXNlIHN0cmljdCc7ICAgIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJjYWxsZXIiKTsNCiAgDQogIHJldHVybiAoZGVzYy5jb25maWd1cmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCd2YWx1ZScpID09IGZhbHNlICAmJiANCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmIA0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdzZXQnKSA9PSB0cnVlKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgDQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.caller is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-b-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBBY2Nlc3NpbmcgY2FsbGVlIHByb3BlcnR5IG9mIEFyZ3VtZW50cyBvYmplY3QgdGhyb3dzIFR5cGVFcnJvciBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAndXNlIHN0cmljdCc7DQogIHRyeSANCiAgew0KICAgIGFyZ3VtZW50cy5jYWxsZWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQogIGNhdGNoIChlKSB7DQogICAgcmV0dXJuIChlIGluc3RhbmNlb2YgVHlwZUVycm9yKTsNCiAgfQ0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Accessing callee property of Arguments object throws TypeError in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0yLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIGV4aXN0cyBpbiBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICANCiAgJ3VzZSBzdHJpY3QnOyAgICANCiAgdmFyIGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGFyZ3VtZW50cywiY2FsbGVlIik7DQogIHJldHVybiBkZXNjICE9PSB1bmRlZmluZWQ7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"arguments.callee is exists in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-2-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTMtYy0zLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBhcmd1bWVudHMuY2FsbGVlIGlzIG5vbi1jb25maWd1cmFibGUgaW4gc3RyaWN0IG1vZGUNCiAqIEBvbmx5U3RyaWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogICd1c2Ugc3RyaWN0JzsgICAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImNhbGxlZSIpOw0KICByZXR1cm4gKGRlc2MuY29uZmlndXJhYmxlID09PSBmYWxzZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3ZhbHVlJykgPT0gZmFsc2UgJiYNCiAgICAgZGVzYy5oYXNPd25Qcm9wZXJ0eSgnd3JpdGFibGUnKSA9PSBmYWxzZSAmJg0KICAgICBkZXNjLmhhc093blByb3BlcnR5KCdnZXQnKSA9PSB0cnVlICYmDQogICAgIGRlc2MuaGFzT3duUHJvcGVydHkoJ3NldCcpID09IHRydWUpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"arguments.callee is non-configurable in strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-13-c-3-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtMS1zLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSAnY2FsbGVlJyBleGlzdHMgYW5kICdjYWxsZXInIGV4aXN0cyB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQogICAgICAgIHZhciBhcmdPYmogPSBmdW5jdGlvbiAoKSB7DQogICAgICAgICAgICByZXR1cm4gYXJndW1lbnRzOw0KICAgICAgICB9ICgpOw0KICAgICAgICByZXR1cm4gYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKSAmJiBhcmdPYmouaGFzT3duUHJvcGVydHkoImNhbGxlciIpOw0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - 'callee' exists and 'caller' exists under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVyJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfYl8xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9iXzEpICYmIF8xMF82XzE0X2JfMSA9PT0gImNhbGxlciIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZXIiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'caller' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYi00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZXInIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlciA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'caller' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-b-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy0xLXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFtbRW51bWVyYWJsZV1dIGF0dHJpYnV0ZSB2YWx1ZSBpbiAnY2FsbGVlJyBpcyBmYWxzZSB1bmRlciBzdHJpY3QgbW9kZQ0KICogQG9ubHlTdHJpY3QNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICAidXNlIHN0cmljdCI7DQoNCiAgICAgICAgdmFyIGFyZ09iaiA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHM7DQogICAgICAgIH0gKCk7DQoNCiAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgZm9yICh2YXIgXzEwXzZfMTRfY18xIGluIGFyZ09iaikgew0KICAgICAgICAgICAgaWYgKGFyZ09iai5oYXNPd25Qcm9wZXJ0eShfMTBfNl8xNF9jXzEpICYmIF8xMF82XzE0X2NfMSA9PT0gImNhbGxlZSIpIHsNCiAgICAgICAgICAgICAgICB2ZXJpZnlFbnVtZXJhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gIXZlcmlmeUVudW1lcmFibGUgJiYgYXJnT2JqLmhhc093blByb3BlcnR5KCJjYWxsZWUiKTsNCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Strict Mode - [[Enumerable]] attribute value in 'callee' is false under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-1-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMTQtYy00LXMuanMNCiAqIEBkZXNjcmlwdGlvbiBTdHJpY3QgTW9kZSAtIFR5cGVFcnJvciBpcyB0aHJvd24gd2hlbiBhY2Nlc3NpbmcgdGhlIFtbU2V0XV0gYXR0cmlidXRlIGluICdjYWxsZWUnIHVuZGVyIHN0cmljdCBtb2RlDQogKiBAb25seVN0cmljdA0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogICAgICAgICJ1c2Ugc3RyaWN0IjsNCg0KICAgICAgICB2YXIgYXJnT2JqID0gZnVuY3Rpb24gKCkgew0KICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50czsNCiAgICAgICAgfSAoKTsNCg0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgYXJnT2JqLmNhbGxlZSA9IHt9Ow0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOw0KICAgICAgICB9IGNhdGNoIChlKSB7DQogICAgICAgICAgICByZXR1cm4gZSBpbnN0YW5jZW9mIFR5cGVFcnJvcjsNCiAgICAgICAgfQ0KICAgIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"Strict Mode - TypeError is thrown when accessing the [[Set]] attribute in 'callee' under strict mode","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-14-c-4-s.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMWdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbiwgYnV0IGRvZXMgbm90IHRocm93IGFuIGVhcmx5IGVycm9yDQogKiBAb25seVN0cmljdA0KICovDQoNCiJ1c2Ugc3RyaWN0IjsNCmZ1bmN0aW9uIGZfMTBfNl8xX2dzKCl7DQogICAgcmV0dXJuIGFyZ3VtZW50cy5jYWxsZWU7DQp9DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function, but does not throw an early error","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-1gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtMmdzLmpzDQogKiBAZGVzY3JpcHRpb24gU3RyaWN0IE1vZGUgLSBhcmd1bWVudHMuY2FsbGVlIGNhbm5vdCBiZSBhY2Nlc3NlZCBpbiBhIHN0cmljdCBmdW5jdGlvbg0KICogQG9ubHlTdHJpY3QNCiAqIEBuZWdhdGl2ZSAuDQogKi8NCg0KInVzZSBzdHJpY3QiOw0KZnVuY3Rpb24gZl8xMF82XzFfZ3MoKXsNCiAgICByZXR1cm4gYXJndW1lbnRzLmNhbGxlZTsNCn0NCmZfMTBfNl8xX2dzKCk7DQoNCg==","commentary":"","description":"Strict Mode - arguments.callee cannot be accessed in a strict function","negative":".","onlyStrict":"","path":"TestCases/ch10/10.6/10.6-2gs.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNS0xLmpzDQogKiBAZGVzY3JpcHRpb24gW1tQcm90b3R5cGVdXSBwcm9wZXJ0eSBvZiBBcmd1bWVudHMgaXMgc2V0IHRvIE9iamVjdCBwcm90b3R5cGUgb2JqZWN0DQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgaWYoT2JqZWN0LmdldFByb3RvdHlwZU9mKGFyZ3VtZW50cykgPT09IE9iamVjdC5nZXRQcm90b3R5cGVPZih7fSkpDQogICAgcmV0dXJuIHRydWU7DQogfQ0KcnVuVGVzdENhc2UodGVzdGNhc2UpOw0K","commentary":"","description":"[[Prototype]] property of Arguments is set to Object prototype object","path":"TestCases/ch10/10.6/10.6-5-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0xLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCBwcm9wZXJ0eSBvZiBhcmd1bWVudHMgb2JqZWN0IGV4aXN0cw0KICovDQoNCg0KZnVuY3Rpb24gdGVzdGNhc2UoKSB7DQogIA0KICB2YXIgZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYXJndW1lbnRzLCJsZW5ndGgiKTsNCiAgcmV0dXJuIGRlc2MgIT09IHVuZGVmaW5lZA0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length property of arguments object exists","path":"TestCases/ch10/10.6/10.6-6-1.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0yLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBoYXMgY29ycmVjdCBhdHRyaWJ1dGVzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgDQogIHZhciBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihhcmd1bWVudHMsImxlbmd0aCIpOw0KICBpZihkZXNjLmNvbmZpZ3VyYWJsZSA9PT0gdHJ1ZSAmJg0KICAgICBkZXNjLmVudW1lcmFibGUgPT09IGZhbHNlICYmDQogICAgIGRlc2Mud3JpdGFibGUgPT09IHRydWUgKQ0KICAgIHJldHVybiB0cnVlOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object has correct attributes","path":"TestCases/ch10/10.6/10.6-6-2.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi0zLmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBleGlzdHMNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgdmFyIGFyZ3VtZW50cz0gdW5kZWZpbmVkOw0KCXJldHVybiAoZnVuY3Rpb24gKCkge3JldHVybiBhcmd1bWVudHMubGVuZ3RoICE9PSB1bmRlZmluZWR9KSgpOw0KIH0NCnJ1blRlc3RDYXNlKHRlc3RjYXNlKTsNCg==","commentary":"","description":"'length' property of arguments object for 0 argument function exists","path":"TestCases/ch10/10.6/10.6-6-3.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNi00LmpzDQogKiBAZGVzY3JpcHRpb24gJ2xlbmd0aCcgcHJvcGVydHkgb2YgYXJndW1lbnRzIG9iamVjdCBmb3IgMCBhcmd1bWVudCBmdW5jdGlvbiBjYWxsIGlzIDAgZXZlbiB3aXRoIGZvcm1hbCBwYXJhbWV0ZXJzDQogKi8NCg0KDQpmdW5jdGlvbiB0ZXN0Y2FzZSgpIHsNCiAgICAgIHZhciBhcmd1bWVudHM9IHVuZGVmaW5lZDsNCglyZXR1cm4gKGZ1bmN0aW9uIChhLGIsYykge3JldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAwfSkoKTsNCiB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"'length' property of arguments object for 0 argument function call is 0 even with formal parameters","path":"TestCases/ch10/10.6/10.6-6-4.js"},{"code":"Ly8vIENvcHlyaWdodCAoYykgMjAxMiBFY21hIEludGVybmF0aW9uYWwuICBBbGwgcmlnaHRzIHJlc2VydmVkLiANCi8qKg0KICogQHBhdGggY2gxMC8xMC42LzEwLjYtNy0xLmpzDQogKiBAZGVzY3JpcHRpb24gQXJndW1lbnRzIE9iamVjdCBoYXMgbGVuZ3RoIGFzIGl0cyBvd24gcHJvcGVydHkgYW5kIGRvZXMgbm90IGludm9rZSB0aGUgc2V0dGVyIGRlZmluZWQgb24gT2JqZWN0LnByb3RvdHlwZS5sZW5ndGggKFN0ZXAgNykNCiAqLw0KDQoNCmZ1bmN0aW9uIHRlc3RjYXNlKCkgew0KICAgICAgICB0cnkgew0KICAgICAgICAgICAgdmFyIGRhdGEgPSAiZGF0YSI7DQogICAgICAgICAgICB2YXIgZ2V0RnVuYyA9IGZ1bmN0aW9uICgpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gMTI7DQogICAgICAgICAgICB9Ow0KDQogICAgICAgICAgICB2YXIgc2V0RnVuYyA9IGZ1bmN0aW9uICh2YWx1ZSkgew0KICAgICAgICAgICAgICAgIGRhdGEgPSB2YWx1ZTsNCiAgICAgICAgICAgIH07DQoNCiAgICAgICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShPYmplY3QucHJvdG90eXBlLCAibGVuZ3RoIiwgew0KICAgICAgICAgICAgICAgIGdldDogZ2V0RnVuYywNCiAgICAgICAgICAgICAgICBzZXQ6IHNldEZ1bmMsDQogICAgICAgICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlDQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeVZhbHVlID0gZmFsc2U7DQogICAgICAgICAgICB2YXIgYXJnT2JqID0gKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGFyZ3VtZW50cyB9KSgpOw0KICAgICAgICAgICAgdmVyaWZ5VmFsdWUgPSAoYXJnT2JqLmxlbmd0aCA9PT0gMCk7DQoNCiAgICAgICAgICAgIHZhciB2ZXJpZnlXcml0YWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgYXJnT2JqLmxlbmd0aCA9IDEwMDE7DQogICAgICAgICAgICB2ZXJpZnlXcml0YWJsZSA9IChhcmdPYmoubGVuZ3RoID09PSAxMDAxKTsNCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUVudW1lcmFibGUgPSBmYWxzZTsNCiAgICAgICAgICAgIGZvciAodmFyIHAgaW4gYXJnT2JqKSB7DQogICAgICAgICAgICAgICAgaWYgKHAgPT09ICJsZW5ndGgiKSB7DQogICAgICAgICAgICAgICAgICAgIHZlcmlmeUVudW1lcmFibGUgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgdmFyIHZlcmlmeUNvbmZpZ3VyYWJsZSA9IGZhbHNlOw0KICAgICAgICAgICAgZGVsZXRlIGFyZ09iai5sZW5ndGg7DQogICAgICAgICAgICB2ZXJpZnlDb25maWd1cmFibGUgPSBhcmdPYmouaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOw0KDQogICAgICAgICAgICByZXR1cm4gdmVyaWZ5VmFsdWUgJiYgdmVyaWZ5V3JpdGFibGUgJiYgIXZlcmlmeUVudW1lcmFibGUgJiYgIXZlcmlmeUNvbmZpZ3VyYWJsZSAmJiBkYXRhID09PSAiZGF0YSI7DQogICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICBkZWxldGUgT2JqZWN0LnByb3RvdHlwZS5sZW5ndGg7DQogICAgICAgIH0NCiAgICB9DQpydW5UZXN0Q2FzZSh0ZXN0Y2FzZSk7DQo=","commentary":"","description":"Arguments Object has length as its own property and does not invoke the setter defined on Object.prototype.length (Step 7)","path":"TestCases/ch10/10.6/10.6-7-1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBXaGVuIGNvbnRyb2wgZW50ZXJzIGFuIGV4ZWN1dGlvbiBjb250ZXh0IGZvciBmdW5jdGlvbiBjb2RlLAogKiBhbiBhcmd1bWVudHMgb2JqZWN0IGlzIGNyZWF0ZWQgYW5kIGluaXRpYWxpc2VkCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMS5qcwogKiBAZGVzY3JpcHRpb24gRXhlY3V0aW5nIGZ1bmN0aW9uIHdoaWNoIHVzZXMgYXJndW1lbnRzIG9iamVjdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYxKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpewogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICB2YXIgeCA9IGYyKCk7Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"When control enters an execution context for function code,\nan arguments object is created and initialised","description":"Executing function which uses arguments object","path":"TestCases/ch10/10.6/S10.6_A1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgdmFsdWUgb2YgdGhlIGludGVybmFsIFtbUHJvdG90eXBlXV0gcHJvcGVydHkgb2YgdGhlCiAqIGNyZWF0ZWQgYXJndW1lbnRzIG9iamVjdCBpcyB0aGUgb3JpZ2luYWwgT2JqZWN0IHByb3RvdHlwZSBvYmplY3QsIHRoZSBvbmUKICogdGhhdCBpcyB0aGUgaW5pdGlhbCB2YWx1ZSBvZiBPYmplY3QucHJvdG90eXBlCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BMi5qcwogKiBAZGVzY3JpcHRpb24gQ2hlY2tpbmcgYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZT09PU9iamVjdC5wcm90b3R5cGUKICovCgovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICByZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTsKfQp0cnl7CiAgaWYoZjEoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMxOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNvbnN0cnVjdG9yLnByb3RvdHlwZTt9Owp0cnl7CiAgaWYoZjIoKSAhPT0gT2JqZWN0LnByb3RvdHlwZSl7CiAgICAkRVJST1IoJyMyOiBhcmd1bWVudHMuY29uc3RydWN0b3IucHJvdG90eXBlID09PSBPYmplY3QucHJvdG90eXBlJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzI6IGFyZ3VtZW50cyBkb2Vzbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"The value of the internal [[Prototype]] property of the\ncreated arguments object is the original Object prototype object, the one\nthat is the initial value of Object.prototype","description":"Checking arguments.constructor.prototype===Object.prototype","path":"TestCases/ch10/10.6/S10.6_A2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImNhbGxlZSIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnY2FsbGVlJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.callee property","path":"TestCases/ch10/10.6/S10.6_A3_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmNhbGxlZSBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJjYWxsZWUiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgY2FsbGVlIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAiY2FsbGVlIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.callee property fails","path":"TestCases/ch10/10.6/S10.6_A3_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMuY2FsbGVlIHByb3BlcnR5IGZhaWxzCiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiAoZGVsZXRlIGFyZ3VtZW50cy5jYWxsZWUpOwp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBjYWxsZWUgaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmNhbGxlZSk7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IERvbnREZWxldGUgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.callee property fails","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGNhbGxlZSB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0EzX1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5jYWxsZWUgcHJvcGVydHkKICogQG5vU3RyaWN0CiAqLwoKdmFyIHN0ciA9ICJzb21ldGhpbmcgZGlmZmVyZW50IjsKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgYXJndW1lbnRzLmNhbGxlZSA9IHN0cjsKICByZXR1cm4gYXJndW1lbnRzOwp9Cgp0cnl7CiAgaWYoZjEoKS5jYWxsZWUgIT09IHN0cil7CiAgICAkRVJST1IoIiMxOiBBIHByb3BlcnR5IGNhbGxlZSBoYXZlIGF0dHJpYnV0ZSB7IFJlYWRPbmx5IH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgICBhcmd1bWVudHMuY2FsbGVlID0gc3RyOwogICAgcmV0dXJuIGFyZ3VtZW50czsKICB9CnRyeXsKICBpZihmMigpLmNhbGxlZSAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgY2FsbGVlIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name callee with property\nattributes { DontEnum } and no others","description":"Overriding arguments.callee property","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A3_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBjYWxsZWUgaXMgdGhlCiAqIEZ1bmN0aW9uIG9iamVjdCBiZWluZyBleGVjdXRlZAogKgogKiBAcGF0aCBjaDEwLzEwLjYvUzEwLjZfQTQuanMKICogQGRlc2NyaXB0aW9uIENoZWNraW5nIHRoYXQgYXJndW1lbnRzLmNhbGxlZSA9PT0gZnVuY3Rpb24gb2JqZWN0CiAqIEBub1N0cmljdAogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuY2FsbGVlOwp9Cgp0cnl7CiAgaWYoZjEgIT09IGYxKCkpewogICAgJEVSUk9SKCcjMTogYXJndW1lbnRzLmNhbGxlZSA9PT0gZjEnKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb2Vzbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmNhbGxlZTt9OwoKdHJ5ewogIGlmKGYyICE9PSBmMigpKXsKICAgICRFUlJPUignIzI6IGFyZ3VtZW50cy5jYWxsZWUgPT09IGYyJyk7CiAgfQp9CmNhdGNoKGUpewogICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBleGlzdHMiKTsKfQoK","commentary":"The initial value of the created property callee is the\nFunction object being executed","description":"Checking that arguments.callee === function object","noStrict":"","path":"TestCases/ch10/10.6/S10.6_A4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QxLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBleGlzdGVuY2Ugb2YgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eQogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpOwp9CnRyeXsKICBpZihmMSgpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzE6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCi8vQ0hFQ0sjMgp2YXIgZjIgPSBmdW5jdGlvbigpe3JldHVybiBhcmd1bWVudHMuaGFzT3duUHJvcGVydHkoImxlbmd0aCIpO307CnRyeXsKICBpZihmMigpICE9PSB0cnVlKXsKICAgICRFUlJPUigiIzI6IGFyZ3VtZW50cyBvYmplY3QgZG9lc24ndCBjb250YWlucyBwcm9wZXJ0eSAnbGVuZ3RoJyIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvZXNuJ3QgZXhpc3RzIik7Cn0KCg==","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking existence of arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T1.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QyLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBlbnVtZXJhdGluZyB0aGUgYXJndW1lbnRzLmxlbmd0aCBwcm9wZXJ0eSBmYWlscwogKi8KCi8vQ0hFQ0sjMQpmdW5jdGlvbiBmMSgpewogIGZvcih2YXIgeCBpbiBhcmd1bWVudHMpewogICAgaWYgKHggPT09ICJsZW5ndGgiKXsKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQogIH0KICByZXR1cm4gdHJ1ZTsKfQoKdHJ5ewogIGlmKCFmMSgpKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGRvbid0IGhhdmUgYXR0cmlidXRlIHsgRG9udEVudW0gfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICBmb3IodmFyIHggaW4gYXJndW1lbnRzKXsKICAgIGlmICh4ID09PSAibGVuZ3RoIil7CiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KICB9CiAgcmV0dXJuIHRydWU7Cn0KCnRyeXsKICBpZighZjIoKSl7CiAgICAkRVJST1IoIiMyOiBBIHByb3BlcnR5IGxlbmd0aCBkb24ndCBoYXZlIGF0dHJpYnV0ZSB7IERvbnRFbnVtIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if enumerating the arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T2.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1QzLmpzCiAqIEBkZXNjcmlwdGlvbiBDaGVja2luZyBpZiBkZWxldGluZyBhcmd1bWVudHMubGVuZ3RoIHByb3BlcnR5IGZhaWxzCiAqLwoKLy9DSEVDSyMxCmZ1bmN0aW9uIGYxKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYxKCkpewogICAgJEVSUk9SKCIjMTogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMTogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoKLy9DSEVDSyMyCnZhciBmMiA9IGZ1bmN0aW9uKCl7CiAgcmV0dXJuIChkZWxldGUgYXJndW1lbnRzLmxlbmd0aCk7IAp9Cgp0cnl7CiAgaWYoIWYyKCkpewogICAgJEVSUk9SKCIjMjogQSBwcm9wZXJ0eSBsZW5ndGggaGF2ZSBhdHRyaWJ1dGUgeyBEb250RGVsZXRlIH0iKTsKICB9Cn0KY2F0Y2goZSl7CiAgJEVSUk9SKCIjMjogYXJndW1lbnRzIG9iamVjdCBkb24ndCBleGlzdHMiKTsKfQoK","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Checking if deleting arguments.length property fails","path":"TestCases/ch10/10.6/S10.6_A5_T3.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBBIHByb3BlcnR5IGlzIGNyZWF0ZWQgd2l0aCBuYW1lIGxlbmd0aCB3aXRoIHByb3BlcnR5CiAqIGF0dHJpYnV0ZXMgeyBEb250RW51bSB9IGFuZCBubyBvdGhlcnMKICoKICogQHBhdGggY2gxMC8xMC42L1MxMC42X0E1X1Q0LmpzCiAqIEBkZXNjcmlwdGlvbiBPdmVycmlkaW5nIGFyZ3VtZW50cy5sZW5ndGggcHJvcGVydHkKICovCgp2YXIgc3RyID0gInNvbWV0aGluZyBkaWZmZXJlbnQiOwovL0NIRUNLIzEKZnVuY3Rpb24gZjEoKXsKICBhcmd1bWVudHMubGVuZ3RoID0gc3RyOwogIHJldHVybiBhcmd1bWVudHM7Cn0KCnRyeXsKICBpZihmMSgpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzE6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMxOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9CgovL0NIRUNLIzIKdmFyIGYyID0gZnVuY3Rpb24oKXsKICAgIGFyZ3VtZW50cy5sZW5ndGggPSBzdHI7CiAgICByZXR1cm4gYXJndW1lbnRzOwogIH07CnRyeXsKICBpZihmMigpLmxlbmd0aCAhPT0gc3RyKXsKICAgICRFUlJPUigiIzI6IEEgcHJvcGVydHkgbGVuZ3RoIGhhdmUgYXR0cmlidXRlIHsgUmVhZE9ubHkgfSIpOwogIH0KfQpjYXRjaChlKXsKICAkRVJST1IoIiMyOiBhcmd1bWVudHMgb2JqZWN0IGRvbid0IGV4aXN0cyIpOwp9Cgo=","commentary":"A property is created with name length with property\nattributes { DontEnum } and no others","description":"Overriding arguments.length property","path":"TestCases/ch10/10.6/S10.6_A5_T4.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBUaGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgY3JlYXRlZCBwcm9wZXJ0eSBsZW5ndGggaXMgdGhlIG51bWJlcgogKiBvZiBhY3R1YWwgcGFyYW1ldGVyIHZhbHVlcyBzdXBwbGllZCBieSB0aGUgY2FsbGVyCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNi5qcwogKiBAZGVzY3JpcHRpb24gQ3JlYXRlIGZ1bmN0aW9uLCB0aGF0IHJldHVybmVkIGFyZ3VtZW50cy5sZW5ndGgKICovCgpmdW5jdGlvbiBmMSgpewogIHJldHVybiBhcmd1bWVudHMubGVuZ3RoOwp9CgovL0NIRUNLIzEKaWYoIShmMSgpID09PSAwKSl7CiAgJEVSUk9SKCcjMTogYXJndW1lbnQubGVuZ3RoID09PSAwJyk7Cn0KCi8vQ0hFQ0sjMgppZighKGYxKDApID09PSAxKSl7CiAgJEVSUk9SKCcjMjogYXJndW1lbnQubGVuZ3RoID09PSAxJyk7Cn0KCi8vQ0hFQ0sjMwppZighKGYxKDAsIDEpID09PSAyKSl7CiAgJEVSUk9SKCcjMzogYXJndW1lbnQubGVuZ3RoID09PSAyJyk7Cn0KCi8vQ0hFQ0sjNAppZighKGYxKDAsIDEsIDIpID09PSAzKSl7CiAgJEVSUk9SKCcjNDogYXJndW1lbnQubGVuZ3RoID09PSAzJyk7Cn0KCi8vQ0hFQ0sjNQppZighKGYxKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjNTogYXJndW1lbnQubGVuZ3RoID09PSA0Jyk7Cn0KCnZhciBmMiA9IGZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg7fTsKCi8vQ0hFQ0sjNgppZighKGYyKCkgPT09IDApKXsKICAkRVJST1IoJyM2OiBhcmd1bWVudC5sZW5ndGggPT09IDAnKTsKfQoKLy9DSEVDSyM3CmlmKCEoZjIoMCkgPT09IDEpKXsKICAkRVJST1IoJyM3OiBhcmd1bWVudC5sZW5ndGggPT09IDEnKTsKfQoKLy9DSEVDSyM4CmlmKCEoZjIoMCwgMSkgPT09IDIpKXsKICAkRVJST1IoJyM4OiBhcmd1bWVudC5sZW5ndGggPT09IDInKTsKfQoKLy9DSEVDSyM5CmlmKCEoZjIoMCwgMSwgMikgPT09IDMpKXsKICAkRVJST1IoJyM5OiBhcmd1bWVudC5sZW5ndGggPT09IDMnKTsKfQoKLy9DSEVDSyMxMAppZighKGYyKDAsIDEsIDIsIDMpID09PSA0KSl7CiAgJEVSUk9SKCcjMTA6IGFyZ3VtZW50Lmxlbmd0aCA9PT0gNCcpOwp9Cgo=","commentary":"The initial value of the created property length is the number\nof actual parameter values supplied by the caller","description":"Create function, that returned arguments.length","path":"TestCases/ch10/10.6/S10.6_A6.js"},{"code":"Ly8gQ29weXJpZ2h0IDIwMDkgdGhlIFNwdXRuaWsgYXV0aG9ycy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi8qKgogKiBHZXQgYXJndW1lbnRzIG9mIGZ1bmN0aW9uCiAqCiAqIEBwYXRoIGNoMTAvMTAuNi9TMTAuNl9BNy5qcwogKiBAZGVzY3JpcHRpb24gVXNlIHByb3BlcnR5IGFyZ3VtZW50cwogKi8KCmZ1bmN0aW9uIGYxKCkgewogIHJldHVybiBhcmd1bWVudHM7Cn0KICAKLy9DSEVDSyMxLTUKZm9yKHZhciBpID0gMTsgaSA8IDU7IGkrKyl7ICAKaWYgKGYxKDEsMiwzLDQsNSlbaV0gIT09IChpKzEpKQogICRFUlJPUigiIyIraSsiOiBSZXR1cm5pbmcgZnVuY3Rpb24ncyBhcmd1bWVudHMgd29yayB3cm9uZywgZjEoMSwyLDMsNCw1KVsiK2krIl0gIT09ICIrKGkrMSkpOwp9Cgo=","commentary":"Get arguments of function","description":"Use property arguments","path":"TestCases/ch10/10.6/S10.6_A7.js"}]}}
\ No newline at end of file
diff --git a/website/json/suiteDescrip.json b/website/json/suiteDescrip.json
index f6170177f6b0d9f5fc0978a789ee1ea176170b23..ad3f35d5a60eb7d707658ee6f8ec331379a08ab9 100644
--- a/website/json/suiteDescrip.json
+++ b/website/json/suiteDescrip.json
@@ -1 +1 @@
-{"date":"2012-08-09","version":"ES5.1"}
\ No newline at end of file
+{"date":"2012-08-22","version":"ES5.1"}
\ No newline at end of file
diff --git a/website/metadata/ecma-402-toc.xml b/website/metadata/ecma-402-toc.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a93d93fad1c4266e7a3af67c00906b8354fd1a92
--- /dev/null
+++ b/website/metadata/ecma-402-toc.xml
@@ -0,0 +1,158 @@
+<?xml version="1.0" encoding="utf-8"?>
+<esSpec name="ECMA-402" version="1">
+  <sec id="6" name="Identification of Locales, Time Zones, and Currencies">
+    <sec id="6.1" name="Case Sensitivity and Case Mapping">
+    </sec>
+    <sec id="6.2" name="Language Tags">
+      <sec id="6.2.1" name="Unicode Locale Extension Sequences">
+      </sec>
+      <sec id="6.2.2" name="IsStructurallyValidLanguageTag (locale)">
+      </sec>
+      <sec id="6.2.3" name="CanonicalizeLanguageTag (locale)">
+      </sec>
+      <sec id="6.2.4" name="DefaultLocale ()">
+      </sec>
+    </sec>
+    <sec id="6.3" name="Currency Codes">
+      <sec id="6.3.1" name="IsWellFormedCurrencyCode (currency)">
+      </sec>
+    </sec>
+    <sec id="6.4" name="Time Zone Names">
+    </sec>
+  </sec>
+  <sec id="7" name="Requirements for Standard Built-in ECMAScript Objects">
+  </sec>
+  <sec id="8" name="The Intl Object">
+    <sec id="8.1" name="Properties of the Intl Object">
+    </sec>
+  </sec>
+  <sec id="9" name="Locale and Parameter Negotiation">
+    <sec id="9.1" name="Internal Properties of Service Constructors">
+    </sec>
+    <sec id="9.2" name="Abstract Operations">
+      <sec id="9.2.1" name="CanonicalizeLocaleList (locales)">
+      </sec>
+      <sec id="9.2.2" name="BestAvailableLocale (availableLocales, locale)">
+      </sec>
+      <sec id="9.2.3" name="LookupMatcher (availableLocales, requestedLocales)">
+      </sec>
+      <sec id="9.2.4" name="BestFitMatcher (availableLocales, requestedLocales)">
+      </sec>
+      <sec id="9.2.5" name="ResolveLocale (availableLocales, requestedLocales, options, relevantExtensionKeys, localeData)">
+      </sec>
+      <sec id="9.2.6" name="LookupSupportedLocales (availableLocales, requestedLocales)">
+      </sec>
+      <sec id="9.2.7" name="BestFitSupportedLocales (availableLocales, requestedLocales)">
+      </sec>
+      <sec id="9.2.8" name="SupportedLocales (availableLocales, requestedLocales, options)">
+      </sec>
+      <sec id="9.2.9" name="GetOption (options, property, type, values, fallback)">
+      </sec>
+      <sec id="9.2.10" name="GetNumberOption (options, property, minimum, maximum, fallback)">
+      </sec>
+    </sec>
+  </sec>
+  <sec id="10" name="Collator Objects">
+    <sec id="10.1" name="The Intl.Collator Constructor">
+      <sec id="10.1.1" name="Initializing an Object as a Collator">
+      </sec>
+      <sec id="10.1.2" name="The Intl.Collator Constructor Called as a Function">
+      </sec>
+      <sec id="10.1.3" name="The Intl.Collator Constructor Used in a new Expression">
+      </sec>
+    </sec>
+    <sec id="10.2" name="Properties of the Intl.Collator Constructor">
+      <sec id="10.2.1" name="Intl.Collator.prototype">
+      </sec>
+      <sec id="10.2.2" name="Intl.Collator.supportedLocalesOf (locales [, options])">
+      </sec>
+      <sec id="10.2.3" name="Internal Properties">
+      </sec>
+    </sec>
+    <sec id="10.3" name="Properties of the Intl.Collator Prototype Object">
+      <sec id="10.3.1" name="Intl.Collator.prototype.constructor">
+      </sec>
+      <sec id="10.3.2" name="Intl.Collator.prototype.compare">
+      </sec>
+      <sec id="10.3.3" name="Intl.Collator.prototype.resolvedOptions ()">
+      </sec>
+    </sec>
+    <sec id="10.4" name="Properties of Intl.Collator Instances">
+    </sec>
+  </sec>
+  <sec id="11" name="NumberFormat Objects">
+    <sec id="11.1" name="The Intl.NumberFormat Constructor">
+      <sec id="11.1.1" name="Initializing an Object as a NumberFormat">
+      </sec>
+      <sec id="11.1.2" name="The Intl.NumberFormat Constructor Called as a Function">
+      </sec>
+      <sec id="11.1.3" name="The Intl.NumberFormat Constructor Used in a new Expression">
+      </sec>
+    </sec>
+    <sec id="11.2" name="Properties of the Intl.NumberFormat Constructor">
+      <sec id="11.2.1" name="Intl.NumberFormat.prototype">
+      </sec>
+      <sec id="11.2.2" name="Intl.NumberFormat.supportedLocalesOf (locales [, options])">
+      </sec>
+      <sec id="11.2.3" name="Internal Properties">
+      </sec>
+    </sec>
+    <sec id="11.3" name="Properties of the Intl.NumberFormat Prototype Object">
+      <sec id="11.3.1" name="Intl.NumberFormat.prototype.constructor">
+      </sec>
+      <sec id="11.3.2" name="Intl.NumberFormat.prototype.compare">
+      </sec>
+      <sec id="11.3.3" name="Intl.NumberFormat.prototype.resolvedOptions ()">
+      </sec>
+    </sec>
+    <sec id="11.4" name="Properties of Intl.NumberFormat Instances">
+    </sec>
+  </sec>
+  <sec id="12" name="DateTimeFormat Objects">
+    <sec id="12.1" name="The Intl.DateTimeFormat Constructor">
+      <sec id="12.1.1" name="Initializing an Object as a DateTimeFormat">
+      </sec>
+      <sec id="12.1.2" name="The Intl.DateTimeFormat Constructor Called as a Function">
+      </sec>
+      <sec id="12.1.3" name="The Intl.DateTimeFormat Constructor Used in a new Expression">
+      </sec>
+    </sec>
+    <sec id="12.2" name="Properties of the Intl.DateTimeFormat Constructor">
+      <sec id="12.2.1" name="Intl.DateTimeFormat.prototype">
+      </sec>
+      <sec id="12.2.2" name="Intl.DateTimeFormat.supportedLocalesOf (locales [, options])">
+      </sec>
+      <sec id="12.2.3" name="Internal Properties">
+      </sec>
+    </sec>
+    <sec id="12.3" name="Properties of the Intl.DateTimeFormat Prototype Object">
+      <sec id="12.3.1" name="Intl.DateTimeFormat.prototype.constructor">
+      </sec>
+      <sec id="12.3.2" name="Intl.DateTimeFormat.prototype.compare">
+      </sec>
+      <sec id="12.3.3" name="Intl.DateTimeFormat.prototype.resolvedOptions ()">
+      </sec>
+    </sec>
+    <sec id="12.4" name="Properties of Intl.DateTimeFormat Instances">
+    </sec>
+  </sec>
+  <sec id="13" name="Locale Sensitive Functions of the ECMAScript Language Specification">
+    <sec id="13.1" name="Properties of the String Prototype Object">
+      <sec id="13.1.1" name="String.prototype.localeCompare (that [, locales [, options]])">
+      </sec>
+    </sec>
+    <sec id="13.2" name="Properties of the Number Prototype Object">
+      <sec id="13.2.1" name="Number.prototype.toLocaleString ([locales [, options]])">
+      </sec>
+    </sec>
+    <sec id="13.3" name="Properties of the Date Prototype Object">
+      <sec id="13.3.1" name="Date.prototype.toLocaleString ([locales [, options]])">
+      </sec>
+      <sec id="13.3.2" name="Date.prototype.toLocaleDateString ([locales [, options]])">
+      </sec>
+      <sec id="13.3.3" name="Date.prototype.toLocaleTimeString ([locales [, options]])">
+      </sec>
+    </sec>
+  </sec>
+</esSpec>
+
diff --git a/website/styles/style.css b/website/styles/style.css
index b9c01a7db993e4c83e5388682a44696a94f3e932..d7015b2c84cae50a4f62a89d40cec66ef4160865 100644
--- a/website/styles/style.css
+++ b/website/styles/style.css
@@ -23,41 +23,37 @@ a
     margin: 0px auto;
 }
 
-.logoHeader
+.mainHeader
 {
     display:block;
     height:50px;
 }
 
-.ecmascriptlogoBg
+.mainHeader p
 {
-    margin-bottom: 5px; 
-    width:700px;
-    float:left;
+    color: black;
+    margin: 0;
+    font-size: 2em;
 }
 
-.logoBg
+#ECMAscript
 {
-    text-align: left;
-    margin-bottom: 5px;
-    width:600px;
-    height:36px;
-    float:left;
+    color: #f2a612;
 }
-.ecmascriptbacklink
+
+#ecmaSCRIPT
 {
-    position:relative;
+    color: #868686;
 }
-.ecmascriptbacklink p 
+
+#ecmascriptbacklink
 {
-    position:absolute;
-    right:0px;
+    display: inline-block;
+    float: right;
+    margin-top: 1.5em;
+    font-size: 0.4em;
+    font-weight: bold;
 }
-.ecmascriptbacklink a
-{
- font-weight:bold;
- font-size:0.9em;    
-} 
 
 .navBar
 {
diff --git a/website/testcases_bestPractice.html b/website/testcases_bestPractice.html
index aa1982b316041a5848b6d315a16e1725948486f3..1991798523565143a03148d51887fd709ccaaf9e 100644
--- a/website/testcases_bestPractice.html
+++ b/website/testcases_bestPractice.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_bestPractice.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_bestPractice.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262 Best Practices</title>
+<title>ECMAScript Best Practices – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"> <p class="headers">ecma<font color="#868686">script</font><font color="black"> test262 <b>Best Practices</b></font></p>   <!-- <img src="images/logo.png" /> --> </div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Best Practices</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -109,11 +108,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests to run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -127,19 +126,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -147,7 +146,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch07.html b/website/testcases_ch07.html
index 5302300a06ad12eedd4bc62e0622fbd02e2773d2..75b214f1fde6a20163eac0b5f23069618cdd1ecb 100644
--- a/website/testcases_ch07.html
+++ b/website/testcases_ch07.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch07.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch07.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch08.html b/website/testcases_ch08.html
index cb9254f8d46936f9c934b2468df349cbb365869a..9cfc59637256a04fd59dde60bab8526de6f230ff 100644
--- a/website/testcases_ch08.html
+++ b/website/testcases_ch08.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch08.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch08.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch09.html b/website/testcases_ch09.html
index c323666ea9348b5e9f3169074bad4459f629ab70..1aa5f56c91a839a8ec68fef2891e7ba6348dffba 100644
--- a/website/testcases_ch09.html
+++ b/website/testcases_ch09.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch09.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch09.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch10.html b/website/testcases_ch10.html
index 3d89bf866d78a015638a611d693f021b6de12764..5c4d570596fb81fa58d98dd08ebd9b9880a45b8e 100644
--- a/website/testcases_ch10.html
+++ b/website/testcases_ch10.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch10.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch10.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch11.html b/website/testcases_ch11.html
index be782aae16116771e1dfd84d2d76916b0ab94b55..aeb3cb0c10ae74d5a2d4642656dc330da87cd8cb 100644
--- a/website/testcases_ch11.html
+++ b/website/testcases_ch11.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch11.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch11.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch12.html b/website/testcases_ch12.html
index 6d8e9eaf5d3e9819a8fa54051bc9332dc6b2f145..44481d91424c89e92acc09eeb2df02805a9956fb 100644
--- a/website/testcases_ch12.html
+++ b/website/testcases_ch12.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch12.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch12.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch13.html b/website/testcases_ch13.html
index 6a6678dce522e55589ca2f8ac1afc39e242f4044..0233221552b4b93410b129ef7c9e7c356a8d0d8f 100644
--- a/website/testcases_ch13.html
+++ b/website/testcases_ch13.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch13.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch13.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch14.html b/website/testcases_ch14.html
index e7b02286be62998e7a35a6c4e9b0774b71c1aeed..45a7bf17d698da4239a4aae3feecbe0bac673683 100644
--- a/website/testcases_ch14.html
+++ b/website/testcases_ch14.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch14.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch14.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_ch15.html b/website/testcases_ch15.html
index e0ffc04c4743590eceef51002f7dc5adf424baf3..6ba47adfbe9661fa983d04663cc0d3b10d5e9528 100644
--- a/website/testcases_ch15.html
+++ b/website/testcases_ch15.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_ch15.json";

+    var STANDARD = "ECMA-262";
+    var TEST_LIST_PATH = "json/testcases_ch15.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test262</title>
+<title>ECMAScript Language – test262</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"><img src="images/logo.png" /></div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Language</strong> test262
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,14 +63,19 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test262?</p>
-                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and the ECMA-262 Specification (currently 5th Edition). The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript specification.</p>
+                <p class="content">test262 is a test suite intended to check agreement between JavaScript implementations and ECMA-262, the ECMAScript Language Specification (currently 5.1 Edition).
+                    The test suite contains thousands of individual tests, each of which tests some specific requirements of the ECMAScript Language Specification.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test262?</p>
                 <p class="content">Development of test262 is a project of Ecma TC39.  The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test262. For more information about how test262 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test262?</p>
                 <p class="content"><strong>test262 is not yet complete.  It is still undergoing active development.</strong> Some portions of the ES5 specification have very complete test coverage while other portions of the specification have only partial test coverage.  Some tests may be invalid or may yield false positive or false negative results. A perfect passing score on test262 does not guarantee that a JavaScript implementation perfectly supports ES5. Because tests are being actively added and modified, tests results from different days or times may not be directly comparable. Click the “Development” tab at the top of this page for instructions for reporting test262 bugs.</p>
-                <p class="headers">Where can I found out more?</p>
+                <p class="headers">Where can I find out more?</p>
                 <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
@@ -83,8 +87,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies, permit only Ecma 
-                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of Test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
+                <p class="content">Test262 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
                 <p class="content">
                     Ecma members can find detailed instructions on Test262 development procedures at the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:test262"));'>Test262 Wiki</a>.
@@ -117,11 +121,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests To run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -135,19 +139,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -155,7 +159,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->
diff --git a/website/testcases_intl402.html b/website/testcases_intl402.html
index 44a2ea15732b666a0ba9ade5524ec31a4db6f41d..376f3a215d34c59ef295cc39d4468fc034c30c7e 100644
--- a/website/testcases_intl402.html
+++ b/website/testcases_intl402.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" />
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 <html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
@@ -6,14 +6,15 @@
 <script type="text/javascript" src="harness/sections.js"></script>
 <script type="text/javascript">
     //Globals
-    var TEST_LIST_PATH = "json/testcases_intl402.json";

+    var STANDARD = "ECMA-402";
+    var TEST_LIST_PATH = "json/testcases_intl402.json";
 </script>
 <script type="text/javascript" src="harness/sth.js"></script>
 <script type="text/javascript" src="harness/sta.js"></script>
 <script type="text/javascript" src="harness/jqueryprogressbar.js"></script>
 <script type="text/javascript" src="harness/helper.js"></script>
 <script type="text/javascript" src="harness/jquery.base64.js"></script>
-<script language="javascript" type="text/javascript">
+<script type="text/javascript">
     //To support all the browsers
     $(window).resize(ResizeLoadIndicator);
     $(window).load(ResizeLoadIndicator);
@@ -28,11 +29,11 @@
     });
 </script>
 
-<title>ECMAScript Test402</title>
+<title>ECMAScript Internationalization – test402</title>
 <link href="styles/style.css" media="screen" rel="stylesheet" title="CSS" type="text/css" />
 </head>
 <body>
-    <div class="indicatorContainer" oncontextmenu="return false;">
+    <div class="indicatorContainer">
         <!--Blank div to disable back portion when indicator is shown-->
         <div class="disabledBackground"></div>
         <div id="loadingIndicator">
@@ -44,12 +45,10 @@
     </div>
 
     <div class="wrapper"> 
-        <!-- This Container holds the Logo -->
-        <div class="logoHeader"> 
-            <div class="logoBg"> <p class="headers"><b>Experimental</b> <i>ecmascript test402</i></p>   <!-- <img src="images/logo.png" /> --> </div>
-            <div class="ecmascriptbacklink">
-            <p><a href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
-            </div>
+        <!-- This Container holds the main header -->
+        <div class="mainHeader"> 
+            <p><span id="ECMAscript">ECMA</span><span id="ecmaSCRIPT">Script</span> <strong>Internationalization</strong> test402
+            <a id="ecmascriptbacklink" href='javascript:void(window.open("http://www.ecmascript.org/"));'>ECMAScript.org</a></p>
         </div>
         <!-- This Container holds the Navigation -->
         <div class="navBar">
@@ -64,15 +63,28 @@
             <!-- This is the Main Content Container -->
             <div class="content-home">
                 <p class="headers">What is test402?</p>
-                <p class="content">Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus.</p>
+                <p class="content">test402 is a test suite intended to check agreement between JavaScript implementations and the ECMAScript Internationalization API Specification.
+                    The test suite contains many individual tests, each of which tests some specific requirements of the ECMAScript Internationalization API Specification.</p>
+                <p class="headers">What is the ECMAScript Internationalization API?</p>
+                <p class="content">The ECMAScript Internationalization API is a complement to the ECMAScript Language Specification, 5.1 edition.
+                    It enables internationalization of JavaScript applications by providing collation (string comparison), number formatting, and date and time formatting, and lets applications choose the language and tailor the functionality to their needs.
+                    The specification is currently under development and likely to become standard ECMA-402.
+                    Current drafts of the specification are available on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=globalization:specification_drafts"));'>ECMAScript web site</a>.</p>
                 <p class="headers">What is ECMAScript?</p>
-                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>. The ECMAScript standard is officially known as ECMA-262. ECMAScript 5 (or just ES5) is short hand for the "ECMA-262, 5th Edition ECMAScript Language Specification" the official name of the current edition of the standard. ECMAScript 5 was approved as an official Ecma standard by the Ecma General Assembly on December 3, 2009. <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>The ECMAScript 5 Specification (PDF)</a> is available from the Ecma International web site.</p>
+                <p class="content">"ECMAScript" is the name under which the language more commonly known as "JavaScript" is standardized. Development of the ECMAScript standard is the responsibility of <a href='javascript:void(window.open("http://www.ecma-international.org/memento/TC39.htm"));'>Technical Committee 39 (TC39)</a> of <a href='javascript:void(window.open("http://www.ecma-international.org/"));'>Ecma International</a>.
+                    The ECMAScript Language Specification standard is officially known as ECMA-262.
+                    ECMAScript 5.1 (or just ES5.1) is short hand for the "ECMA-262, 5.1 Edition ECMAScript Language Specification" the official name of the current edition of the standard.
+                    ECMAScript 5.1 was approved as an official Ecma standard by the Ecma General Assembly in June 2011.
+                    The ECMAScript 5.1 standard is available in <a href='javascript:void(window.open("http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf"));'>PDF</a> and <a href='javascript:void(window.open("http://ecma-international.org/ecma-262/5.1/"));'>HTML</a> versions from the Ecma International web site.</p>
                 <p class="headers">Who creates and maintains test402?</p>
-                <p class="content">Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci.</p>
+                <p class="content">Development of test402 is a project of Ecma TC39.
+                    The testing framework and individual tests are created by member organizations of TC39 and contributed to Ecma for use in test402.
+                    For more information about how test402 is developed and maintained click the “Development” tab at the top of this page.</p>
                 <p class="headers">What is the status of test402?</p>
-                <p class="content">Aenean nec lorem. In porttitor. Donec laoreet nonummy augue.</p>
-                <p class="headers">Where can I found out more?</p>
-                <p class="content">Suspendisse dui purus, scelerisque at, vulputate vitae, pretium mattis, nunc. Mauris eget neque at sem venenatis eleifend. Ut nonummy.</p>       
+                <p class="content"><strong>test402 is very very very incomplete.
+                    It is still undergoing active development.</strong></p>
+                <p class="headers">Where can I find out more?</p>
+                <p class="content">Please visit our <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id=test262:faq"));'>Frequently Asked Questions</a> section on the <a href='javascript:void(window.open("http://wiki.ecmascript.org/doku.php?id="));'>ECMAScript Wiki</a>.</p>       
                 
                 <p class="headers">Running the Tests</p>
                 <p class="content">Click the “Run” tab at the top of this page for instructions and follow the instructions to run the tests.</p> 
@@ -83,7 +95,8 @@
 
             <div class="content-dev">
                 <p class="headers">Development</p>
-                <p class="content">Fusce aliquet pede non pede. Suspendisse dapibus lorem pellentesque magna. Integer nulla.
+               <p class="content">Test402 is being developed by the members of Ecma TC39. Ecma's intellectual property policies permit only Ecma 
+                    members to directly contribute code to the project. However, a <a href='javascript:void(window.open("http://mail.mozilla.org/pipermail/test262-discuss/"));'>public mailing list</a> is used to coordinate development of test402 and its sibling test262.  If you wish to participate in the discussion please <a href='javascript:void(window.open("http://mail.mozilla.org/listinfo/test262-discuss"));'>subscribe</a>.  Bug reports and suggestions should be sent to the mailing list.
                 </p>
             </div>
 
@@ -113,11 +126,11 @@
                 
                 <!-- This is the Results Text Holder -->
                 <div class="resultsHeader">
-                    Tests To Run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
-                    Total Tests Ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
+                    Tests to run: <strong><span class="teststorun-counter" id="testsToRun"></span></strong>&nbsp;<span class="separator">|</span>
+                    Total tests ran: <strong><span class="total-counter" id="totalCounter"></span></strong> <span class="separator">|</span>
                     Pass: <span class="pass" id="Pass"></span> <span class="separator">|</span>
                     Fail: <span class="fail" id="Fail"></span> <span class="separator">|</span>
-                    Failed To Load: <span class="fail" id="failedToLoadCounter1"></span>
+                    Failed to load: <span class="fail" id="failedToLoadCounter1"></span>
                     <p><span id="nextActivity"></span></p>
                 </div>
                 
@@ -131,19 +144,19 @@
                     <table width="100%" border="0" cellspacing="0" cellpadding="0" class="table-logger" id="tableLogger"></table>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
             </div>
 
             <div class="content-results">
                 <div class="crumbContainer">
                     <div class="crumbs"></div>
-                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#"><< back</a></div>
+                    <div style="float:right;"><a class="setBlue hide" id="backlinkDiv" href="#">&lt;&lt; back</a></div>
                     <div style="clear : both;"></div>
                 </div>
-                <div class="resultsHeader"> <strong>Total Tests:<span class="totalCases"></span></strong><br />
+                <div class="resultsHeader"> <strong>Total tests: <span class="totalCases"></span></strong><br />
                     Passed: <span class="passedCases"></span> <span class="separator">|</span> Failed: <span class="failedCases"></span> <span class="separator">|</span>
-                    Failed To Load: <strong><span id="failedToLoadCounter"></span></strong>
+                    Failed to load: <strong><span id="failedToLoadCounter"></span></strong>
                 </div>
                 <!-- This is the Table -->
                <div class="resultsTableHolder">
@@ -151,7 +164,7 @@
                     <div id="resultMessage">Test results will be displayed after the tests are executed using the Run page.</div>
                 </div>
                 <div>
-                    Test Suite Ver.: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test Suite Date: <span class="targetTestSuiteDate"></span>
+                    Test suite version: <span class="targetTestSuiteVersion"></span>&nbsp;<span class="separator">|</span>&nbsp;Test suite date: <span class="targetTestSuiteDate"></span>
                 </div>
                 <div class="downloadLinks">
                     <p><a class="anchor-download-xml" id="ancGenXMLReport"><strong>Download results as XML</strong></a></p> <!--| <strong><a href="scripts/testcases.zip">Download Source</a></strong></p>-->