gitextract_kabnlgk2/ ├── .circleci/ │ └── config.yml ├── .eslintignore ├── .eslintrc ├── .flowconfig ├── .gitignore ├── .gitmodules ├── .prettierrc ├── .watchmanconfig ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── PATENTS ├── README.md ├── babel.config.js ├── bin/ │ ├── prepack-repl.js │ └── prepack.js ├── flow-libs/ │ ├── vscode-debugadapter.js.flow │ └── vscode-debugprotocol.js.flow ├── flow-typed/ │ └── npm/ │ ├── @babel/ │ │ ├── cli_vx.x.x.js │ │ ├── core_vx.x.x.js │ │ ├── generator_vx.x.x.js │ │ ├── node_vx.x.x.js │ │ ├── parser_vx.x.x.js │ │ ├── plugin-proposal-class-properties_vx.x.x.js │ │ ├── plugin-proposal-export-default-from_vx.x.x.js │ │ ├── plugin-proposal-object-rest-spread_vx.x.x.js │ │ ├── plugin-syntax-flow_vx.x.x.js │ │ ├── plugin-transform-flow-strip-types_vx.x.x.js │ │ ├── plugin-transform-modules-commonjs_vx.x.x.js │ │ ├── plugin-transform-react-jsx_vx.x.x.js │ │ ├── preset-env_vx.x.x.js │ │ ├── preset-flow_vx.x.x.js │ │ ├── preset-react_vx.x.x.js │ │ ├── register_vx.x.x.js │ │ ├── template_vx.x.x.js │ │ └── traverse_vx.x.x.js │ ├── babel-cli_vx.x.x.js │ ├── babel-core_vx.x.x.js │ ├── babel-eslint_vx.x.x.js │ ├── babel-generator_vx.x.x.js │ ├── babel-helper-function-name_vx.x.x.js │ ├── babel-helper-get-function-arity_vx.x.x.js │ ├── babel-jest_vx.x.x.js │ ├── babel-plugin-jest-hoist_vx.x.x.js │ ├── babel-plugin-transform-class-properties_vx.x.x.js │ ├── babel-plugin-transform-object-rest-spread_vx.x.x.js │ ├── babel-preset-es2015_vx.x.x.js │ ├── babel-preset-react_vx.x.x.js │ ├── babel-template_vx.x.x.js │ ├── babel-traverse_vx.x.x.js │ ├── babel-types_vx.x.x.js │ ├── babylon_vx.x.x.js │ ├── chalk_v1.x.x.js │ ├── eslint-config-kittens_vx.x.x.js │ ├── eslint-plugin-babel_vx.x.x.js │ ├── eslint-plugin-flow-header_vx.x.x.js │ ├── eslint-plugin-flowtype_vx.x.x.js │ ├── eslint-plugin-header_vx.x.x.js │ ├── eslint-plugin-prettier_vx.x.x.js │ ├── eslint_vx.x.x.js │ ├── flow-typed_vx.x.x.js │ ├── graceful-fs_v4.1.x.js │ ├── invariant_v2.x.x.js │ ├── istanbul_vx.x.x.js │ ├── jest_v23.x.x.js │ ├── js-beautify_v1.6.x.js │ ├── js-yaml_vx.x.x.js │ ├── jsdom_vx.x.x.js │ ├── madge_vx.x.x.js │ ├── minimist_v1.x.x.js │ ├── node-zip_vx.x.x.js │ ├── prettier_v1.x.x.js │ ├── prop-types_v15.x.x.js │ ├── queue-fifo_vx.x.x.js │ ├── react-native_vx.x.x.js │ ├── react-relay_v1.x.x.js │ ├── regenerator-runtime_vx.x.x.js │ ├── remap-istanbul_vx.x.x.js │ ├── repeating_vx.x.x.js │ ├── seedrandom_vx.x.x.js │ ├── source-map-support_vx.x.x.js │ ├── source-map_vx.x.x.js │ ├── uglify-js_vx.x.x.js │ ├── v8-profiler-node8_vx.x.x.js │ ├── vscode-debugadapter_vx.x.x.js │ ├── vscode-debugprotocol_vx.x.x.js │ ├── webpack-cli_vx.x.x.js │ └── webpack_vx.x.x.js ├── fuzzer/ │ ├── .eslintrc │ ├── .gitignore │ ├── package.json │ └── src/ │ ├── execute.js │ ├── gen.js │ ├── overnight.js │ ├── property.js │ ├── report.js │ ├── sample.js │ └── test.js ├── package.json ├── scripts/ │ ├── .eslintrc │ ├── debug-fb-www.js │ ├── detect_bad_deps.js │ ├── generate-sourcemaps-test.js │ ├── instrumentor.js │ ├── lint-config.js │ ├── multi-runner.js │ ├── prettier.js │ ├── publish-gh-pages.sh │ ├── test-error-handler.js │ ├── test-internal-react.js │ ├── test-internal.js │ ├── test-runner.js │ ├── test-sourcemaps.sh │ ├── test-std-in.sh │ ├── test262-filters.yml │ ├── test262-runner.js │ └── test262.js ├── src/ │ ├── benchmarker.js │ ├── completions.js │ ├── construct_realm.js │ ├── debugger/ │ │ ├── adapter/ │ │ │ ├── DebugAdapter.js │ │ │ └── channel/ │ │ │ └── AdapterChannel.js │ │ ├── common/ │ │ │ ├── DebuggerConstants.js │ │ │ ├── DebuggerError.js │ │ │ ├── channel/ │ │ │ │ ├── DebugMessage.js │ │ │ │ ├── FileIOWrapper.js │ │ │ │ ├── MessageMarshaller.js │ │ │ │ └── MessagePackager.js │ │ │ ├── invariant.js │ │ │ └── types.js │ │ ├── mock-ui/ │ │ │ ├── DataHandler.js │ │ │ ├── UISession.js │ │ │ └── debugger-cli.js │ │ └── server/ │ │ ├── Breakpoint.js │ │ ├── BreakpointManager.js │ │ ├── Debugger.js │ │ ├── PerFileBreakpointMap.js │ │ ├── ReferenceMap.js │ │ ├── Stepper.js │ │ ├── SteppingManager.js │ │ ├── StopEventManager.js │ │ ├── VariableManager.js │ │ └── channel/ │ │ └── DebugChannel.js │ ├── descriptors.js │ ├── domains/ │ │ ├── TypesDomain.js │ │ ├── ValuesDomain.js │ │ └── index.js │ ├── environment.js │ ├── errors.js │ ├── evaluators/ │ │ ├── ArrayExpression.js │ │ ├── ArrowFunctionExpression.js │ │ ├── AssignmentExpression.js │ │ ├── AwaitExpression.js │ │ ├── BinaryExpression.js │ │ ├── BlockStatement.js │ │ ├── BooleanLiteral.js │ │ ├── BreakStatement.js │ │ ├── CallExpression.js │ │ ├── CatchClause.js │ │ ├── ClassDeclaration.js │ │ ├── ClassExpression.js │ │ ├── ConditionalExpression.js │ │ ├── ContinueStatement.js │ │ ├── Directive.js │ │ ├── DirectiveLiteral.js │ │ ├── DoExpression.js │ │ ├── DoWhileStatement.js │ │ ├── EmptyStatement.js │ │ ├── ExpressionStatement.js │ │ ├── File.js │ │ ├── ForInStatement.js │ │ ├── ForOfStatement.js │ │ ├── ForStatement.js │ │ ├── FunctionDeclaration.js │ │ ├── FunctionExpression.js │ │ ├── Identifier.js │ │ ├── IfStatement.js │ │ ├── JSXElement.js │ │ ├── LabeledStatement.js │ │ ├── LogicalExpression.js │ │ ├── MemberExpression.js │ │ ├── MetaProperty.js │ │ ├── NewExpression.js │ │ ├── NullLiteral.js │ │ ├── NumericLiteral.js │ │ ├── ObjectExpression.js │ │ ├── Program.js │ │ ├── RegExpLiteral.js │ │ ├── ReturnStatement.js │ │ ├── SequenceExpression.js │ │ ├── StringLiteral.js │ │ ├── SuperCall.js │ │ ├── SuperProperty.js │ │ ├── SwitchStatement.js │ │ ├── TaggedTemplateExpression.js │ │ ├── TemplateLiteral.js │ │ ├── ThisExpression.js │ │ ├── ThrowStatement.js │ │ ├── TryStatement.js │ │ ├── UnaryExpression.js │ │ ├── UpdateExpression.js │ │ ├── VariableDeclaration.js │ │ ├── WhileStatement.js │ │ ├── WithStatement.js │ │ ├── YieldExpression.js │ │ └── index.js │ ├── globals.js │ ├── initialize-singletons.js │ ├── intrinsics/ │ │ ├── common/ │ │ │ └── console.js │ │ ├── dom/ │ │ │ ├── document.js │ │ │ ├── global.js │ │ │ ├── setInterval.js │ │ │ └── setTimeout.js │ │ ├── ecma262/ │ │ │ ├── Array.js │ │ │ ├── ArrayBuffer.js │ │ │ ├── ArrayBufferPrototype.js │ │ │ ├── ArrayIteratorPrototype.js │ │ │ ├── ArrayProto_toString.js │ │ │ ├── ArrayProto_values.js │ │ │ ├── ArrayPrototype.js │ │ │ ├── Boolean.js │ │ │ ├── BooleanPrototype.js │ │ │ ├── DataView.js │ │ │ ├── DataViewPrototype.js │ │ │ ├── Date.js │ │ │ ├── DatePrototype.js │ │ │ ├── Error.js │ │ │ ├── ErrorPrototype.js │ │ │ ├── EvalError.js │ │ │ ├── EvalErrorPrototype.js │ │ │ ├── Float32Array.js │ │ │ ├── Float32ArrayPrototype.js │ │ │ ├── Float64Array.js │ │ │ ├── Float64ArrayPrototype.js │ │ │ ├── Function.js │ │ │ ├── FunctionPrototype.js │ │ │ ├── Generator.js │ │ │ ├── GeneratorFunction.js │ │ │ ├── GeneratorPrototype.js │ │ │ ├── Int16Array.js │ │ │ ├── Int16ArrayPrototype.js │ │ │ ├── Int32Array.js │ │ │ ├── Int32ArrayPrototype.js │ │ │ ├── Int8Array.js │ │ │ ├── Int8ArrayPrototype.js │ │ │ ├── IteratorPrototype.js │ │ │ ├── JSON.js │ │ │ ├── Map.js │ │ │ ├── MapIteratorPrototype.js │ │ │ ├── MapPrototype.js │ │ │ ├── Math.js │ │ │ ├── Number.js │ │ │ ├── NumberPrototype.js │ │ │ ├── Object.js │ │ │ ├── ObjectProto_toString.js │ │ │ ├── ObjectPrototype.js │ │ │ ├── Promise.js │ │ │ ├── PromisePrototype.js │ │ │ ├── Proxy.js │ │ │ ├── RangeError.js │ │ │ ├── RangeErrorPrototype.js │ │ │ ├── ReferenceError.js │ │ │ ├── ReferenceErrorPrototype.js │ │ │ ├── Reflect.js │ │ │ ├── RegExp.js │ │ │ ├── RegExpPrototype.js │ │ │ ├── Set.js │ │ │ ├── SetIteratorPrototype.js │ │ │ ├── SetPrototype.js │ │ │ ├── String.js │ │ │ ├── StringIteratorPrototype.js │ │ │ ├── StringPrototype.js │ │ │ ├── Symbol.js │ │ │ ├── SymbolPrototype.js │ │ │ ├── SyntaxError.js │ │ │ ├── SyntaxErrorPrototype.js │ │ │ ├── ThrowTypeError.js │ │ │ ├── TypeError.js │ │ │ ├── TypeErrorPrototype.js │ │ │ ├── TypedArray.js │ │ │ ├── TypedArrayProto_values.js │ │ │ ├── TypedArrayPrototype.js │ │ │ ├── URIError.js │ │ │ ├── URIErrorPrototype.js │ │ │ ├── Uint16Array.js │ │ │ ├── Uint16ArrayPrototype.js │ │ │ ├── Uint32Array.js │ │ │ ├── Uint32ArrayPrototype.js │ │ │ ├── Uint8Array.js │ │ │ ├── Uint8ArrayPrototype.js │ │ │ ├── Uint8ClampedArray.js │ │ │ ├── Uint8ClampedArrayPrototype.js │ │ │ ├── WeakMap.js │ │ │ ├── WeakMapPrototype.js │ │ │ ├── WeakSet.js │ │ │ ├── WeakSetPrototype.js │ │ │ ├── decodeURI.js │ │ │ ├── decodeURIComponent.js │ │ │ ├── encodeURI.js │ │ │ ├── encodeURIComponent.js │ │ │ ├── eval.js │ │ │ ├── global.js │ │ │ ├── isFinite.js │ │ │ ├── isNaN.js │ │ │ ├── parseFloat.js │ │ │ └── parseInt.js │ │ ├── fb-www/ │ │ │ ├── fb-mocks.js │ │ │ ├── global.js │ │ │ ├── react-dom-mocks.js │ │ │ ├── react-mocks.js │ │ │ ├── react-native-mocks.js │ │ │ ├── relay-mocks.js │ │ │ └── utils.js │ │ ├── index.js │ │ ├── prepack/ │ │ │ ├── __IntrospectionError.js │ │ │ ├── __IntrospectionErrorPrototype.js │ │ │ ├── global.js │ │ │ └── utils.js │ │ └── react-native/ │ │ └── global.js │ ├── invariant.js │ ├── methods/ │ │ ├── abstract.js │ │ ├── arraybuffer.js │ │ ├── call.js │ │ ├── construct.js │ │ ├── create.js │ │ ├── date.js │ │ ├── destructuring.js │ │ ├── environment.js │ │ ├── function.js │ │ ├── generator.js │ │ ├── get.js │ │ ├── has.js │ │ ├── hash.js │ │ ├── index.js │ │ ├── integerindexed.js │ │ ├── integrity.js │ │ ├── is.js │ │ ├── iterator.js │ │ ├── join.js │ │ ├── json.js │ │ ├── own.js │ │ ├── promise.js │ │ ├── properties.js │ │ ├── proxy.js │ │ ├── regexp.js │ │ ├── to.js │ │ ├── typedarray.js │ │ └── widen.js │ ├── options.js │ ├── prepack-cli.js │ ├── prepack-node.js │ ├── prepack-options.js │ ├── prepack-standalone.js │ ├── react/ │ │ ├── ReactElementSet.js │ │ ├── ReactEquivalenceSet.js │ │ ├── ReactPropsSet.js │ │ ├── branching.js │ │ ├── components.js │ │ ├── elements.js │ │ ├── errors.js │ │ ├── experimental-server-rendering/ │ │ │ ├── dom-config.js │ │ │ ├── rendering.js │ │ │ └── utils.js │ │ ├── hoisting.js │ │ ├── jsx.js │ │ ├── optimizing.js │ │ ├── reconcilation.js │ │ └── utils.js │ ├── realm.js │ ├── repl-cli.js │ ├── serializer/ │ │ ├── Emitter.js │ │ ├── GeneratorTree.js │ │ ├── LazyObjectsSerializer.js │ │ ├── LoggingTracer.js │ │ ├── Referentializer.js │ │ ├── ResidualFunctionInitializers.js │ │ ├── ResidualFunctionInstantiator.js │ │ ├── ResidualFunctions.js │ │ ├── ResidualHeapGraphGenerator.js │ │ ├── ResidualHeapRefCounter.js │ │ ├── ResidualHeapSerializer.js │ │ ├── ResidualHeapValueIdentifiers.js │ │ ├── ResidualHeapVisitor.js │ │ ├── ResidualOperationSerializer.js │ │ ├── ResidualOptimizedFunctions.js │ │ ├── ResidualReactElementSerializer.js │ │ ├── ResidualReactElementVisitor.js │ │ ├── factorify.js │ │ ├── functions.js │ │ ├── index.js │ │ ├── serializer.js │ │ ├── statistics.js │ │ ├── types.js │ │ ├── utils.js │ │ └── visitors.js │ ├── singletons.js │ ├── statistics.js │ ├── types.js │ ├── utils/ │ │ ├── ConcreteModelConverter.js │ │ ├── DebugReproManager.js │ │ ├── DebugReproPackager.js │ │ ├── HeapInspector.js │ │ ├── JSONTokenizer.js │ │ ├── NameGenerator.js │ │ ├── PreludeGenerator.js │ │ ├── ShapeInformation.js │ │ ├── SourceMapManager.js │ │ ├── TextPrinter.js │ │ ├── babelhelpers.js │ │ ├── errors.js │ │ ├── flow.js │ │ ├── generator.js │ │ ├── internalizer.js │ │ ├── json.js │ │ ├── leak.js │ │ ├── logger.js │ │ ├── modules.js │ │ ├── native-to-interp.js │ │ ├── parse.js │ │ ├── paths.js │ │ ├── reachability.js │ │ ├── simplifier.js │ │ ├── strict.js │ │ └── traverse-fast.js │ ├── utils.js │ └── values/ │ ├── AbstractObjectValue.js │ ├── AbstractValue.js │ ├── ArgumentsExotic.js │ ├── ArrayValue.js │ ├── BooleanValue.js │ ├── BoundFunctionValue.js │ ├── ConcreteValue.js │ ├── ECMAScriptFunctionValue.js │ ├── ECMAScriptSourceFunctionValue.js │ ├── EmptyValue.js │ ├── FunctionValue.js │ ├── IntegerIndexedExotic.js │ ├── NativeFunctionValue.js │ ├── NullValue.js │ ├── NumberValue.js │ ├── ObjectValue.js │ ├── PrimitiveValue.js │ ├── ProxyValue.js │ ├── StringExotic.js │ ├── StringValue.js │ ├── SymbolValue.js │ ├── UndefinedValue.js │ ├── Value.js │ └── index.js ├── test/ │ ├── error-handler/ │ │ ├── .write-write-conflict.js.swp │ │ ├── EmptyBuiltInArrayCycle.js │ │ ├── EmptyBuiltInPropsCycle.js │ │ ├── FinalObjectCannotBeMutated.js │ │ ├── InstantRenderArrayOps3.js │ │ ├── ModifiedObjectPropertyLimitation.js │ │ ├── PropertyAttributeConflict.js │ │ ├── Set.js │ │ ├── abstract-value-check-dup-name-string.js │ │ ├── bad-functions.js │ │ ├── binaryExpression.js │ │ ├── call.js │ │ ├── call2.js │ │ ├── class.js │ │ ├── conditional-return.js │ │ ├── forInStatement.js │ │ ├── forOfStatement.js │ │ ├── in1.js │ │ ├── in2.js │ │ ├── instanceof.js │ │ ├── member.js │ │ ├── member2.js │ │ ├── object-assign.js │ │ ├── objectExpression.js │ │ ├── objectExpression2.js │ │ ├── objectpattern.js │ │ ├── stackOverflow.js │ │ ├── syntaxError.js │ │ ├── testErrorHandlerCalled.js │ │ ├── try-and-access-abstract-property.js │ │ ├── try-and-call-abstract-function.js │ │ ├── unaryExpression.js │ │ ├── updateExpression.js │ │ ├── with.js │ │ ├── with2.js │ │ ├── write-forin-conflict.js │ │ ├── write-in-conflict.js │ │ ├── write-reflect-conflict.js │ │ ├── write-write-conflict.js │ │ ├── write-write-conflict2.js │ │ ├── write-write-conflict3.js │ │ ├── write-write-conflict4.js │ │ └── write-write-unknown-prop-conflict.js │ ├── react/ │ │ ├── AssignSpread/ │ │ │ ├── simple-assign.js │ │ │ ├── simple-assign2.js │ │ │ ├── simple-assign3.js │ │ │ ├── simple-assign4.js │ │ │ ├── simple-assign5.js │ │ │ ├── simple-with-jsx-spread.js │ │ │ ├── simple-with-jsx-spread10.js │ │ │ ├── simple-with-jsx-spread11.js │ │ │ ├── simple-with-jsx-spread12.js │ │ │ ├── simple-with-jsx-spread13.js │ │ │ ├── simple-with-jsx-spread2.js │ │ │ ├── simple-with-jsx-spread3.js │ │ │ ├── simple-with-jsx-spread4.js │ │ │ ├── simple-with-jsx-spread5.js │ │ │ ├── simple-with-jsx-spread6.js │ │ │ ├── simple-with-jsx-spread7.js │ │ │ ├── simple-with-jsx-spread8.js │ │ │ ├── simple-with-jsx-spread9.js │ │ │ └── unsafe-spread.js │ │ ├── AssignSpread-test.js │ │ ├── ClassComponents/ │ │ │ ├── array-from.js │ │ │ ├── array-from2.js │ │ │ ├── classes-with-state.js │ │ │ ├── complex-class-into-functional-root.js │ │ │ ├── complex-class-into-functional-root2.js │ │ │ ├── complex-class-into-functional-root3.js │ │ │ ├── complex-class-into-functional-root4.js │ │ │ ├── complex-class-into-functional-root5.js │ │ │ ├── complex-class-proper-hoisting.js │ │ │ ├── complex-class-with-equivalent-node.js │ │ │ ├── inheritance-chain.js │ │ │ ├── simple-classes-2.js │ │ │ ├── simple-classes-3.js │ │ │ ├── simple-classes.js │ │ │ └── simple.js │ │ ├── ClassComponents-test.js │ │ ├── FBMocks/ │ │ │ ├── fb1.js │ │ │ ├── fb10.js │ │ │ ├── fb11.js │ │ │ ├── fb12.js │ │ │ ├── fb13.js │ │ │ ├── fb14.js │ │ │ ├── fb15.js │ │ │ ├── fb16.js │ │ │ ├── fb17.js │ │ │ ├── fb18.js │ │ │ ├── fb19.js │ │ │ ├── fb2.js │ │ │ ├── fb20.js │ │ │ ├── fb21.js │ │ │ ├── fb22.js │ │ │ ├── fb23.js │ │ │ ├── fb24.js │ │ │ ├── fb25.js │ │ │ ├── fb3.js │ │ │ ├── fb4.js │ │ │ ├── fb5.js │ │ │ ├── fb6.js │ │ │ ├── fb7.js │ │ │ ├── fb8.js │ │ │ ├── fb9.js │ │ │ ├── function-bind.js │ │ │ ├── hacker-news.js │ │ │ ├── hacker-news.json │ │ │ ├── pe-functional-benchmark.js │ │ │ └── repl-example.js │ │ ├── FBMocks-test.js │ │ ├── FactoryComponents/ │ │ │ ├── simple.js │ │ │ └── simple2.js │ │ ├── FactoryComponents-test.js │ │ ├── FirstRenderOnly/ │ │ │ ├── equivalence.js │ │ │ ├── equivalence2.js │ │ │ ├── equivalence3.js │ │ │ ├── equivalence4.js │ │ │ ├── equivalence5.js │ │ │ ├── get-derived-state-from-props.js │ │ │ ├── get-derived-state-from-props2.js │ │ │ ├── get-derived-state-from-props3.js │ │ │ ├── get-derived-state-from-props4.js │ │ │ ├── get-derived-state-from-props5.js │ │ │ ├── react-context.js │ │ │ ├── react-context2.js │ │ │ ├── react-context3.js │ │ │ ├── react-context4.js │ │ │ ├── react-context5.js │ │ │ ├── react-context6.js │ │ │ ├── replace-this-in-callbacks.js │ │ │ ├── replace-this-in-callbacks2.js │ │ │ ├── replace-this-in-callbacks3.js │ │ │ ├── simple-2.js │ │ │ ├── simple-3.js │ │ │ ├── simple-4.js │ │ │ ├── simple.js │ │ │ └── will-mount.js │ │ ├── FirstRenderOnly-test.js │ │ ├── FunctionalComponents/ │ │ │ ├── additional-function-regression.js │ │ │ ├── array-from.js │ │ │ ├── array-map.js │ │ │ ├── array-map2.js │ │ │ ├── array-map3.js │ │ │ ├── array-twice.js │ │ │ ├── bound-type.js │ │ │ ├── bound-type2.js │ │ │ ├── circular-reference.js │ │ │ ├── class-root-with-instance-vars-2.js │ │ │ ├── class-root-with-instance-vars.js │ │ │ ├── class-root-with-props.js │ │ │ ├── class-root-with-refs.js │ │ │ ├── class-root-with-render-methods.js │ │ │ ├── class-root-with-state.js │ │ │ ├── class-root.js │ │ │ ├── clone-element.js │ │ │ ├── clone-element2.js │ │ │ ├── conditional.js │ │ │ ├── default-props.js │ │ │ ├── default-props2.js │ │ │ ├── delete-element-prop-key.js │ │ │ ├── do-not-optimize.js │ │ │ ├── dynamic-context.js │ │ │ ├── dynamic-props.js │ │ │ ├── dynamic-type.js │ │ │ ├── dynamic-type2.js │ │ │ ├── dynamic-type3.js │ │ │ ├── dynamic-type4.js │ │ │ ├── equivalence.js │ │ │ ├── event-handlers.js │ │ │ ├── hoist-fragment.js │ │ │ ├── keyed-non-element.js │ │ │ ├── keyed-unnecessarily.js │ │ │ ├── keyed.js │ │ │ ├── model-props.js │ │ │ ├── nested-array-children.js │ │ │ ├── not-safe.js │ │ │ ├── not-safe2.js │ │ │ ├── null-or-undefined-props.js │ │ │ ├── pathological-case.js │ │ │ ├── react-children-map.js │ │ │ ├── react-element-havoc.js │ │ │ ├── refs-typeof.js │ │ │ ├── refs.js │ │ │ ├── refs2.js │ │ │ ├── refs3.js │ │ │ ├── return-text.js │ │ │ ├── return-undefined.js │ │ │ ├── runtime-error.js │ │ │ ├── safe.js │ │ │ ├── safe2.js │ │ │ ├── safe3.js │ │ │ ├── simple-10.js │ │ │ ├── simple-11.js │ │ │ ├── simple-12.js │ │ │ ├── simple-13.js │ │ │ ├── simple-14.js │ │ │ ├── simple-15.js │ │ │ ├── simple-16.js │ │ │ ├── simple-17.js │ │ │ ├── simple-18.js │ │ │ ├── simple-19.js │ │ │ ├── simple-2.js │ │ │ ├── simple-20.js │ │ │ ├── simple-21.js │ │ │ ├── simple-22.js │ │ │ ├── simple-23.js │ │ │ ├── simple-24.js │ │ │ ├── simple-25.js │ │ │ ├── simple-26.js │ │ │ ├── simple-27.js │ │ │ ├── simple-28.js │ │ │ ├── simple-29.js │ │ │ ├── simple-3.js │ │ │ ├── simple-4.js │ │ │ ├── simple-5.js │ │ │ ├── simple-6.js │ │ │ ├── simple-7.js │ │ │ ├── simple-8.js │ │ │ ├── simple-9.js │ │ │ ├── simple-children.js │ │ │ ├── simple-fragments.js │ │ │ ├── simple-refs.js │ │ │ ├── simple-with-abstract-props.js │ │ │ ├── simple-with-new-expression.js │ │ │ ├── simple-with-unary.js │ │ │ ├── simple.js │ │ │ └── two-roots.js │ │ ├── FunctionalComponents-test.js │ │ ├── ReactDOM/ │ │ │ └── create-portal.js │ │ ├── ReactDOM-test.js │ │ ├── ReactNative/ │ │ │ ├── simple.js │ │ │ └── simple2.js │ │ ├── ReactNative-test.js │ │ ├── Reconciliation/ │ │ │ ├── key-change-fragments.js │ │ │ ├── key-change.js │ │ │ ├── key-nesting-2.js │ │ │ ├── key-nesting-3.js │ │ │ ├── key-nesting-4.js │ │ │ ├── key-nesting-5.js │ │ │ ├── key-nesting-6.js │ │ │ ├── key-nesting-7.js │ │ │ ├── key-nesting-8.js │ │ │ ├── key-nesting-9.js │ │ │ ├── key-nesting.js │ │ │ ├── key-not-change-fragments.js │ │ │ ├── lazy-branched-elements.js │ │ │ ├── lazy-branched-elements2.js │ │ │ ├── type-change.js │ │ │ ├── type-change10.js │ │ │ ├── type-change11.js │ │ │ ├── type-change2.js │ │ │ ├── type-change3.js │ │ │ ├── type-change4.js │ │ │ ├── type-change5.js │ │ │ ├── type-change6.js │ │ │ ├── type-change7.js │ │ │ ├── type-change8.js │ │ │ ├── type-change9.js │ │ │ └── type-same.js │ │ ├── Reconciliation-test.js │ │ ├── RenderProps/ │ │ │ ├── react-context.js │ │ │ ├── react-context2.js │ │ │ ├── react-context3.js │ │ │ ├── react-context4.js │ │ │ ├── react-context5.js │ │ │ ├── react-context6.js │ │ │ ├── react-context7.js │ │ │ ├── react-root-context.js │ │ │ ├── react-root-context2.js │ │ │ ├── react-root-context3.js │ │ │ ├── react-root-context4.js │ │ │ ├── relay-query-renderer.js │ │ │ ├── relay-query-renderer2.js │ │ │ └── relay-query-renderer3.js │ │ ├── RenderProps-test.js │ │ ├── ServerRendering/ │ │ │ ├── hacker-news.js │ │ │ ├── hacker-news.json │ │ │ └── pe-functional-benchmark.js │ │ ├── ServerRendering-test.js │ │ ├── Throw/ │ │ │ ├── throw-conditional.js │ │ │ └── throw.js │ │ ├── Throw-test.js │ │ ├── __snapshots__/ │ │ │ ├── AssignSpread-test.js.snap │ │ │ ├── ClassComponents-test.js.snap │ │ │ ├── FBMocks-test.js.snap │ │ │ ├── FactoryComponents-test.js.snap │ │ │ ├── FirstRenderOnly-test.js.snap │ │ │ ├── FunctionalComponents-test.js.snap │ │ │ ├── ReactDOM-test.js.snap │ │ │ ├── ReactNative-test.js.snap │ │ │ ├── Reconciliation-test.js.snap │ │ │ ├── RenderProps-test.js.snap │ │ │ ├── ServerRendering-test.js.snap │ │ │ └── Throw-test.js.snap │ │ └── setupReactTests.js │ ├── serializer/ │ │ ├── abstract/ │ │ │ ├── AbstractFunctionWithResultType.js │ │ │ ├── AbstractNumericProperty.js │ │ │ ├── AbstractOrNullOrUndefined.js │ │ │ ├── AbstractPropertyDelete.js │ │ │ ├── AbstractPropertyDelete2.js │ │ │ ├── AbstractPropertyDelete3.js │ │ │ ├── AbstractPrototype.js │ │ │ ├── Array.js │ │ │ ├── ArrayConcat.js │ │ │ ├── ArrayInitializer.js │ │ │ ├── ArrayLength.js │ │ │ ├── ArrayLength2.js │ │ │ ├── ArrayLength3.js │ │ │ ├── ArrayMap.js │ │ │ ├── ArrayMap1.js │ │ │ ├── ArrayMap2.js │ │ │ ├── BinaryExpression.js │ │ │ ├── BinaryExpression2.js │ │ │ ├── BinaryExpression3.js │ │ │ ├── Branching.js │ │ │ ├── BranchingConsoleLog.js │ │ │ ├── Break.js │ │ │ ├── Break2.js │ │ │ ├── Break3.js │ │ │ ├── Call.js │ │ │ ├── Call2.js │ │ │ ├── Call3.js │ │ │ ├── Call4.js │ │ │ ├── CantCatchIntrospectionError.js │ │ │ ├── CantCatchIntrospectionError1.js │ │ │ ├── CompareObjects.js │ │ │ ├── Compose.js │ │ │ ├── ComposedCompletions.js │ │ │ ├── ConcreteModel1.js │ │ │ ├── ConcreteModel2.js │ │ │ ├── Conditional.js │ │ │ ├── ConditionalAbstractObjectValueDefineProperty.js │ │ │ ├── ConditionalAbstractObjectValueDefineProperty2.js │ │ │ ├── ConditionalAbstractObjectValueDelete.js │ │ │ ├── ConditionalAbstractObjectValueGet.js │ │ │ ├── ConditionalAbstractObjectValueGetOwnProperty.js │ │ │ ├── ConditionalAbstractObjectValueGetPartial.js │ │ │ ├── ConditionalAbstractObjectValueGetWithPrototype.js │ │ │ ├── ConditionalAbstractObjectValueSet.js │ │ │ ├── ConditionalAbstractObjectValueSetNewProperty.js │ │ │ ├── ConditionalAbstractObjectValueSetPartial.js │ │ │ ├── ConditionalEmptyProperty.js │ │ │ ├── ConditionalImpliedPropertyAssignment.js │ │ │ ├── ConstructFunctionReturnsAbstract.js │ │ │ ├── Continue.js │ │ │ ├── Continue2.js │ │ │ ├── DebugValue.js │ │ │ ├── DefineDeletedProperty.js │ │ │ ├── Delete.js │ │ │ ├── Delete1.js │ │ │ ├── Delete2.js │ │ │ ├── Delete3.js │ │ │ ├── Delete4.js │ │ │ ├── Delete5.js │ │ │ ├── Delete6.js │ │ │ ├── Delete7.js │ │ │ ├── Delete8.js │ │ │ ├── DeleteArrayProperty.js │ │ │ ├── DeleteArrayProperty2.js │ │ │ ├── DeleteFunctionProperty.js │ │ │ ├── DeleteObjectProperty.js │ │ │ ├── DeleteOnConditionalObject.js │ │ │ ├── Distribute.js │ │ │ ├── DoWhile.js │ │ │ ├── DoWhile1.js │ │ │ ├── DoWhile10.js │ │ │ ├── DoWhile11.js │ │ │ ├── DoWhile12.js │ │ │ ├── DoWhile13.js │ │ │ ├── DoWhile2.js │ │ │ ├── DoWhile2a.js │ │ │ ├── DoWhile3.js │ │ │ ├── DoWhile4.js │ │ │ ├── DoWhile5.js │ │ │ ├── DoWhile6.js │ │ │ ├── DoWhile6a.js │ │ │ ├── DoWhile6b.js │ │ │ ├── DoWhile6c.js │ │ │ ├── DoWhile6d.js │ │ │ ├── DoWhile7.js │ │ │ ├── DoWhile8.js │ │ │ ├── DoWhile8a.js │ │ │ ├── DoWhile9.js │ │ │ ├── Error.js │ │ │ ├── ErrorMessageStringCoercion.js │ │ │ ├── Fibonacci.js │ │ │ ├── ForInStatement.js │ │ │ ├── ForInStatement1.js │ │ │ ├── ForInStatement10.js │ │ │ ├── ForInStatement11.js │ │ │ ├── ForInStatement11a.js │ │ │ ├── ForInStatement11b.js │ │ │ ├── ForInStatement12.js │ │ │ ├── ForInStatement2.js │ │ │ ├── ForInStatement2a.js │ │ │ ├── ForInStatement3.js │ │ │ ├── ForInStatement3a.js │ │ │ ├── ForInStatement4.js │ │ │ ├── ForInStatement5.js │ │ │ ├── ForInStatement6.js │ │ │ ├── ForInStatement7.js │ │ │ ├── ForInStatement8.js │ │ │ ├── ForInStatement9.js │ │ │ ├── ForLoop.js │ │ │ ├── ForLoop1.js │ │ │ ├── ForLoop2.js │ │ │ ├── ForOfStatement.js │ │ │ ├── ForOfStatement2.js │ │ │ ├── Function.js │ │ │ ├── GeneratorScoping1.js │ │ │ ├── GeneratorScoping2.js │ │ │ ├── GeneratorScoping3.js │ │ │ ├── GeneratorScoping4.js │ │ │ ├── GetPrototypeOf.js │ │ │ ├── GetPrototypeOf2.js │ │ │ ├── GetValue.js │ │ │ ├── GetValue10.js │ │ │ ├── GetValue2.js │ │ │ ├── GetValue3.js │ │ │ ├── GetValue4.js │ │ │ ├── GetValue5.js │ │ │ ├── GetValue6.js │ │ │ ├── GetValue7.js │ │ │ ├── GetValue8.js │ │ │ ├── GetValue9.js │ │ │ ├── GlobalAbstractName.js │ │ │ ├── If.js │ │ │ ├── ImplicitAbstractConversion.js │ │ │ ├── ImplicitAbstractConversion10.js │ │ │ ├── ImplicitAbstractConversion11.js │ │ │ ├── ImplicitAbstractConversion12.js │ │ │ ├── ImplicitAbstractConversion13.js │ │ │ ├── ImplicitAbstractConversion14.js │ │ │ ├── ImplicitAbstractConversion15.js │ │ │ ├── ImplicitAbstractConversion16.js │ │ │ ├── ImplicitAbstractConversion17.js │ │ │ ├── ImplicitAbstractConversion18.js │ │ │ ├── ImplicitAbstractConversion19.js │ │ │ ├── ImplicitAbstractConversion2.js │ │ │ ├── ImplicitAbstractConversion20.js │ │ │ ├── ImplicitAbstractConversion21.js │ │ │ ├── ImplicitAbstractConversion22.js │ │ │ ├── ImplicitAbstractConversion23.js │ │ │ ├── ImplicitAbstractConversion24.js │ │ │ ├── ImplicitAbstractConversion25.js │ │ │ ├── ImplicitAbstractConversion26.js │ │ │ ├── ImplicitAbstractConversion27.js │ │ │ ├── ImplicitAbstractConversion28.js │ │ │ ├── ImplicitAbstractConversion29.js │ │ │ ├── ImplicitAbstractConversion3.js │ │ │ ├── ImplicitAbstractConversion30.js │ │ │ ├── ImplicitAbstractConversion31.js │ │ │ ├── ImplicitAbstractConversion32.js │ │ │ ├── ImplicitAbstractConversion33.js │ │ │ ├── ImplicitAbstractConversion36.js │ │ │ ├── ImplicitAbstractConversion4.js │ │ │ ├── ImplicitAbstractConversion5.js │ │ │ ├── ImplicitAbstractConversion6.js │ │ │ ├── ImplicitAbstractConversion7.js │ │ │ ├── ImplicitAbstractConversion8.js │ │ │ ├── ImplicitAbstractConversion9.js │ │ │ ├── Implies.js │ │ │ ├── In.js │ │ │ ├── In2.js │ │ │ ├── In3.js │ │ │ ├── Instanceof1.js │ │ │ ├── Instanceof2.js │ │ │ ├── Instanceof3.js │ │ │ ├── InternalProps.js │ │ │ ├── IntrinsicObjectCSE.js │ │ │ ├── IntrinsicUnion.js │ │ │ ├── IntrinsicUnion2.js │ │ │ ├── InvariantsForNonAbstractProperties.js │ │ │ ├── IsPrototypeOf.js │ │ │ ├── Issue2327InBinop.js │ │ │ ├── Issue2327InBinopUnconditional.js │ │ │ ├── Issue2327InstanceOfBinop.js │ │ │ ├── Issue2327InstanceOfBinopUnconditional.js │ │ │ ├── Issue2327StringLength.js │ │ │ ├── Issue2327StringLengthUnconditional.js │ │ │ ├── Issue2327StringSlice.js │ │ │ ├── Issue2327StringSliceUnconditional.js │ │ │ ├── Issue2327StringSplit.js │ │ │ ├── JSONStringifyOnAbstract2411.js │ │ │ ├── JSONparse.js │ │ │ ├── JSONparse2.js │ │ │ ├── ListOperationsCommentBubble.js │ │ │ ├── ListOperationsSimple.js │ │ │ ├── LogicalExpression.js │ │ │ ├── LogicalExpression2.js │ │ │ ├── MakeFinal.js │ │ │ ├── Map.js │ │ │ ├── MathRound.js │ │ │ ├── MightBeEmptyAssignment.js │ │ │ ├── ModelFunction.js │ │ │ ├── ModifiedBindingsCSE.js │ │ │ ├── MutatingObjectsFromOuterScope.js │ │ │ ├── NegateObject.js │ │ │ ├── NestedAbstractProperties.js │ │ │ ├── NullPrototypePartialKey.js │ │ │ ├── Number.js │ │ │ ├── ObjectAssign.js │ │ │ ├── ObjectAssign10.js │ │ │ ├── ObjectAssign11.js │ │ │ ├── ObjectAssign12.js │ │ │ ├── ObjectAssign13.js │ │ │ ├── ObjectAssign14.js │ │ │ ├── ObjectAssign15.js │ │ │ ├── ObjectAssign16.js │ │ │ ├── ObjectAssign17.js │ │ │ ├── ObjectAssign18.js │ │ │ ├── ObjectAssign19.js │ │ │ ├── ObjectAssign2.js │ │ │ ├── ObjectAssign20.js │ │ │ ├── ObjectAssign3.js │ │ │ ├── ObjectAssign4.js │ │ │ ├── ObjectAssign5.js │ │ │ ├── ObjectAssign6.js │ │ │ ├── ObjectAssign7.js │ │ │ ├── ObjectAssign8.js │ │ │ ├── ObjectAssign9.js │ │ │ ├── ObjectCreate.js │ │ │ ├── ObjectExpression.js │ │ │ ├── Optional.js │ │ │ ├── Optional2.js │ │ │ ├── Optional3.js │ │ │ ├── Optional4.js │ │ │ ├── Optional5.js │ │ │ ├── OrdinaryToPrimitive.js │ │ │ ├── OwnKeys.js │ │ │ ├── PathConditions.js │ │ │ ├── PathConditions2.js │ │ │ ├── PathConditions3.js │ │ │ ├── PossibleThrow.js │ │ │ ├── PropagateFunctionResultType.js │ │ │ ├── Property.js │ │ │ ├── Property2.js │ │ │ ├── Property3.js │ │ │ ├── Property4.js │ │ │ ├── Property5.js │ │ │ ├── PropertyAttributeConflict.js │ │ │ ├── PutValue.js │ │ │ ├── PutValue10.js │ │ │ ├── PutValue11.js │ │ │ ├── PutValue12.js │ │ │ ├── PutValue13.js │ │ │ ├── PutValue2.js │ │ │ ├── PutValue3.js │ │ │ ├── PutValue4.js │ │ │ ├── PutValue5.js │ │ │ ├── PutValue6.js │ │ │ ├── PutValue7.js │ │ │ ├── PutValue8.js │ │ │ ├── PutValue9.js │ │ │ ├── QualifiedCall.js │ │ │ ├── QualifiedCall2.js │ │ │ ├── QualifiedCall3.js │ │ │ ├── Refine.js │ │ │ ├── Refine2.js │ │ │ ├── Refine3.js │ │ │ ├── Refine4.js │ │ │ ├── Refine5.js │ │ │ ├── Refine6.js │ │ │ ├── Refine7.js │ │ │ ├── RegressionTestForNestedGenerators.js │ │ │ ├── ReplaceFunctionBody.js │ │ │ ├── Residual.js │ │ │ ├── ResidualExplicitParameters.js │ │ │ ├── ResidualExplicitParameters2.js │ │ │ ├── ResidualInvariant1.js │ │ │ ├── ResidualInvariant2.js │ │ │ ├── ResidualInvariant3.js │ │ │ ├── ResidualInvariant4.js │ │ │ ├── ResidualInvariantPathCondition.js │ │ │ ├── ResidualTemplate.js │ │ │ ├── ResidualVoid.js │ │ │ ├── Return.js │ │ │ ├── Return1.js │ │ │ ├── Return10.js │ │ │ ├── Return1a.js │ │ │ ├── Return2.js │ │ │ ├── Return2a.js │ │ │ ├── Return3.js │ │ │ ├── Return3a.js │ │ │ ├── Return4.js │ │ │ ├── Return4a.js │ │ │ ├── Return5.js │ │ │ ├── Return5a.js │ │ │ ├── Return6.js │ │ │ ├── Return6a.js │ │ │ ├── Return7.js │ │ │ ├── Return8.js │ │ │ ├── Return9.js │ │ │ ├── Set.js │ │ │ ├── SimpleObject.js │ │ │ ├── SimpleObject2.js │ │ │ ├── SimpleObject3.js │ │ │ ├── SimpleObject4.js │ │ │ ├── String.js │ │ │ ├── StringLength.js │ │ │ ├── Switch.js │ │ │ ├── Switch2.js │ │ │ ├── Switch3.js │ │ │ ├── Switch4.js │ │ │ ├── SymbolAbstractValueDescription.js │ │ │ ├── SymbolEqualityRegressionTest.js │ │ │ ├── Symbols.js │ │ │ ├── Symbols2.js │ │ │ ├── Symbols3.js │ │ │ ├── Symbols4.js │ │ │ ├── Symbols5.js │ │ │ ├── Symbols6.js │ │ │ ├── Symbols7.js │ │ │ ├── TemporalCSE.js │ │ │ ├── Throw.js │ │ │ ├── Throw10.js │ │ │ ├── Throw2.js │ │ │ ├── Throw3.js │ │ │ ├── Throw4.js │ │ │ ├── Throw5.js │ │ │ ├── Throw5a.js │ │ │ ├── Throw5b.js │ │ │ ├── Throw5c.js │ │ │ ├── Throw5d.js │ │ │ ├── Throw6.js │ │ │ ├── Throw6a.js │ │ │ ├── Throw6b.js │ │ │ ├── Throw8.js │ │ │ ├── Throw9a.js │ │ │ ├── Throw9b.js │ │ │ ├── ThrowInConstructor.js │ │ │ ├── ThrowInConstructor2.js │ │ │ ├── ThrowInConstructor3.js │ │ │ ├── ThrowInDoubleCatch.js │ │ │ ├── ToString.js │ │ │ ├── ToString2.js │ │ │ ├── ToString3.js │ │ │ ├── ToString4.js │ │ │ ├── TypeDomain4.js │ │ │ ├── TypeDomain5.js │ │ │ ├── TypeOf.js │ │ │ ├── TypesDomain.js │ │ │ ├── TypesDomain2.js │ │ │ ├── TypesDomain3.js │ │ │ ├── UnaryExpression.js │ │ │ ├── UnaryExpression2.js │ │ │ ├── UnknownNumericKey.js │ │ │ ├── UnknownNumericKeyAssignment.js │ │ │ ├── UnknownObjectKey.js │ │ │ ├── UnknownObjectKeyAssignment.js │ │ │ ├── UnknownPropertyOnPrimitive.js │ │ │ ├── UpdateExpression.js │ │ │ ├── UpdateExpression2.js │ │ │ ├── UpdateExpression3.js │ │ │ ├── UpdateExpression4.js │ │ │ ├── UseAbstractObjectValueTemplateInIsCall.js │ │ │ ├── WaitGenerator0.js │ │ │ ├── WaitGenerator0a.js │ │ │ ├── WaitGenerator0b.js │ │ │ ├── WaitGenerator1.js │ │ │ ├── WaitGenerator2.js │ │ │ ├── WaitGenerator3.js │ │ │ ├── WaitGenerator4.js │ │ │ ├── WaitGenerator5.js │ │ │ ├── WeakMap.js │ │ │ ├── WeakSet.js │ │ │ ├── WhileLoop.js │ │ │ ├── With.js │ │ │ ├── defineProperty.js │ │ │ ├── defineProperty2.js │ │ │ ├── getOwnPropertyDescriptor.js │ │ │ ├── getOwnPropertyDescriptor2.js │ │ │ ├── getOwnPropertyDescriptor3.js │ │ │ ├── getOwnPropertyDescriptor4.js │ │ │ ├── getOwnPropertyDescriptor5.js │ │ │ ├── getOwnPropertyDescriptor6.js │ │ │ ├── getOwnPropertyDescriptor7.js │ │ │ ├── getOwnPropertyDescriptor8.js │ │ │ ├── getOwnPropertyDescriptor9.js │ │ │ ├── object-assign10.js │ │ │ ├── object-assign11.js │ │ │ ├── object-assign12.js │ │ │ ├── object-assign2.js │ │ │ ├── object-assign3.js │ │ │ ├── object-assign4.js │ │ │ ├── object-assign5.js │ │ │ ├── object-assign5a.js │ │ │ ├── object-assign5b.js │ │ │ ├── object-assign6.js │ │ │ ├── object-assign7.js │ │ │ ├── object-assign8.js │ │ │ ├── object-assign9.js │ │ │ ├── reflectHas.js │ │ │ ├── reflectHas1.js │ │ │ ├── reflectHas2.js │ │ │ ├── require_tracking.js │ │ │ ├── require_tracking2.js │ │ │ └── toLocaleString.js │ │ ├── additional-functions/ │ │ │ ├── AdditionalFunCapturedScope.js │ │ │ ├── ArrayConcat.js │ │ │ ├── Class.js │ │ │ ├── DeadCodeCheck.js │ │ │ ├── DeadOuterObject.js │ │ │ ├── DelayInitializations1.js │ │ │ ├── DelayInitializations2.js │ │ │ ├── DelayInitializations3.js │ │ │ ├── EmitPropertyRegressionTest.js │ │ │ ├── Example1.js │ │ │ ├── FunctionApply.js │ │ │ ├── GlobalLetBinding.js │ │ │ ├── Issue1821RegressionTest.js │ │ │ ├── ModifiedBindingWithoutInitialValue.js │ │ │ ├── ModifiedBindingsCapturedScopesCalls.js │ │ │ ├── ModifiedObjectProperty.js │ │ │ ├── ModifiedObjectPropertyWithAbstractKey.js │ │ │ ├── MutatedObject.js │ │ │ ├── NestedOptimizedFunction1.js │ │ │ ├── NestedOptimizedFunction10.js │ │ │ ├── NestedOptimizedFunction11.js │ │ │ ├── NestedOptimizedFunction12.js │ │ │ ├── NestedOptimizedFunction13.js │ │ │ ├── NestedOptimizedFunction14.js │ │ │ ├── NestedOptimizedFunction15.js │ │ │ ├── NestedOptimizedFunction16.js │ │ │ ├── NestedOptimizedFunction17.js │ │ │ ├── NestedOptimizedFunction18.js │ │ │ ├── NestedOptimizedFunction19.js │ │ │ ├── NestedOptimizedFunction2.js │ │ │ ├── NestedOptimizedFunction20.js │ │ │ ├── NestedOptimizedFunction21.js │ │ │ ├── NestedOptimizedFunction22.js │ │ │ ├── NestedOptimizedFunction3.js │ │ │ ├── NestedOptimizedFunction4.js │ │ │ ├── NestedOptimizedFunction6.js │ │ │ ├── NestedOptimizedFunction7.js │ │ │ ├── NestedOptimizedFunction8.js │ │ │ ├── NestedThrowEffects.js │ │ │ ├── ObjectCreationGeneratorRegressionTest.js │ │ │ ├── ObjectLifetime1.js │ │ │ ├── ObjectLifetime2.js │ │ │ ├── OptimizedArrayFilterOpAliasing.js │ │ │ ├── OptimizedArrayFilterOpAliasing2.js │ │ │ ├── OptimizedArrayFilterOpSpecialization.js │ │ │ ├── OptimizedArrayOpAliasing.js │ │ │ ├── OptimizedArrayOpAliasing2.js │ │ │ ├── OptimizedArrayOpAliasing3.js │ │ │ ├── OptimizedArrayOpNoDefaultMaterialization.js │ │ │ ├── OptimizedArrayOpSpecialization.js │ │ │ ├── OptimizedArrayOpSpecializationBailout.js │ │ │ ├── OptimizedArrayOpSpecializationBailout2.js │ │ │ ├── OptimizedResidualOptimized.js │ │ │ ├── OuterScopeCacheRegressionTest.js │ │ │ ├── ReadThenDelete.js │ │ │ ├── ReferentializationRegressionTest.js │ │ │ ├── RegressionTestForIssue1881.js │ │ │ ├── RegressionTestForIssue1957.js │ │ │ ├── RegressionTestForIssue2090.js │ │ │ ├── ResidualFunctionBindingsMutatedByOptimizedFunctionRegressionTest.js │ │ │ ├── TargetsWithGenerators.js │ │ │ ├── ThisArgument.js │ │ │ ├── ToObject.js │ │ │ ├── UnknownArray.js │ │ │ ├── UpdateExpression.js │ │ │ ├── UpdateExpression2.js │ │ │ ├── abstract-property-modification.js │ │ │ ├── arguments.js │ │ │ ├── arguments2.js │ │ │ ├── arguments3.js │ │ │ ├── arguments4.js │ │ │ ├── bad-functions2.js │ │ │ ├── capture-local.js │ │ │ ├── conditions.js │ │ │ ├── conditions2.js │ │ │ ├── conditions3.js │ │ │ ├── create-local.js │ │ │ ├── createdobject-modifications.js │ │ │ ├── createdobject.js │ │ │ ├── dead-functions.js │ │ │ ├── func-nesting.js │ │ │ ├── modified-global-let-simple.js │ │ │ ├── modifiedobjects.js │ │ │ ├── named-function.js │ │ │ ├── nested_function.js │ │ │ ├── nested_function2.js │ │ │ ├── nested_function3.js │ │ │ ├── nested_function4.js │ │ │ ├── nested_modifybinding.js │ │ │ ├── noconflict-captures.js │ │ │ ├── noconflict-captures2.js │ │ │ ├── noconflict-existantobject.js │ │ │ ├── noopfunc.js │ │ │ ├── possible_throw_object_assign.js │ │ │ ├── precise_captures.js │ │ │ ├── prelude-ordering.js │ │ │ ├── property-deletion.js │ │ │ ├── property-modification.js │ │ │ ├── referentialization.js │ │ │ ├── referentialization2.js │ │ │ ├── register_conditionally.js │ │ │ ├── register_test.js │ │ │ ├── require_opt.js │ │ │ ├── return-or-many-throw.js │ │ │ ├── return-or-multiple-throw.js │ │ │ ├── return-or-throw-modifybindings.js │ │ │ ├── return-or-throw-modifybindings2.js │ │ │ ├── return-or-throw-modifybindings3.js │ │ │ ├── return-or-throw-modifyproperties.js │ │ │ ├── return-or-throw-modifyproperties2.js │ │ │ ├── return-or-throw-simple.js │ │ │ ├── return-or-throw-simple1.js │ │ │ ├── return-value-simple.js │ │ │ ├── self_referential.js │ │ │ ├── self_referential_simple.js │ │ │ ├── write-in-conflict.js │ │ │ └── write-write-noconflict.js │ │ ├── basic/ │ │ │ ├── Arguments.js │ │ │ ├── Arguments2.js │ │ │ ├── ArrayBuffer.js │ │ │ ├── ArrayIndexedProperty.js │ │ │ ├── ArrayInitializer2.js │ │ │ ├── ArrayInitializer3.js │ │ │ ├── ArrayPrototype.js │ │ │ ├── ArrayWithProperties.js │ │ │ ├── AssumeDataProperty.js │ │ │ ├── AssumeDataProperty2.js │ │ │ ├── AssumeDataProperty3.js │ │ │ ├── AssumeDataProperty4.js │ │ │ ├── AvoidIdLeaks.js │ │ │ ├── AvoidUnnecessaryWrappedFunctions.js │ │ │ ├── Bind.js │ │ │ ├── BoundFunction.js │ │ │ ├── BoundFunctionCreationOrder.js │ │ │ ├── BoundFunctionProperties.js │ │ │ ├── BoundFunctionProperties2.js │ │ │ ├── CapturedScope.js │ │ │ ├── CapturedScope10.js │ │ │ ├── CapturedScope11.js │ │ │ ├── CapturedScope2.js │ │ │ ├── CapturedScope3.js │ │ │ ├── CapturedScope4.js │ │ │ ├── CapturedScope5.js │ │ │ ├── CapturedScope6.js │ │ │ ├── CapturedScope7.js │ │ │ ├── CapturedScope8.js │ │ │ ├── CapturedScope9.js │ │ │ ├── CapturedScopeArrayAccess1.js │ │ │ ├── CapturedScopeArrayAccess2.js │ │ │ ├── CapturedScopeParameterOrdering.js │ │ │ ├── CapturedScopesAndIndexedVars.js │ │ │ ├── CircularFuncs.js │ │ │ ├── CircularFunctions.js │ │ │ ├── ClassExpression.js │ │ │ ├── ClassExpression2.js │ │ │ ├── ClassExpression3.js │ │ │ ├── ClassExpression4.js │ │ │ ├── ClassExpression5.js │ │ │ ├── ClassExpression6.js │ │ │ ├── ClassExpression7.js │ │ │ ├── Closure.js │ │ │ ├── Closure2.js │ │ │ ├── Closure3.js │ │ │ ├── Closure4.js │ │ │ ├── ClosureRefReplacement.js │ │ │ ├── ClosureRefVisitor.js │ │ │ ├── ClosureRefVisitor2.js │ │ │ ├── ClosureRefVisitor3.js │ │ │ ├── ClosureRefVisitor4.js │ │ │ ├── ConditionalReturn.js │ │ │ ├── ConditionalReturn2.js │ │ │ ├── ConditionalReturn3.js │ │ │ ├── CyclicArray.js │ │ │ ├── CyclicDependencies.js │ │ │ ├── Date.js │ │ │ ├── DefineProperty.js │ │ │ ├── DefinePropertySameNameDiffDesc.js │ │ │ ├── DelayInitWithDifferentValues.js │ │ │ ├── DelayInitializations.js │ │ │ ├── DelayInitializations2.js │ │ │ ├── DelayedValuePropertyOrdering.js │ │ │ ├── DelayedValuePropertyOrdering2.js │ │ │ ├── DontInlineFunctionsWithCapturedScopes.js │ │ │ ├── DuplicateFactoryFunctions.js │ │ │ ├── EfficientPrototypeSetting.js │ │ │ ├── EmitFunctionExpression.js │ │ │ ├── EmptyBlocks.js │ │ │ ├── ErrorPrototypeToString.js │ │ │ ├── ExceedStackDepth.js │ │ │ ├── Factories1.js │ │ │ ├── Factories2.js │ │ │ ├── FactorifyMixNodeTypes.js │ │ │ ├── FactorifyVoid0.js │ │ │ ├── ForInStatement1.js │ │ │ ├── ForOfStatement1.js │ │ │ ├── FrozenLazyObject.js │ │ │ ├── Function.js │ │ │ ├── FunctionBodyClone1.js │ │ │ ├── FunctionBodyClone2.js │ │ │ ├── FunctionOrdering.js │ │ │ ├── FunctionPrototype.js │ │ │ ├── FunctionPrototype2.js │ │ │ ├── FunctionPrototypeAssignmentIsSimple.js │ │ │ ├── FunctionUndelayOrdering.js │ │ │ ├── GenerateInvariants.js │ │ │ ├── GlobalMustBePassedInWhenUsed.js │ │ │ ├── GlobalProperty.js │ │ │ ├── GlobalProperty2.js │ │ │ ├── GlobalProperty3.js │ │ │ ├── GlobalPropertyGetter.js │ │ │ ├── GlobalPropertyNotValidIdentifier.js │ │ │ ├── GlobalPropertyStrict.js │ │ │ ├── GlobalPropertyStrict2.js │ │ │ ├── GlobalThing.js │ │ │ ├── GlobalVar.js │ │ │ ├── HelloWorld.js │ │ │ ├── HoistFunctionDeclarations.js │ │ │ ├── IncrementalMemoization.js │ │ │ ├── Integral.js │ │ │ ├── IntrinsicPutValue.js │ │ │ ├── IntrinsicSerialization.js │ │ │ ├── Issue2555RegressionTest.js │ │ │ ├── Issue2555RegressionTest2.js │ │ │ ├── IteratorPrototype.js │ │ │ ├── JSCCollections.js │ │ │ ├── KeysAsNumbers.js │ │ │ ├── LargeDelayedValue.js │ │ │ ├── LetGlobal.js │ │ │ ├── ManyFunctionInstantiations.js │ │ │ ├── Map.js │ │ │ ├── Map2.js │ │ │ ├── MapIteratorPrototype.js │ │ │ ├── MapNotDeadMember.js │ │ │ ├── MemoizeGlobalPropertiesRegExp.js │ │ │ ├── MissingInitialElement.js │ │ │ ├── NestedFunctions1.js │ │ │ ├── NestedFunctions2.js │ │ │ ├── NestedFunctions3.js │ │ │ ├── NestedFunctions4.js │ │ │ ├── NestedFunctions5.js │ │ │ ├── NonObjectPrototypes.js │ │ │ ├── NonOrdinarySetPrototypeOf.js │ │ │ ├── NonStrictComplex.js │ │ │ ├── NullPrototype.js │ │ │ ├── ObjectFreeze1.js │ │ │ ├── ObjectFreeze2.js │ │ │ ├── ObjectFreeze3.js │ │ │ ├── ObjectFreeze4.js │ │ │ ├── ObjectFreeze5.js │ │ │ ├── ObjectPreventExtensions1.js │ │ │ ├── ObjectSeal1.js │ │ │ ├── ObjectSeal2.js │ │ │ ├── OmitInvariants.js │ │ │ ├── OmitUnknownScopeSelectorError.js │ │ │ ├── OverridingFunctionPrototype.js │ │ │ ├── PathConditionDeadCode.js │ │ │ ├── PathConditionThrow.js │ │ │ ├── Promise.js │ │ │ ├── PropertyAssignment.js │ │ │ ├── PropertyGetter.js │ │ │ ├── PropertySetter.js │ │ │ ├── Prototypes.js │ │ │ ├── Prototypes2.js │ │ │ ├── Proxy.js │ │ │ ├── Recursion.js │ │ │ ├── Recursion2.js │ │ │ ├── RecursiveMutatedFunctionIdentifier.js │ │ │ ├── ReferentializeBug.js │ │ │ ├── ReferentializeInitializer.js │ │ │ ├── RegExp.js │ │ │ ├── ResidualIdentityObservation.js │ │ │ ├── ResidualIdentityObservation2.js │ │ │ ├── Set.js │ │ │ ├── SetNotDeadMember.js │ │ │ ├── SetTimeout.js │ │ │ ├── SimpleCircularFunctions.js │ │ │ ├── SimpleInheritanceChains.js │ │ │ ├── StrictComplex.js │ │ │ ├── StrictGlobals.js │ │ │ ├── StrictSimple.js │ │ │ ├── StringPrototype.js │ │ │ ├── Symbols.js │ │ │ ├── Symbols2.js │ │ │ ├── Uint8Array.js │ │ │ ├── Undefined.js │ │ │ ├── UndefinedAsLocalVariableName.js │ │ │ ├── UniqueNames.js │ │ │ ├── UnknownScopeSelectorError.js │ │ │ ├── Values.js │ │ │ ├── WeakMap.js │ │ │ ├── WeakMapDeadMember.js │ │ │ ├── WeakMapInternalReference.js │ │ │ ├── WeakSet.js │ │ │ ├── WeakSetDeadMember.js │ │ │ ├── __output.js │ │ │ └── setTimeoutAndInterval.js │ │ ├── instant-render/ │ │ │ ├── EmptyBuiltInArray.js │ │ │ ├── EmptyBuiltInArrayLength.js │ │ │ ├── EmptyBuiltInProps.js │ │ │ ├── FunctionArgumentModeling.js │ │ │ └── NotNull.js │ │ ├── optimizations/ │ │ │ ├── CommonSubExpr.js │ │ │ ├── CommonSubExpr2.js │ │ │ ├── CommonSubExpr3.js │ │ │ ├── DedupeGenerator.js │ │ │ ├── DelayInitCaptures.js │ │ │ ├── DelayInitMult.js │ │ │ ├── collapse_cases.js │ │ │ ├── eagerlyRequireModuleDependencies.js │ │ │ ├── getOwnPropertySymbols.js │ │ │ ├── non_numeric_arg_require.js │ │ │ ├── proto.js │ │ │ ├── require_accelerate.js │ │ │ ├── require_delay.js │ │ │ ├── require_hoist.js │ │ │ ├── require_mightHaveBeenDeleted.js │ │ │ ├── require_opt.js │ │ │ ├── require_opt_with_dependencies.js │ │ │ ├── require_removefactoryfunctions.js │ │ │ ├── require_spec_accelerate_delay.js │ │ │ ├── require_speculatively.js │ │ │ ├── require_speculatively_specific.js │ │ │ ├── require_throws.js │ │ │ ├── require_throws1.js │ │ │ ├── require_unsupported.js │ │ │ ├── residualDeadCode.js │ │ │ ├── simplify.js │ │ │ ├── simplify10.js │ │ │ ├── simplify11.js │ │ │ ├── simplify12.js │ │ │ ├── simplify2.js │ │ │ ├── simplify3.js │ │ │ ├── simplify4.js │ │ │ ├── simplify5.js │ │ │ ├── simplify6.js │ │ │ ├── simplify7.js │ │ │ ├── simplify8.js │ │ │ ├── simplify8a.js │ │ │ ├── simplify8b.js │ │ │ ├── simplify8c.js │ │ │ ├── simplify9.js │ │ │ ├── simplifyCompNullOrUndefined.js │ │ │ ├── simplifyCompNullOrUndefined2.js │ │ │ ├── simplifyCompNullOrUndefined3.js │ │ │ ├── simplifyEqNull.js │ │ │ ├── simplifyEqUndefined.js │ │ │ ├── simplifyMultipleIfs1.js │ │ │ ├── simplifyMultipleIfs2.js │ │ │ └── simplifyStrictEq.js │ │ ├── optimized-functions/ │ │ │ ├── 2248-repro.js │ │ │ ├── AbstractDate.js │ │ │ ├── ArgumentProperty.js │ │ │ ├── ArrayAccess.js │ │ │ ├── ArrayFrom.js │ │ │ ├── ArrayFrom10.js │ │ │ ├── ArrayFrom11.js │ │ │ ├── ArrayFrom2.js │ │ │ ├── ArrayFrom3.js │ │ │ ├── ArrayFrom4.js │ │ │ ├── ArrayFrom5.js │ │ │ ├── ArrayFrom6.js │ │ │ ├── ArrayFrom7.js │ │ │ ├── ArrayFrom8.js │ │ │ ├── ArrayFrom9.js │ │ │ ├── ArrayIndexOf.js │ │ │ ├── ArrayReverse.js │ │ │ ├── ArrowFunction.js │ │ │ ├── ArrowFunction2.js │ │ │ ├── CallWithThrow.js │ │ │ ├── CommonParentScopeCapture.js │ │ │ ├── ComposeJoins.js │ │ │ ├── ConditionalArray.js │ │ │ ├── ConditionalArray2.js │ │ │ ├── ConditionalArray3.js │ │ │ ├── ConditionalArray4.js │ │ │ ├── ConditionalArray5.js │ │ │ ├── ConditionalGet.js │ │ │ ├── ConditionalGet2.js │ │ │ ├── ConditionalGet3.js │ │ │ ├── ConditionalObjectAssign.js │ │ │ ├── ConditionalObjectAssign2.js │ │ │ ├── ConditionalObjectAssign3.js │ │ │ ├── ConditionalObjectAssign4.js │ │ │ ├── ConditionalObjectAssign5.js │ │ │ ├── ConditionalReturn.js │ │ │ ├── ConditionalReturn2.js │ │ │ ├── ConditionallyLeakedBinding.js │ │ │ ├── ConditionallyLeakedObject1.js │ │ │ ├── ConditionallyLeakedObject2.js │ │ │ ├── ConditionallyOptimizedFunction.js │ │ │ ├── ConditionallyReachable.js │ │ │ ├── DeadModifiedBindings.js │ │ │ ├── DeadObjectAssign.js │ │ │ ├── DeadObjectAssign10.js │ │ │ ├── DeadObjectAssign11.js │ │ │ ├── DeadObjectAssign12.js │ │ │ ├── DeadObjectAssign13.js │ │ │ ├── DeadObjectAssign14.js │ │ │ ├── DeadObjectAssign15.js │ │ │ ├── DeadObjectAssign16.js │ │ │ ├── DeadObjectAssign17.js │ │ │ ├── DeadObjectAssign18.js │ │ │ ├── DeadObjectAssign19.js │ │ │ ├── DeadObjectAssign2.js │ │ │ ├── DeadObjectAssign20.js │ │ │ ├── DeadObjectAssign21.js │ │ │ ├── DeadObjectAssign22.js │ │ │ ├── DeadObjectAssign23.js │ │ │ ├── DeadObjectAssign24.js │ │ │ ├── DeadObjectAssign3.js │ │ │ ├── DeadObjectAssign4.js │ │ │ ├── DeadObjectAssign5.js │ │ │ ├── DeadObjectAssign6.js │ │ │ ├── DeadObjectAssign7.js │ │ │ ├── DeadObjectAssign8.js │ │ │ ├── DeadObjectAssign9.js │ │ │ ├── DefineOptFuncInsideFuncInsideOptFunc.js │ │ │ ├── Empty.js │ │ │ ├── ForLoop.js │ │ │ ├── ForLoop2.js │ │ │ ├── ForLoop3.js │ │ │ ├── HavocBindings1.js │ │ │ ├── HavocBindings10.js │ │ │ ├── HavocBindings11.js │ │ │ ├── HavocBindings2.js │ │ │ ├── HavocBindings3.js │ │ │ ├── HavocBindings4.js │ │ │ ├── HavocBindings5.js │ │ │ ├── HavocBindings7.js │ │ │ ├── HavocBindings8.js │ │ │ ├── HavocBindings9.js │ │ │ ├── HavocBindingsRegression.js │ │ │ ├── HavocNestedBindings1.js │ │ │ ├── HavocNestedBindings2.js │ │ │ ├── HavocObjects1.js │ │ │ ├── HavocObjects2.js │ │ │ ├── HavocObjects3.js │ │ │ ├── HavocObjects4.js │ │ │ ├── HavocObjects5.js │ │ │ ├── InstantRenderArrayOps1.js │ │ │ ├── InstantRenderArrayOps2.js │ │ │ ├── InstantRenderArrayOpsBenignMutation.js │ │ │ ├── Issue1640ImplicitThis.js │ │ │ ├── Issue1856.js │ │ │ ├── Issue2151.js │ │ │ ├── Issue2262Regression.js │ │ │ ├── Issue2266Regression.js │ │ │ ├── Issue2358-2.js │ │ │ ├── Issue2358.js │ │ │ ├── Issue2359-1.js │ │ │ ├── Issue2359-2.js │ │ │ ├── Issue2388.js │ │ │ ├── Issue2392-1.js │ │ │ ├── Issue2392-2.js │ │ │ ├── Issue2398.js │ │ │ ├── Issue2399.js │ │ │ ├── Issue2422.js │ │ │ ├── Issue2423.js │ │ │ ├── LeakObjectWithSetter.js │ │ │ ├── LeakedCustomObjectInMultipleScopes.js │ │ │ ├── LeakedObjectCodeDuplication.js │ │ │ ├── LoopBailout.js │ │ │ ├── LoopBailout10.js │ │ │ ├── LoopBailout11.js │ │ │ ├── LoopBailout12.js │ │ │ ├── LoopBailout13.js │ │ │ ├── LoopBailout14.js │ │ │ ├── LoopBailout15.js │ │ │ ├── LoopBailout16.js │ │ │ ├── LoopBailout17.js │ │ │ ├── LoopBailout18.js │ │ │ ├── LoopBailout19.js │ │ │ ├── LoopBailout2.js │ │ │ ├── LoopBailout3.js │ │ │ ├── LoopBailout4.js │ │ │ ├── LoopBailout5.js │ │ │ ├── LoopBailout6.js │ │ │ ├── LoopBailout7.js │ │ │ ├── LoopBailout8.js │ │ │ ├── LoopBailout9.js │ │ │ ├── MissingModifiedBinding.js │ │ │ ├── ModifiedResidualBindings.js │ │ │ ├── ModifiedResidualBindings2.js │ │ │ ├── ModifiedResidualBindings3.js │ │ │ ├── NestedConditions.js │ │ │ ├── NestedConditionsRedeclare.js │ │ │ ├── NestedConditionsRightPath.js │ │ │ ├── NestedOptimizeSameFunction.js │ │ │ ├── NestedTemporalJoinConditions.js │ │ │ ├── NullCheck.js │ │ │ ├── NullThrows.js │ │ │ ├── ObjectAssign.js │ │ │ ├── ObjectAssign2.js │ │ │ ├── ObjectAssign3.js │ │ │ ├── ObjectAssign4.js │ │ │ ├── ObjectAssign5.js │ │ │ ├── ObjectAssign6.js │ │ │ ├── ObjectAssign7.js │ │ │ ├── ObjectAssign8.js │ │ │ ├── ObjectAssign9.js │ │ │ ├── ObjectAssignProps.js │ │ │ ├── OptimizeInSpeculativeContext.js │ │ │ ├── OptimizedConditionalFunction.js │ │ │ ├── OptimizedResidualOptimized.js │ │ │ ├── ParentInitializesLocal.js │ │ │ ├── ParentInitializesLocal2.js │ │ │ ├── PropertyDeref.js │ │ │ ├── RegressionTestForIssue1837.js │ │ │ ├── RegressionTestForIssue1840.js │ │ │ ├── RegressionTestForIssue1848.js │ │ │ ├── RegressionTestForIssue1883.js │ │ │ ├── RegressionTestForIssue2015.js │ │ │ ├── RegressionTestForIssue2056.js │ │ │ ├── Switch.js │ │ │ ├── Switch2.js │ │ │ ├── Switch3.js │ │ │ ├── Switch4.js │ │ │ ├── Switch5.js │ │ │ ├── Switch6.js │ │ │ ├── SymbolGet.js │ │ │ ├── ThrowOrReturn.js │ │ │ ├── ThrowOrReturn2.js │ │ │ ├── ThrowOrReturn3.js │ │ │ ├── ToString.js │ │ │ ├── ToString2.js │ │ │ ├── ToString3.js │ │ │ ├── ToString4.js │ │ │ ├── TransitiveMaterializationDirect.js │ │ │ ├── TransitiveMaterializationViaAbstractValue.js │ │ │ ├── TransitiveMaterializationViaFunctionCall.js │ │ │ ├── TransitiveMaterializationViaFunctionProperty.js │ │ │ ├── TransitiveMaterializationViaLeakedBinding.js │ │ │ ├── TransitiveMaterializationViaObjectProp.js │ │ │ ├── TransitiveMaterializationViaThisBinding.js │ │ │ ├── UnknownProperty.js │ │ │ ├── UnknownProperty2.js │ │ │ ├── WrongReferentializationScope.js │ │ │ ├── WrongScopeTripleNested.js │ │ │ ├── double-call.js │ │ │ ├── instanceof.js │ │ │ ├── issue-2252-3.js │ │ │ └── simple-nesting.js │ │ ├── pure-functions/ │ │ │ ├── AbstractCall.js │ │ │ ├── AbstractCallUnknownType.js │ │ │ ├── AbstractCallUnknownType2.js │ │ │ ├── AbstractComputedProperty.js │ │ │ ├── AbstractComputedPropertyAssignment.js │ │ │ ├── AbstractObject.js │ │ │ ├── AbstractObject2.js │ │ │ ├── AbstractObjectOptimizable.js │ │ │ ├── AbstractPropertyObjectKey.js │ │ │ ├── AbstractPropertyObjectKeyAssignment.js │ │ │ ├── AbstractPropertyRead.js │ │ │ ├── AbstractPropertyRead2.js │ │ │ ├── AbstractPropertyRead3.js │ │ │ ├── AbstractPropertyRead4.js │ │ │ ├── AbstractPropertyRead5.js │ │ │ ├── AbstractPropertyRead6.js │ │ │ ├── BinaryExpressions.js │ │ │ ├── BinaryExpressions2.js │ │ │ ├── BinaryExpressions3.js │ │ │ ├── CastStringOnUnknown.js │ │ │ ├── ConditionalHavocedGet.js │ │ │ ├── ConditionalHavocedGetPartial.js │ │ │ ├── ConditionalHavocedSet.js │ │ │ ├── ConditionalHavocedSetPartial.js │ │ │ ├── ConditionalObjectPartialKey.js │ │ │ ├── FatalErrorAfterJoins.js │ │ │ ├── FatalErrorAfterModifiedBinding.js │ │ │ ├── ForInBailout.js │ │ │ ├── GetterOnAbstractPrototype.js │ │ │ ├── GetterOnAbstractPrototype2.js │ │ │ ├── HavocBinding.js │ │ │ ├── HavocBindingImmutable.js │ │ │ ├── Invariants.js │ │ │ ├── Invariants2.js │ │ │ ├── Invariants3.js │ │ │ ├── Issue2418.js │ │ │ ├── NewExpression.js │ │ │ ├── ObjectAssign.js │ │ │ ├── ObjectAssign2.js │ │ │ ├── PutValueOnAbstract.js │ │ │ ├── PutValueOnAbstract2.js │ │ │ ├── SetterOnHavocedPrototype.js │ │ │ ├── StackOverflow.js │ │ │ ├── ToObject.js │ │ │ ├── UnaryExpressions.js │ │ │ ├── UnknownGetter.js │ │ │ ├── UnknownSetter.js │ │ │ ├── hasOwnProperty.js │ │ │ └── hasOwnProperty2.js │ │ ├── react/ │ │ │ └── jsx/ │ │ │ ├── default-props.js │ │ │ ├── element-simple.js │ │ │ ├── jsx-simple.js │ │ │ ├── jsx-spread.js │ │ │ └── key-children.js │ │ └── trivial/ │ │ ├── Console.js │ │ ├── Empty.js │ │ ├── FunctionExpressionApplication.js │ │ ├── GlobalVariable.js │ │ ├── GlobalVariable2.js │ │ ├── If.js │ │ ├── LocalVariable.js │ │ └── ObjectCreation.js │ ├── source-maps/ │ │ └── Stacktrace.js │ └── std-in/ │ └── StdIn.js ├── webpack.config.js └── website/ ├── .gitignore ├── CNAME ├── README.md ├── circle.yml ├── css/ │ ├── prism.css │ └── style.css ├── frequently-asked-questions.html ├── getting-started.html ├── index.html ├── js/ │ ├── prism.js │ ├── repl-worker.js │ ├── repl.js │ └── toggle_menu.js ├── package.json ├── repl.html └── scripts/ └── prettier/ └── index.js