diff --git a/test/language/expressions/arrow-function/dstr-ary-init-iter-close.js b/test/language/expressions/arrow-function/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-init-iter-close.js rename to test/language/expressions/arrow-function/dstr/ary-init-iter-close.js diff --git a/test/language/expressions/arrow-function/dstr-ary-init-iter-get-err.js b/test/language/expressions/arrow-function/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-init-iter-get-err.js rename to test/language/expressions/arrow-function/dstr/ary-init-iter-get-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-init-iter-no-close.js b/test/language/expressions/arrow-function/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-init-iter-no-close.js rename to test/language/expressions/arrow-function/dstr/ary-init-iter-no-close.js diff --git a/test/language/expressions/arrow-function/dstr-ary-name-iter-val.js b/test/language/expressions/arrow-function/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-name-iter-val.js rename to test/language/expressions/arrow-function/dstr/ary-name-iter-val.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elision-exhausted.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elision-exhausted.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elision-step-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elision-step-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-elision.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-elision.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-elision.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-empty.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-empty.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-empty.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-elem.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-elision.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-empty.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-rest.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-elision.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-elision.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-ary.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-ary.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-obj.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-init-obj.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-obj-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-obj-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/arrow-function/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/arrow-function/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/arrow-function/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-close.js b/test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-close.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-get-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-get-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-no-close.js b/test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-init-iter-no-close.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-name-iter-val.js b/test/language/expressions/arrow-function/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-name-iter-val.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-elision.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-empty.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-empty.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/arrow-function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-init-null.js b/test/language/expressions/arrow-function/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-init-null.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-init-null.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-init-undefined.js b/test/language/expressions/arrow-function/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-init-undefined.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-init-undefined.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-empty.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-empty.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-list-err.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-list-err.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/arrow-function/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/arrow-function/dstr-obj-init-null.js b/test/language/expressions/arrow-function/dstr/obj-init-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-init-null.js rename to test/language/expressions/arrow-function/dstr/obj-init-null.js diff --git a/test/language/expressions/arrow-function/dstr-obj-init-undefined.js b/test/language/expressions/arrow-function/dstr/obj-init-undefined.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-init-undefined.js rename to test/language/expressions/arrow-function/dstr/obj-init-undefined.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-empty.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-empty.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-empty.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-get-value-err.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-get-value-err.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-throws.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-id-trailing-comma.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-list-err.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-list-err.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-list-err.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-init.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-init.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-ary.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-eval-err.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-eval-err.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-init.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-id.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-id.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-init.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-init.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-prop-obj.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-rest-getter.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-rest-getter.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/arrow-function/dstr-obj-ptrn-rest-val-obj.js b/test/language/expressions/arrow-function/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/arrow-function/dstr-obj-ptrn-rest-val-obj.js rename to test/language/expressions/arrow-function/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-assignment.js b/test/language/expressions/assignment/dstr/array-elem-init-assignment.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-assignment.js rename to test/language/expressions/assignment/dstr/array-elem-init-assignment.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-evaluation.js b/test/language/expressions/assignment/dstr/array-elem-init-evaluation.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-evaluation.js rename to test/language/expressions/assignment/dstr/array-elem-init-evaluation.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-fn-name-arrow.js b/test/language/expressions/assignment/dstr/array-elem-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-fn-name-arrow.js rename to test/language/expressions/assignment/dstr/array-elem-init-fn-name-arrow.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-fn-name-class.js b/test/language/expressions/assignment/dstr/array-elem-init-fn-name-class.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-fn-name-class.js rename to test/language/expressions/assignment/dstr/array-elem-init-fn-name-class.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-fn-name-cover.js b/test/language/expressions/assignment/dstr/array-elem-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-fn-name-cover.js rename to test/language/expressions/assignment/dstr/array-elem-init-fn-name-cover.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-fn-name-fn.js b/test/language/expressions/assignment/dstr/array-elem-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-fn-name-fn.js rename to test/language/expressions/assignment/dstr/array-elem-init-fn-name-fn.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-fn-name-gen.js b/test/language/expressions/assignment/dstr/array-elem-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-fn-name-gen.js rename to test/language/expressions/assignment/dstr/array-elem-init-fn-name-gen.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-in.js b/test/language/expressions/assignment/dstr/array-elem-init-in.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-in.js rename to test/language/expressions/assignment/dstr/array-elem-init-in.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-let.js b/test/language/expressions/assignment/dstr/array-elem-init-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-let.js rename to test/language/expressions/assignment/dstr/array-elem-init-let.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-order.js b/test/language/expressions/assignment/dstr/array-elem-init-order.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-order.js rename to test/language/expressions/assignment/dstr/array-elem-init-order.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-simple-no-strict.js b/test/language/expressions/assignment/dstr/array-elem-init-simple-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-simple-no-strict.js rename to test/language/expressions/assignment/dstr/array-elem-init-simple-no-strict.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-yield-expr.js b/test/language/expressions/assignment/dstr/array-elem-init-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-yield-expr.js rename to test/language/expressions/assignment/dstr/array-elem-init-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-init-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-init-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-elem-init-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-init-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-elem-init-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-get-err.js b/test/language/expressions/assignment/dstr/array-elem-iter-get-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-get-err.js rename to test/language/expressions/assignment/dstr/array-elem-iter-get-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-err.js b/test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-null.js b/test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-iter-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-nrml-close.js b/test/language/expressions/assignment/dstr/array-elem-iter-nrml-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-nrml-close.js rename to test/language/expressions/assignment/dstr/array-elem-iter-nrml-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close-err.js b/test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close-null.js b/test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close.js b/test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-rtrn-close.js rename to test/language/expressions/assignment/dstr/array-elem-iter-rtrn-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-thrw-close-err.js b/test/language/expressions/assignment/dstr/array-elem-iter-thrw-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-thrw-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-iter-thrw-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-thrw-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-iter-thrw-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-thrw-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-iter-thrw-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-iter-thrw-close.js b/test/language/expressions/assignment/dstr/array-elem-iter-thrw-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-iter-thrw-close.js rename to test/language/expressions/assignment/dstr/array-elem-iter-thrw-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-invalid.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-null.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-null.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-undefined-hole.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-undefined-hole.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-undefined-hole.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-undefined-hole.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-undefined-own.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-undefined-own.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-undefined.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-undefined.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-undefined.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-yield-expr.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-yield-expr.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-elem-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-array.js b/test/language/expressions/assignment/dstr/array-elem-nested-array.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-array.js rename to test/language/expressions/assignment/dstr/array-elem-nested-array.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-invalid.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-null.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-null.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined-hole.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined-hole.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined-hole.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined-hole.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined-own.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined-own.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-undefined.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-undefined.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-expr.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-expr.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-nested-obj.js b/test/language/expressions/assignment/dstr/array-elem-nested-obj.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-nested-obj.js rename to test/language/expressions/assignment/dstr/array-elem-nested-obj.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-const.js b/test/language/expressions/assignment/dstr/array-elem-put-const.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-const.js rename to test/language/expressions/assignment/dstr/array-elem-put-const.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-let.js b/test/language/expressions/assignment/dstr/array-elem-put-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-let.js rename to test/language/expressions/assignment/dstr/array-elem-put-let.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-prop-ref-no-get.js b/test/language/expressions/assignment/dstr/array-elem-put-prop-ref-no-get.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-prop-ref-no-get.js rename to test/language/expressions/assignment/dstr/array-elem-put-prop-ref-no-get.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-prop-ref-user-err.js b/test/language/expressions/assignment/dstr/array-elem-put-prop-ref-user-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-prop-ref-user-err.js rename to test/language/expressions/assignment/dstr/array-elem-put-prop-ref-user-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-prop-ref.js b/test/language/expressions/assignment/dstr/array-elem-put-prop-ref.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-prop-ref.js rename to test/language/expressions/assignment/dstr/array-elem-put-prop-ref.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-unresolvable-no-strict.js b/test/language/expressions/assignment/dstr/array-elem-put-unresolvable-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-unresolvable-no-strict.js rename to test/language/expressions/assignment/dstr/array-elem-put-unresolvable-no-strict.js diff --git a/test/language/expressions/assignment/dstr-array-elem-put-unresolvable-strict.js b/test/language/expressions/assignment/dstr/array-elem-put-unresolvable-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-put-unresolvable-strict.js rename to test/language/expressions/assignment/dstr/array-elem-put-unresolvable-strict.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-identifier.js b/test/language/expressions/assignment/dstr/array-elem-target-identifier.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-identifier.js rename to test/language/expressions/assignment/dstr/array-elem-target-identifier.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-simple-no-strict.js b/test/language/expressions/assignment/dstr/array-elem-target-simple-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-simple-no-strict.js rename to test/language/expressions/assignment/dstr/array-elem-target-simple-no-strict.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-simple-strict.js b/test/language/expressions/assignment/dstr/array-elem-target-simple-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-simple-strict.js rename to test/language/expressions/assignment/dstr/array-elem-target-simple-strict.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-yield-expr.js b/test/language/expressions/assignment/dstr/array-elem-target-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-yield-expr.js rename to test/language/expressions/assignment/dstr/array-elem-target-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-yield-invalid.js b/test/language/expressions/assignment/dstr/array-elem-target-yield-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-yield-invalid.js rename to test/language/expressions/assignment/dstr/array-elem-target-yield-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-target-yield-valid.js b/test/language/expressions/assignment/dstr/array-elem-target-yield-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-target-yield-valid.js rename to test/language/expressions/assignment/dstr/array-elem-target-yield-valid.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-abpt.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-abpt.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-abpt.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-abpt.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-null.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-elision-iter-nrml-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-elision-iter-nrml-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-get-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-get-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-get-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-get-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-null.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-nrml-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-nrml-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-null.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-rtrn-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-rtrn-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-list-thrw-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-list-thrw-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-null.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close-null.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-rtrn-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-rtrn-close.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close-err.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close-err.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close-skip.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close-skip.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close.js b/test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elem-trlg-iter-rest-thrw-close.js rename to test/language/expressions/assignment/dstr/array-elem-trlg-iter-rest-thrw-close.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-abpt.js b/test/language/expressions/assignment/dstr/array-elision-iter-abpt.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-abpt.js rename to test/language/expressions/assignment/dstr/array-elision-iter-abpt.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-get-err.js b/test/language/expressions/assignment/dstr/array-elision-iter-get-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-get-err.js rename to test/language/expressions/assignment/dstr/array-elision-iter-get-err.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-err.js b/test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-err.js rename to test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-null.js b/test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-null.js rename to test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-elision-iter-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-elision-iter-nrml-close.js b/test/language/expressions/assignment/dstr/array-elision-iter-nrml-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-iter-nrml-close.js rename to test/language/expressions/assignment/dstr/array-elision-iter-nrml-close.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-array.js b/test/language/expressions/assignment/dstr/array-elision-val-array.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-array.js rename to test/language/expressions/assignment/dstr/array-elision-val-array.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-bool.js b/test/language/expressions/assignment/dstr/array-elision-val-bool.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-bool.js rename to test/language/expressions/assignment/dstr/array-elision-val-bool.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-null.js b/test/language/expressions/assignment/dstr/array-elision-val-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-null.js rename to test/language/expressions/assignment/dstr/array-elision-val-null.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-num.js b/test/language/expressions/assignment/dstr/array-elision-val-num.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-num.js rename to test/language/expressions/assignment/dstr/array-elision-val-num.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-string.js b/test/language/expressions/assignment/dstr/array-elision-val-string.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-string.js rename to test/language/expressions/assignment/dstr/array-elision-val-string.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-symbol.js b/test/language/expressions/assignment/dstr/array-elision-val-symbol.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-symbol.js rename to test/language/expressions/assignment/dstr/array-elision-val-symbol.js diff --git a/test/language/expressions/assignment/dstr-array-elision-val-undef.js b/test/language/expressions/assignment/dstr/array-elision-val-undef.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-elision-val-undef.js rename to test/language/expressions/assignment/dstr/array-elision-val-undef.js diff --git a/test/language/expressions/assignment/dstr-array-empty-iter-close-err.js b/test/language/expressions/assignment/dstr/array-empty-iter-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-iter-close-err.js rename to test/language/expressions/assignment/dstr/array-empty-iter-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-empty-iter-close-null.js b/test/language/expressions/assignment/dstr/array-empty-iter-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-iter-close-null.js rename to test/language/expressions/assignment/dstr/array-empty-iter-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-empty-iter-close.js b/test/language/expressions/assignment/dstr/array-empty-iter-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-iter-close.js rename to test/language/expressions/assignment/dstr/array-empty-iter-close.js diff --git a/test/language/expressions/assignment/dstr-array-empty-iter-get-err.js b/test/language/expressions/assignment/dstr/array-empty-iter-get-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-iter-get-err.js rename to test/language/expressions/assignment/dstr/array-empty-iter-get-err.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-array.js b/test/language/expressions/assignment/dstr/array-empty-val-array.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-array.js rename to test/language/expressions/assignment/dstr/array-empty-val-array.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-bool.js b/test/language/expressions/assignment/dstr/array-empty-val-bool.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-bool.js rename to test/language/expressions/assignment/dstr/array-empty-val-bool.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-null.js b/test/language/expressions/assignment/dstr/array-empty-val-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-null.js rename to test/language/expressions/assignment/dstr/array-empty-val-null.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-num.js b/test/language/expressions/assignment/dstr/array-empty-val-num.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-num.js rename to test/language/expressions/assignment/dstr/array-empty-val-num.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-string.js b/test/language/expressions/assignment/dstr/array-empty-val-string.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-string.js rename to test/language/expressions/assignment/dstr/array-empty-val-string.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-symbol.js b/test/language/expressions/assignment/dstr/array-empty-val-symbol.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-symbol.js rename to test/language/expressions/assignment/dstr/array-empty-val-symbol.js diff --git a/test/language/expressions/assignment/dstr-array-empty-val-undef.js b/test/language/expressions/assignment/dstr/array-empty-val-undef.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-empty-val-undef.js rename to test/language/expressions/assignment/dstr/array-empty-val-undef.js diff --git a/test/language/expressions/assignment/dstr-array-iteration.js b/test/language/expressions/assignment/dstr/array-iteration.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-iteration.js rename to test/language/expressions/assignment/dstr/array-iteration.js diff --git a/test/language/expressions/assignment/dstr-array-rest-after-element.js b/test/language/expressions/assignment/dstr/array-rest-after-element.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-after-element.js rename to test/language/expressions/assignment/dstr/array-rest-after-element.js diff --git a/test/language/expressions/assignment/dstr-array-rest-after-elision.js b/test/language/expressions/assignment/dstr/array-rest-after-elision.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-after-elision.js rename to test/language/expressions/assignment/dstr/array-rest-after-elision.js diff --git a/test/language/expressions/assignment/dstr-array-rest-before-element.js b/test/language/expressions/assignment/dstr/array-rest-before-element.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-before-element.js rename to test/language/expressions/assignment/dstr/array-rest-before-element.js diff --git a/test/language/expressions/assignment/dstr-array-rest-before-elision.js b/test/language/expressions/assignment/dstr/array-rest-before-elision.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-before-elision.js rename to test/language/expressions/assignment/dstr/array-rest-before-elision.js diff --git a/test/language/expressions/assignment/dstr-array-rest-before-rest.js b/test/language/expressions/assignment/dstr/array-rest-before-rest.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-before-rest.js rename to test/language/expressions/assignment/dstr/array-rest-before-rest.js diff --git a/test/language/expressions/assignment/dstr-array-rest-elision-invalid.js b/test/language/expressions/assignment/dstr/array-rest-elision-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-elision-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-elision-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-elision-iter-abpt.js b/test/language/expressions/assignment/dstr/array-rest-elision-iter-abpt.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-elision-iter-abpt.js rename to test/language/expressions/assignment/dstr/array-rest-elision-iter-abpt.js diff --git a/test/language/expressions/assignment/dstr-array-rest-elision.js b/test/language/expressions/assignment/dstr/array-rest-elision.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-elision.js rename to test/language/expressions/assignment/dstr/array-rest-elision.js diff --git a/test/language/expressions/assignment/dstr-array-rest-init.js b/test/language/expressions/assignment/dstr/array-rest-init.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-init.js rename to test/language/expressions/assignment/dstr/array-rest-init.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-get-err.js b/test/language/expressions/assignment/dstr/array-rest-iter-get-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-get-err.js rename to test/language/expressions/assignment/dstr/array-rest-iter-get-err.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-nrml-close-skip.js b/test/language/expressions/assignment/dstr/array-rest-iter-nrml-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-nrml-close-skip.js rename to test/language/expressions/assignment/dstr/array-rest-iter-nrml-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close-err.js b/test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close-err.js rename to test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close-null.js b/test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close-null.js rename to test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close-null.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close.js b/test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-rtrn-close.js rename to test/language/expressions/assignment/dstr/array-rest-iter-rtrn-close.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-thrw-close-err.js b/test/language/expressions/assignment/dstr/array-rest-iter-thrw-close-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-thrw-close-err.js rename to test/language/expressions/assignment/dstr/array-rest-iter-thrw-close-err.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-thrw-close-skip.js b/test/language/expressions/assignment/dstr/array-rest-iter-thrw-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-thrw-close-skip.js rename to test/language/expressions/assignment/dstr/array-rest-iter-thrw-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iter-thrw-close.js b/test/language/expressions/assignment/dstr/array-rest-iter-thrw-close.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iter-thrw-close.js rename to test/language/expressions/assignment/dstr/array-rest-iter-thrw-close.js diff --git a/test/language/expressions/assignment/dstr-array-rest-iteration.js b/test/language/expressions/assignment/dstr/array-rest-iteration.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-iteration.js rename to test/language/expressions/assignment/dstr/array-rest-iteration.js diff --git a/test/language/expressions/assignment/dstr-array-rest-lref-err.js b/test/language/expressions/assignment/dstr/array-rest-lref-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-lref-err.js rename to test/language/expressions/assignment/dstr/array-rest-lref-err.js diff --git a/test/language/expressions/assignment/dstr-array-rest-lref.js b/test/language/expressions/assignment/dstr/array-rest-lref.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-lref.js rename to test/language/expressions/assignment/dstr/array-rest-lref.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-invalid.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-iter-thrw-close-skip.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-iter-thrw-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-iter-thrw-close-skip.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-iter-thrw-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-null.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-null.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-null.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-undefined-hole.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-undefined-hole.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-undefined-hole.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-undefined-hole.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-undefined-own.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-undefined-own.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-undefined.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-undefined.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-undefined.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-yield-expr.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-yield-expr.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-rest-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-array.js b/test/language/expressions/assignment/dstr/array-rest-nested-array.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-array.js rename to test/language/expressions/assignment/dstr/array-rest-nested-array.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-invalid.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-null.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-null.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-null.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined-hole.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined-hole.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined-hole.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined-hole.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined-own.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined-own.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-undefined.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-undefined.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-expr.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-expr.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-nested-obj.js b/test/language/expressions/assignment/dstr/array-rest-nested-obj.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-nested-obj.js rename to test/language/expressions/assignment/dstr/array-rest-nested-obj.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-const.js b/test/language/expressions/assignment/dstr/array-rest-put-const.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-const.js rename to test/language/expressions/assignment/dstr/array-rest-put-const.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-let.js b/test/language/expressions/assignment/dstr/array-rest-put-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-let.js rename to test/language/expressions/assignment/dstr/array-rest-put-let.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-prop-ref-no-get.js b/test/language/expressions/assignment/dstr/array-rest-put-prop-ref-no-get.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-prop-ref-no-get.js rename to test/language/expressions/assignment/dstr/array-rest-put-prop-ref-no-get.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-prop-ref-user-err-iter-close-skip.js b/test/language/expressions/assignment/dstr/array-rest-put-prop-ref-user-err-iter-close-skip.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-prop-ref-user-err-iter-close-skip.js rename to test/language/expressions/assignment/dstr/array-rest-put-prop-ref-user-err-iter-close-skip.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-prop-ref-user-err.js b/test/language/expressions/assignment/dstr/array-rest-put-prop-ref-user-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-prop-ref-user-err.js rename to test/language/expressions/assignment/dstr/array-rest-put-prop-ref-user-err.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-prop-ref.js b/test/language/expressions/assignment/dstr/array-rest-put-prop-ref.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-prop-ref.js rename to test/language/expressions/assignment/dstr/array-rest-put-prop-ref.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-unresolvable-no-strict.js b/test/language/expressions/assignment/dstr/array-rest-put-unresolvable-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-unresolvable-no-strict.js rename to test/language/expressions/assignment/dstr/array-rest-put-unresolvable-no-strict.js diff --git a/test/language/expressions/assignment/dstr-array-rest-put-unresolvable-strict.js b/test/language/expressions/assignment/dstr/array-rest-put-unresolvable-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-put-unresolvable-strict.js rename to test/language/expressions/assignment/dstr/array-rest-put-unresolvable-strict.js diff --git a/test/language/expressions/assignment/dstr-array-rest-yield-expr.js b/test/language/expressions/assignment/dstr/array-rest-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-yield-expr.js rename to test/language/expressions/assignment/dstr/array-rest-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-array-rest-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/array-rest-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/array-rest-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-array-rest-yield-ident-valid.js b/test/language/expressions/assignment/dstr/array-rest-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-array-rest-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/array-rest-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-bool.js b/test/language/expressions/assignment/dstr/obj-empty-bool.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-bool.js rename to test/language/expressions/assignment/dstr/obj-empty-bool.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-null.js b/test/language/expressions/assignment/dstr/obj-empty-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-null.js rename to test/language/expressions/assignment/dstr/obj-empty-null.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-num.js b/test/language/expressions/assignment/dstr/obj-empty-num.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-num.js rename to test/language/expressions/assignment/dstr/obj-empty-num.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-obj.js b/test/language/expressions/assignment/dstr/obj-empty-obj.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-obj.js rename to test/language/expressions/assignment/dstr/obj-empty-obj.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-string.js b/test/language/expressions/assignment/dstr/obj-empty-string.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-string.js rename to test/language/expressions/assignment/dstr/obj-empty-string.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-symbol.js b/test/language/expressions/assignment/dstr/obj-empty-symbol.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-symbol.js rename to test/language/expressions/assignment/dstr/obj-empty-symbol.js diff --git a/test/language/expressions/assignment/dstr-obj-empty-undef.js b/test/language/expressions/assignment/dstr/obj-empty-undef.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-empty-undef.js rename to test/language/expressions/assignment/dstr/obj-empty-undef.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-resolution-first.js b/test/language/expressions/assignment/dstr/obj-id-identifier-resolution-first.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-resolution-first.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-resolution-first.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-resolution-last.js b/test/language/expressions/assignment/dstr/obj-id-identifier-resolution-last.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-resolution-last.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-resolution-last.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-resolution-lone.js b/test/language/expressions/assignment/dstr/obj-id-identifier-resolution-lone.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-resolution-lone.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-resolution-lone.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-resolution-middle.js b/test/language/expressions/assignment/dstr/obj-id-identifier-resolution-middle.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-resolution-middle.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-resolution-middle.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-resolution-trlng.js b/test/language/expressions/assignment/dstr/obj-id-identifier-resolution-trlng.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-resolution-trlng.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-resolution-trlng.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-yield-expr.js b/test/language/expressions/assignment/dstr/obj-id-identifier-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-id-identifier-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-id-identifier-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-id-identifier-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-identifier-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-id-identifier-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-assignment-missing.js b/test/language/expressions/assignment/dstr/obj-id-init-assignment-missing.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-assignment-missing.js rename to test/language/expressions/assignment/dstr/obj-id-init-assignment-missing.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-assignment-null.js b/test/language/expressions/assignment/dstr/obj-id-init-assignment-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-assignment-null.js rename to test/language/expressions/assignment/dstr/obj-id-init-assignment-null.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-assignment-truthy.js b/test/language/expressions/assignment/dstr/obj-id-init-assignment-truthy.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-assignment-truthy.js rename to test/language/expressions/assignment/dstr/obj-id-init-assignment-truthy.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-assignment-undef.js b/test/language/expressions/assignment/dstr/obj-id-init-assignment-undef.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-assignment-undef.js rename to test/language/expressions/assignment/dstr/obj-id-init-assignment-undef.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-evaluation.js b/test/language/expressions/assignment/dstr/obj-id-init-evaluation.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-evaluation.js rename to test/language/expressions/assignment/dstr/obj-id-init-evaluation.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-fn-name-arrow.js b/test/language/expressions/assignment/dstr/obj-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-fn-name-arrow.js rename to test/language/expressions/assignment/dstr/obj-id-init-fn-name-arrow.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-fn-name-class.js b/test/language/expressions/assignment/dstr/obj-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-fn-name-class.js rename to test/language/expressions/assignment/dstr/obj-id-init-fn-name-class.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-fn-name-cover.js b/test/language/expressions/assignment/dstr/obj-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-fn-name-cover.js rename to test/language/expressions/assignment/dstr/obj-id-init-fn-name-cover.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-fn-name-fn.js b/test/language/expressions/assignment/dstr/obj-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-fn-name-fn.js rename to test/language/expressions/assignment/dstr/obj-id-init-fn-name-fn.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-fn-name-gen.js b/test/language/expressions/assignment/dstr/obj-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-fn-name-gen.js rename to test/language/expressions/assignment/dstr/obj-id-init-fn-name-gen.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-in.js b/test/language/expressions/assignment/dstr/obj-id-init-in.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-in.js rename to test/language/expressions/assignment/dstr/obj-id-init-in.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-let.js b/test/language/expressions/assignment/dstr/obj-id-init-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-let.js rename to test/language/expressions/assignment/dstr/obj-id-init-let.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-order.js b/test/language/expressions/assignment/dstr/obj-id-init-order.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-order.js rename to test/language/expressions/assignment/dstr/obj-id-init-order.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-simple-no-strict.js b/test/language/expressions/assignment/dstr/obj-id-init-simple-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-simple-no-strict.js rename to test/language/expressions/assignment/dstr/obj-id-init-simple-no-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-simple-strict.js b/test/language/expressions/assignment/dstr/obj-id-init-simple-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-simple-strict.js rename to test/language/expressions/assignment/dstr/obj-id-init-simple-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-yield-expr.js b/test/language/expressions/assignment/dstr/obj-id-init-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-id-init-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-id-init-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-id-init-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-id-init-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-id-init-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-init-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-id-init-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-id-put-const.js b/test/language/expressions/assignment/dstr/obj-id-put-const.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-put-const.js rename to test/language/expressions/assignment/dstr/obj-id-put-const.js diff --git a/test/language/expressions/assignment/dstr-obj-id-put-let.js b/test/language/expressions/assignment/dstr/obj-id-put-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-put-let.js rename to test/language/expressions/assignment/dstr/obj-id-put-let.js diff --git a/test/language/expressions/assignment/dstr-obj-id-put-unresolvable-no-strict.js b/test/language/expressions/assignment/dstr/obj-id-put-unresolvable-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-put-unresolvable-no-strict.js rename to test/language/expressions/assignment/dstr/obj-id-put-unresolvable-no-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-id-put-unresolvable-strict.js b/test/language/expressions/assignment/dstr/obj-id-put-unresolvable-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-put-unresolvable-strict.js rename to test/language/expressions/assignment/dstr/obj-id-put-unresolvable-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-id-simple-no-strict.js b/test/language/expressions/assignment/dstr/obj-id-simple-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-simple-no-strict.js rename to test/language/expressions/assignment/dstr/obj-id-simple-no-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-id-simple-strict.js b/test/language/expressions/assignment/dstr/obj-id-simple-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-id-simple-strict.js rename to test/language/expressions/assignment/dstr/obj-id-simple-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-missing.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-missing.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-missing.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-missing.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-null.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-null.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-null.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-truthy.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-truthy.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-truthy.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-truthy.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-undef.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-undef.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-assignment-undef.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-assignment-undef.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-evaluation.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-evaluation.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-evaluation.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-evaluation.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-arrow.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-arrow.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-arrow.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-class.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-class.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-class.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-class.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-cover.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-cover.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-cover.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-fn.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-fn.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-fn.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-gen.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-fn-name-gen.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-fn-name-gen.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-in.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-in.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-in.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-in.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-let.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-let.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-let.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-expr.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-init-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-init-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-expr.js b/test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-elem-target-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-prop-elem-target-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-first.js b/test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-first.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-first.js rename to test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-first.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-last.js b/test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-last.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-last.js rename to test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-last.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-lone.js b/test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-lone.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-lone.js rename to test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-lone.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-middle.js b/test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-middle.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-middle.js rename to test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-middle.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-trlng.js b/test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-trlng.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-identifier-resolution-trlng.js rename to test/language/expressions/assignment/dstr/obj-prop-identifier-resolution-trlng.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-name-evaluation-error.js b/test/language/expressions/assignment/dstr/obj-prop-name-evaluation-error.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-name-evaluation-error.js rename to test/language/expressions/assignment/dstr/obj-prop-name-evaluation-error.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-name-evaluation.js b/test/language/expressions/assignment/dstr/obj-prop-name-evaluation.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-name-evaluation.js rename to test/language/expressions/assignment/dstr/obj-prop-name-evaluation.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-null.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-null.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-null.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-undefined-own.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-undefined-own.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-undefined.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-undefined.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-undefined.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-expr.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-array.js b/test/language/expressions/assignment/dstr/obj-prop-nested-array.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-array.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-array.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-null.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-null.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-null.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-undefined-own.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-undefined-own.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-undefined-own.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-undefined-own.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-undefined.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-undefined.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-undefined.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-expr.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-expr.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-expr.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-expr.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-ident-invalid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-ident-invalid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-ident-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-ident-valid.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj-yield-ident-valid.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj-yield-ident-valid.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-nested-obj.js b/test/language/expressions/assignment/dstr/obj-prop-nested-obj.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-nested-obj.js rename to test/language/expressions/assignment/dstr/obj-prop-nested-obj.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-const.js b/test/language/expressions/assignment/dstr/obj-prop-put-const.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-const.js rename to test/language/expressions/assignment/dstr/obj-prop-put-const.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-let.js b/test/language/expressions/assignment/dstr/obj-prop-put-let.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-let.js rename to test/language/expressions/assignment/dstr/obj-prop-put-let.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-order.js b/test/language/expressions/assignment/dstr/obj-prop-put-order.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-order.js rename to test/language/expressions/assignment/dstr/obj-prop-put-order.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-prop-ref-no-get.js b/test/language/expressions/assignment/dstr/obj-prop-put-prop-ref-no-get.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-prop-ref-no-get.js rename to test/language/expressions/assignment/dstr/obj-prop-put-prop-ref-no-get.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-prop-ref-user-err.js b/test/language/expressions/assignment/dstr/obj-prop-put-prop-ref-user-err.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-prop-ref-user-err.js rename to test/language/expressions/assignment/dstr/obj-prop-put-prop-ref-user-err.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-prop-ref.js b/test/language/expressions/assignment/dstr/obj-prop-put-prop-ref.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-prop-ref.js rename to test/language/expressions/assignment/dstr/obj-prop-put-prop-ref.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-unresolvable-no-strict.js b/test/language/expressions/assignment/dstr/obj-prop-put-unresolvable-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-unresolvable-no-strict.js rename to test/language/expressions/assignment/dstr/obj-prop-put-unresolvable-no-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-prop-put-unresolvable-strict.js b/test/language/expressions/assignment/dstr/obj-prop-put-unresolvable-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-prop-put-unresolvable-strict.js rename to test/language/expressions/assignment/dstr/obj-prop-put-unresolvable-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-computed-property-no-strict.js b/test/language/expressions/assignment/dstr/obj-rest-computed-property-no-strict.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-computed-property-no-strict.js rename to test/language/expressions/assignment/dstr/obj-rest-computed-property-no-strict.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-computed-property.js b/test/language/expressions/assignment/dstr/obj-rest-computed-property.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-computed-property.js rename to test/language/expressions/assignment/dstr/obj-rest-computed-property.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-descriptors.js b/test/language/expressions/assignment/dstr/obj-rest-descriptors.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-descriptors.js rename to test/language/expressions/assignment/dstr/obj-rest-descriptors.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-empty-obj.js b/test/language/expressions/assignment/dstr/obj-rest-empty-obj.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-empty-obj.js rename to test/language/expressions/assignment/dstr/obj-rest-empty-obj.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-getter-abrupt-get-error.js b/test/language/expressions/assignment/dstr/obj-rest-getter-abrupt-get-error.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-getter-abrupt-get-error.js rename to test/language/expressions/assignment/dstr/obj-rest-getter-abrupt-get-error.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-getter.js b/test/language/expressions/assignment/dstr/obj-rest-getter.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-getter.js rename to test/language/expressions/assignment/dstr/obj-rest-getter.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-not-last-element-invalid.js b/test/language/expressions/assignment/dstr/obj-rest-not-last-element-invalid.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-not-last-element-invalid.js rename to test/language/expressions/assignment/dstr/obj-rest-not-last-element-invalid.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-number.js b/test/language/expressions/assignment/dstr/obj-rest-number.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-number.js rename to test/language/expressions/assignment/dstr/obj-rest-number.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-order.js b/test/language/expressions/assignment/dstr/obj-rest-order.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-order.js rename to test/language/expressions/assignment/dstr/obj-rest-order.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-put-const.js b/test/language/expressions/assignment/dstr/obj-rest-put-const.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-put-const.js rename to test/language/expressions/assignment/dstr/obj-rest-put-const.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-same-name.js b/test/language/expressions/assignment/dstr/obj-rest-same-name.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-same-name.js rename to test/language/expressions/assignment/dstr/obj-rest-same-name.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-skip-non-enumerable.js b/test/language/expressions/assignment/dstr/obj-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-skip-non-enumerable.js rename to test/language/expressions/assignment/dstr/obj-rest-skip-non-enumerable.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-str-val.js b/test/language/expressions/assignment/dstr/obj-rest-str-val.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-str-val.js rename to test/language/expressions/assignment/dstr/obj-rest-str-val.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-symbol-val.js b/test/language/expressions/assignment/dstr/obj-rest-symbol-val.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-symbol-val.js rename to test/language/expressions/assignment/dstr/obj-rest-symbol-val.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-to-property-with-setter.js b/test/language/expressions/assignment/dstr/obj-rest-to-property-with-setter.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-to-property-with-setter.js rename to test/language/expressions/assignment/dstr/obj-rest-to-property-with-setter.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-to-property.js b/test/language/expressions/assignment/dstr/obj-rest-to-property.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-to-property.js rename to test/language/expressions/assignment/dstr/obj-rest-to-property.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-val-null.js b/test/language/expressions/assignment/dstr/obj-rest-val-null.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-val-null.js rename to test/language/expressions/assignment/dstr/obj-rest-val-null.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-val-undefined.js b/test/language/expressions/assignment/dstr/obj-rest-val-undefined.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-val-undefined.js rename to test/language/expressions/assignment/dstr/obj-rest-val-undefined.js diff --git a/test/language/expressions/assignment/dstr-obj-rest-valid-object.js b/test/language/expressions/assignment/dstr/obj-rest-valid-object.js similarity index 100% rename from test/language/expressions/assignment/dstr-obj-rest-valid-object.js rename to test/language/expressions/assignment/dstr/obj-rest-valid-object.js diff --git a/test/language/expressions/async-generator/dstr-ary-init-iter-close.js b/test/language/expressions/async-generator/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-init-iter-close.js rename to test/language/expressions/async-generator/dstr/ary-init-iter-close.js diff --git a/test/language/expressions/async-generator/dstr-ary-init-iter-get-err.js b/test/language/expressions/async-generator/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-init-iter-get-err.js rename to test/language/expressions/async-generator/dstr/ary-init-iter-get-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-init-iter-no-close.js b/test/language/expressions/async-generator/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-init-iter-no-close.js rename to test/language/expressions/async-generator/dstr/ary-init-iter-no-close.js diff --git a/test/language/expressions/async-generator/dstr-ary-name-iter-val.js b/test/language/expressions/async-generator/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-name-iter-val.js rename to test/language/expressions/async-generator/dstr/ary-name-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elision-exhausted.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elision-exhausted.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elision-step-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elision-step-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-elision.js b/test/language/expressions/async-generator/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-elision.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-elision.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-empty.js b/test/language/expressions/async-generator/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-elem.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-elision.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-empty.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-rest.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-elision.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-elision.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-ary.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-ary.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-obj.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-init-obj.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-obj-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-obj-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/async-generator/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-init-iter-close.js b/test/language/expressions/async-generator/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-init-iter-close.js rename to test/language/expressions/async-generator/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-init-iter-get-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-init-iter-get-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-init-iter-no-close.js b/test/language/expressions/async-generator/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-init-iter-no-close.js rename to test/language/expressions/async-generator/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-name-iter-val.js b/test/language/expressions/async-generator/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-name-iter-val.js rename to test/language/expressions/async-generator/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-elision.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-empty.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-init-null.js b/test/language/expressions/async-generator/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-init-null.js rename to test/language/expressions/async-generator/dstr/dflt-obj-init-null.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-init-undefined.js b/test/language/expressions/async-generator/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-init-undefined.js rename to test/language/expressions/async-generator/dstr/dflt-obj-init-undefined.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-empty.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-list-err.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-list-err.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/async-generator/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-init-iter-close.js b/test/language/expressions/async-generator/dstr/named-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-init-iter-close.js rename to test/language/expressions/async-generator/dstr/named-ary-init-iter-close.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-init-iter-get-err.js b/test/language/expressions/async-generator/dstr/named-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-init-iter-get-err.js rename to test/language/expressions/async-generator/dstr/named-ary-init-iter-get-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-init-iter-no-close.js b/test/language/expressions/async-generator/dstr/named-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-init-iter-no-close.js rename to test/language/expressions/async-generator/dstr/named-ary-init-iter-no-close.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-name-iter-val.js b/test/language/expressions/async-generator/dstr/named-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-name-iter-val.js rename to test/language/expressions/async-generator/dstr/named-ary-name-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elision-exhausted.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elision-exhausted.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elision-step-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elision-step-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-elision.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-elision.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-empty.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-elem.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-elision.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-empty.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-rest.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-elision.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-elision.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-ary.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-ary.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-obj.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-init-obj.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-obj-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-obj-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/named-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-close.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-close.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-get-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-get-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-no-close.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-init-iter-no-close.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-name-iter-val.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-name-iter-val.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-elision.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-empty.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-init-null.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-init-null.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-init-null.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-init-undefined.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-init-undefined.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-init-undefined.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-empty.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-list-err.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-list-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/async-generator/dstr/named-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-init-null.js b/test/language/expressions/async-generator/dstr/named-obj-init-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-init-null.js rename to test/language/expressions/async-generator/dstr/named-obj-init-null.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-init-undefined.js b/test/language/expressions/async-generator/dstr/named-obj-init-undefined.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-init-undefined.js rename to test/language/expressions/async-generator/dstr/named-obj-init-undefined.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-empty.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-get-value-err.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-list-err.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-list-err.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-list-err.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-init.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-init.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-ary.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-eval-err.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-eval-err.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-init.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-id.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-init.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-init.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-prop-obj.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-getter.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-getter.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-val-obj.js b/test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-named-obj-ptrn-rest-val-obj.js rename to test/language/expressions/async-generator/dstr/named-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/async-generator/dstr-obj-init-null.js b/test/language/expressions/async-generator/dstr/obj-init-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-init-null.js rename to test/language/expressions/async-generator/dstr/obj-init-null.js diff --git a/test/language/expressions/async-generator/dstr-obj-init-undefined.js b/test/language/expressions/async-generator/dstr/obj-init-undefined.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-init-undefined.js rename to test/language/expressions/async-generator/dstr/obj-init-undefined.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-empty.js b/test/language/expressions/async-generator/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-empty.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-empty.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-get-value-err.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-skipped.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-throws.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-throws.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-list-err.js b/test/language/expressions/async-generator/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-list-err.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-list-err.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-init.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-init.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-ary.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-eval-err.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-eval-err.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-init.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-id.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-id.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-id.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-init.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-init.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj.js b/test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-prop-obj.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-rest-getter.js b/test/language/expressions/async-generator/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-rest-getter.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/async-generator/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/async-generator/dstr-obj-ptrn-rest-val-obj.js b/test/language/expressions/async-generator/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/async-generator/dstr-obj-ptrn-rest-val-obj.js rename to test/language/expressions/async-generator/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-init-null.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-init-null.js b/test/language/expressions/class/dstr/async-gen-meth-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-init-null.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-init-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-init-undefined.js b/test/language/expressions/class/dstr/async-gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-init-undefined.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-init-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-init-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-init-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-init-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-init-undefined.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-init-undefined.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-init-null.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-init-null.js b/test/language/expressions/class/dstr/gen-meth-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-init-null.js rename to test/language/expressions/class/dstr/gen-meth-obj-init-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-init-undefined.js b/test/language/expressions/class/dstr/gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-init-undefined.js rename to test/language/expressions/class/dstr/gen-meth-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-init-null.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-init-null.js b/test/language/expressions/class/dstr/gen-meth-static-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-init-null.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-init-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-init-undefined.js b/test/language/expressions/class/dstr/gen-meth-static-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-init-undefined.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-meth-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-init-null.js b/test/language/expressions/class/dstr/meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/meth-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-meth-obj-init-null.js b/test/language/expressions/class/dstr/meth-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-init-null.js rename to test/language/expressions/class/dstr/meth-obj-init-null.js diff --git a/test/language/expressions/class/dstr-meth-obj-init-undefined.js b/test/language/expressions/class/dstr/meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-init-undefined.js rename to test/language/expressions/class/dstr/meth-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/meth-static-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-get-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-init-null.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-init-null.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-init-null.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-init-undefined.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-init-undefined.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-init-null.js b/test/language/expressions/class/dstr/meth-static-obj-init-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-init-null.js rename to test/language/expressions/class/dstr/meth-static-obj-init-null.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-init-undefined.js b/test/language/expressions/class/dstr/meth-static-obj-init-undefined.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-init-undefined.js rename to test/language/expressions/class/dstr/meth-static-obj-init-undefined.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-get-value-err.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-list-err.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-list-err.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-list-err.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-eval-err.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-meth-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-meth-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-meth-static-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-meth-static-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-meth-static-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-init-iter-close.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-init-iter-close.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-init-iter-no-close.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-name-iter-val.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-name-iter-val.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elision.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-elision.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-empty.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-empty.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-empty.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary-init.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-ary.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-init.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-init.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-id.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-obj-init.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-obj.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-prop-obj.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-getter.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-getter.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-val-obj.js b/test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/class/dstr-private-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/expressions/class/dstr/private-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-computed-names.js b/test/language/expressions/class/elements/after-same-line-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-computed-names.js rename to test/language/expressions/class/elements/after-same-line-gen-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-literal-names.js b/test/language/expressions/class/elements/after-same-line-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-literal-names.js rename to test/language/expressions/class/elements/after-same-line-gen-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-private-names.js b/test/language/expressions/class/elements/after-same-line-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-private-names.js rename to test/language/expressions/class/elements/after-same-line-gen-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-gen-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-gen-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-method-computed-names.js b/test/language/expressions/class/elements/after-same-line-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-computed-names.js rename to test/language/expressions/class/elements/after-same-line-method-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-method-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-method-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-method-literal-names.js b/test/language/expressions/class/elements/after-same-line-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-literal-names.js rename to test/language/expressions/class/elements/after-same-line-method-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-method-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-method-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-method-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-method-private-names.js b/test/language/expressions/class/elements/after-same-line-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-private-names.js rename to test/language/expressions/class/elements/after-same-line-method-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-method-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-method-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-method-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-method-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-computed-names.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-computed-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-private-names.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-private-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-gen-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-async-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-gen-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-computed-names.js b/test/language/expressions/class/elements/after-same-line-static-async-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-computed-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-static-async-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-static-async-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-async-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-static-async-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-private-names.js b/test/language/expressions/class/elements/after-same-line-static-async-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-private-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-static-async-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-static-async-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-static-async-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-static-async-method-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-async-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-async-method-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-async-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-computed-names.js b/test/language/expressions/class/elements/after-same-line-static-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-computed-names.js rename to test/language/expressions/class/elements/after-same-line-static-gen-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-static-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-static-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-static-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-static-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-gen-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-static-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-static-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-static-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-static-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-static-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-static-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-private-names.js b/test/language/expressions/class/elements/after-same-line-static-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-private-names.js rename to test/language/expressions/class/elements/after-same-line-static-gen-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-static-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-static-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-static-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-static-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-static-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-static-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-static-gen-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-gen-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-computed-names.js b/test/language/expressions/class/elements/after-same-line-static-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-computed-names.js rename to test/language/expressions/class/elements/after-same-line-static-method-computed-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-computed-symbol-names.js b/test/language/expressions/class/elements/after-same-line-static-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-computed-symbol-names.js rename to test/language/expressions/class/elements/after-same-line-static-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-literal-names-asi.js b/test/language/expressions/class/elements/after-same-line-static-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-literal-names-asi.js rename to test/language/expressions/class/elements/after-same-line-static-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-method-literal-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-private-field-usage.js b/test/language/expressions/class/elements/after-same-line-static-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-private-field-usage.js rename to test/language/expressions/class/elements/after-same-line-static-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-private-method-getter-usage.js b/test/language/expressions/class/elements/after-same-line-static-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/after-same-line-static-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-private-method-usage.js b/test/language/expressions/class/elements/after-same-line-static-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-private-method-usage.js rename to test/language/expressions/class/elements/after-same-line-static-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-private-names.js b/test/language/expressions/class/elements/after-same-line-static-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-private-names.js rename to test/language/expressions/class/elements/after-same-line-static-method-private-names.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-field-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-field-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-getter.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-getter.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-method-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-method.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-method.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-private-setter.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-private-setter.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/after-same-line-static-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-static-private-fields.js b/test/language/expressions/class/elements/after-same-line-static-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-static-private-fields.js rename to test/language/expressions/class/elements/after-same-line-static-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/after-same-line-static-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/after-same-line-static-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-static-private-methods.js b/test/language/expressions/class/elements/after-same-line-static-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-static-private-methods.js rename to test/language/expressions/class/elements/after-same-line-static-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-after-same-line-static-method-string-literal-names.js b/test/language/expressions/class/elements/after-same-line-static-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-after-same-line-static-method-string-literal-names.js rename to test/language/expressions/class/elements/after-same-line-static-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-arrow-fnc-init-err-contains-arguments.js b/test/language/expressions/class/elements/arrow-fnc-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-arrow-fnc-init-err-contains-arguments.js rename to test/language/expressions/class/elements/arrow-fnc-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-arrow-fnc-init-err-contains-super.js b/test/language/expressions/class/elements/arrow-fnc-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-arrow-fnc-init-err-contains-super.js rename to test/language/expressions/class/elements/arrow-fnc-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-comp-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/comp-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-comp-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/comp-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-comp-name-init-err-contains-super.js b/test/language/expressions/class/elements/comp-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-comp-name-init-err-contains-super.js rename to test/language/expressions/class/elements/comp-name-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-computed-name-toprimitive-symbol.js b/test/language/expressions/class/elements/computed-name-toprimitive-symbol.js similarity index 100% rename from test/language/expressions/class/fields-computed-name-toprimitive-symbol.js rename to test/language/expressions/class/elements/computed-name-toprimitive-symbol.js diff --git a/test/language/expressions/class/fields-computed-name-toprimitive.js b/test/language/expressions/class/elements/computed-name-toprimitive.js similarity index 100% rename from test/language/expressions/class/fields-computed-name-toprimitive.js rename to test/language/expressions/class/elements/computed-name-toprimitive.js diff --git a/test/language/expressions/class/fields-ctor-called-after-fields-init.js b/test/language/expressions/class/elements/ctor-called-after-fields-init.js similarity index 100% rename from test/language/expressions/class/fields-ctor-called-after-fields-init.js rename to test/language/expressions/class/elements/ctor-called-after-fields-init.js diff --git a/test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall-1.js b/test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall-1.js rename to test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall-1.js diff --git a/test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall-2.js b/test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall-2.js rename to test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall-2.js diff --git a/test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall.js b/test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-supercall.js rename to test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-supercall.js diff --git a/test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-superproperty-1.js b/test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-superproperty-1.js rename to test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-superproperty-1.js diff --git a/test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-superproperty-2.js b/test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-direct-eval-err-contains-superproperty-2.js rename to test/language/expressions/class/elements/derived-cls-direct-eval-err-contains-superproperty-2.js diff --git a/test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall-1.js b/test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall-1.js rename to test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall-1.js diff --git a/test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall-2.js b/test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall-2.js rename to test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall-2.js diff --git a/test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall.js b/test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-supercall.js rename to test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-supercall.js diff --git a/test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-superproperty-1.js b/test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-superproperty-1.js rename to test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-superproperty-1.js diff --git a/test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-superproperty-2.js b/test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/expressions/class/fields-derived-cls-indirect-eval-err-contains-superproperty-2.js rename to test/language/expressions/class/elements/derived-cls-indirect-eval-err-contains-superproperty-2.js diff --git a/test/language/expressions/class/fields-direct-eval-err-contains-arguments.js b/test/language/expressions/class/elements/direct-eval-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-direct-eval-err-contains-arguments.js rename to test/language/expressions/class/elements/direct-eval-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-direct-eval-err-contains-newtarget.js b/test/language/expressions/class/elements/direct-eval-err-contains-newtarget.js similarity index 100% rename from test/language/expressions/class/fields-direct-eval-err-contains-newtarget.js rename to test/language/expressions/class/elements/direct-eval-err-contains-newtarget.js diff --git a/test/language/expressions/class/fields-equality-init-err-contains-arguments.js b/test/language/expressions/class/elements/equality-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-equality-init-err-contains-arguments.js rename to test/language/expressions/class/elements/equality-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-equality-init-err-contains-super.js b/test/language/expressions/class/elements/equality-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-equality-init-err-contains-super.js rename to test/language/expressions/class/elements/equality-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-referenceerror.js b/test/language/expressions/class/elements/evaluation-error/computed-name-referenceerror.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-referenceerror.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-referenceerror.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-err.js b/test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-err.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-err.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-err.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-returns-noncallable.js b/test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-returns-noncallable.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-returns-noncallable.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-returns-noncallable.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-returns-nonobject.js b/test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-returns-nonobject.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-toprimitive-returns-nonobject.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-toprimitive-returns-nonobject.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-tostring-err.js b/test/language/expressions/class/elements/evaluation-error/computed-name-tostring-err.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-tostring-err.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-tostring-err.js diff --git a/test/language/expressions/class/fields-evaluation-error/computed-name-valueof-err.js b/test/language/expressions/class/elements/evaluation-error/computed-name-valueof-err.js similarity index 100% rename from test/language/expressions/class/fields-evaluation-error/computed-name-valueof-err.js rename to test/language/expressions/class/elements/evaluation-error/computed-name-valueof-err.js diff --git a/test/language/expressions/class/fields-indirect-eval-err-contains-arguments.js b/test/language/expressions/class/elements/indirect-eval-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-indirect-eval-err-contains-arguments.js rename to test/language/expressions/class/elements/indirect-eval-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-indirect-eval-err-contains-newtarget.js b/test/language/expressions/class/elements/indirect-eval-err-contains-newtarget.js similarity index 100% rename from test/language/expressions/class/fields-indirect-eval-err-contains-newtarget.js rename to test/language/expressions/class/elements/indirect-eval-err-contains-newtarget.js diff --git a/test/language/expressions/class/fields-init-err-evaluation.js b/test/language/expressions/class/elements/init-err-evaluation.js similarity index 100% rename from test/language/expressions/class/fields-init-err-evaluation.js rename to test/language/expressions/class/elements/init-err-evaluation.js diff --git a/test/language/expressions/class/fields-init-value-defined-after-class.js b/test/language/expressions/class/elements/init-value-defined-after-class.js similarity index 100% rename from test/language/expressions/class/fields-init-value-defined-after-class.js rename to test/language/expressions/class/elements/init-value-defined-after-class.js diff --git a/test/language/expressions/class/fields-init-value-incremental.js b/test/language/expressions/class/elements/init-value-incremental.js similarity index 100% rename from test/language/expressions/class/fields-init-value-incremental.js rename to test/language/expressions/class/elements/init-value-incremental.js diff --git a/test/language/expressions/class/fields-literal-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-literal-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/literal-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-literal-name-init-err-contains-super.js b/test/language/expressions/class/elements/literal-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-literal-name-init-err-contains-super.js rename to test/language/expressions/class/elements/literal-name-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-multiple-definitions-computed-names.js b/test/language/expressions/class/elements/multiple-definitions-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-computed-names.js rename to test/language/expressions/class/elements/multiple-definitions-computed-names.js diff --git a/test/language/expressions/class/fields-multiple-definitions-computed-symbol-names.js b/test/language/expressions/class/elements/multiple-definitions-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-computed-symbol-names.js rename to test/language/expressions/class/elements/multiple-definitions-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-multiple-definitions-literal-names-asi.js b/test/language/expressions/class/elements/multiple-definitions-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-literal-names-asi.js rename to test/language/expressions/class/elements/multiple-definitions-literal-names-asi.js diff --git a/test/language/expressions/class/fields-multiple-definitions-literal-names.js b/test/language/expressions/class/elements/multiple-definitions-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-literal-names.js rename to test/language/expressions/class/elements/multiple-definitions-literal-names.js diff --git a/test/language/expressions/class/fields-multiple-definitions-private-field-usage.js b/test/language/expressions/class/elements/multiple-definitions-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-private-field-usage.js rename to test/language/expressions/class/elements/multiple-definitions-private-field-usage.js diff --git a/test/language/expressions/class/fields-multiple-definitions-private-method-getter-usage.js b/test/language/expressions/class/elements/multiple-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-private-method-getter-usage.js rename to test/language/expressions/class/elements/multiple-definitions-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-multiple-definitions-private-method-usage.js b/test/language/expressions/class/elements/multiple-definitions-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-private-method-usage.js rename to test/language/expressions/class/elements/multiple-definitions-private-method-usage.js diff --git a/test/language/expressions/class/fields-multiple-definitions-private-names.js b/test/language/expressions/class/elements/multiple-definitions-private-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-private-names.js rename to test/language/expressions/class/elements/multiple-definitions-private-names.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/multiple-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-definitions-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-field-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-field-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-getter-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-getter-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-getter.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-getter.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-getter.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-method-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-method-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-method.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-method.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-method.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-setter-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-setter-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-private-setter.js b/test/language/expressions/class/elements/multiple-definitions-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-private-setter.js rename to test/language/expressions/class/elements/multiple-definitions-rs-private-setter.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-definitions-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-definitions-static-private-fields.js b/test/language/expressions/class/elements/multiple-definitions-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-static-private-fields.js rename to test/language/expressions/class/elements/multiple-definitions-static-private-fields.js diff --git a/test/language/expressions/class/fields-multiple-definitions-static-private-methods-with-fields.js b/test/language/expressions/class/elements/multiple-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/multiple-definitions-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-multiple-definitions-static-private-methods.js b/test/language/expressions/class/elements/multiple-definitions-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-static-private-methods.js rename to test/language/expressions/class/elements/multiple-definitions-static-private-methods.js diff --git a/test/language/expressions/class/fields-multiple-definitions-string-literal-names.js b/test/language/expressions/class/elements/multiple-definitions-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-definitions-string-literal-names.js rename to test/language/expressions/class/elements/multiple-definitions-string-literal-names.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-computed-names.js b/test/language/expressions/class/elements/multiple-stacked-definitions-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-computed-names.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-computed-names.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-computed-symbol-names.js b/test/language/expressions/class/elements/multiple-stacked-definitions-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-computed-symbol-names.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-literal-names-asi.js b/test/language/expressions/class/elements/multiple-stacked-definitions-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-literal-names-asi.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-literal-names-asi.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-literal-names.js b/test/language/expressions/class/elements/multiple-stacked-definitions-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-literal-names.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-literal-names.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-private-field-usage.js b/test/language/expressions/class/elements/multiple-stacked-definitions-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-private-field-usage.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-private-field-usage.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-private-method-getter-usage.js b/test/language/expressions/class/elements/multiple-stacked-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-private-method-getter-usage.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-private-method-usage.js b/test/language/expressions/class/elements/multiple-stacked-definitions-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-private-method-usage.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-private-method-usage.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-private-names.js b/test/language/expressions/class/elements/multiple-stacked-definitions-private-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-private-names.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-private-names.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-field-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-field-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-getter-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-getter-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-getter.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-getter.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-getter.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-method-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-method-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-method.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-method.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-method.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-setter-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-setter-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-setter.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-private-setter.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-private-setter.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-static-private-fields.js b/test/language/expressions/class/elements/multiple-stacked-definitions-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-static-private-fields.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-static-private-fields.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-static-private-methods-with-fields.js b/test/language/expressions/class/elements/multiple-stacked-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-static-private-methods.js b/test/language/expressions/class/elements/multiple-stacked-definitions-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-static-private-methods.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-static-private-methods.js diff --git a/test/language/expressions/class/fields-multiple-stacked-definitions-string-literal-names.js b/test/language/expressions/class/elements/multiple-stacked-definitions-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-multiple-stacked-definitions-string-literal-names.js rename to test/language/expressions/class/elements/multiple-stacked-definitions-string-literal-names.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-computed-names.js b/test/language/expressions/class/elements/new-no-sc-line-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-computed-names.js rename to test/language/expressions/class/elements/new-no-sc-line-method-computed-names.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-computed-symbol-names.js b/test/language/expressions/class/elements/new-no-sc-line-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-computed-symbol-names.js rename to test/language/expressions/class/elements/new-no-sc-line-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-literal-names-asi.js b/test/language/expressions/class/elements/new-no-sc-line-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-literal-names-asi.js rename to test/language/expressions/class/elements/new-no-sc-line-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-literal-names.js b/test/language/expressions/class/elements/new-no-sc-line-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-literal-names.js rename to test/language/expressions/class/elements/new-no-sc-line-method-literal-names.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-private-field-usage.js b/test/language/expressions/class/elements/new-no-sc-line-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-private-field-usage.js rename to test/language/expressions/class/elements/new-no-sc-line-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-private-method-getter-usage.js b/test/language/expressions/class/elements/new-no-sc-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/new-no-sc-line-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-private-method-usage.js b/test/language/expressions/class/elements/new-no-sc-line-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-private-method-usage.js rename to test/language/expressions/class/elements/new-no-sc-line-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-private-names.js b/test/language/expressions/class/elements/new-no-sc-line-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-private-names.js rename to test/language/expressions/class/elements/new-no-sc-line-method-private-names.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-field-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-field-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-getter.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-getter.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-method-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-method.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-method.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-private-setter.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-private-setter.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/new-no-sc-line-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-static-private-fields.js b/test/language/expressions/class/elements/new-no-sc-line-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-static-private-fields.js rename to test/language/expressions/class/elements/new-no-sc-line-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/new-no-sc-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/new-no-sc-line-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-static-private-methods.js b/test/language/expressions/class/elements/new-no-sc-line-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-static-private-methods.js rename to test/language/expressions/class/elements/new-no-sc-line-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-new-no-sc-line-method-string-literal-names.js b/test/language/expressions/class/elements/new-no-sc-line-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-no-sc-line-method-string-literal-names.js rename to test/language/expressions/class/elements/new-no-sc-line-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-computed-names.js b/test/language/expressions/class/elements/new-sc-line-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-computed-names.js rename to test/language/expressions/class/elements/new-sc-line-gen-computed-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-computed-symbol-names.js b/test/language/expressions/class/elements/new-sc-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/new-sc-line-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-literal-names-asi.js b/test/language/expressions/class/elements/new-sc-line-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-literal-names-asi.js rename to test/language/expressions/class/elements/new-sc-line-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-literal-names.js b/test/language/expressions/class/elements/new-sc-line-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-literal-names.js rename to test/language/expressions/class/elements/new-sc-line-gen-literal-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-private-field-usage.js b/test/language/expressions/class/elements/new-sc-line-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-private-field-usage.js rename to test/language/expressions/class/elements/new-sc-line-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/new-sc-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/new-sc-line-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-private-method-usage.js b/test/language/expressions/class/elements/new-sc-line-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-private-method-usage.js rename to test/language/expressions/class/elements/new-sc-line-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-private-names.js b/test/language/expressions/class/elements/new-sc-line-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-private-names.js rename to test/language/expressions/class/elements/new-sc-line-gen-private-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-field-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-getter.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-getter.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-method.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-method.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-private-setter.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-private-setter.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-static-private-fields.js b/test/language/expressions/class/elements/new-sc-line-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-static-private-fields.js rename to test/language/expressions/class/elements/new-sc-line-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/new-sc-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/new-sc-line-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-static-private-methods.js b/test/language/expressions/class/elements/new-sc-line-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-static-private-methods.js rename to test/language/expressions/class/elements/new-sc-line-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-new-sc-line-gen-string-literal-names.js b/test/language/expressions/class/elements/new-sc-line-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-gen-string-literal-names.js rename to test/language/expressions/class/elements/new-sc-line-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-computed-names.js b/test/language/expressions/class/elements/new-sc-line-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-computed-names.js rename to test/language/expressions/class/elements/new-sc-line-method-computed-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-computed-symbol-names.js b/test/language/expressions/class/elements/new-sc-line-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-computed-symbol-names.js rename to test/language/expressions/class/elements/new-sc-line-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-literal-names-asi.js b/test/language/expressions/class/elements/new-sc-line-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-literal-names-asi.js rename to test/language/expressions/class/elements/new-sc-line-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-literal-names.js b/test/language/expressions/class/elements/new-sc-line-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-literal-names.js rename to test/language/expressions/class/elements/new-sc-line-method-literal-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-private-field-usage.js b/test/language/expressions/class/elements/new-sc-line-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-private-field-usage.js rename to test/language/expressions/class/elements/new-sc-line-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-private-method-getter-usage.js b/test/language/expressions/class/elements/new-sc-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/new-sc-line-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-private-method-usage.js b/test/language/expressions/class/elements/new-sc-line-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-private-method-usage.js rename to test/language/expressions/class/elements/new-sc-line-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-private-names.js b/test/language/expressions/class/elements/new-sc-line-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-private-names.js rename to test/language/expressions/class/elements/new-sc-line-method-private-names.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-field-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-field-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-getter.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-getter.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-method-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-method.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-method.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-private-setter.js b/test/language/expressions/class/elements/new-sc-line-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-private-setter.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/new-sc-line-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-static-private-fields.js b/test/language/expressions/class/elements/new-sc-line-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-static-private-fields.js rename to test/language/expressions/class/elements/new-sc-line-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/new-sc-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/new-sc-line-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-static-private-methods.js b/test/language/expressions/class/elements/new-sc-line-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-static-private-methods.js rename to test/language/expressions/class/elements/new-sc-line-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-new-sc-line-method-string-literal-names.js b/test/language/expressions/class/elements/new-sc-line-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-new-sc-line-method-string-literal-names.js rename to test/language/expressions/class/elements/new-sc-line-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-private-arrow-fnc-init-err-contains-arguments.js b/test/language/expressions/class/elements/private-arrow-fnc-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-arrow-fnc-init-err-contains-arguments.js rename to test/language/expressions/class/elements/private-arrow-fnc-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-arrow-fnc-init-err-contains-super.js b/test/language/expressions/class/elements/private-arrow-fnc-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-private-arrow-fnc-init-err-contains-super.js rename to test/language/expressions/class/elements/private-arrow-fnc-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall-1.js b/test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall-1.js rename to test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall-1.js diff --git a/test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall-2.js b/test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall-2.js rename to test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall-2.js diff --git a/test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall.js b/test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-supercall.js rename to test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-supercall.js diff --git a/test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-1.js b/test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-1.js rename to test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-1.js diff --git a/test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-2.js b/test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-2.js rename to test/language/expressions/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-2.js diff --git a/test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-1.js b/test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-1.js rename to test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-1.js diff --git a/test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-2.js b/test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-2.js rename to test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-2.js diff --git a/test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall.js b/test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-supercall.js rename to test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-supercall.js diff --git a/test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-1.js b/test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-1.js rename to test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-1.js diff --git a/test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-2.js b/test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/expressions/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-2.js rename to test/language/expressions/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-2.js diff --git a/test/language/expressions/class/fields-private-direct-eval-err-contains-arguments.js b/test/language/expressions/class/elements/private-direct-eval-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-direct-eval-err-contains-arguments.js rename to test/language/expressions/class/elements/private-direct-eval-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-direct-eval-err-contains-newtarget.js b/test/language/expressions/class/elements/private-direct-eval-err-contains-newtarget.js similarity index 100% rename from test/language/expressions/class/fields-private-direct-eval-err-contains-newtarget.js rename to test/language/expressions/class/elements/private-direct-eval-err-contains-newtarget.js diff --git a/test/language/expressions/class/fields-private-indirect-eval-err-contains-arguments.js b/test/language/expressions/class/elements/private-indirect-eval-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-indirect-eval-err-contains-arguments.js rename to test/language/expressions/class/elements/private-indirect-eval-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-indirect-eval-err-contains-newtarget.js b/test/language/expressions/class/elements/private-indirect-eval-err-contains-newtarget.js similarity index 100% rename from test/language/expressions/class/fields-private-indirect-eval-err-contains-newtarget.js rename to test/language/expressions/class/elements/private-indirect-eval-err-contains-newtarget.js diff --git a/test/language/expressions/class/fields-private-literal-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/private-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-literal-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/private-literal-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-literal-name-init-err-contains-super.js b/test/language/expressions/class/elements/private-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-private-literal-name-init-err-contains-super.js rename to test/language/expressions/class/elements/private-literal-name-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-private-ternary-init-err-contains-arguments.js b/test/language/expressions/class/elements/private-ternary-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-ternary-init-err-contains-arguments.js rename to test/language/expressions/class/elements/private-ternary-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-ternary-init-err-contains-super.js b/test/language/expressions/class/elements/private-ternary-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-private-ternary-init-err-contains-super.js rename to test/language/expressions/class/elements/private-ternary-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-private-typeof-init-err-contains-arguments.js b/test/language/expressions/class/elements/private-typeof-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-private-typeof-init-err-contains-arguments.js rename to test/language/expressions/class/elements/private-typeof-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-private-typeof-init-err-contains-super.js b/test/language/expressions/class/elements/private-typeof-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-private-typeof-init-err-contains-super.js rename to test/language/expressions/class/elements/private-typeof-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-redeclaration-symbol.js b/test/language/expressions/class/elements/redeclaration-symbol.js similarity index 100% rename from test/language/expressions/class/fields-redeclaration-symbol.js rename to test/language/expressions/class/elements/redeclaration-symbol.js diff --git a/test/language/expressions/class/fields-redeclaration.js b/test/language/expressions/class/elements/redeclaration.js similarity index 100% rename from test/language/expressions/class/fields-redeclaration.js rename to test/language/expressions/class/elements/redeclaration.js diff --git a/test/language/expressions/class/fields-regular-definitions-computed-names.js b/test/language/expressions/class/elements/regular-definitions-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-computed-names.js rename to test/language/expressions/class/elements/regular-definitions-computed-names.js diff --git a/test/language/expressions/class/fields-regular-definitions-computed-symbol-names.js b/test/language/expressions/class/elements/regular-definitions-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-computed-symbol-names.js rename to test/language/expressions/class/elements/regular-definitions-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-regular-definitions-literal-names-asi.js b/test/language/expressions/class/elements/regular-definitions-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-literal-names-asi.js rename to test/language/expressions/class/elements/regular-definitions-literal-names-asi.js diff --git a/test/language/expressions/class/fields-regular-definitions-literal-names.js b/test/language/expressions/class/elements/regular-definitions-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-literal-names.js rename to test/language/expressions/class/elements/regular-definitions-literal-names.js diff --git a/test/language/expressions/class/fields-regular-definitions-private-field-usage.js b/test/language/expressions/class/elements/regular-definitions-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-private-field-usage.js rename to test/language/expressions/class/elements/regular-definitions-private-field-usage.js diff --git a/test/language/expressions/class/fields-regular-definitions-private-method-getter-usage.js b/test/language/expressions/class/elements/regular-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-private-method-getter-usage.js rename to test/language/expressions/class/elements/regular-definitions-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-regular-definitions-private-method-usage.js b/test/language/expressions/class/elements/regular-definitions-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-private-method-usage.js rename to test/language/expressions/class/elements/regular-definitions-private-method-usage.js diff --git a/test/language/expressions/class/fields-regular-definitions-private-names.js b/test/language/expressions/class/elements/regular-definitions-private-names.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-private-names.js rename to test/language/expressions/class/elements/regular-definitions-private-names.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/regular-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/regular-definitions-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-field-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-field-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-getter-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-getter-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-getter.js b/test/language/expressions/class/elements/regular-definitions-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-getter.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-getter.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-method-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-method-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-method.js b/test/language/expressions/class/elements/regular-definitions-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-method.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-method.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-setter-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-setter-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-private-setter.js b/test/language/expressions/class/elements/regular-definitions-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-private-setter.js rename to test/language/expressions/class/elements/regular-definitions-rs-private-setter.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/regular-definitions-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-regular-definitions-static-private-fields.js b/test/language/expressions/class/elements/regular-definitions-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-static-private-fields.js rename to test/language/expressions/class/elements/regular-definitions-static-private-fields.js diff --git a/test/language/expressions/class/fields-regular-definitions-static-private-methods-with-fields.js b/test/language/expressions/class/elements/regular-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/regular-definitions-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-regular-definitions-static-private-methods.js b/test/language/expressions/class/elements/regular-definitions-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-static-private-methods.js rename to test/language/expressions/class/elements/regular-definitions-static-private-methods.js diff --git a/test/language/expressions/class/fields-regular-definitions-string-literal-names.js b/test/language/expressions/class/elements/regular-definitions-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-regular-definitions-string-literal-names.js rename to test/language/expressions/class/elements/regular-definitions-string-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-computed-names.js b/test/language/expressions/class/elements/same-line-async-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-computed-names.js rename to test/language/expressions/class/elements/same-line-async-gen-computed-names.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-computed-symbol-names.js b/test/language/expressions/class/elements/same-line-async-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/same-line-async-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-literal-names-asi.js b/test/language/expressions/class/elements/same-line-async-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-literal-names-asi.js rename to test/language/expressions/class/elements/same-line-async-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-literal-names.js b/test/language/expressions/class/elements/same-line-async-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-literal-names.js rename to test/language/expressions/class/elements/same-line-async-gen-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-private-field-usage.js b/test/language/expressions/class/elements/same-line-async-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-private-field-usage.js rename to test/language/expressions/class/elements/same-line-async-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/same-line-async-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/same-line-async-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-private-method-usage.js b/test/language/expressions/class/elements/same-line-async-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-private-method-usage.js rename to test/language/expressions/class/elements/same-line-async-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-private-names.js b/test/language/expressions/class/elements/same-line-async-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-private-names.js rename to test/language/expressions/class/elements/same-line-async-gen-private-names.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-field-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-getter.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-getter.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-method.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-method.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-private-setter.js b/test/language/expressions/class/elements/same-line-async-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-private-setter.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-static-private-fields.js b/test/language/expressions/class/elements/same-line-async-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-static-private-fields.js rename to test/language/expressions/class/elements/same-line-async-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/same-line-async-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/same-line-async-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-static-private-methods.js b/test/language/expressions/class/elements/same-line-async-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-static-private-methods.js rename to test/language/expressions/class/elements/same-line-async-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-same-line-async-gen-string-literal-names.js b/test/language/expressions/class/elements/same-line-async-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-gen-string-literal-names.js rename to test/language/expressions/class/elements/same-line-async-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-async-method-computed-names.js b/test/language/expressions/class/elements/same-line-async-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-computed-names.js rename to test/language/expressions/class/elements/same-line-async-method-computed-names.js diff --git a/test/language/expressions/class/fields-same-line-async-method-computed-symbol-names.js b/test/language/expressions/class/elements/same-line-async-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-computed-symbol-names.js rename to test/language/expressions/class/elements/same-line-async-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-same-line-async-method-literal-names-asi.js b/test/language/expressions/class/elements/same-line-async-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-literal-names-asi.js rename to test/language/expressions/class/elements/same-line-async-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-same-line-async-method-literal-names.js b/test/language/expressions/class/elements/same-line-async-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-literal-names.js rename to test/language/expressions/class/elements/same-line-async-method-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-async-method-private-field-usage.js b/test/language/expressions/class/elements/same-line-async-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-private-field-usage.js rename to test/language/expressions/class/elements/same-line-async-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-method-private-method-getter-usage.js b/test/language/expressions/class/elements/same-line-async-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/same-line-async-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-method-private-method-usage.js b/test/language/expressions/class/elements/same-line-async-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-private-method-usage.js rename to test/language/expressions/class/elements/same-line-async-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-same-line-async-method-private-names.js b/test/language/expressions/class/elements/same-line-async-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-private-names.js rename to test/language/expressions/class/elements/same-line-async-method-private-names.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-field-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-field-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-getter.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-getter.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-method-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-method.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-method.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-private-setter.js b/test/language/expressions/class/elements/same-line-async-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-private-setter.js rename to test/language/expressions/class/elements/same-line-async-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-async-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-async-method-static-private-fields.js b/test/language/expressions/class/elements/same-line-async-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-static-private-fields.js rename to test/language/expressions/class/elements/same-line-async-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-same-line-async-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/same-line-async-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/same-line-async-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-same-line-async-method-static-private-methods.js b/test/language/expressions/class/elements/same-line-async-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-static-private-methods.js rename to test/language/expressions/class/elements/same-line-async-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-same-line-async-method-string-literal-names.js b/test/language/expressions/class/elements/same-line-async-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-async-method-string-literal-names.js rename to test/language/expressions/class/elements/same-line-async-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-gen-computed-names.js b/test/language/expressions/class/elements/same-line-gen-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-computed-names.js rename to test/language/expressions/class/elements/same-line-gen-computed-names.js diff --git a/test/language/expressions/class/fields-same-line-gen-computed-symbol-names.js b/test/language/expressions/class/elements/same-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-computed-symbol-names.js rename to test/language/expressions/class/elements/same-line-gen-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-same-line-gen-literal-names-asi.js b/test/language/expressions/class/elements/same-line-gen-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-literal-names-asi.js rename to test/language/expressions/class/elements/same-line-gen-literal-names-asi.js diff --git a/test/language/expressions/class/fields-same-line-gen-literal-names.js b/test/language/expressions/class/elements/same-line-gen-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-literal-names.js rename to test/language/expressions/class/elements/same-line-gen-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-gen-private-field-usage.js b/test/language/expressions/class/elements/same-line-gen-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-private-field-usage.js rename to test/language/expressions/class/elements/same-line-gen-private-field-usage.js diff --git a/test/language/expressions/class/fields-same-line-gen-private-method-getter-usage.js b/test/language/expressions/class/elements/same-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-private-method-getter-usage.js rename to test/language/expressions/class/elements/same-line-gen-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-same-line-gen-private-method-usage.js b/test/language/expressions/class/elements/same-line-gen-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-private-method-usage.js rename to test/language/expressions/class/elements/same-line-gen-private-method-usage.js diff --git a/test/language/expressions/class/fields-same-line-gen-private-names.js b/test/language/expressions/class/elements/same-line-gen-private-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-private-names.js rename to test/language/expressions/class/elements/same-line-gen-private-names.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/same-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-field-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-field-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-getter-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-getter-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-getter.js b/test/language/expressions/class/elements/same-line-gen-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-getter.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-getter.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-method-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-method-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-method.js b/test/language/expressions/class/elements/same-line-gen-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-method.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-method.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-setter-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-setter-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-private-setter.js b/test/language/expressions/class/elements/same-line-gen-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-private-setter.js rename to test/language/expressions/class/elements/same-line-gen-rs-private-setter.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-gen-static-private-fields.js b/test/language/expressions/class/elements/same-line-gen-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-static-private-fields.js rename to test/language/expressions/class/elements/same-line-gen-static-private-fields.js diff --git a/test/language/expressions/class/fields-same-line-gen-static-private-methods-with-fields.js b/test/language/expressions/class/elements/same-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/same-line-gen-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-same-line-gen-static-private-methods.js b/test/language/expressions/class/elements/same-line-gen-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-static-private-methods.js rename to test/language/expressions/class/elements/same-line-gen-static-private-methods.js diff --git a/test/language/expressions/class/fields-same-line-gen-string-literal-names.js b/test/language/expressions/class/elements/same-line-gen-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-gen-string-literal-names.js rename to test/language/expressions/class/elements/same-line-gen-string-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-method-computed-names.js b/test/language/expressions/class/elements/same-line-method-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-computed-names.js rename to test/language/expressions/class/elements/same-line-method-computed-names.js diff --git a/test/language/expressions/class/fields-same-line-method-computed-symbol-names.js b/test/language/expressions/class/elements/same-line-method-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-computed-symbol-names.js rename to test/language/expressions/class/elements/same-line-method-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/same-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/same-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-same-line-method-literal-names-asi.js b/test/language/expressions/class/elements/same-line-method-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-literal-names-asi.js rename to test/language/expressions/class/elements/same-line-method-literal-names-asi.js diff --git a/test/language/expressions/class/fields-same-line-method-literal-names.js b/test/language/expressions/class/elements/same-line-method-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-literal-names.js rename to test/language/expressions/class/elements/same-line-method-literal-names.js diff --git a/test/language/expressions/class/fields-same-line-method-private-field-usage.js b/test/language/expressions/class/elements/same-line-method-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-private-field-usage.js rename to test/language/expressions/class/elements/same-line-method-private-field-usage.js diff --git a/test/language/expressions/class/fields-same-line-method-private-method-getter-usage.js b/test/language/expressions/class/elements/same-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-private-method-getter-usage.js rename to test/language/expressions/class/elements/same-line-method-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-same-line-method-private-method-usage.js b/test/language/expressions/class/elements/same-line-method-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-private-method-usage.js rename to test/language/expressions/class/elements/same-line-method-private-method-usage.js diff --git a/test/language/expressions/class/fields-same-line-method-private-names.js b/test/language/expressions/class/elements/same-line-method-private-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-private-names.js rename to test/language/expressions/class/elements/same-line-method-private-names.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/same-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-method-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-field-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-field-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-getter-alt.js b/test/language/expressions/class/elements/same-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-getter-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-getter.js b/test/language/expressions/class/elements/same-line-method-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-getter.js rename to test/language/expressions/class/elements/same-line-method-rs-private-getter.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-method-alt.js b/test/language/expressions/class/elements/same-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-method-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-method.js b/test/language/expressions/class/elements/same-line-method-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-method.js rename to test/language/expressions/class/elements/same-line-method-rs-private-method.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-setter-alt.js b/test/language/expressions/class/elements/same-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-setter-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-private-setter.js b/test/language/expressions/class/elements/same-line-method-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-private-setter.js rename to test/language/expressions/class/elements/same-line-method-rs-private-setter.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/same-line-method-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-same-line-method-static-private-fields.js b/test/language/expressions/class/elements/same-line-method-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-static-private-fields.js rename to test/language/expressions/class/elements/same-line-method-static-private-fields.js diff --git a/test/language/expressions/class/fields-same-line-method-static-private-methods-with-fields.js b/test/language/expressions/class/elements/same-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/same-line-method-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-same-line-method-static-private-methods.js b/test/language/expressions/class/elements/same-line-method-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-static-private-methods.js rename to test/language/expressions/class/elements/same-line-method-static-private-methods.js diff --git a/test/language/expressions/class/fields-same-line-method-string-literal-names.js b/test/language/expressions/class/elements/same-line-method-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-same-line-method-string-literal-names.js rename to test/language/expressions/class/elements/same-line-method-string-literal-names.js diff --git a/test/language/expressions/class/fields-static-comp-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/static-comp-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-static-comp-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/static-comp-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-static-comp-name-init-err-contains-super.js b/test/language/expressions/class/elements/static-comp-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-static-comp-name-init-err-contains-super.js rename to test/language/expressions/class/elements/static-comp-name-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-static-literal-init-err-contains-arguments.js b/test/language/expressions/class/elements/static-literal-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-static-literal-init-err-contains-arguments.js rename to test/language/expressions/class/elements/static-literal-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-static-literal-init-err-contains-super.js b/test/language/expressions/class/elements/static-literal-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-static-literal-init-err-contains-super.js rename to test/language/expressions/class/elements/static-literal-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-static-private-init-err-contains-arguments.js b/test/language/expressions/class/elements/static-private-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-static-private-init-err-contains-arguments.js rename to test/language/expressions/class/elements/static-private-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-static-private-init-err-contains-super.js b/test/language/expressions/class/elements/static-private-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-static-private-init-err-contains-super.js rename to test/language/expressions/class/elements/static-private-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-static-string-literal-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/static-string-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-static-string-literal-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/static-string-literal-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-static-string-literal-name-init-err-contains-super.js b/test/language/expressions/class/elements/static-string-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-static-string-literal-name-init-err-contains-super.js rename to test/language/expressions/class/elements/static-string-literal-name-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-string-literal-name-init-err-contains-arguments.js b/test/language/expressions/class/elements/string-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-string-literal-name-init-err-contains-arguments.js rename to test/language/expressions/class/elements/string-literal-name-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-string-literal-name-init-err-contains-super.js b/test/language/expressions/class/elements/string-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-string-literal-name-init-err-contains-super.js rename to test/language/expressions/class/elements/string-literal-name-init-err-contains-super.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js b/test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js rename to test/language/expressions/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-class-body-ctor-duplicate.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-class-body-ctor-duplicate.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-class-body-ctor-duplicate.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-class-body-ctor-duplicate.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-ctor-super-no-heritage.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-ctor-super-no-heritage.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-ctor-super-no-heritage.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-ctor-super-no-heritage.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-fields-same-line-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-fields-same-line-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-fields-same-line-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-fields-same-line-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-field.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-field.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-privatenames-same-line-error.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-privatenames-same-line-error.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-privatenames-same-line-error.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-privatenames-same-line-error.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-async.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-async.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-get.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-get.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-get.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-method.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-method.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-method.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-async.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-async.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-method.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-method.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-private-method.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-method.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-set.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-contains-super-set.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-contains-super-set.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-async-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-async-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-async-meth.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-meth.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-async-meth.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-meth.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-gen.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-gen.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-gen.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-gen.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-get.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-get.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-get.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-get.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-set.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-set.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-special-meth-ctor-set.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-special-meth-ctor-set.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-async-gen-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-gen-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-async-gen-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-gen-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-async-gen-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-gen-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-async-gen-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-gen-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-async-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-async-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-async-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-async-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-async-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-gen-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-gen-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-gen-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-gen-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-gen-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-gen-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-gen-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-gen-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-get-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-get-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-get-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-get-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-get-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-get-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-get-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-get-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-async-gen-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-async-gen-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-async-meth-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-meth-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-async-meth-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-meth-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-async-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-async-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-async-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-gen-meth-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-gen-meth-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-gen-meth-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-gen-meth-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-gen-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-gen-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-gen-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-gen-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-meth-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-meth-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-meth-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-meth-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-private-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-private-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-private-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-privatename-constructor.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-privatename-constructor.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-privatename-constructor.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-privatename-constructor.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-set-meth-prototype.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-set-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-set-meth-prototype.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-set-meth-prototype.js diff --git a/test/language/expressions/class/syntax/early-errors/grammar-static-set-meth-super.js b/test/language/expressions/class/elements/syntax/early-errors/grammar-static-set-meth-super.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/grammar-static-set-meth-super.js rename to test/language/expressions/class/elements/syntax/early-errors/grammar-static-set-meth-super.js diff --git a/test/language/expressions/class/syntax/early-errors/private-async-generator-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-async-generator-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-async-generator-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-async-generator-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-async-method-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-async-method-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-async-method-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-async-method-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-call-exp-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-call-exp-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-call-exp-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-call-exp-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-field-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-field-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-field-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-field-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-generator-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-generator-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-generator-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-generator-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-member-exp-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-member-exp-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-member-exp-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-member-exp-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/private-method-cannot-escape-token.js b/test/language/expressions/class/elements/syntax/early-errors/private-method-cannot-escape-token.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/private-method-cannot-escape-token.js rename to test/language/expressions/class/elements/syntax/early-errors/private-method-cannot-escape-token.js diff --git a/test/language/expressions/class/syntax/early-errors/super-private-access-invalid.js b/test/language/expressions/class/elements/syntax/early-errors/super-private-access-invalid.js similarity index 100% rename from test/language/expressions/class/syntax/early-errors/super-private-access-invalid.js rename to test/language/expressions/class/elements/syntax/early-errors/super-private-access-invalid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-class-body-ctor-no-heritage.js b/test/language/expressions/class/elements/syntax/valid/grammar-class-body-ctor-no-heritage.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-class-body-ctor-no-heritage.js rename to test/language/expressions/class/elements/syntax/valid/grammar-class-body-ctor-no-heritage.js diff --git a/test/language/expressions/class/syntax/valid/grammar-field-classelementname-initializer-alt.js b/test/language/expressions/class/elements/syntax/valid/grammar-field-classelementname-initializer-alt.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-field-classelementname-initializer-alt.js rename to test/language/expressions/class/elements/syntax/valid/grammar-field-classelementname-initializer-alt.js diff --git a/test/language/expressions/class/syntax/valid/grammar-field-classelementname-initializer.js b/test/language/expressions/class/elements/syntax/valid/grammar-field-classelementname-initializer.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-field-classelementname-initializer.js rename to test/language/expressions/class/elements/syntax/valid/grammar-field-classelementname-initializer.js diff --git a/test/language/expressions/class/syntax/valid/grammar-field-identifier-alt.js b/test/language/expressions/class/elements/syntax/valid/grammar-field-identifier-alt.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-field-identifier-alt.js rename to test/language/expressions/class/elements/syntax/valid/grammar-field-identifier-alt.js diff --git a/test/language/expressions/class/syntax/valid/grammar-field-identifier.js b/test/language/expressions/class/elements/syntax/valid/grammar-field-identifier.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-field-identifier.js rename to test/language/expressions/class/elements/syntax/valid/grammar-field-identifier.js diff --git a/test/language/expressions/class/syntax/valid/grammar-fields-multi-line.js b/test/language/expressions/class/elements/syntax/valid/grammar-fields-multi-line.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-fields-multi-line.js rename to test/language/expressions/class/elements/syntax/valid/grammar-fields-multi-line.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatemeth-duplicate-get-set.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatemeth-duplicate-get-set.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatemeth-duplicate-get-set.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatemeth-duplicate-get-set.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatename-classelementname-initializer-alt.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatename-classelementname-initializer-alt.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatename-classelementname-initializer-alt.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatename-classelementname-initializer-alt.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatename-classelementname-initializer.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatename-classelementname-initializer.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatename-classelementname-initializer.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatename-classelementname-initializer.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatename-identifier.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatename-identifier.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatename-identifier.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatename-no-initializer-with-method.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatename-no-initializer-with-method.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatename-no-initializer-with-method.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatename-no-initializer-with-method.js diff --git a/test/language/expressions/class/syntax/valid/grammar-privatenames-multi-line.js b/test/language/expressions/class/elements/syntax/valid/grammar-privatenames-multi-line.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-privatenames-multi-line.js rename to test/language/expressions/class/elements/syntax/valid/grammar-privatenames-multi-line.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-ctor-accessor-meth-valid.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-accessor-meth-valid.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-ctor-accessor-meth-valid.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-accessor-meth-valid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-ctor-async-meth-valid.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-async-meth-valid.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-ctor-async-meth-valid.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-async-meth-valid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-ctor-gen-meth-valid.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-gen-meth-valid.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-ctor-gen-meth-valid.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-gen-meth-valid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-ctor-meth-valid.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-meth-valid.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-ctor-meth-valid.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-ctor-meth-valid.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-private-async-gen-meth-prototype.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-private-async-gen-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-private-async-gen-meth-prototype.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-private-async-gen-meth-prototype.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-private-async-meth-prototype.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-private-async-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-private-async-meth-prototype.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-private-async-meth-prototype.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-private-gen-meth-prototype.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-private-gen-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-private-gen-meth-prototype.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-private-gen-meth-prototype.js diff --git a/test/language/expressions/class/syntax/valid/grammar-static-private-meth-prototype.js b/test/language/expressions/class/elements/syntax/valid/grammar-static-private-meth-prototype.js similarity index 100% rename from test/language/expressions/class/syntax/valid/grammar-static-private-meth-prototype.js rename to test/language/expressions/class/elements/syntax/valid/grammar-static-private-meth-prototype.js diff --git a/test/language/expressions/class/fields-ternary-init-err-contains-arguments.js b/test/language/expressions/class/elements/ternary-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-ternary-init-err-contains-arguments.js rename to test/language/expressions/class/elements/ternary-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-ternary-init-err-contains-super.js b/test/language/expressions/class/elements/ternary-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-ternary-init-err-contains-super.js rename to test/language/expressions/class/elements/ternary-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-typeof-init-err-contains-arguments.js b/test/language/expressions/class/elements/typeof-init-err-contains-arguments.js similarity index 100% rename from test/language/expressions/class/fields-typeof-init-err-contains-arguments.js rename to test/language/expressions/class/elements/typeof-init-err-contains-arguments.js diff --git a/test/language/expressions/class/fields-typeof-init-err-contains-super.js b/test/language/expressions/class/elements/typeof-init-err-contains-super.js similarity index 100% rename from test/language/expressions/class/fields-typeof-init-err-contains-super.js rename to test/language/expressions/class/elements/typeof-init-err-contains-super.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-computed-names.js b/test/language/expressions/class/elements/wrapped-in-sc-computed-names.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-computed-names.js rename to test/language/expressions/class/elements/wrapped-in-sc-computed-names.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-computed-symbol-names.js b/test/language/expressions/class/elements/wrapped-in-sc-computed-symbol-names.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-computed-symbol-names.js rename to test/language/expressions/class/elements/wrapped-in-sc-computed-symbol-names.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/expressions/class/elements/wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/expressions/class/elements/wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-literal-names-asi.js b/test/language/expressions/class/elements/wrapped-in-sc-literal-names-asi.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-literal-names-asi.js rename to test/language/expressions/class/elements/wrapped-in-sc-literal-names-asi.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-literal-names.js b/test/language/expressions/class/elements/wrapped-in-sc-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-literal-names.js rename to test/language/expressions/class/elements/wrapped-in-sc-literal-names.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-private-field-usage.js b/test/language/expressions/class/elements/wrapped-in-sc-private-field-usage.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-private-field-usage.js rename to test/language/expressions/class/elements/wrapped-in-sc-private-field-usage.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-private-method-getter-usage.js b/test/language/expressions/class/elements/wrapped-in-sc-private-method-getter-usage.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-private-method-getter-usage.js rename to test/language/expressions/class/elements/wrapped-in-sc-private-method-getter-usage.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-private-method-usage.js b/test/language/expressions/class/elements/wrapped-in-sc-private-method-usage.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-private-method-usage.js rename to test/language/expressions/class/elements/wrapped-in-sc-private-method-usage.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-private-names.js b/test/language/expressions/class/elements/wrapped-in-sc-private-names.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-private-names.js rename to test/language/expressions/class/elements/wrapped-in-sc-private-names.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-field-identifier-initializer.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-field-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-field-identifier-initializer.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-field-identifier-initializer.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-field-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-field-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-field-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-field-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-getter-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-getter-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-getter-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-getter-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-getter.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-getter.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-getter.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-getter.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-method-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-method-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-method-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-method-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-method.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-method.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-method.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-method.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-setter-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-setter-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-setter-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-setter-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-private-setter.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-private-setter.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-private-setter.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-private-setter.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-by-classname.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-by-classname.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier.js b/test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-rs-static-privatename-identifier.js rename to test/language/expressions/class/elements/wrapped-in-sc-rs-static-privatename-identifier.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-static-private-fields.js b/test/language/expressions/class/elements/wrapped-in-sc-static-private-fields.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-static-private-fields.js rename to test/language/expressions/class/elements/wrapped-in-sc-static-private-fields.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-static-private-methods-with-fields.js b/test/language/expressions/class/elements/wrapped-in-sc-static-private-methods-with-fields.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-static-private-methods-with-fields.js rename to test/language/expressions/class/elements/wrapped-in-sc-static-private-methods-with-fields.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-static-private-methods.js b/test/language/expressions/class/elements/wrapped-in-sc-static-private-methods.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-static-private-methods.js rename to test/language/expressions/class/elements/wrapped-in-sc-static-private-methods.js diff --git a/test/language/expressions/class/fields-wrapped-in-sc-string-literal-names.js b/test/language/expressions/class/elements/wrapped-in-sc-string-literal-names.js similarity index 100% rename from test/language/expressions/class/fields-wrapped-in-sc-string-literal-names.js rename to test/language/expressions/class/elements/wrapped-in-sc-string-literal-names.js diff --git a/test/language/expressions/function/dstr-ary-init-iter-close.js b/test/language/expressions/function/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/expressions/function/dstr-ary-init-iter-close.js rename to test/language/expressions/function/dstr/ary-init-iter-close.js diff --git a/test/language/expressions/function/dstr-ary-init-iter-get-err.js b/test/language/expressions/function/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-init-iter-get-err.js rename to test/language/expressions/function/dstr/ary-init-iter-get-err.js diff --git a/test/language/expressions/function/dstr-ary-init-iter-no-close.js b/test/language/expressions/function/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/function/dstr-ary-init-iter-no-close.js rename to test/language/expressions/function/dstr/ary-init-iter-no-close.js diff --git a/test/language/expressions/function/dstr-ary-name-iter-val.js b/test/language/expressions/function/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/expressions/function/dstr-ary-name-iter-val.js rename to test/language/expressions/function/dstr/ary-name-iter-val.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/function/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-id.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-id.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/function/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/function/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elision-exhausted.js b/test/language/expressions/function/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elision-exhausted.js rename to test/language/expressions/function/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elision-step-err.js b/test/language/expressions/function/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elision-step-err.js rename to test/language/expressions/function/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-elision.js b/test/language/expressions/function/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-elision.js rename to test/language/expressions/function/dstr/ary-ptrn-elision.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-empty.js b/test/language/expressions/function/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-empty.js rename to test/language/expressions/function/dstr/ary-ptrn-empty.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-ary-elem.js b/test/language/expressions/function/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-ary-elision.js b/test/language/expressions/function/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-ary-empty.js b/test/language/expressions/function/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-ary-rest.js b/test/language/expressions/function/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id-elision.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id-elision.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-id.js b/test/language/expressions/function/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-id.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-init-ary.js b/test/language/expressions/function/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-init-ary.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-init-id.js b/test/language/expressions/function/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-init-id.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-init-obj.js b/test/language/expressions/function/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-init-obj.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/function/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-not-final-id.js b/test/language/expressions/function/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/function/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-obj-id.js b/test/language/expressions/function/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-obj-id.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/function/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/function/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/function/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-init-iter-close.js b/test/language/expressions/function/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-init-iter-close.js rename to test/language/expressions/function/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/expressions/function/dstr-dflt-ary-init-iter-get-err.js b/test/language/expressions/function/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-init-iter-get-err.js rename to test/language/expressions/function/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-init-iter-no-close.js b/test/language/expressions/function/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-init-iter-no-close.js rename to test/language/expressions/function/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/function/dstr-dflt-ary-name-iter-val.js b/test/language/expressions/function/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-name-iter-val.js rename to test/language/expressions/function/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-elision.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-elision.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-empty.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-empty.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/function/dstr-dflt-obj-init-null.js b/test/language/expressions/function/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-init-null.js rename to test/language/expressions/function/dstr/dflt-obj-init-null.js diff --git a/test/language/expressions/function/dstr-dflt-obj-init-undefined.js b/test/language/expressions/function/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-init-undefined.js rename to test/language/expressions/function/dstr/dflt-obj-init-undefined.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-empty.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-empty.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-list-err.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-list-err.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/function/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/function/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/function/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/function/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/function/dstr-obj-init-null.js b/test/language/expressions/function/dstr/obj-init-null.js similarity index 100% rename from test/language/expressions/function/dstr-obj-init-null.js rename to test/language/expressions/function/dstr/obj-init-null.js diff --git a/test/language/expressions/function/dstr-obj-init-undefined.js b/test/language/expressions/function/dstr/obj-init-undefined.js similarity index 100% rename from test/language/expressions/function/dstr-obj-init-undefined.js rename to test/language/expressions/function/dstr/obj-init-undefined.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-empty.js b/test/language/expressions/function/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-empty.js rename to test/language/expressions/function/dstr/obj-ptrn-empty.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-get-value-err.js b/test/language/expressions/function/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-get-value-err.js rename to test/language/expressions/function/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-skipped.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-skipped.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-throws.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-throws.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/function/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/function/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-id-trailing-comma.js b/test/language/expressions/function/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/function/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-list-err.js b/test/language/expressions/function/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-list-err.js rename to test/language/expressions/function/dstr/obj-ptrn-list-err.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-ary-init.js b/test/language/expressions/function/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-ary-init.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/function/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/function/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-ary.js b/test/language/expressions/function/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-ary.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-eval-err.js b/test/language/expressions/function/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-eval-err.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-init.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-init.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-id.js b/test/language/expressions/function/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-id.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-id.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-obj-init.js b/test/language/expressions/function/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-obj-init.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/function/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/function/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-prop-obj.js b/test/language/expressions/function/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-prop-obj.js rename to test/language/expressions/function/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-rest-getter.js b/test/language/expressions/function/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-rest-getter.js rename to test/language/expressions/function/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/function/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/function/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/function/dstr-obj-ptrn-rest-val-obj.js b/test/language/expressions/function/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/function/dstr-obj-ptrn-rest-val-obj.js rename to test/language/expressions/function/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/generators/dstr-ary-init-iter-close.js b/test/language/expressions/generators/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-init-iter-close.js rename to test/language/expressions/generators/dstr/ary-init-iter-close.js diff --git a/test/language/expressions/generators/dstr-ary-init-iter-get-err.js b/test/language/expressions/generators/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-init-iter-get-err.js rename to test/language/expressions/generators/dstr/ary-init-iter-get-err.js diff --git a/test/language/expressions/generators/dstr-ary-init-iter-no-close.js b/test/language/expressions/generators/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-init-iter-no-close.js rename to test/language/expressions/generators/dstr/ary-init-iter-no-close.js diff --git a/test/language/expressions/generators/dstr-ary-name-iter-val.js b/test/language/expressions/generators/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-name-iter-val.js rename to test/language/expressions/generators/dstr/ary-name-iter-val.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-id.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/generators/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/generators/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elision-exhausted.js b/test/language/expressions/generators/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elision-exhausted.js rename to test/language/expressions/generators/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elision-step-err.js b/test/language/expressions/generators/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elision-step-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-elision.js b/test/language/expressions/generators/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-elision.js rename to test/language/expressions/generators/dstr/ary-ptrn-elision.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-empty.js b/test/language/expressions/generators/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-empty.js rename to test/language/expressions/generators/dstr/ary-ptrn-empty.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-ary-elem.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-ary-elision.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-ary-empty.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-ary-rest.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id-elision.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id-elision.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-id.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-init-ary.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-init-ary.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-init-id.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-init-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-init-obj.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-init-obj.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-id.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-obj-id.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-obj-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/generators/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/generators/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/generators/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-init-iter-close.js b/test/language/expressions/generators/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-init-iter-close.js rename to test/language/expressions/generators/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-init-iter-get-err.js b/test/language/expressions/generators/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-init-iter-get-err.js rename to test/language/expressions/generators/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-init-iter-no-close.js b/test/language/expressions/generators/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-init-iter-no-close.js rename to test/language/expressions/generators/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-name-iter-val.js b/test/language/expressions/generators/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-name-iter-val.js rename to test/language/expressions/generators/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-elision.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-elision.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-empty.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-empty.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/generators/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-init-null.js b/test/language/expressions/generators/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-init-null.js rename to test/language/expressions/generators/dstr/dflt-obj-init-null.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-init-undefined.js b/test/language/expressions/generators/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-init-undefined.js rename to test/language/expressions/generators/dstr/dflt-obj-init-undefined.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-empty.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-empty.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-list-err.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-list-err.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/generators/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/generators/dstr-obj-init-null.js b/test/language/expressions/generators/dstr/obj-init-null.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-init-null.js rename to test/language/expressions/generators/dstr/obj-init-null.js diff --git a/test/language/expressions/generators/dstr-obj-init-undefined.js b/test/language/expressions/generators/dstr/obj-init-undefined.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-init-undefined.js rename to test/language/expressions/generators/dstr/obj-init-undefined.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-empty.js b/test/language/expressions/generators/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-empty.js rename to test/language/expressions/generators/dstr/obj-ptrn-empty.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-get-value-err.js b/test/language/expressions/generators/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-get-value-err.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-skipped.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-skipped.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-throws.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-throws.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/generators/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-id-trailing-comma.js b/test/language/expressions/generators/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/generators/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-list-err.js b/test/language/expressions/generators/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-list-err.js rename to test/language/expressions/generators/dstr/obj-ptrn-list-err.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-ary-init.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-ary-init.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-ary.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-ary.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-eval-err.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-eval-err.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-init.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-init.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-id.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-id.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-id.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-obj-init.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-obj-init.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-prop-obj.js b/test/language/expressions/generators/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-prop-obj.js rename to test/language/expressions/generators/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-rest-getter.js b/test/language/expressions/generators/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-rest-getter.js rename to test/language/expressions/generators/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/generators/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/generators/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/generators/dstr-obj-ptrn-rest-val-obj.js b/test/language/expressions/generators/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/generators/dstr-obj-ptrn-rest-val-obj.js rename to test/language/expressions/generators/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-close.js b/test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-close.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-name-iter-val.js b/test/language/expressions/object/dstr/async-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-name-iter-val.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-empty.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-init-null.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-init-null.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-init-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-init-undefined.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-init-undefined.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-init-null.js b/test/language/expressions/object/dstr/async-gen-meth-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-init-null.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-init-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-init-undefined.js b/test/language/expressions/object/dstr/async-gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-init-undefined.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-empty.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-init-iter-close.js b/test/language/expressions/object/dstr/gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-init-iter-close.js rename to test/language/expressions/object/dstr/gen-meth-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/gen-meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-name-iter-val.js b/test/language/expressions/object/dstr/gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-name-iter-val.js rename to test/language/expressions/object/dstr/gen-meth-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-empty.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-close.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-name-iter-val.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-init-null.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-init-null.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-init-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-init-undefined.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-init-undefined.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-init-null.js b/test/language/expressions/object/dstr/gen-meth-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-init-null.js rename to test/language/expressions/object/dstr/gen-meth-obj-init-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-init-undefined.js b/test/language/expressions/object/dstr/gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-init-undefined.js rename to test/language/expressions/object/dstr/gen-meth-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-empty.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-meth-ary-init-iter-close.js b/test/language/expressions/object/dstr/meth-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-init-iter-close.js rename to test/language/expressions/object/dstr/meth-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-meth-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/meth-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/meth-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-meth-ary-name-iter-val.js b/test/language/expressions/object/dstr/meth-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-name-iter-val.js rename to test/language/expressions/object/dstr/meth-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-elision.js b/test/language/expressions/object/dstr/meth-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-empty.js b/test/language/expressions/object/dstr/meth-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-init-iter-close.js b/test/language/expressions/object/dstr/meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-init-iter-close.js rename to test/language/expressions/object/dstr/meth-dflt-ary-init-iter-close.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-init-iter-get-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-init-iter-get-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-init-iter-no-close.js b/test/language/expressions/object/dstr/meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-init-iter-no-close.js rename to test/language/expressions/object/dstr/meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-name-iter-val.js b/test/language/expressions/object/dstr/meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-name-iter-val.js rename to test/language/expressions/object/dstr/meth-dflt-ary-name-iter-val.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-elision.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-elision.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-empty.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-empty.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/expressions/object/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-init-null.js b/test/language/expressions/object/dstr/meth-dflt-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-init-null.js rename to test/language/expressions/object/dstr/meth-dflt-obj-init-null.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-init-undefined.js b/test/language/expressions/object/dstr/meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-init-undefined.js rename to test/language/expressions/object/dstr/meth-dflt-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-empty.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/expressions/object/dstr-meth-obj-init-null.js b/test/language/expressions/object/dstr/meth-obj-init-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-init-null.js rename to test/language/expressions/object/dstr/meth-obj-init-null.js diff --git a/test/language/expressions/object/dstr-meth-obj-init-undefined.js b/test/language/expressions/object/dstr/meth-obj-init-undefined.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-init-undefined.js rename to test/language/expressions/object/dstr/meth-obj-init-undefined.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-empty.js b/test/language/expressions/object/dstr/meth-obj-ptrn-empty.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-empty.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-empty.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-get-value-err.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-get-value-err.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-skipped.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-throws.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-throws.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-id-trailing-comma.js b/test/language/expressions/object/dstr/meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-id-trailing-comma.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-list-err.js b/test/language/expressions/object/dstr/meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-list-err.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-list-err.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-init.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-init.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-value-null.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-ary.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-ary.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-eval-err.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-eval-err.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-throws.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-init.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-init.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-id.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-id.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-id.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-init.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-init.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-value-null.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj.js b/test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-prop-obj.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-prop-obj.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-rest-getter.js b/test/language/expressions/object/dstr/meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-rest-getter.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-rest-getter.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/expressions/object/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/expressions/object/dstr-meth-obj-ptrn-rest-val-obj.js b/test/language/expressions/object/dstr/meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/expressions/object/dstr-meth-obj-ptrn-rest-val-obj.js rename to test/language/expressions/object/dstr/meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/async-generator/dstr-ary-init-iter-close.js b/test/language/statements/async-generator/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-init-iter-close.js rename to test/language/statements/async-generator/dstr/ary-init-iter-close.js diff --git a/test/language/statements/async-generator/dstr-ary-init-iter-get-err.js b/test/language/statements/async-generator/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-init-iter-get-err.js rename to test/language/statements/async-generator/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/async-generator/dstr-ary-init-iter-no-close.js b/test/language/statements/async-generator/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-init-iter-no-close.js rename to test/language/statements/async-generator/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/async-generator/dstr-ary-name-iter-val.js b/test/language/statements/async-generator/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-name-iter-val.js rename to test/language/statements/async-generator/dstr/ary-name-iter-val.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/async-generator/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-elision.js b/test/language/statements/async-generator/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-elision.js rename to test/language/statements/async-generator/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-empty.js b/test/language/statements/async-generator/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-empty.js rename to test/language/statements/async-generator/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/async-generator/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/async-generator/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/async-generator/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-init-iter-close.js b/test/language/statements/async-generator/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-init-iter-close.js rename to test/language/statements/async-generator/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-init-iter-get-err.js b/test/language/statements/async-generator/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-init-iter-get-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-init-iter-no-close.js b/test/language/statements/async-generator/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-init-iter-no-close.js rename to test/language/statements/async-generator/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-name-iter-val.js b/test/language/statements/async-generator/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-name-iter-val.js rename to test/language/statements/async-generator/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-elision.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-empty.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-empty.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/async-generator/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-init-null.js b/test/language/statements/async-generator/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-init-null.js rename to test/language/statements/async-generator/dstr/dflt-obj-init-null.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-init-undefined.js b/test/language/statements/async-generator/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-init-undefined.js rename to test/language/statements/async-generator/dstr/dflt-obj-init-undefined.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-empty.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-empty.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-list-err.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-list-err.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/async-generator/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/async-generator/dstr-obj-init-null.js b/test/language/statements/async-generator/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-init-null.js rename to test/language/statements/async-generator/dstr/obj-init-null.js diff --git a/test/language/statements/async-generator/dstr-obj-init-undefined.js b/test/language/statements/async-generator/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-init-undefined.js rename to test/language/statements/async-generator/dstr/obj-init-undefined.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-empty.js b/test/language/statements/async-generator/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-empty.js rename to test/language/statements/async-generator/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/async-generator/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/async-generator/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-list-err.js b/test/language/statements/async-generator/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-list-err.js rename to test/language/statements/async-generator/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-ary.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-id.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-id.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-prop-obj.js b/test/language/statements/async-generator/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/async-generator/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-rest-getter.js b/test/language/statements/async-generator/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/async-generator/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/async-generator/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/async-generator/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/async-generator/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/async-generator/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/async-generator/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/async-generator/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/async-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-gen-meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-init-iter-get-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-init-null.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-init-null.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-init-null.js b/test/language/statements/class/dstr/async-gen-meth-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-init-null.js rename to test/language/statements/class/dstr/async-gen-meth-obj-init-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-init-undefined.js b/test/language/statements/class/dstr/async-gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-init-undefined.js rename to test/language/statements/class/dstr/async-gen-meth-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-list-err.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-get-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-init-null.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-init-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-init-null.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-init-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-init-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-init-undefined.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-init-undefined.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-list-err.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-async-private-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/async-private-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/gen-meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-init-iter-get-err.js b/test/language/statements/class/dstr/gen-meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/gen-meth-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/gen-meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/gen-meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-init-null.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-init-null.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-init-null.js b/test/language/statements/class/dstr/gen-meth-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-init-null.js rename to test/language/statements/class/dstr/gen-meth-obj-init-null.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-init-undefined.js b/test/language/statements/class/dstr/gen-meth-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-init-undefined.js rename to test/language/statements/class/dstr/gen-meth-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-list-err.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/gen-meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-init-iter-get-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/gen-meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-init-null.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-init-null.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-init-null.js b/test/language/statements/class/dstr/gen-meth-static-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-init-null.js rename to test/language/statements/class/dstr/gen-meth-static-obj-init-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-init-undefined.js b/test/language/statements/class/dstr/gen-meth-static-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-init-undefined.js rename to test/language/statements/class/dstr/gen-meth-static-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-list-err.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-meth-ary-init-iter-get-err.js b/test/language/statements/class/dstr/meth-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/meth-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/meth-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-init-null.js b/test/language/statements/class/dstr/meth-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-init-null.js rename to test/language/statements/class/dstr/meth-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/meth-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/meth-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-meth-obj-init-null.js b/test/language/statements/class/dstr/meth-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-init-null.js rename to test/language/statements/class/dstr/meth-obj-init-null.js diff --git a/test/language/statements/class/dstr-meth-obj-init-undefined.js b/test/language/statements/class/dstr/meth-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-init-undefined.js rename to test/language/statements/class/dstr/meth-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-list-err.js b/test/language/statements/class/dstr/meth-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/meth-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-meth-static-ary-init-iter-get-err.js b/test/language/statements/class/dstr/meth-static-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/meth-static-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-get-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-get-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-init-null.js b/test/language/statements/class/dstr/meth-static-dflt-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-init-null.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-init-null.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-init-undefined.js b/test/language/statements/class/dstr/meth-static-dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-init-undefined.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-list-err.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-meth-static-obj-init-null.js b/test/language/statements/class/dstr/meth-static-obj-init-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-init-null.js rename to test/language/statements/class/dstr/meth-static-obj-init-null.js diff --git a/test/language/statements/class/dstr-meth-static-obj-init-undefined.js b/test/language/statements/class/dstr/meth-static-obj-init-undefined.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-init-undefined.js rename to test/language/statements/class/dstr/meth-static-obj-init-undefined.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-get-value-err.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-get-value-err.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-throws.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-list-err.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-list-err.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-list-err.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-value-null.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-eval-err.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-eval-err.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-throws.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-value-null.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/private-gen-meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-gen-meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-gen-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-gen-meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-gen-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-gen-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-gen-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-gen-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-meth-ary-init-iter-close.js b/test/language/statements/class/dstr/private-meth-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-meth-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-meth-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-meth-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-meth-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-meth-ary-name-iter-val.js b/test/language/statements/class/dstr/private-meth-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-meth-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/private-meth-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-meth-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/private-meth-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-meth-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-meth-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-meth-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-meth-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-init-iter-close.js b/test/language/statements/class/dstr/private-meth-static-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-meth-static-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-meth-static-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-meth-static-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-name-iter-val.js b/test/language/statements/class/dstr/private-meth-static-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-meth-static-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-init-iter-close.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-init-iter-close.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-init-iter-close.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-init-iter-no-close.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-init-iter-no-close.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-name-iter-val.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-name-iter-val.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-name-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elision.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-elision.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-meth-static-dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-empty.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-empty.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-empty.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary-init.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary-init.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-ary.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-ary.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-init.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-init.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-id.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-id.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-obj-init.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-obj-init.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-obj.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-prop-obj.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-prop-obj.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-getter.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-getter.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-getter.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-val-obj.js b/test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/class/dstr-private-meth-static-obj-ptrn-rest-val-obj.js rename to test/language/statements/class/dstr/private-meth-static-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/class/fields-after-same-line-gen-computed-names.js b/test/language/statements/class/elements/after-same-line-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-computed-names.js rename to test/language/statements/class/elements/after-same-line-gen-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-gen-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-gen-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-gen-literal-names.js b/test/language/statements/class/elements/after-same-line-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-literal-names.js rename to test/language/statements/class/elements/after-same-line-gen-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-gen-private-field-usage.js b/test/language/statements/class/elements/after-same-line-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-gen-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-gen-private-method-usage.js b/test/language/statements/class/elements/after-same-line-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-gen-private-names.js b/test/language/statements/class/elements/after-same-line-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-private-names.js rename to test/language/statements/class/elements/after-same-line-gen-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-method.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-gen-static-private-fields.js b/test/language/statements/class/elements/after-same-line-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-gen-static-private-methods.js b/test/language/statements/class/elements/after-same-line-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-gen-string-literal-names.js b/test/language/statements/class/elements/after-same-line-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-gen-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-method-computed-names.js b/test/language/statements/class/elements/after-same-line-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-computed-names.js rename to test/language/statements/class/elements/after-same-line-method-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-method-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-method-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-method-literal-names.js b/test/language/statements/class/elements/after-same-line-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-literal-names.js rename to test/language/statements/class/elements/after-same-line-method-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-method-private-field-usage.js b/test/language/statements/class/elements/after-same-line-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-method-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-method-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-method-private-method-usage.js b/test/language/statements/class/elements/after-same-line-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-method-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-method-private-names.js b/test/language/statements/class/elements/after-same-line-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-private-names.js rename to test/language/statements/class/elements/after-same-line-method-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-method.js b/test/language/statements/class/elements/after-same-line-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-method-static-private-fields.js b/test/language/statements/class/elements/after-same-line-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-method-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-method-static-private-methods.js b/test/language/statements/class/elements/after-same-line-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-method-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-method-string-literal-names.js b/test/language/statements/class/elements/after-same-line-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-method-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-method-string-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-computed-names.js b/test/language/statements/class/elements/after-same-line-static-async-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-computed-names.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-static-async-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-static-async-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-literal-names.js b/test/language/statements/class/elements/after-same-line-static-async-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-private-field-usage.js b/test/language/statements/class/elements/after-same-line-static-async-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-static-async-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-private-method-usage.js b/test/language/statements/class/elements/after-same-line-static-async-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-private-names.js b/test/language/statements/class/elements/after-same-line-static-async-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-private-names.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-method.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-static-private-fields.js b/test/language/statements/class/elements/after-same-line-static-async-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-static-async-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-static-private-methods.js b/test/language/statements/class/elements/after-same-line-static-async-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-gen-string-literal-names.js b/test/language/statements/class/elements/after-same-line-static-async-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-gen-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-async-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-computed-names.js b/test/language/statements/class/elements/after-same-line-static-async-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-computed-names.js rename to test/language/statements/class/elements/after-same-line-static-async-method-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-static-async-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-static-async-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-static-async-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-static-async-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-static-async-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-literal-names.js b/test/language/statements/class/elements/after-same-line-static-async-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-async-method-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-private-field-usage.js b/test/language/statements/class/elements/after-same-line-static-async-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-method-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-static-async-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-private-method-usage.js b/test/language/statements/class/elements/after-same-line-static-async-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-static-async-method-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-private-names.js b/test/language/statements/class/elements/after-same-line-static-async-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-private-names.js rename to test/language/statements/class/elements/after-same-line-static-async-method-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-method.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-async-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-static-private-fields.js b/test/language/statements/class/elements/after-same-line-static-async-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-static-async-method-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-static-async-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-static-async-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-static-private-methods.js b/test/language/statements/class/elements/after-same-line-static-async-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-static-async-method-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-static-async-method-string-literal-names.js b/test/language/statements/class/elements/after-same-line-static-async-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-async-method-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-async-method-string-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-computed-names.js b/test/language/statements/class/elements/after-same-line-static-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-computed-names.js rename to test/language/statements/class/elements/after-same-line-static-gen-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-static-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-static-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-static-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-static-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-static-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-literal-names.js b/test/language/statements/class/elements/after-same-line-static-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-gen-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-private-field-usage.js b/test/language/statements/class/elements/after-same-line-static-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-static-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-static-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-static-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-private-method-usage.js b/test/language/statements/class/elements/after-same-line-static-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-static-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-private-names.js b/test/language/statements/class/elements/after-same-line-static-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-private-names.js rename to test/language/statements/class/elements/after-same-line-static-gen-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-method.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-static-private-fields.js b/test/language/statements/class/elements/after-same-line-static-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-static-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-static-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-static-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-static-private-methods.js b/test/language/statements/class/elements/after-same-line-static-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-static-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-static-gen-string-literal-names.js b/test/language/statements/class/elements/after-same-line-static-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-gen-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-computed-names.js b/test/language/statements/class/elements/after-same-line-static-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-computed-names.js rename to test/language/statements/class/elements/after-same-line-static-method-computed-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-computed-symbol-names.js b/test/language/statements/class/elements/after-same-line-static-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-computed-symbol-names.js rename to test/language/statements/class/elements/after-same-line-static-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/after-same-line-static-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-literal-names-asi.js b/test/language/statements/class/elements/after-same-line-static-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-literal-names-asi.js rename to test/language/statements/class/elements/after-same-line-static-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-literal-names.js b/test/language/statements/class/elements/after-same-line-static-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-method-literal-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-private-field-usage.js b/test/language/statements/class/elements/after-same-line-static-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-private-field-usage.js rename to test/language/statements/class/elements/after-same-line-static-method-private-field-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-private-method-getter-usage.js b/test/language/statements/class/elements/after-same-line-static-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-private-method-getter-usage.js rename to test/language/statements/class/elements/after-same-line-static-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-private-method-usage.js b/test/language/statements/class/elements/after-same-line-static-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-private-method-usage.js rename to test/language/statements/class/elements/after-same-line-static-method-private-method-usage.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-private-names.js b/test/language/statements/class/elements/after-same-line-static-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-private-names.js rename to test/language/statements/class/elements/after-same-line-static-method-private-names.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-field-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-field-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-getter-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-getter.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-getter.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-method-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-method-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-method.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-method.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-method.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-setter-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-private-setter.js b/test/language/statements/class/elements/after-same-line-static-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-private-setter.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/after-same-line-static-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-static-private-fields.js b/test/language/statements/class/elements/after-same-line-static-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-static-private-fields.js rename to test/language/statements/class/elements/after-same-line-static-method-static-private-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/after-same-line-static-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/after-same-line-static-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-static-private-methods.js b/test/language/statements/class/elements/after-same-line-static-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-static-private-methods.js rename to test/language/statements/class/elements/after-same-line-static-method-static-private-methods.js diff --git a/test/language/statements/class/fields-after-same-line-static-method-string-literal-names.js b/test/language/statements/class/elements/after-same-line-static-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-after-same-line-static-method-string-literal-names.js rename to test/language/statements/class/elements/after-same-line-static-method-string-literal-names.js diff --git a/test/language/statements/class/fields-arrow-fnc-init-err-contains-arguments.js b/test/language/statements/class/elements/arrow-fnc-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-arrow-fnc-init-err-contains-arguments.js rename to test/language/statements/class/elements/arrow-fnc-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-arrow-fnc-init-err-contains-super.js b/test/language/statements/class/elements/arrow-fnc-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-arrow-fnc-init-err-contains-super.js rename to test/language/statements/class/elements/arrow-fnc-init-err-contains-super.js diff --git a/test/language/statements/class/fields-comp-name-init-err-contains-arguments.js b/test/language/statements/class/elements/comp-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-comp-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/comp-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-comp-name-init-err-contains-super.js b/test/language/statements/class/elements/comp-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-comp-name-init-err-contains-super.js rename to test/language/statements/class/elements/comp-name-init-err-contains-super.js diff --git a/test/language/statements/class/fields-computed-name-toprimitive-symbol.js b/test/language/statements/class/elements/computed-name-toprimitive-symbol.js similarity index 100% rename from test/language/statements/class/fields-computed-name-toprimitive-symbol.js rename to test/language/statements/class/elements/computed-name-toprimitive-symbol.js diff --git a/test/language/statements/class/fields-computed-name-toprimitive.js b/test/language/statements/class/elements/computed-name-toprimitive.js similarity index 100% rename from test/language/statements/class/fields-computed-name-toprimitive.js rename to test/language/statements/class/elements/computed-name-toprimitive.js diff --git a/test/language/statements/class/fields-ctor-called-after-fields-init.js b/test/language/statements/class/elements/ctor-called-after-fields-init.js similarity index 100% rename from test/language/statements/class/fields-ctor-called-after-fields-init.js rename to test/language/statements/class/elements/ctor-called-after-fields-init.js diff --git a/test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall-1.js b/test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall-1.js rename to test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall-1.js diff --git a/test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall-2.js b/test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall-2.js rename to test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall-2.js diff --git a/test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall.js b/test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-direct-eval-err-contains-supercall.js rename to test/language/statements/class/elements/derived-cls-direct-eval-err-contains-supercall.js diff --git a/test/language/statements/class/fields-derived-cls-direct-eval-err-contains-superproperty-1.js b/test/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-direct-eval-err-contains-superproperty-1.js rename to test/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-1.js diff --git a/test/language/statements/class/fields-derived-cls-direct-eval-err-contains-superproperty-2.js b/test/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-direct-eval-err-contains-superproperty-2.js rename to test/language/statements/class/elements/derived-cls-direct-eval-err-contains-superproperty-2.js diff --git a/test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall-1.js b/test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall-1.js rename to test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall-1.js diff --git a/test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall-2.js b/test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall-2.js rename to test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall-2.js diff --git a/test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall.js b/test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-supercall.js rename to test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-supercall.js diff --git a/test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-superproperty-1.js b/test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-superproperty-1.js rename to test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-superproperty-1.js diff --git a/test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-superproperty-2.js b/test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/statements/class/fields-derived-cls-indirect-eval-err-contains-superproperty-2.js rename to test/language/statements/class/elements/derived-cls-indirect-eval-err-contains-superproperty-2.js diff --git a/test/language/statements/class/fields-direct-eval-err-contains-arguments.js b/test/language/statements/class/elements/direct-eval-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-direct-eval-err-contains-arguments.js rename to test/language/statements/class/elements/direct-eval-err-contains-arguments.js diff --git a/test/language/statements/class/fields-direct-eval-err-contains-newtarget.js b/test/language/statements/class/elements/direct-eval-err-contains-newtarget.js similarity index 100% rename from test/language/statements/class/fields-direct-eval-err-contains-newtarget.js rename to test/language/statements/class/elements/direct-eval-err-contains-newtarget.js diff --git a/test/language/statements/class/fields-equality-init-err-contains-arguments.js b/test/language/statements/class/elements/equality-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-equality-init-err-contains-arguments.js rename to test/language/statements/class/elements/equality-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-equality-init-err-contains-super.js b/test/language/statements/class/elements/equality-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-equality-init-err-contains-super.js rename to test/language/statements/class/elements/equality-init-err-contains-super.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-referenceerror.js b/test/language/statements/class/elements/evaluation-error/computed-name-referenceerror.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-referenceerror.js rename to test/language/statements/class/elements/evaluation-error/computed-name-referenceerror.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-err.js b/test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-err.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-err.js rename to test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-err.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-returns-noncallable.js b/test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-returns-noncallable.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-returns-noncallable.js rename to test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-returns-noncallable.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-returns-nonobject.js b/test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-returns-nonobject.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-toprimitive-returns-nonobject.js rename to test/language/statements/class/elements/evaluation-error/computed-name-toprimitive-returns-nonobject.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-tostring-err.js b/test/language/statements/class/elements/evaluation-error/computed-name-tostring-err.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-tostring-err.js rename to test/language/statements/class/elements/evaluation-error/computed-name-tostring-err.js diff --git a/test/language/statements/class/fields-evaluation-error/computed-name-valueof-err.js b/test/language/statements/class/elements/evaluation-error/computed-name-valueof-err.js similarity index 100% rename from test/language/statements/class/fields-evaluation-error/computed-name-valueof-err.js rename to test/language/statements/class/elements/evaluation-error/computed-name-valueof-err.js diff --git a/test/language/statements/class/fields-indirect-eval-err-contains-arguments.js b/test/language/statements/class/elements/indirect-eval-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-indirect-eval-err-contains-arguments.js rename to test/language/statements/class/elements/indirect-eval-err-contains-arguments.js diff --git a/test/language/statements/class/fields-indirect-eval-err-contains-newtarget.js b/test/language/statements/class/elements/indirect-eval-err-contains-newtarget.js similarity index 100% rename from test/language/statements/class/fields-indirect-eval-err-contains-newtarget.js rename to test/language/statements/class/elements/indirect-eval-err-contains-newtarget.js diff --git a/test/language/statements/class/fields-init-err-evaluation.js b/test/language/statements/class/elements/init-err-evaluation.js similarity index 100% rename from test/language/statements/class/fields-init-err-evaluation.js rename to test/language/statements/class/elements/init-err-evaluation.js diff --git a/test/language/statements/class/fields-init-value-defined-after-class.js b/test/language/statements/class/elements/init-value-defined-after-class.js similarity index 100% rename from test/language/statements/class/fields-init-value-defined-after-class.js rename to test/language/statements/class/elements/init-value-defined-after-class.js diff --git a/test/language/statements/class/fields-init-value-incremental.js b/test/language/statements/class/elements/init-value-incremental.js similarity index 100% rename from test/language/statements/class/fields-init-value-incremental.js rename to test/language/statements/class/elements/init-value-incremental.js diff --git a/test/language/statements/class/fields-literal-name-init-err-contains-arguments.js b/test/language/statements/class/elements/literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-literal-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/literal-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-literal-name-init-err-contains-super.js b/test/language/statements/class/elements/literal-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-literal-name-init-err-contains-super.js rename to test/language/statements/class/elements/literal-name-init-err-contains-super.js diff --git a/test/language/statements/class/fields-multiple-definitions-computed-names.js b/test/language/statements/class/elements/multiple-definitions-computed-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-computed-names.js rename to test/language/statements/class/elements/multiple-definitions-computed-names.js diff --git a/test/language/statements/class/fields-multiple-definitions-computed-symbol-names.js b/test/language/statements/class/elements/multiple-definitions-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-computed-symbol-names.js rename to test/language/statements/class/elements/multiple-definitions-computed-symbol-names.js diff --git a/test/language/statements/class/fields-multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/multiple-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-multiple-definitions-literal-names-asi.js b/test/language/statements/class/elements/multiple-definitions-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-literal-names-asi.js rename to test/language/statements/class/elements/multiple-definitions-literal-names-asi.js diff --git a/test/language/statements/class/fields-multiple-definitions-literal-names.js b/test/language/statements/class/elements/multiple-definitions-literal-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-literal-names.js rename to test/language/statements/class/elements/multiple-definitions-literal-names.js diff --git a/test/language/statements/class/fields-multiple-definitions-private-field-usage.js b/test/language/statements/class/elements/multiple-definitions-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-private-field-usage.js rename to test/language/statements/class/elements/multiple-definitions-private-field-usage.js diff --git a/test/language/statements/class/fields-multiple-definitions-private-method-getter-usage.js b/test/language/statements/class/elements/multiple-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-private-method-getter-usage.js rename to test/language/statements/class/elements/multiple-definitions-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-multiple-definitions-private-method-usage.js b/test/language/statements/class/elements/multiple-definitions-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-private-method-usage.js rename to test/language/statements/class/elements/multiple-definitions-private-method-usage.js diff --git a/test/language/statements/class/fields-multiple-definitions-private-names.js b/test/language/statements/class/elements/multiple-definitions-private-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-private-names.js rename to test/language/statements/class/elements/multiple-definitions-private-names.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-field-identifier-initializer.js b/test/language/statements/class/elements/multiple-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/multiple-definitions-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-field-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-field-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-field-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-getter-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-getter-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-getter.js b/test/language/statements/class/elements/multiple-definitions-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-getter.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-getter.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-method-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-method-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-method.js b/test/language/statements/class/elements/multiple-definitions-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-method.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-method.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-setter-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-setter-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-private-setter.js b/test/language/statements/class/elements/multiple-definitions-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-private-setter.js rename to test/language/statements/class/elements/multiple-definitions-rs-private-setter.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier.js b/test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/multiple-definitions-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-definitions-static-private-fields.js b/test/language/statements/class/elements/multiple-definitions-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-static-private-fields.js rename to test/language/statements/class/elements/multiple-definitions-static-private-fields.js diff --git a/test/language/statements/class/fields-multiple-definitions-static-private-methods-with-fields.js b/test/language/statements/class/elements/multiple-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-static-private-methods-with-fields.js rename to test/language/statements/class/elements/multiple-definitions-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-multiple-definitions-static-private-methods.js b/test/language/statements/class/elements/multiple-definitions-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-static-private-methods.js rename to test/language/statements/class/elements/multiple-definitions-static-private-methods.js diff --git a/test/language/statements/class/fields-multiple-definitions-string-literal-names.js b/test/language/statements/class/elements/multiple-definitions-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-definitions-string-literal-names.js rename to test/language/statements/class/elements/multiple-definitions-string-literal-names.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-computed-names.js b/test/language/statements/class/elements/multiple-stacked-definitions-computed-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-computed-names.js rename to test/language/statements/class/elements/multiple-stacked-definitions-computed-names.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-computed-symbol-names.js b/test/language/statements/class/elements/multiple-stacked-definitions-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-computed-symbol-names.js rename to test/language/statements/class/elements/multiple-stacked-definitions-computed-symbol-names.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/multiple-stacked-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-literal-names-asi.js b/test/language/statements/class/elements/multiple-stacked-definitions-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-literal-names-asi.js rename to test/language/statements/class/elements/multiple-stacked-definitions-literal-names-asi.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-literal-names.js b/test/language/statements/class/elements/multiple-stacked-definitions-literal-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-literal-names.js rename to test/language/statements/class/elements/multiple-stacked-definitions-literal-names.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-private-field-usage.js b/test/language/statements/class/elements/multiple-stacked-definitions-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-private-field-usage.js rename to test/language/statements/class/elements/multiple-stacked-definitions-private-field-usage.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-private-method-getter-usage.js b/test/language/statements/class/elements/multiple-stacked-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-private-method-getter-usage.js rename to test/language/statements/class/elements/multiple-stacked-definitions-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-private-method-usage.js b/test/language/statements/class/elements/multiple-stacked-definitions-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-private-method-usage.js rename to test/language/statements/class/elements/multiple-stacked-definitions-private-method-usage.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-private-names.js b/test/language/statements/class/elements/multiple-stacked-definitions-private-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-private-names.js rename to test/language/statements/class/elements/multiple-stacked-definitions-private-names.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-field-identifier-initializer.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-field-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-field-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-field-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-getter-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-getter-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-getter.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-getter.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-getter.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-method-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-method-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-method.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-method.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-method.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-setter-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-setter-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-private-setter.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-private-setter.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-private-setter.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier.js b/test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/multiple-stacked-definitions-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-static-private-fields.js b/test/language/statements/class/elements/multiple-stacked-definitions-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-static-private-fields.js rename to test/language/statements/class/elements/multiple-stacked-definitions-static-private-fields.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-static-private-methods-with-fields.js b/test/language/statements/class/elements/multiple-stacked-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-static-private-methods-with-fields.js rename to test/language/statements/class/elements/multiple-stacked-definitions-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-static-private-methods.js b/test/language/statements/class/elements/multiple-stacked-definitions-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-static-private-methods.js rename to test/language/statements/class/elements/multiple-stacked-definitions-static-private-methods.js diff --git a/test/language/statements/class/fields-multiple-stacked-definitions-string-literal-names.js b/test/language/statements/class/elements/multiple-stacked-definitions-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-multiple-stacked-definitions-string-literal-names.js rename to test/language/statements/class/elements/multiple-stacked-definitions-string-literal-names.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-computed-names.js b/test/language/statements/class/elements/new-no-sc-line-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-computed-names.js rename to test/language/statements/class/elements/new-no-sc-line-method-computed-names.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-computed-symbol-names.js b/test/language/statements/class/elements/new-no-sc-line-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-computed-symbol-names.js rename to test/language/statements/class/elements/new-no-sc-line-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/new-no-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-literal-names-asi.js b/test/language/statements/class/elements/new-no-sc-line-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-literal-names-asi.js rename to test/language/statements/class/elements/new-no-sc-line-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-literal-names.js b/test/language/statements/class/elements/new-no-sc-line-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-literal-names.js rename to test/language/statements/class/elements/new-no-sc-line-method-literal-names.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-private-field-usage.js b/test/language/statements/class/elements/new-no-sc-line-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-private-field-usage.js rename to test/language/statements/class/elements/new-no-sc-line-method-private-field-usage.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-private-method-getter-usage.js b/test/language/statements/class/elements/new-no-sc-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-private-method-getter-usage.js rename to test/language/statements/class/elements/new-no-sc-line-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-private-method-usage.js b/test/language/statements/class/elements/new-no-sc-line-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-private-method-usage.js rename to test/language/statements/class/elements/new-no-sc-line-method-private-method-usage.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-private-names.js b/test/language/statements/class/elements/new-no-sc-line-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-private-names.js rename to test/language/statements/class/elements/new-no-sc-line-method-private-names.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-field-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-field-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-getter-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-getter.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-getter.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-method-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-method-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-method.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-method.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-method.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-setter-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-private-setter.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-private-setter.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/new-no-sc-line-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-static-private-fields.js b/test/language/statements/class/elements/new-no-sc-line-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-static-private-fields.js rename to test/language/statements/class/elements/new-no-sc-line-method-static-private-fields.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/new-no-sc-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/new-no-sc-line-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-static-private-methods.js b/test/language/statements/class/elements/new-no-sc-line-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-static-private-methods.js rename to test/language/statements/class/elements/new-no-sc-line-method-static-private-methods.js diff --git a/test/language/statements/class/fields-new-no-sc-line-method-string-literal-names.js b/test/language/statements/class/elements/new-no-sc-line-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-no-sc-line-method-string-literal-names.js rename to test/language/statements/class/elements/new-no-sc-line-method-string-literal-names.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-computed-names.js b/test/language/statements/class/elements/new-sc-line-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-computed-names.js rename to test/language/statements/class/elements/new-sc-line-gen-computed-names.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-computed-symbol-names.js b/test/language/statements/class/elements/new-sc-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-computed-symbol-names.js rename to test/language/statements/class/elements/new-sc-line-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/new-sc-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-literal-names-asi.js b/test/language/statements/class/elements/new-sc-line-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-literal-names-asi.js rename to test/language/statements/class/elements/new-sc-line-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-literal-names.js b/test/language/statements/class/elements/new-sc-line-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-literal-names.js rename to test/language/statements/class/elements/new-sc-line-gen-literal-names.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-private-field-usage.js b/test/language/statements/class/elements/new-sc-line-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-private-field-usage.js rename to test/language/statements/class/elements/new-sc-line-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-private-method-getter-usage.js b/test/language/statements/class/elements/new-sc-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/new-sc-line-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-private-method-usage.js b/test/language/statements/class/elements/new-sc-line-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-private-method-usage.js rename to test/language/statements/class/elements/new-sc-line-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-private-names.js b/test/language/statements/class/elements/new-sc-line-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-private-names.js rename to test/language/statements/class/elements/new-sc-line-gen-private-names.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-field-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-field-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-getter.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-getter.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-method-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-method.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-method.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-private-setter.js b/test/language/statements/class/elements/new-sc-line-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-private-setter.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-static-private-fields.js b/test/language/statements/class/elements/new-sc-line-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-static-private-fields.js rename to test/language/statements/class/elements/new-sc-line-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/new-sc-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/new-sc-line-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-static-private-methods.js b/test/language/statements/class/elements/new-sc-line-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-static-private-methods.js rename to test/language/statements/class/elements/new-sc-line-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-new-sc-line-gen-string-literal-names.js b/test/language/statements/class/elements/new-sc-line-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-gen-string-literal-names.js rename to test/language/statements/class/elements/new-sc-line-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-new-sc-line-method-computed-names.js b/test/language/statements/class/elements/new-sc-line-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-computed-names.js rename to test/language/statements/class/elements/new-sc-line-method-computed-names.js diff --git a/test/language/statements/class/fields-new-sc-line-method-computed-symbol-names.js b/test/language/statements/class/elements/new-sc-line-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-computed-symbol-names.js rename to test/language/statements/class/elements/new-sc-line-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/new-sc-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-new-sc-line-method-literal-names-asi.js b/test/language/statements/class/elements/new-sc-line-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-literal-names-asi.js rename to test/language/statements/class/elements/new-sc-line-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-new-sc-line-method-literal-names.js b/test/language/statements/class/elements/new-sc-line-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-literal-names.js rename to test/language/statements/class/elements/new-sc-line-method-literal-names.js diff --git a/test/language/statements/class/fields-new-sc-line-method-private-field-usage.js b/test/language/statements/class/elements/new-sc-line-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-private-field-usage.js rename to test/language/statements/class/elements/new-sc-line-method-private-field-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-method-private-method-getter-usage.js b/test/language/statements/class/elements/new-sc-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-private-method-getter-usage.js rename to test/language/statements/class/elements/new-sc-line-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-method-private-method-usage.js b/test/language/statements/class/elements/new-sc-line-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-private-method-usage.js rename to test/language/statements/class/elements/new-sc-line-method-private-method-usage.js diff --git a/test/language/statements/class/fields-new-sc-line-method-private-names.js b/test/language/statements/class/elements/new-sc-line-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-private-names.js rename to test/language/statements/class/elements/new-sc-line-method-private-names.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-field-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-field-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-getter-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-getter.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-getter.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-method-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-method-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-method.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-method.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-method.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-setter-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-private-setter.js b/test/language/statements/class/elements/new-sc-line-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-private-setter.js rename to test/language/statements/class/elements/new-sc-line-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/new-sc-line-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-new-sc-line-method-static-private-fields.js b/test/language/statements/class/elements/new-sc-line-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-static-private-fields.js rename to test/language/statements/class/elements/new-sc-line-method-static-private-fields.js diff --git a/test/language/statements/class/fields-new-sc-line-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/new-sc-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/new-sc-line-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-new-sc-line-method-static-private-methods.js b/test/language/statements/class/elements/new-sc-line-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-static-private-methods.js rename to test/language/statements/class/elements/new-sc-line-method-static-private-methods.js diff --git a/test/language/statements/class/fields-new-sc-line-method-string-literal-names.js b/test/language/statements/class/elements/new-sc-line-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-new-sc-line-method-string-literal-names.js rename to test/language/statements/class/elements/new-sc-line-method-string-literal-names.js diff --git a/test/language/statements/class/fields-private-arrow-fnc-init-err-contains-arguments.js b/test/language/statements/class/elements/private-arrow-fnc-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-arrow-fnc-init-err-contains-arguments.js rename to test/language/statements/class/elements/private-arrow-fnc-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-arrow-fnc-init-err-contains-super.js b/test/language/statements/class/elements/private-arrow-fnc-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-private-arrow-fnc-init-err-contains-super.js rename to test/language/statements/class/elements/private-arrow-fnc-init-err-contains-super.js diff --git a/test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall-1.js b/test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall-1.js rename to test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall-1.js diff --git a/test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall-2.js b/test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall-2.js rename to test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall-2.js diff --git a/test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall.js b/test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-supercall.js rename to test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-supercall.js diff --git a/test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-1.js b/test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-1.js rename to test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-1.js diff --git a/test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-2.js b/test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-direct-eval-err-contains-superproperty-2.js rename to test/language/statements/class/elements/private-derived-cls-direct-eval-err-contains-superproperty-2.js diff --git a/test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-1.js b/test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-1.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-1.js rename to test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-1.js diff --git a/test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-2.js b/test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-2.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall-2.js rename to test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall-2.js diff --git a/test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall.js b/test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-supercall.js rename to test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-supercall.js diff --git a/test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-1.js b/test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-1.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-1.js rename to test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-1.js diff --git a/test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-2.js b/test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-2.js similarity index 100% rename from test/language/statements/class/fields-private-derived-cls-indirect-eval-err-contains-superproperty-2.js rename to test/language/statements/class/elements/private-derived-cls-indirect-eval-err-contains-superproperty-2.js diff --git a/test/language/statements/class/fields-private-direct-eval-err-contains-arguments.js b/test/language/statements/class/elements/private-direct-eval-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-direct-eval-err-contains-arguments.js rename to test/language/statements/class/elements/private-direct-eval-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-direct-eval-err-contains-newtarget.js b/test/language/statements/class/elements/private-direct-eval-err-contains-newtarget.js similarity index 100% rename from test/language/statements/class/fields-private-direct-eval-err-contains-newtarget.js rename to test/language/statements/class/elements/private-direct-eval-err-contains-newtarget.js diff --git a/test/language/statements/class/fields-private-indirect-eval-err-contains-arguments.js b/test/language/statements/class/elements/private-indirect-eval-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-indirect-eval-err-contains-arguments.js rename to test/language/statements/class/elements/private-indirect-eval-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-indirect-eval-err-contains-newtarget.js b/test/language/statements/class/elements/private-indirect-eval-err-contains-newtarget.js similarity index 100% rename from test/language/statements/class/fields-private-indirect-eval-err-contains-newtarget.js rename to test/language/statements/class/elements/private-indirect-eval-err-contains-newtarget.js diff --git a/test/language/statements/class/fields-private-literal-name-init-err-contains-arguments.js b/test/language/statements/class/elements/private-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-literal-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/private-literal-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-literal-name-init-err-contains-super.js b/test/language/statements/class/elements/private-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-private-literal-name-init-err-contains-super.js rename to test/language/statements/class/elements/private-literal-name-init-err-contains-super.js diff --git a/test/language/statements/class/fields-private-ternary-init-err-contains-arguments.js b/test/language/statements/class/elements/private-ternary-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-ternary-init-err-contains-arguments.js rename to test/language/statements/class/elements/private-ternary-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-ternary-init-err-contains-super.js b/test/language/statements/class/elements/private-ternary-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-private-ternary-init-err-contains-super.js rename to test/language/statements/class/elements/private-ternary-init-err-contains-super.js diff --git a/test/language/statements/class/fields-private-typeof-init-err-contains-arguments.js b/test/language/statements/class/elements/private-typeof-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-private-typeof-init-err-contains-arguments.js rename to test/language/statements/class/elements/private-typeof-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-private-typeof-init-err-contains-super.js b/test/language/statements/class/elements/private-typeof-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-private-typeof-init-err-contains-super.js rename to test/language/statements/class/elements/private-typeof-init-err-contains-super.js diff --git a/test/language/statements/class/fields-redeclaration-symbol.js b/test/language/statements/class/elements/redeclaration-symbol.js similarity index 100% rename from test/language/statements/class/fields-redeclaration-symbol.js rename to test/language/statements/class/elements/redeclaration-symbol.js diff --git a/test/language/statements/class/fields-redeclaration.js b/test/language/statements/class/elements/redeclaration.js similarity index 100% rename from test/language/statements/class/fields-redeclaration.js rename to test/language/statements/class/elements/redeclaration.js diff --git a/test/language/statements/class/fields-regular-definitions-computed-names.js b/test/language/statements/class/elements/regular-definitions-computed-names.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-computed-names.js rename to test/language/statements/class/elements/regular-definitions-computed-names.js diff --git a/test/language/statements/class/fields-regular-definitions-computed-symbol-names.js b/test/language/statements/class/elements/regular-definitions-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-computed-symbol-names.js rename to test/language/statements/class/elements/regular-definitions-computed-symbol-names.js diff --git a/test/language/statements/class/fields-regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/regular-definitions-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-regular-definitions-literal-names-asi.js b/test/language/statements/class/elements/regular-definitions-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-literal-names-asi.js rename to test/language/statements/class/elements/regular-definitions-literal-names-asi.js diff --git a/test/language/statements/class/fields-regular-definitions-literal-names.js b/test/language/statements/class/elements/regular-definitions-literal-names.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-literal-names.js rename to test/language/statements/class/elements/regular-definitions-literal-names.js diff --git a/test/language/statements/class/fields-regular-definitions-private-field-usage.js b/test/language/statements/class/elements/regular-definitions-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-private-field-usage.js rename to test/language/statements/class/elements/regular-definitions-private-field-usage.js diff --git a/test/language/statements/class/fields-regular-definitions-private-method-getter-usage.js b/test/language/statements/class/elements/regular-definitions-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-private-method-getter-usage.js rename to test/language/statements/class/elements/regular-definitions-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-regular-definitions-private-method-usage.js b/test/language/statements/class/elements/regular-definitions-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-private-method-usage.js rename to test/language/statements/class/elements/regular-definitions-private-method-usage.js diff --git a/test/language/statements/class/fields-regular-definitions-private-names.js b/test/language/statements/class/elements/regular-definitions-private-names.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-private-names.js rename to test/language/statements/class/elements/regular-definitions-private-names.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-field-identifier-initializer.js b/test/language/statements/class/elements/regular-definitions-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/regular-definitions-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-field-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-field-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-field-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-getter-alt.js b/test/language/statements/class/elements/regular-definitions-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-getter-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-getter.js b/test/language/statements/class/elements/regular-definitions-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-getter.js rename to test/language/statements/class/elements/regular-definitions-rs-private-getter.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-method-alt.js b/test/language/statements/class/elements/regular-definitions-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-method-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-method.js b/test/language/statements/class/elements/regular-definitions-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-method.js rename to test/language/statements/class/elements/regular-definitions-rs-private-method.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-setter-alt.js b/test/language/statements/class/elements/regular-definitions-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-setter-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-private-setter.js b/test/language/statements/class/elements/regular-definitions-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-private-setter.js rename to test/language/statements/class/elements/regular-definitions-rs-private-setter.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/regular-definitions-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier.js b/test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/regular-definitions-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-regular-definitions-static-private-fields.js b/test/language/statements/class/elements/regular-definitions-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-static-private-fields.js rename to test/language/statements/class/elements/regular-definitions-static-private-fields.js diff --git a/test/language/statements/class/fields-regular-definitions-static-private-methods-with-fields.js b/test/language/statements/class/elements/regular-definitions-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-static-private-methods-with-fields.js rename to test/language/statements/class/elements/regular-definitions-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-regular-definitions-static-private-methods.js b/test/language/statements/class/elements/regular-definitions-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-static-private-methods.js rename to test/language/statements/class/elements/regular-definitions-static-private-methods.js diff --git a/test/language/statements/class/fields-regular-definitions-string-literal-names.js b/test/language/statements/class/elements/regular-definitions-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-regular-definitions-string-literal-names.js rename to test/language/statements/class/elements/regular-definitions-string-literal-names.js diff --git a/test/language/statements/class/fields-same-line-async-gen-computed-names.js b/test/language/statements/class/elements/same-line-async-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-computed-names.js rename to test/language/statements/class/elements/same-line-async-gen-computed-names.js diff --git a/test/language/statements/class/fields-same-line-async-gen-computed-symbol-names.js b/test/language/statements/class/elements/same-line-async-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-computed-symbol-names.js rename to test/language/statements/class/elements/same-line-async-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/same-line-async-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-same-line-async-gen-literal-names-asi.js b/test/language/statements/class/elements/same-line-async-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-literal-names-asi.js rename to test/language/statements/class/elements/same-line-async-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-same-line-async-gen-literal-names.js b/test/language/statements/class/elements/same-line-async-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-literal-names.js rename to test/language/statements/class/elements/same-line-async-gen-literal-names.js diff --git a/test/language/statements/class/fields-same-line-async-gen-private-field-usage.js b/test/language/statements/class/elements/same-line-async-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-private-field-usage.js rename to test/language/statements/class/elements/same-line-async-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-same-line-async-gen-private-method-getter-usage.js b/test/language/statements/class/elements/same-line-async-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/same-line-async-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-same-line-async-gen-private-method-usage.js b/test/language/statements/class/elements/same-line-async-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-private-method-usage.js rename to test/language/statements/class/elements/same-line-async-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-same-line-async-gen-private-names.js b/test/language/statements/class/elements/same-line-async-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-private-names.js rename to test/language/statements/class/elements/same-line-async-gen-private-names.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-field-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-field-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-getter.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-getter.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-method-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-method.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-method.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-private-setter.js b/test/language/statements/class/elements/same-line-async-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-private-setter.js rename to test/language/statements/class/elements/same-line-async-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-gen-static-private-fields.js b/test/language/statements/class/elements/same-line-async-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-static-private-fields.js rename to test/language/statements/class/elements/same-line-async-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-same-line-async-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/same-line-async-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/same-line-async-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-same-line-async-gen-static-private-methods.js b/test/language/statements/class/elements/same-line-async-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-static-private-methods.js rename to test/language/statements/class/elements/same-line-async-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-same-line-async-gen-string-literal-names.js b/test/language/statements/class/elements/same-line-async-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-gen-string-literal-names.js rename to test/language/statements/class/elements/same-line-async-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-same-line-async-method-computed-names.js b/test/language/statements/class/elements/same-line-async-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-computed-names.js rename to test/language/statements/class/elements/same-line-async-method-computed-names.js diff --git a/test/language/statements/class/fields-same-line-async-method-computed-symbol-names.js b/test/language/statements/class/elements/same-line-async-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-computed-symbol-names.js rename to test/language/statements/class/elements/same-line-async-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/same-line-async-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-same-line-async-method-literal-names-asi.js b/test/language/statements/class/elements/same-line-async-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-literal-names-asi.js rename to test/language/statements/class/elements/same-line-async-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-same-line-async-method-literal-names.js b/test/language/statements/class/elements/same-line-async-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-literal-names.js rename to test/language/statements/class/elements/same-line-async-method-literal-names.js diff --git a/test/language/statements/class/fields-same-line-async-method-private-field-usage.js b/test/language/statements/class/elements/same-line-async-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-private-field-usage.js rename to test/language/statements/class/elements/same-line-async-method-private-field-usage.js diff --git a/test/language/statements/class/fields-same-line-async-method-private-method-getter-usage.js b/test/language/statements/class/elements/same-line-async-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-private-method-getter-usage.js rename to test/language/statements/class/elements/same-line-async-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-same-line-async-method-private-method-usage.js b/test/language/statements/class/elements/same-line-async-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-private-method-usage.js rename to test/language/statements/class/elements/same-line-async-method-private-method-usage.js diff --git a/test/language/statements/class/fields-same-line-async-method-private-names.js b/test/language/statements/class/elements/same-line-async-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-private-names.js rename to test/language/statements/class/elements/same-line-async-method-private-names.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-field-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-field-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-getter-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-getter.js b/test/language/statements/class/elements/same-line-async-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-getter.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-method-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-method-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-method.js b/test/language/statements/class/elements/same-line-async-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-method.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-method.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-setter-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-private-setter.js b/test/language/statements/class/elements/same-line-async-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-private-setter.js rename to test/language/statements/class/elements/same-line-async-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/same-line-async-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-async-method-static-private-fields.js b/test/language/statements/class/elements/same-line-async-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-static-private-fields.js rename to test/language/statements/class/elements/same-line-async-method-static-private-fields.js diff --git a/test/language/statements/class/fields-same-line-async-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/same-line-async-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/same-line-async-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-same-line-async-method-static-private-methods.js b/test/language/statements/class/elements/same-line-async-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-static-private-methods.js rename to test/language/statements/class/elements/same-line-async-method-static-private-methods.js diff --git a/test/language/statements/class/fields-same-line-async-method-string-literal-names.js b/test/language/statements/class/elements/same-line-async-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-async-method-string-literal-names.js rename to test/language/statements/class/elements/same-line-async-method-string-literal-names.js diff --git a/test/language/statements/class/fields-same-line-gen-computed-names.js b/test/language/statements/class/elements/same-line-gen-computed-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-computed-names.js rename to test/language/statements/class/elements/same-line-gen-computed-names.js diff --git a/test/language/statements/class/fields-same-line-gen-computed-symbol-names.js b/test/language/statements/class/elements/same-line-gen-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-computed-symbol-names.js rename to test/language/statements/class/elements/same-line-gen-computed-symbol-names.js diff --git a/test/language/statements/class/fields-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/same-line-gen-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-same-line-gen-literal-names-asi.js b/test/language/statements/class/elements/same-line-gen-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-literal-names-asi.js rename to test/language/statements/class/elements/same-line-gen-literal-names-asi.js diff --git a/test/language/statements/class/fields-same-line-gen-literal-names.js b/test/language/statements/class/elements/same-line-gen-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-literal-names.js rename to test/language/statements/class/elements/same-line-gen-literal-names.js diff --git a/test/language/statements/class/fields-same-line-gen-private-field-usage.js b/test/language/statements/class/elements/same-line-gen-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-private-field-usage.js rename to test/language/statements/class/elements/same-line-gen-private-field-usage.js diff --git a/test/language/statements/class/fields-same-line-gen-private-method-getter-usage.js b/test/language/statements/class/elements/same-line-gen-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-private-method-getter-usage.js rename to test/language/statements/class/elements/same-line-gen-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-same-line-gen-private-method-usage.js b/test/language/statements/class/elements/same-line-gen-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-private-method-usage.js rename to test/language/statements/class/elements/same-line-gen-private-method-usage.js diff --git a/test/language/statements/class/fields-same-line-gen-private-names.js b/test/language/statements/class/elements/same-line-gen-private-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-private-names.js rename to test/language/statements/class/elements/same-line-gen-private-names.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-field-identifier-initializer.js b/test/language/statements/class/elements/same-line-gen-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/same-line-gen-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-field-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-field-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-field-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-getter-alt.js b/test/language/statements/class/elements/same-line-gen-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-getter-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-getter.js b/test/language/statements/class/elements/same-line-gen-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-getter.js rename to test/language/statements/class/elements/same-line-gen-rs-private-getter.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-method-alt.js b/test/language/statements/class/elements/same-line-gen-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-method-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-method.js b/test/language/statements/class/elements/same-line-gen-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-method.js rename to test/language/statements/class/elements/same-line-gen-rs-private-method.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-setter-alt.js b/test/language/statements/class/elements/same-line-gen-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-setter-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-private-setter.js b/test/language/statements/class/elements/same-line-gen-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-private-setter.js rename to test/language/statements/class/elements/same-line-gen-rs-private-setter.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-gen-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier.js b/test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/same-line-gen-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-gen-static-private-fields.js b/test/language/statements/class/elements/same-line-gen-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-static-private-fields.js rename to test/language/statements/class/elements/same-line-gen-static-private-fields.js diff --git a/test/language/statements/class/fields-same-line-gen-static-private-methods-with-fields.js b/test/language/statements/class/elements/same-line-gen-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-static-private-methods-with-fields.js rename to test/language/statements/class/elements/same-line-gen-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-same-line-gen-static-private-methods.js b/test/language/statements/class/elements/same-line-gen-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-static-private-methods.js rename to test/language/statements/class/elements/same-line-gen-static-private-methods.js diff --git a/test/language/statements/class/fields-same-line-gen-string-literal-names.js b/test/language/statements/class/elements/same-line-gen-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-gen-string-literal-names.js rename to test/language/statements/class/elements/same-line-gen-string-literal-names.js diff --git a/test/language/statements/class/fields-same-line-method-computed-names.js b/test/language/statements/class/elements/same-line-method-computed-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-computed-names.js rename to test/language/statements/class/elements/same-line-method-computed-names.js diff --git a/test/language/statements/class/fields-same-line-method-computed-symbol-names.js b/test/language/statements/class/elements/same-line-method-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-computed-symbol-names.js rename to test/language/statements/class/elements/same-line-method-computed-symbol-names.js diff --git a/test/language/statements/class/fields-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/same-line-method-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/same-line-method-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-same-line-method-literal-names-asi.js b/test/language/statements/class/elements/same-line-method-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-literal-names-asi.js rename to test/language/statements/class/elements/same-line-method-literal-names-asi.js diff --git a/test/language/statements/class/fields-same-line-method-literal-names.js b/test/language/statements/class/elements/same-line-method-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-literal-names.js rename to test/language/statements/class/elements/same-line-method-literal-names.js diff --git a/test/language/statements/class/fields-same-line-method-private-field-usage.js b/test/language/statements/class/elements/same-line-method-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-private-field-usage.js rename to test/language/statements/class/elements/same-line-method-private-field-usage.js diff --git a/test/language/statements/class/fields-same-line-method-private-method-getter-usage.js b/test/language/statements/class/elements/same-line-method-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-private-method-getter-usage.js rename to test/language/statements/class/elements/same-line-method-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-same-line-method-private-method-usage.js b/test/language/statements/class/elements/same-line-method-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-private-method-usage.js rename to test/language/statements/class/elements/same-line-method-private-method-usage.js diff --git a/test/language/statements/class/fields-same-line-method-private-names.js b/test/language/statements/class/elements/same-line-method-private-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-private-names.js rename to test/language/statements/class/elements/same-line-method-private-names.js diff --git a/test/language/statements/class/fields-same-line-method-rs-field-identifier-initializer.js b/test/language/statements/class/elements/same-line-method-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/same-line-method-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-method-rs-field-identifier.js b/test/language/statements/class/elements/same-line-method-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-field-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-field-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-getter-alt.js b/test/language/statements/class/elements/same-line-method-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-getter-alt.js rename to test/language/statements/class/elements/same-line-method-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-getter.js b/test/language/statements/class/elements/same-line-method-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-getter.js rename to test/language/statements/class/elements/same-line-method-rs-private-getter.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-method-alt.js b/test/language/statements/class/elements/same-line-method-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-method-alt.js rename to test/language/statements/class/elements/same-line-method-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-method.js b/test/language/statements/class/elements/same-line-method-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-method.js rename to test/language/statements/class/elements/same-line-method-rs-private-method.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-setter-alt.js b/test/language/statements/class/elements/same-line-method-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-setter-alt.js rename to test/language/statements/class/elements/same-line-method-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-private-setter.js b/test/language/statements/class/elements/same-line-method-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-private-setter.js rename to test/language/statements/class/elements/same-line-method-rs-private-setter.js diff --git a/test/language/statements/class/fields-same-line-method-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-method-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-method-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-method-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-method-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-method-rs-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier.js b/test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/same-line-method-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-same-line-method-static-private-fields.js b/test/language/statements/class/elements/same-line-method-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-static-private-fields.js rename to test/language/statements/class/elements/same-line-method-static-private-fields.js diff --git a/test/language/statements/class/fields-same-line-method-static-private-methods-with-fields.js b/test/language/statements/class/elements/same-line-method-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-static-private-methods-with-fields.js rename to test/language/statements/class/elements/same-line-method-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-same-line-method-static-private-methods.js b/test/language/statements/class/elements/same-line-method-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-static-private-methods.js rename to test/language/statements/class/elements/same-line-method-static-private-methods.js diff --git a/test/language/statements/class/fields-same-line-method-string-literal-names.js b/test/language/statements/class/elements/same-line-method-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-same-line-method-string-literal-names.js rename to test/language/statements/class/elements/same-line-method-string-literal-names.js diff --git a/test/language/statements/class/fields-static-comp-name-init-err-contains-arguments.js b/test/language/statements/class/elements/static-comp-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-static-comp-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/static-comp-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-static-comp-name-init-err-contains-super.js b/test/language/statements/class/elements/static-comp-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-static-comp-name-init-err-contains-super.js rename to test/language/statements/class/elements/static-comp-name-init-err-contains-super.js diff --git a/test/language/statements/class/fields-static-literal-init-err-contains-arguments.js b/test/language/statements/class/elements/static-literal-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-static-literal-init-err-contains-arguments.js rename to test/language/statements/class/elements/static-literal-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-static-literal-init-err-contains-super.js b/test/language/statements/class/elements/static-literal-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-static-literal-init-err-contains-super.js rename to test/language/statements/class/elements/static-literal-init-err-contains-super.js diff --git a/test/language/statements/class/fields-static-private-init-err-contains-arguments.js b/test/language/statements/class/elements/static-private-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-static-private-init-err-contains-arguments.js rename to test/language/statements/class/elements/static-private-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-static-private-init-err-contains-super.js b/test/language/statements/class/elements/static-private-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-static-private-init-err-contains-super.js rename to test/language/statements/class/elements/static-private-init-err-contains-super.js diff --git a/test/language/statements/class/fields-static-string-literal-name-init-err-contains-arguments.js b/test/language/statements/class/elements/static-string-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-static-string-literal-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/static-string-literal-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-static-string-literal-name-init-err-contains-super.js b/test/language/statements/class/elements/static-string-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-static-string-literal-name-init-err-contains-super.js rename to test/language/statements/class/elements/static-string-literal-name-init-err-contains-super.js diff --git a/test/language/statements/class/fields-string-literal-name-init-err-contains-arguments.js b/test/language/statements/class/elements/string-literal-name-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-string-literal-name-init-err-contains-arguments.js rename to test/language/statements/class/elements/string-literal-name-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-string-literal-name-init-err-contains-super.js b/test/language/statements/class/elements/string-literal-name-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-string-literal-name-init-err-contains-super.js rename to test/language/statements/class/elements/string-literal-name-init-err-contains-super.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-covered-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/field-delete-twice-covered-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-covered-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-call-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-get.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-accessor-set.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-async.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method-gen.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-private-no-reference.js diff --git a/test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js b/test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js rename to test/language/statements/class/elements/syntax/early-errors/delete/method-delete-twice-covered-err-delete-member-expression-privatename.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-class-body-ctor-duplicate.js b/test/language/statements/class/elements/syntax/early-errors/grammar-class-body-ctor-duplicate.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-class-body-ctor-duplicate.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-class-body-ctor-duplicate.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-ctor-super-no-heritage.js b/test/language/statements/class/elements/syntax/early-errors/grammar-ctor-super-no-heritage.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-ctor-super-no-heritage.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-ctor-super-no-heritage.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-ues-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwj-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-field-identifier-invalid-zwnj-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-fields-same-line-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-fields-same-line-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-fields-same-line-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-fields-same-line-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-field.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-get-get.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-field.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-get.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-set.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticfield.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-meth-staticmeth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-field.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatemeth-duplicate-set-set.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-ues.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwj-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-identifier-invalid-zwnj-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-get-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-accessor-set-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-gen-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-async-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-call-expr.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field-init.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-field.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-field.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-field.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-gen-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-member-expr.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-meth.case.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-get-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-accessor-set-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-gen-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-async-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field-init.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-field.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-gen-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatename-whitespace-error-static-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-privatenames-same-line-error.js b/test/language/statements/class/elements/syntax/early-errors/grammar-privatenames-same-line-error.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-privatenames-same-line-error.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-privatenames-same-line-error.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-async.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-async.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-async.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-get.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-get.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-get.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-method.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-method.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-method.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-async.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-async.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-async.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-method.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-method.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-private-method.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-private-method.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-set.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-contains-super-set.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-contains-super-set.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-async-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-async-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-async-meth.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-meth.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-async-meth.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-async-meth.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-gen.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-gen.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-gen.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-gen.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-get.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-get.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-get.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-get.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-set.js b/test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-set.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-special-meth-ctor-set.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-special-meth-ctor-set.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-async-gen-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-async-gen-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-async-gen-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-async-gen-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-async-gen-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-async-gen-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-async-gen-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-async-gen-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-async-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-async-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-async-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-async-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-async-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-async-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-async-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-async-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-gen-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-gen-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-gen-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-gen-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-gen-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-gen-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-gen-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-gen-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-get-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-get-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-get-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-get-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-get-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-get-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-get-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-get-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-async-gen-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-async-gen-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-gen-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-async-meth-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-meth-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-async-meth-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-meth-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-async-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-async-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-async-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-gen-meth-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-gen-meth-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-gen-meth-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-gen-meth-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-gen-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-gen-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-gen-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-gen-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-meth-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-meth-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-meth-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-meth-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-private-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-private-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-private-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-private-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-privatename-constructor.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-privatename-constructor.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-privatename-constructor.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-privatename-constructor.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-set-meth-prototype.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-set-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-set-meth-prototype.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-set-meth-prototype.js diff --git a/test/language/statements/class/syntax/early-errors/grammar-static-set-meth-super.js b/test/language/statements/class/elements/syntax/early-errors/grammar-static-set-meth-super.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/grammar-static-set-meth-super.js rename to test/language/statements/class/elements/syntax/early-errors/grammar-static-set-meth-super.js diff --git a/test/language/statements/class/syntax/early-errors/private-async-generator-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-async-generator-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-async-generator-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-async-generator-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-async-method-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-async-method-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-async-method-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-async-method-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-call-exp-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-call-exp-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-call-exp-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-call-exp-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-field-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-field-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-field-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-field-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-generator-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-generator-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-generator-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-generator-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-member-exp-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-member-exp-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-member-exp-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-member-exp-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/private-method-cannot-escape-token.js b/test/language/statements/class/elements/syntax/early-errors/private-method-cannot-escape-token.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/private-method-cannot-escape-token.js rename to test/language/statements/class/elements/syntax/early-errors/private-method-cannot-escape-token.js diff --git a/test/language/statements/class/syntax/early-errors/super-private-access-invalid.js b/test/language/statements/class/elements/syntax/early-errors/super-private-access-invalid.js similarity index 100% rename from test/language/statements/class/syntax/early-errors/super-private-access-invalid.js rename to test/language/statements/class/elements/syntax/early-errors/super-private-access-invalid.js diff --git a/test/language/statements/class/syntax/valid/grammar-class-body-ctor-no-heritage.js b/test/language/statements/class/elements/syntax/valid/grammar-class-body-ctor-no-heritage.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-class-body-ctor-no-heritage.js rename to test/language/statements/class/elements/syntax/valid/grammar-class-body-ctor-no-heritage.js diff --git a/test/language/statements/class/syntax/valid/grammar-field-classelementname-initializer-alt.js b/test/language/statements/class/elements/syntax/valid/grammar-field-classelementname-initializer-alt.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-field-classelementname-initializer-alt.js rename to test/language/statements/class/elements/syntax/valid/grammar-field-classelementname-initializer-alt.js diff --git a/test/language/statements/class/syntax/valid/grammar-field-classelementname-initializer.js b/test/language/statements/class/elements/syntax/valid/grammar-field-classelementname-initializer.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-field-classelementname-initializer.js rename to test/language/statements/class/elements/syntax/valid/grammar-field-classelementname-initializer.js diff --git a/test/language/statements/class/syntax/valid/grammar-field-identifier-alt.js b/test/language/statements/class/elements/syntax/valid/grammar-field-identifier-alt.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-field-identifier-alt.js rename to test/language/statements/class/elements/syntax/valid/grammar-field-identifier-alt.js diff --git a/test/language/statements/class/syntax/valid/grammar-field-identifier.js b/test/language/statements/class/elements/syntax/valid/grammar-field-identifier.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-field-identifier.js rename to test/language/statements/class/elements/syntax/valid/grammar-field-identifier.js diff --git a/test/language/statements/class/syntax/valid/grammar-fields-multi-line.js b/test/language/statements/class/elements/syntax/valid/grammar-fields-multi-line.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-fields-multi-line.js rename to test/language/statements/class/elements/syntax/valid/grammar-fields-multi-line.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatemeth-duplicate-get-set.js b/test/language/statements/class/elements/syntax/valid/grammar-privatemeth-duplicate-get-set.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatemeth-duplicate-get-set.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatemeth-duplicate-get-set.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js b/test/language/statements/class/elements/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatemeth-duplicate-meth-nestedclassmeth.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatename-classelementname-initializer-alt.js b/test/language/statements/class/elements/syntax/valid/grammar-privatename-classelementname-initializer-alt.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatename-classelementname-initializer-alt.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatename-classelementname-initializer-alt.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatename-classelementname-initializer.js b/test/language/statements/class/elements/syntax/valid/grammar-privatename-classelementname-initializer.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatename-classelementname-initializer.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatename-classelementname-initializer.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatename-identifier.js b/test/language/statements/class/elements/syntax/valid/grammar-privatename-identifier.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatename-identifier.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatename-identifier.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatename-no-initializer-with-method.js b/test/language/statements/class/elements/syntax/valid/grammar-privatename-no-initializer-with-method.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatename-no-initializer-with-method.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatename-no-initializer-with-method.js diff --git a/test/language/statements/class/syntax/valid/grammar-privatenames-multi-line.js b/test/language/statements/class/elements/syntax/valid/grammar-privatenames-multi-line.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-privatenames-multi-line.js rename to test/language/statements/class/elements/syntax/valid/grammar-privatenames-multi-line.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-ctor-accessor-meth-valid.js b/test/language/statements/class/elements/syntax/valid/grammar-static-ctor-accessor-meth-valid.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-ctor-accessor-meth-valid.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-ctor-accessor-meth-valid.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js b/test/language/statements/class/elements/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-ctor-async-gen-meth-valid.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-ctor-async-meth-valid.js b/test/language/statements/class/elements/syntax/valid/grammar-static-ctor-async-meth-valid.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-ctor-async-meth-valid.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-ctor-async-meth-valid.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-ctor-gen-meth-valid.js b/test/language/statements/class/elements/syntax/valid/grammar-static-ctor-gen-meth-valid.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-ctor-gen-meth-valid.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-ctor-gen-meth-valid.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-ctor-meth-valid.js b/test/language/statements/class/elements/syntax/valid/grammar-static-ctor-meth-valid.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-ctor-meth-valid.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-ctor-meth-valid.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-private-async-gen-meth-prototype.js b/test/language/statements/class/elements/syntax/valid/grammar-static-private-async-gen-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-private-async-gen-meth-prototype.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-private-async-gen-meth-prototype.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-private-async-meth-prototype.js b/test/language/statements/class/elements/syntax/valid/grammar-static-private-async-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-private-async-meth-prototype.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-private-async-meth-prototype.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-private-gen-meth-prototype.js b/test/language/statements/class/elements/syntax/valid/grammar-static-private-gen-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-private-gen-meth-prototype.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-private-gen-meth-prototype.js diff --git a/test/language/statements/class/syntax/valid/grammar-static-private-meth-prototype.js b/test/language/statements/class/elements/syntax/valid/grammar-static-private-meth-prototype.js similarity index 100% rename from test/language/statements/class/syntax/valid/grammar-static-private-meth-prototype.js rename to test/language/statements/class/elements/syntax/valid/grammar-static-private-meth-prototype.js diff --git a/test/language/statements/class/fields-ternary-init-err-contains-arguments.js b/test/language/statements/class/elements/ternary-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-ternary-init-err-contains-arguments.js rename to test/language/statements/class/elements/ternary-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-ternary-init-err-contains-super.js b/test/language/statements/class/elements/ternary-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-ternary-init-err-contains-super.js rename to test/language/statements/class/elements/ternary-init-err-contains-super.js diff --git a/test/language/statements/class/fields-typeof-init-err-contains-arguments.js b/test/language/statements/class/elements/typeof-init-err-contains-arguments.js similarity index 100% rename from test/language/statements/class/fields-typeof-init-err-contains-arguments.js rename to test/language/statements/class/elements/typeof-init-err-contains-arguments.js diff --git a/test/language/statements/class/fields-typeof-init-err-contains-super.js b/test/language/statements/class/elements/typeof-init-err-contains-super.js similarity index 100% rename from test/language/statements/class/fields-typeof-init-err-contains-super.js rename to test/language/statements/class/elements/typeof-init-err-contains-super.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-computed-names.js b/test/language/statements/class/elements/wrapped-in-sc-computed-names.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-computed-names.js rename to test/language/statements/class/elements/wrapped-in-sc-computed-names.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-computed-symbol-names.js b/test/language/statements/class/elements/wrapped-in-sc-computed-symbol-names.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-computed-symbol-names.js rename to test/language/statements/class/elements/wrapped-in-sc-computed-symbol-names.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js b/test/language/statements/class/elements/wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js rename to test/language/statements/class/elements/wrapped-in-sc-grammar-privatename-identifier-semantics-stringvalue.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-literal-names-asi.js b/test/language/statements/class/elements/wrapped-in-sc-literal-names-asi.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-literal-names-asi.js rename to test/language/statements/class/elements/wrapped-in-sc-literal-names-asi.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-literal-names.js b/test/language/statements/class/elements/wrapped-in-sc-literal-names.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-literal-names.js rename to test/language/statements/class/elements/wrapped-in-sc-literal-names.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-private-field-usage.js b/test/language/statements/class/elements/wrapped-in-sc-private-field-usage.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-private-field-usage.js rename to test/language/statements/class/elements/wrapped-in-sc-private-field-usage.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-private-method-getter-usage.js b/test/language/statements/class/elements/wrapped-in-sc-private-method-getter-usage.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-private-method-getter-usage.js rename to test/language/statements/class/elements/wrapped-in-sc-private-method-getter-usage.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-private-method-usage.js b/test/language/statements/class/elements/wrapped-in-sc-private-method-usage.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-private-method-usage.js rename to test/language/statements/class/elements/wrapped-in-sc-private-method-usage.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-private-names.js b/test/language/statements/class/elements/wrapped-in-sc-private-names.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-private-names.js rename to test/language/statements/class/elements/wrapped-in-sc-private-names.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-field-identifier-initializer.js b/test/language/statements/class/elements/wrapped-in-sc-rs-field-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-field-identifier-initializer.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-field-identifier-initializer.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-field-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-field-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-field-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-field-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-getter-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-getter-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-getter-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-getter-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-getter.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-getter.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-getter.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-getter.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-method-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-method-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-method-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-method-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-method.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-method.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-method.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-method.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-setter-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-setter-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-setter-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-setter-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-private-setter.js b/test/language/statements/class/elements/wrapped-in-sc-rs-private-setter.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-private-setter.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-private-setter.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer.js b/test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier-initializer.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-async-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-async-method-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-async-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-generator-method-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-generator-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-method-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-method-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt-by-classname.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-by-classname.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-by-classname.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-by-classname.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-by-classname.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt-by-classname.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer-alt.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier-initializer.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier-initializer.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier.js b/test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-rs-static-privatename-identifier.js rename to test/language/statements/class/elements/wrapped-in-sc-rs-static-privatename-identifier.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-static-private-fields.js b/test/language/statements/class/elements/wrapped-in-sc-static-private-fields.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-static-private-fields.js rename to test/language/statements/class/elements/wrapped-in-sc-static-private-fields.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-static-private-methods-with-fields.js b/test/language/statements/class/elements/wrapped-in-sc-static-private-methods-with-fields.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-static-private-methods-with-fields.js rename to test/language/statements/class/elements/wrapped-in-sc-static-private-methods-with-fields.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-static-private-methods.js b/test/language/statements/class/elements/wrapped-in-sc-static-private-methods.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-static-private-methods.js rename to test/language/statements/class/elements/wrapped-in-sc-static-private-methods.js diff --git a/test/language/statements/class/fields-wrapped-in-sc-string-literal-names.js b/test/language/statements/class/elements/wrapped-in-sc-string-literal-names.js similarity index 100% rename from test/language/statements/class/fields-wrapped-in-sc-string-literal-names.js rename to test/language/statements/class/elements/wrapped-in-sc-string-literal-names.js diff --git a/test/language/statements/const/dstr-ary-init-iter-close.js b/test/language/statements/const/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/const/dstr-ary-init-iter-close.js rename to test/language/statements/const/dstr/ary-init-iter-close.js diff --git a/test/language/statements/const/dstr-ary-init-iter-get-err.js b/test/language/statements/const/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-init-iter-get-err.js rename to test/language/statements/const/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/const/dstr-ary-init-iter-no-close.js b/test/language/statements/const/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/const/dstr-ary-init-iter-no-close.js rename to test/language/statements/const/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/const/dstr-ary-name-iter-val.js b/test/language/statements/const/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/const/dstr-ary-name-iter-val.js rename to test/language/statements/const/dstr/ary-name-iter-val.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/const/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/const/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/const/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/const/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/const/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/const/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/const/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/const/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/const/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/const/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-elision.js b/test/language/statements/const/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-elision.js rename to test/language/statements/const/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/const/dstr-ary-ptrn-empty.js b/test/language/statements/const/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-empty.js rename to test/language/statements/const/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/const/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/const/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/const/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/const/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/const/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/const/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/const/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/const/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/const/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/const/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/const/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/const/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/const/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-id.js b/test/language/statements/const/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-id.js rename to test/language/statements/const/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/const/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/const/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/const/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/const/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/const/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/const/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/const/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/const/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/const/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/const/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/const/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/const/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/const/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/const/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/const/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/const/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/const/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/const/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/const/dstr-obj-init-null.js b/test/language/statements/const/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/const/dstr-obj-init-null.js rename to test/language/statements/const/dstr/obj-init-null.js diff --git a/test/language/statements/const/dstr-obj-init-undefined.js b/test/language/statements/const/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/const/dstr-obj-init-undefined.js rename to test/language/statements/const/dstr/obj-init-undefined.js diff --git a/test/language/statements/const/dstr-obj-ptrn-empty.js b/test/language/statements/const/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-empty.js rename to test/language/statements/const/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/const/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/const/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/const/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/const/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/const/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/const/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/const/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/const/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/const/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/const/dstr-obj-ptrn-list-err.js b/test/language/statements/const/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-list-err.js rename to test/language/statements/const/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/const/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/const/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/const/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/const/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/const/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/const/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-ary.js b/test/language/statements/const/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/const/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/const/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/const/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/const/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-id.js b/test/language/statements/const/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-id.js rename to test/language/statements/const/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/const/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/const/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/const/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/const/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/const/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/const/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/const/dstr-obj-ptrn-prop-obj.js b/test/language/statements/const/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/const/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/const/dstr-obj-ptrn-rest-getter.js b/test/language/statements/const/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/const/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/const/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/const/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/const/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/const/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/const/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/const/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/const/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for-in/dstr-array-elem-init-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-init-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-elem-init-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-array-elem-nested-array-invalid.js b/test/language/statements/for-in/dstr/array-elem-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-nested-array-invalid.js rename to test/language/statements/for-in/dstr/array-elem-nested-array-invalid.js diff --git a/test/language/statements/for-in/dstr-array-elem-nested-array-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-elem-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-nested-array-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-elem-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-array-elem-nested-obj-invalid.js b/test/language/statements/for-in/dstr/array-elem-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-nested-obj-invalid.js rename to test/language/statements/for-in/dstr/array-elem-nested-obj-invalid.js diff --git a/test/language/statements/for-in/dstr-array-elem-nested-obj-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-elem-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-elem-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-array-elem-target-simple-strict.js b/test/language/statements/for-in/dstr/array-elem-target-simple-strict.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-target-simple-strict.js rename to test/language/statements/for-in/dstr/array-elem-target-simple-strict.js diff --git a/test/language/statements/for-in/dstr-array-elem-target-yield-invalid.js b/test/language/statements/for-in/dstr/array-elem-target-yield-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-elem-target-yield-invalid.js rename to test/language/statements/for-in/dstr/array-elem-target-yield-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-before-element.js b/test/language/statements/for-in/dstr/array-rest-before-element.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-before-element.js rename to test/language/statements/for-in/dstr/array-rest-before-element.js diff --git a/test/language/statements/for-in/dstr-array-rest-before-elision.js b/test/language/statements/for-in/dstr/array-rest-before-elision.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-before-elision.js rename to test/language/statements/for-in/dstr/array-rest-before-elision.js diff --git a/test/language/statements/for-in/dstr-array-rest-before-rest.js b/test/language/statements/for-in/dstr/array-rest-before-rest.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-before-rest.js rename to test/language/statements/for-in/dstr/array-rest-before-rest.js diff --git a/test/language/statements/for-in/dstr-array-rest-elision-invalid.js b/test/language/statements/for-in/dstr/array-rest-elision-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-elision-invalid.js rename to test/language/statements/for-in/dstr/array-rest-elision-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-init.js b/test/language/statements/for-in/dstr/array-rest-init.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-init.js rename to test/language/statements/for-in/dstr/array-rest-init.js diff --git a/test/language/statements/for-in/dstr-array-rest-nested-array-invalid.js b/test/language/statements/for-in/dstr/array-rest-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-nested-array-invalid.js rename to test/language/statements/for-in/dstr/array-rest-nested-array-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-nested-array-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-rest-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-nested-array-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-rest-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-nested-obj-invalid.js b/test/language/statements/for-in/dstr/array-rest-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-nested-obj-invalid.js rename to test/language/statements/for-in/dstr/array-rest-nested-obj-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-nested-obj-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-rest-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-rest-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-array-rest-yield-ident-invalid.js b/test/language/statements/for-in/dstr/array-rest-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-array-rest-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/array-rest-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-id-identifier-yield-expr.js b/test/language/statements/for-in/dstr/obj-id-identifier-yield-expr.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-id-identifier-yield-expr.js rename to test/language/statements/for-in/dstr/obj-id-identifier-yield-expr.js diff --git a/test/language/statements/for-in/dstr-obj-id-identifier-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-id-identifier-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-id-identifier-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-id-identifier-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-id-init-simple-strict.js b/test/language/statements/for-in/dstr/obj-id-init-simple-strict.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-id-init-simple-strict.js rename to test/language/statements/for-in/dstr/obj-id-init-simple-strict.js diff --git a/test/language/statements/for-in/dstr-obj-id-init-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-id-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-id-init-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-id-init-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-id-simple-strict.js b/test/language/statements/for-in/dstr/obj-id-simple-strict.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-id-simple-strict.js rename to test/language/statements/for-in/dstr/obj-id-simple-strict.js diff --git a/test/language/statements/for-in/dstr-obj-prop-elem-init-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-prop-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-elem-init-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-elem-init-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-prop-elem-target-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-prop-elem-target-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-elem-target-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-elem-target-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-prop-nested-array-invalid.js b/test/language/statements/for-in/dstr/obj-prop-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-nested-array-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-nested-array-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-prop-nested-array-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-prop-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-nested-array-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-prop-nested-obj-invalid.js b/test/language/statements/for-in/dstr/obj-prop-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-nested-obj-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-nested-obj-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-prop-nested-obj-yield-ident-invalid.js b/test/language/statements/for-in/dstr/obj-prop-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-prop-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-in/dstr/obj-prop-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-in/dstr-obj-rest-not-last-element-invalid.js b/test/language/statements/for-in/dstr/obj-rest-not-last-element-invalid.js similarity index 100% rename from test/language/statements/for-in/dstr-obj-rest-not-last-element-invalid.js rename to test/language/statements/for-in/dstr/obj-rest-not-last-element-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-assignment.js b/test/language/statements/for-of/dstr/array-elem-init-assignment.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-assignment.js rename to test/language/statements/for-of/dstr/array-elem-init-assignment.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-evaluation.js b/test/language/statements/for-of/dstr/array-elem-init-evaluation.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-evaluation.js rename to test/language/statements/for-of/dstr/array-elem-init-evaluation.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/array-elem-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/array-elem-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-fn-name-class.js b/test/language/statements/for-of/dstr/array-elem-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-fn-name-class.js rename to test/language/statements/for-of/dstr/array-elem-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-fn-name-cover.js b/test/language/statements/for-of/dstr/array-elem-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/array-elem-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-fn-name-fn.js b/test/language/statements/for-of/dstr/array-elem-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/array-elem-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-fn-name-gen.js b/test/language/statements/for-of/dstr/array-elem-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/array-elem-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-in.js b/test/language/statements/for-of/dstr/array-elem-init-in.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-in.js rename to test/language/statements/for-of/dstr/array-elem-init-in.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-let.js b/test/language/statements/for-of/dstr/array-elem-init-let.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-let.js rename to test/language/statements/for-of/dstr/array-elem-init-let.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-order.js b/test/language/statements/for-of/dstr/array-elem-init-order.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-order.js rename to test/language/statements/for-of/dstr/array-elem-init-order.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-simple-no-strict.js b/test/language/statements/for-of/dstr/array-elem-init-simple-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-simple-no-strict.js rename to test/language/statements/for-of/dstr/array-elem-init-simple-no-strict.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-yield-expr.js b/test/language/statements/for-of/dstr/array-elem-init-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-yield-expr.js rename to test/language/statements/for-of/dstr/array-elem-init-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-elem-init-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-init-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-elem-init-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-init-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-elem-init-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-get-err.js b/test/language/statements/for-of/dstr/array-elem-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-get-err.js rename to test/language/statements/for-of/dstr/array-elem-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-nrml-close-err.js b/test/language/statements/for-of/dstr/array-elem-iter-nrml-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-nrml-close-err.js rename to test/language/statements/for-of/dstr/array-elem-iter-nrml-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-nrml-close-null.js b/test/language/statements/for-of/dstr/array-elem-iter-nrml-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-nrml-close-null.js rename to test/language/statements/for-of/dstr/array-elem-iter-nrml-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-elem-iter-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-iter-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-nrml-close.js b/test/language/statements/for-of/dstr/array-elem-iter-nrml-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-nrml-close.js rename to test/language/statements/for-of/dstr/array-elem-iter-nrml-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-rtrn-close-err.js b/test/language/statements/for-of/dstr/array-elem-iter-rtrn-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-rtrn-close-err.js rename to test/language/statements/for-of/dstr/array-elem-iter-rtrn-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-rtrn-close-null.js b/test/language/statements/for-of/dstr/array-elem-iter-rtrn-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-rtrn-close-null.js rename to test/language/statements/for-of/dstr/array-elem-iter-rtrn-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-rtrn-close.js b/test/language/statements/for-of/dstr/array-elem-iter-rtrn-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-rtrn-close.js rename to test/language/statements/for-of/dstr/array-elem-iter-rtrn-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-thrw-close-err.js b/test/language/statements/for-of/dstr/array-elem-iter-thrw-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-thrw-close-err.js rename to test/language/statements/for-of/dstr/array-elem-iter-thrw-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-thrw-close-skip.js b/test/language/statements/for-of/dstr/array-elem-iter-thrw-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-thrw-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-iter-thrw-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-iter-thrw-close.js b/test/language/statements/for-of/dstr/array-elem-iter-thrw-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-iter-thrw-close.js rename to test/language/statements/for-of/dstr/array-elem-iter-thrw-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-invalid.js b/test/language/statements/for-of/dstr/array-elem-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-invalid.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-null.js b/test/language/statements/for-of/dstr/array-elem-nested-array-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-null.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-undefined-hole.js b/test/language/statements/for-of/dstr/array-elem-nested-array-undefined-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-undefined-hole.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-undefined-hole.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-undefined-own.js b/test/language/statements/for-of/dstr/array-elem-nested-array-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-undefined-own.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-undefined-own.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-undefined.js b/test/language/statements/for-of/dstr/array-elem-nested-array-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-undefined.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-undefined.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-yield-expr.js b/test/language/statements/for-of/dstr/array-elem-nested-array-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-yield-expr.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-elem-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-elem-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-elem-nested-array-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-array.js b/test/language/statements/for-of/dstr/array-elem-nested-array.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-array.js rename to test/language/statements/for-of/dstr/array-elem-nested-array.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-invalid.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-invalid.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-null.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-null.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-undefined-hole.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-undefined-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-undefined-hole.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-undefined-hole.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-undefined-own.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-undefined-own.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-undefined-own.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-undefined.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-undefined.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-undefined.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-yield-expr.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-yield-expr.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-elem-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-array-elem-nested-obj.js b/test/language/statements/for-of/dstr/array-elem-nested-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-nested-obj.js rename to test/language/statements/for-of/dstr/array-elem-nested-obj.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-const.js b/test/language/statements/for-of/dstr/array-elem-put-const.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-const.js rename to test/language/statements/for-of/dstr/array-elem-put-const.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-let.js b/test/language/statements/for-of/dstr/array-elem-put-let.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-let.js rename to test/language/statements/for-of/dstr/array-elem-put-let.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-prop-ref-no-get.js b/test/language/statements/for-of/dstr/array-elem-put-prop-ref-no-get.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-prop-ref-no-get.js rename to test/language/statements/for-of/dstr/array-elem-put-prop-ref-no-get.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-prop-ref-user-err.js b/test/language/statements/for-of/dstr/array-elem-put-prop-ref-user-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-prop-ref-user-err.js rename to test/language/statements/for-of/dstr/array-elem-put-prop-ref-user-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-prop-ref.js b/test/language/statements/for-of/dstr/array-elem-put-prop-ref.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-prop-ref.js rename to test/language/statements/for-of/dstr/array-elem-put-prop-ref.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-unresolvable-no-strict.js b/test/language/statements/for-of/dstr/array-elem-put-unresolvable-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-unresolvable-no-strict.js rename to test/language/statements/for-of/dstr/array-elem-put-unresolvable-no-strict.js diff --git a/test/language/statements/for-of/dstr-array-elem-put-unresolvable-strict.js b/test/language/statements/for-of/dstr/array-elem-put-unresolvable-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-put-unresolvable-strict.js rename to test/language/statements/for-of/dstr/array-elem-put-unresolvable-strict.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-identifier.js b/test/language/statements/for-of/dstr/array-elem-target-identifier.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-identifier.js rename to test/language/statements/for-of/dstr/array-elem-target-identifier.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-simple-no-strict.js b/test/language/statements/for-of/dstr/array-elem-target-simple-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-simple-no-strict.js rename to test/language/statements/for-of/dstr/array-elem-target-simple-no-strict.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-simple-strict.js b/test/language/statements/for-of/dstr/array-elem-target-simple-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-simple-strict.js rename to test/language/statements/for-of/dstr/array-elem-target-simple-strict.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-yield-expr.js b/test/language/statements/for-of/dstr/array-elem-target-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-yield-expr.js rename to test/language/statements/for-of/dstr/array-elem-target-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-yield-invalid.js b/test/language/statements/for-of/dstr/array-elem-target-yield-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-yield-invalid.js rename to test/language/statements/for-of/dstr/array-elem-target-yield-invalid.js diff --git a/test/language/statements/for-of/dstr-array-elem-target-yield-valid.js b/test/language/statements/for-of/dstr/array-elem-target-yield-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-target-yield-valid.js rename to test/language/statements/for-of/dstr/array-elem-target-yield-valid.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-abpt.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-abpt.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-abpt.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-abpt.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-null.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-null.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-elision-iter-nrml-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-elision-iter-nrml-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-get-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-get-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-null.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-null.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-nrml-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-nrml-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-null.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close-null.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-rtrn-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-rtrn-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close-skip.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-list-thrw-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-list-thrw-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-null.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close-null.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-rtrn-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-rtrn-close.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close-err.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close-err.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close-skip.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close-skip.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close.js b/test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elem-trlg-iter-rest-thrw-close.js rename to test/language/statements/for-of/dstr/array-elem-trlg-iter-rest-thrw-close.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-abpt.js b/test/language/statements/for-of/dstr/array-elision-iter-abpt.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-abpt.js rename to test/language/statements/for-of/dstr/array-elision-iter-abpt.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-get-err.js b/test/language/statements/for-of/dstr/array-elision-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-get-err.js rename to test/language/statements/for-of/dstr/array-elision-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-nrml-close-err.js b/test/language/statements/for-of/dstr/array-elision-iter-nrml-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-nrml-close-err.js rename to test/language/statements/for-of/dstr/array-elision-iter-nrml-close-err.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-nrml-close-null.js b/test/language/statements/for-of/dstr/array-elision-iter-nrml-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-nrml-close-null.js rename to test/language/statements/for-of/dstr/array-elision-iter-nrml-close-null.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-elision-iter-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-elision-iter-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-elision-iter-nrml-close.js b/test/language/statements/for-of/dstr/array-elision-iter-nrml-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-iter-nrml-close.js rename to test/language/statements/for-of/dstr/array-elision-iter-nrml-close.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-array.js b/test/language/statements/for-of/dstr/array-elision-val-array.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-array.js rename to test/language/statements/for-of/dstr/array-elision-val-array.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-bool.js b/test/language/statements/for-of/dstr/array-elision-val-bool.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-bool.js rename to test/language/statements/for-of/dstr/array-elision-val-bool.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-null.js b/test/language/statements/for-of/dstr/array-elision-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-null.js rename to test/language/statements/for-of/dstr/array-elision-val-null.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-num.js b/test/language/statements/for-of/dstr/array-elision-val-num.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-num.js rename to test/language/statements/for-of/dstr/array-elision-val-num.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-string.js b/test/language/statements/for-of/dstr/array-elision-val-string.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-string.js rename to test/language/statements/for-of/dstr/array-elision-val-string.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-symbol.js b/test/language/statements/for-of/dstr/array-elision-val-symbol.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-symbol.js rename to test/language/statements/for-of/dstr/array-elision-val-symbol.js diff --git a/test/language/statements/for-of/dstr-array-elision-val-undef.js b/test/language/statements/for-of/dstr/array-elision-val-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-array-elision-val-undef.js rename to test/language/statements/for-of/dstr/array-elision-val-undef.js diff --git a/test/language/statements/for-of/dstr-array-empty-iter-close-err.js b/test/language/statements/for-of/dstr/array-empty-iter-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-iter-close-err.js rename to test/language/statements/for-of/dstr/array-empty-iter-close-err.js diff --git a/test/language/statements/for-of/dstr-array-empty-iter-close-null.js b/test/language/statements/for-of/dstr/array-empty-iter-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-iter-close-null.js rename to test/language/statements/for-of/dstr/array-empty-iter-close-null.js diff --git a/test/language/statements/for-of/dstr-array-empty-iter-close.js b/test/language/statements/for-of/dstr/array-empty-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-iter-close.js rename to test/language/statements/for-of/dstr/array-empty-iter-close.js diff --git a/test/language/statements/for-of/dstr-array-empty-iter-get-err.js b/test/language/statements/for-of/dstr/array-empty-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-iter-get-err.js rename to test/language/statements/for-of/dstr/array-empty-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-array.js b/test/language/statements/for-of/dstr/array-empty-val-array.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-array.js rename to test/language/statements/for-of/dstr/array-empty-val-array.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-bool.js b/test/language/statements/for-of/dstr/array-empty-val-bool.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-bool.js rename to test/language/statements/for-of/dstr/array-empty-val-bool.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-null.js b/test/language/statements/for-of/dstr/array-empty-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-null.js rename to test/language/statements/for-of/dstr/array-empty-val-null.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-num.js b/test/language/statements/for-of/dstr/array-empty-val-num.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-num.js rename to test/language/statements/for-of/dstr/array-empty-val-num.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-string.js b/test/language/statements/for-of/dstr/array-empty-val-string.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-string.js rename to test/language/statements/for-of/dstr/array-empty-val-string.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-symbol.js b/test/language/statements/for-of/dstr/array-empty-val-symbol.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-symbol.js rename to test/language/statements/for-of/dstr/array-empty-val-symbol.js diff --git a/test/language/statements/for-of/dstr-array-empty-val-undef.js b/test/language/statements/for-of/dstr/array-empty-val-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-array-empty-val-undef.js rename to test/language/statements/for-of/dstr/array-empty-val-undef.js diff --git a/test/language/statements/for-of/dstr-array-iteration.js b/test/language/statements/for-of/dstr/array-iteration.js similarity index 100% rename from test/language/statements/for-of/dstr-array-iteration.js rename to test/language/statements/for-of/dstr/array-iteration.js diff --git a/test/language/statements/for-of/dstr-array-rest-after-element.js b/test/language/statements/for-of/dstr/array-rest-after-element.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-after-element.js rename to test/language/statements/for-of/dstr/array-rest-after-element.js diff --git a/test/language/statements/for-of/dstr-array-rest-after-elision.js b/test/language/statements/for-of/dstr/array-rest-after-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-after-elision.js rename to test/language/statements/for-of/dstr/array-rest-after-elision.js diff --git a/test/language/statements/for-of/dstr-array-rest-before-element.js b/test/language/statements/for-of/dstr/array-rest-before-element.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-before-element.js rename to test/language/statements/for-of/dstr/array-rest-before-element.js diff --git a/test/language/statements/for-of/dstr-array-rest-before-elision.js b/test/language/statements/for-of/dstr/array-rest-before-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-before-elision.js rename to test/language/statements/for-of/dstr/array-rest-before-elision.js diff --git a/test/language/statements/for-of/dstr-array-rest-before-rest.js b/test/language/statements/for-of/dstr/array-rest-before-rest.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-before-rest.js rename to test/language/statements/for-of/dstr/array-rest-before-rest.js diff --git a/test/language/statements/for-of/dstr-array-rest-elision-invalid.js b/test/language/statements/for-of/dstr/array-rest-elision-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-elision-invalid.js rename to test/language/statements/for-of/dstr/array-rest-elision-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-elision-iter-abpt.js b/test/language/statements/for-of/dstr/array-rest-elision-iter-abpt.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-elision-iter-abpt.js rename to test/language/statements/for-of/dstr/array-rest-elision-iter-abpt.js diff --git a/test/language/statements/for-of/dstr-array-rest-elision.js b/test/language/statements/for-of/dstr/array-rest-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-elision.js rename to test/language/statements/for-of/dstr/array-rest-elision.js diff --git a/test/language/statements/for-of/dstr-array-rest-init.js b/test/language/statements/for-of/dstr/array-rest-init.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-init.js rename to test/language/statements/for-of/dstr/array-rest-init.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-get-err.js b/test/language/statements/for-of/dstr/array-rest-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-get-err.js rename to test/language/statements/for-of/dstr/array-rest-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-nrml-close-skip.js b/test/language/statements/for-of/dstr/array-rest-iter-nrml-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-nrml-close-skip.js rename to test/language/statements/for-of/dstr/array-rest-iter-nrml-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-rtrn-close-err.js b/test/language/statements/for-of/dstr/array-rest-iter-rtrn-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-rtrn-close-err.js rename to test/language/statements/for-of/dstr/array-rest-iter-rtrn-close-err.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-rtrn-close-null.js b/test/language/statements/for-of/dstr/array-rest-iter-rtrn-close-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-rtrn-close-null.js rename to test/language/statements/for-of/dstr/array-rest-iter-rtrn-close-null.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-rtrn-close.js b/test/language/statements/for-of/dstr/array-rest-iter-rtrn-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-rtrn-close.js rename to test/language/statements/for-of/dstr/array-rest-iter-rtrn-close.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-thrw-close-err.js b/test/language/statements/for-of/dstr/array-rest-iter-thrw-close-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-thrw-close-err.js rename to test/language/statements/for-of/dstr/array-rest-iter-thrw-close-err.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-thrw-close-skip.js b/test/language/statements/for-of/dstr/array-rest-iter-thrw-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-thrw-close-skip.js rename to test/language/statements/for-of/dstr/array-rest-iter-thrw-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-rest-iter-thrw-close.js b/test/language/statements/for-of/dstr/array-rest-iter-thrw-close.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iter-thrw-close.js rename to test/language/statements/for-of/dstr/array-rest-iter-thrw-close.js diff --git a/test/language/statements/for-of/dstr-array-rest-iteration.js b/test/language/statements/for-of/dstr/array-rest-iteration.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-iteration.js rename to test/language/statements/for-of/dstr/array-rest-iteration.js diff --git a/test/language/statements/for-of/dstr-array-rest-lref-err.js b/test/language/statements/for-of/dstr/array-rest-lref-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-lref-err.js rename to test/language/statements/for-of/dstr/array-rest-lref-err.js diff --git a/test/language/statements/for-of/dstr-array-rest-lref.js b/test/language/statements/for-of/dstr/array-rest-lref.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-lref.js rename to test/language/statements/for-of/dstr/array-rest-lref.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-invalid.js b/test/language/statements/for-of/dstr/array-rest-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-invalid.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-iter-thrw-close-skip.js b/test/language/statements/for-of/dstr/array-rest-nested-array-iter-thrw-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-iter-thrw-close-skip.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-iter-thrw-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-null.js b/test/language/statements/for-of/dstr/array-rest-nested-array-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-null.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-null.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-undefined-hole.js b/test/language/statements/for-of/dstr/array-rest-nested-array-undefined-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-undefined-hole.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-undefined-hole.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-undefined-own.js b/test/language/statements/for-of/dstr/array-rest-nested-array-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-undefined-own.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-undefined-own.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-undefined.js b/test/language/statements/for-of/dstr/array-rest-nested-array-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-undefined.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-undefined.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-yield-expr.js b/test/language/statements/for-of/dstr/array-rest-nested-array-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-yield-expr.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-rest-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-rest-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-rest-nested-array-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-array.js b/test/language/statements/for-of/dstr/array-rest-nested-array.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-array.js rename to test/language/statements/for-of/dstr/array-rest-nested-array.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-invalid.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-invalid.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-null.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-null.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-null.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-null.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-undefined-hole.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-undefined-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-undefined-hole.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-undefined-hole.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-undefined-own.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-undefined-own.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-undefined-own.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-undefined.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-undefined.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-undefined.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-yield-expr.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-yield-expr.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-rest-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-array-rest-nested-obj.js b/test/language/statements/for-of/dstr/array-rest-nested-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-nested-obj.js rename to test/language/statements/for-of/dstr/array-rest-nested-obj.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-const.js b/test/language/statements/for-of/dstr/array-rest-put-const.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-const.js rename to test/language/statements/for-of/dstr/array-rest-put-const.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-let.js b/test/language/statements/for-of/dstr/array-rest-put-let.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-let.js rename to test/language/statements/for-of/dstr/array-rest-put-let.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-prop-ref-no-get.js b/test/language/statements/for-of/dstr/array-rest-put-prop-ref-no-get.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-prop-ref-no-get.js rename to test/language/statements/for-of/dstr/array-rest-put-prop-ref-no-get.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-prop-ref-user-err-iter-close-skip.js b/test/language/statements/for-of/dstr/array-rest-put-prop-ref-user-err-iter-close-skip.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-prop-ref-user-err-iter-close-skip.js rename to test/language/statements/for-of/dstr/array-rest-put-prop-ref-user-err-iter-close-skip.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-prop-ref-user-err.js b/test/language/statements/for-of/dstr/array-rest-put-prop-ref-user-err.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-prop-ref-user-err.js rename to test/language/statements/for-of/dstr/array-rest-put-prop-ref-user-err.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-prop-ref.js b/test/language/statements/for-of/dstr/array-rest-put-prop-ref.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-prop-ref.js rename to test/language/statements/for-of/dstr/array-rest-put-prop-ref.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-unresolvable-no-strict.js b/test/language/statements/for-of/dstr/array-rest-put-unresolvable-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-unresolvable-no-strict.js rename to test/language/statements/for-of/dstr/array-rest-put-unresolvable-no-strict.js diff --git a/test/language/statements/for-of/dstr-array-rest-put-unresolvable-strict.js b/test/language/statements/for-of/dstr/array-rest-put-unresolvable-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-put-unresolvable-strict.js rename to test/language/statements/for-of/dstr/array-rest-put-unresolvable-strict.js diff --git a/test/language/statements/for-of/dstr-array-rest-yield-expr.js b/test/language/statements/for-of/dstr/array-rest-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-yield-expr.js rename to test/language/statements/for-of/dstr/array-rest-yield-expr.js diff --git a/test/language/statements/for-of/dstr-array-rest-yield-ident-invalid.js b/test/language/statements/for-of/dstr/array-rest-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/array-rest-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-array-rest-yield-ident-valid.js b/test/language/statements/for-of/dstr/array-rest-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-array-rest-yield-ident-valid.js rename to test/language/statements/for-of/dstr/array-rest-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-const-ary-init-iter-close.js b/test/language/statements/for-of/dstr/const-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-init-iter-close.js rename to test/language/statements/for-of/dstr/const-ary-init-iter-close.js diff --git a/test/language/statements/for-of/dstr-const-ary-init-iter-get-err.js b/test/language/statements/for-of/dstr/const-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-init-iter-get-err.js rename to test/language/statements/for-of/dstr/const-ary-init-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-init-iter-no-close.js b/test/language/statements/for-of/dstr/const-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-init-iter-no-close.js rename to test/language/statements/for-of/dstr/const-ary-init-iter-no-close.js diff --git a/test/language/statements/for-of/dstr-const-ary-name-iter-val.js b/test/language/statements/for-of/dstr/const-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-name-iter-val.js rename to test/language/statements/for-of/dstr/const-ary-name-iter-val.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elision-exhausted.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elision-exhausted.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elision-iter-close.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elision-iter-close.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elision-step-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elision-step-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-elision.js b/test/language/statements/for-of/dstr/const-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-elision.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-elision.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-empty.js b/test/language/statements/for-of/dstr/const-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-empty.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-elision.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-elision.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-ary.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-ary.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-obj.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-init-obj.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-obj-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-obj-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for-of/dstr-const-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-of/dstr/const-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for-of/dstr/const-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-const-obj-init-null.js b/test/language/statements/for-of/dstr/const-obj-init-null.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-init-null.js rename to test/language/statements/for-of/dstr/const-obj-init-null.js diff --git a/test/language/statements/for-of/dstr-const-obj-init-undefined.js b/test/language/statements/for-of/dstr/const-obj-init-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-init-undefined.js rename to test/language/statements/for-of/dstr/const-obj-init-undefined.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-empty.js b/test/language/statements/for-of/dstr/const-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-empty.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-get-value-err.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-get-value-err.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-skipped.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-skipped.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-throws.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-throws.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-of/dstr/const-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-list-err.js b/test/language/statements/for-of/dstr/const-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-list-err.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-list-err.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-init.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-init.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-ary.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-eval-err.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-eval-err.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-init.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-id.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-id.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-id.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-init.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-init.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj.js b/test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-prop-obj.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-rest-getter.js b/test/language/statements/for-of/dstr/const-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-rest-getter.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-of/dstr/const-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for-of/dstr-const-obj-ptrn-rest-val-obj.js b/test/language/statements/for-of/dstr/const-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-const-obj-ptrn-rest-val-obj.js rename to test/language/statements/for-of/dstr/const-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for-of/dstr-let-ary-init-iter-close.js b/test/language/statements/for-of/dstr/let-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-init-iter-close.js rename to test/language/statements/for-of/dstr/let-ary-init-iter-close.js diff --git a/test/language/statements/for-of/dstr-let-ary-init-iter-get-err.js b/test/language/statements/for-of/dstr/let-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-init-iter-get-err.js rename to test/language/statements/for-of/dstr/let-ary-init-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-init-iter-no-close.js b/test/language/statements/for-of/dstr/let-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-init-iter-no-close.js rename to test/language/statements/for-of/dstr/let-ary-init-iter-no-close.js diff --git a/test/language/statements/for-of/dstr-let-ary-name-iter-val.js b/test/language/statements/for-of/dstr/let-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-name-iter-val.js rename to test/language/statements/for-of/dstr/let-ary-name-iter-val.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elision-exhausted.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elision-exhausted.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elision-iter-close.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elision-iter-close.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elision-step-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elision-step-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-elision.js b/test/language/statements/for-of/dstr/let-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-elision.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-elision.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-empty.js b/test/language/statements/for-of/dstr/let-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-empty.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-elision.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-elision.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-ary.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-ary.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-obj.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-init-obj.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-obj-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-obj-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for-of/dstr-let-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-of/dstr/let-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for-of/dstr/let-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-let-obj-init-null.js b/test/language/statements/for-of/dstr/let-obj-init-null.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-init-null.js rename to test/language/statements/for-of/dstr/let-obj-init-null.js diff --git a/test/language/statements/for-of/dstr-let-obj-init-undefined.js b/test/language/statements/for-of/dstr/let-obj-init-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-init-undefined.js rename to test/language/statements/for-of/dstr/let-obj-init-undefined.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-empty.js b/test/language/statements/for-of/dstr/let-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-empty.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-get-value-err.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-get-value-err.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-skipped.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-skipped.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-throws.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-throws.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-of/dstr/let-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-list-err.js b/test/language/statements/for-of/dstr/let-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-list-err.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-list-err.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-init.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-init.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-ary.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-eval-err.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-eval-err.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-init.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-id.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-id.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-id.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-init.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-init.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj.js b/test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-prop-obj.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-rest-getter.js b/test/language/statements/for-of/dstr/let-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-rest-getter.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-of/dstr/let-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for-of/dstr-let-obj-ptrn-rest-val-obj.js b/test/language/statements/for-of/dstr/let-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-let-obj-ptrn-rest-val-obj.js rename to test/language/statements/for-of/dstr/let-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for-of/dstr-obj-empty-bool.js b/test/language/statements/for-of/dstr/obj-empty-bool.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-bool.js rename to test/language/statements/for-of/dstr/obj-empty-bool.js diff --git a/test/language/statements/for-of/dstr-obj-empty-null.js b/test/language/statements/for-of/dstr/obj-empty-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-null.js rename to test/language/statements/for-of/dstr/obj-empty-null.js diff --git a/test/language/statements/for-of/dstr-obj-empty-num.js b/test/language/statements/for-of/dstr/obj-empty-num.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-num.js rename to test/language/statements/for-of/dstr/obj-empty-num.js diff --git a/test/language/statements/for-of/dstr-obj-empty-obj.js b/test/language/statements/for-of/dstr/obj-empty-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-obj.js rename to test/language/statements/for-of/dstr/obj-empty-obj.js diff --git a/test/language/statements/for-of/dstr-obj-empty-string.js b/test/language/statements/for-of/dstr/obj-empty-string.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-string.js rename to test/language/statements/for-of/dstr/obj-empty-string.js diff --git a/test/language/statements/for-of/dstr-obj-empty-symbol.js b/test/language/statements/for-of/dstr/obj-empty-symbol.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-symbol.js rename to test/language/statements/for-of/dstr/obj-empty-symbol.js diff --git a/test/language/statements/for-of/dstr-obj-empty-undef.js b/test/language/statements/for-of/dstr/obj-empty-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-empty-undef.js rename to test/language/statements/for-of/dstr/obj-empty-undef.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-resolution-first.js b/test/language/statements/for-of/dstr/obj-id-identifier-resolution-first.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-resolution-first.js rename to test/language/statements/for-of/dstr/obj-id-identifier-resolution-first.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-resolution-last.js b/test/language/statements/for-of/dstr/obj-id-identifier-resolution-last.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-resolution-last.js rename to test/language/statements/for-of/dstr/obj-id-identifier-resolution-last.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-resolution-lone.js b/test/language/statements/for-of/dstr/obj-id-identifier-resolution-lone.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-resolution-lone.js rename to test/language/statements/for-of/dstr/obj-id-identifier-resolution-lone.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-resolution-middle.js b/test/language/statements/for-of/dstr/obj-id-identifier-resolution-middle.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-resolution-middle.js rename to test/language/statements/for-of/dstr/obj-id-identifier-resolution-middle.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-resolution-trlng.js b/test/language/statements/for-of/dstr/obj-id-identifier-resolution-trlng.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-resolution-trlng.js rename to test/language/statements/for-of/dstr/obj-id-identifier-resolution-trlng.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-yield-expr.js b/test/language/statements/for-of/dstr/obj-id-identifier-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-yield-expr.js rename to test/language/statements/for-of/dstr/obj-id-identifier-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-id-identifier-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-id-identifier-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-id-identifier-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-id-identifier-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-identifier-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-id-identifier-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-assignment-missing.js b/test/language/statements/for-of/dstr/obj-id-init-assignment-missing.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-assignment-missing.js rename to test/language/statements/for-of/dstr/obj-id-init-assignment-missing.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-assignment-null.js b/test/language/statements/for-of/dstr/obj-id-init-assignment-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-assignment-null.js rename to test/language/statements/for-of/dstr/obj-id-init-assignment-null.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-assignment-truthy.js b/test/language/statements/for-of/dstr/obj-id-init-assignment-truthy.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-assignment-truthy.js rename to test/language/statements/for-of/dstr/obj-id-init-assignment-truthy.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-assignment-undef.js b/test/language/statements/for-of/dstr/obj-id-init-assignment-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-assignment-undef.js rename to test/language/statements/for-of/dstr/obj-id-init-assignment-undef.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-evaluation.js b/test/language/statements/for-of/dstr/obj-id-init-evaluation.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-evaluation.js rename to test/language/statements/for-of/dstr/obj-id-init-evaluation.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/obj-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/obj-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/obj-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/obj-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/obj-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/obj-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/obj-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/obj-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/obj-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/obj-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-in.js b/test/language/statements/for-of/dstr/obj-id-init-in.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-in.js rename to test/language/statements/for-of/dstr/obj-id-init-in.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-let.js b/test/language/statements/for-of/dstr/obj-id-init-let.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-let.js rename to test/language/statements/for-of/dstr/obj-id-init-let.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-order.js b/test/language/statements/for-of/dstr/obj-id-init-order.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-order.js rename to test/language/statements/for-of/dstr/obj-id-init-order.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-simple-no-strict.js b/test/language/statements/for-of/dstr/obj-id-init-simple-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-simple-no-strict.js rename to test/language/statements/for-of/dstr/obj-id-init-simple-no-strict.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-simple-strict.js b/test/language/statements/for-of/dstr/obj-id-init-simple-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-simple-strict.js rename to test/language/statements/for-of/dstr/obj-id-init-simple-strict.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-yield-expr.js b/test/language/statements/for-of/dstr/obj-id-init-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-yield-expr.js rename to test/language/statements/for-of/dstr/obj-id-init-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-id-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-id-init-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-id-init-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-id-init-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-init-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-id-init-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-id-put-const.js b/test/language/statements/for-of/dstr/obj-id-put-const.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-put-const.js rename to test/language/statements/for-of/dstr/obj-id-put-const.js diff --git a/test/language/statements/for-of/dstr-obj-id-put-let.js b/test/language/statements/for-of/dstr/obj-id-put-let.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-put-let.js rename to test/language/statements/for-of/dstr/obj-id-put-let.js diff --git a/test/language/statements/for-of/dstr-obj-id-put-unresolvable-no-strict.js b/test/language/statements/for-of/dstr/obj-id-put-unresolvable-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-put-unresolvable-no-strict.js rename to test/language/statements/for-of/dstr/obj-id-put-unresolvable-no-strict.js diff --git a/test/language/statements/for-of/dstr-obj-id-put-unresolvable-strict.js b/test/language/statements/for-of/dstr/obj-id-put-unresolvable-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-put-unresolvable-strict.js rename to test/language/statements/for-of/dstr/obj-id-put-unresolvable-strict.js diff --git a/test/language/statements/for-of/dstr-obj-id-simple-no-strict.js b/test/language/statements/for-of/dstr/obj-id-simple-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-simple-no-strict.js rename to test/language/statements/for-of/dstr/obj-id-simple-no-strict.js diff --git a/test/language/statements/for-of/dstr-obj-id-simple-strict.js b/test/language/statements/for-of/dstr/obj-id-simple-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-id-simple-strict.js rename to test/language/statements/for-of/dstr/obj-id-simple-strict.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-missing.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-missing.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-missing.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-missing.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-null.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-null.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-null.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-truthy.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-truthy.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-truthy.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-truthy.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-undef.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-assignment-undef.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-assignment-undef.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-evaluation.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-evaluation.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-evaluation.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-evaluation.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-class.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-class.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-cover.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-fn.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-gen.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-in.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-in.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-in.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-in.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-let.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-let.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-let.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-let.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-yield-expr.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-yield-expr.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-init-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-prop-elem-init-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-init-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-prop-elem-init-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-target-yield-expr.js b/test/language/statements/for-of/dstr/obj-prop-elem-target-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-target-yield-expr.js rename to test/language/statements/for-of/dstr/obj-prop-elem-target-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-target-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-prop-elem-target-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-target-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-elem-target-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-elem-target-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-prop-elem-target-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-elem-target-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-prop-elem-target-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-identifier-resolution-first.js b/test/language/statements/for-of/dstr/obj-prop-identifier-resolution-first.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-identifier-resolution-first.js rename to test/language/statements/for-of/dstr/obj-prop-identifier-resolution-first.js diff --git a/test/language/statements/for-of/dstr-obj-prop-identifier-resolution-last.js b/test/language/statements/for-of/dstr/obj-prop-identifier-resolution-last.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-identifier-resolution-last.js rename to test/language/statements/for-of/dstr/obj-prop-identifier-resolution-last.js diff --git a/test/language/statements/for-of/dstr-obj-prop-identifier-resolution-lone.js b/test/language/statements/for-of/dstr/obj-prop-identifier-resolution-lone.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-identifier-resolution-lone.js rename to test/language/statements/for-of/dstr/obj-prop-identifier-resolution-lone.js diff --git a/test/language/statements/for-of/dstr-obj-prop-identifier-resolution-middle.js b/test/language/statements/for-of/dstr/obj-prop-identifier-resolution-middle.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-identifier-resolution-middle.js rename to test/language/statements/for-of/dstr/obj-prop-identifier-resolution-middle.js diff --git a/test/language/statements/for-of/dstr-obj-prop-identifier-resolution-trlng.js b/test/language/statements/for-of/dstr/obj-prop-identifier-resolution-trlng.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-identifier-resolution-trlng.js rename to test/language/statements/for-of/dstr/obj-prop-identifier-resolution-trlng.js diff --git a/test/language/statements/for-of/dstr-obj-prop-name-evaluation-error.js b/test/language/statements/for-of/dstr/obj-prop-name-evaluation-error.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-name-evaluation-error.js rename to test/language/statements/for-of/dstr/obj-prop-name-evaluation-error.js diff --git a/test/language/statements/for-of/dstr-obj-prop-name-evaluation.js b/test/language/statements/for-of/dstr/obj-prop-name-evaluation.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-name-evaluation.js rename to test/language/statements/for-of/dstr/obj-prop-name-evaluation.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-invalid.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-null.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-null.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-null.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-undefined-own.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-undefined-own.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-undefined-own.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-undefined.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-undefined.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-undefined.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-yield-expr.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-yield-expr.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-prop-nested-array-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-array.js b/test/language/statements/for-of/dstr/obj-prop-nested-array.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-array.js rename to test/language/statements/for-of/dstr/obj-prop-nested-array.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-invalid.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-null.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-null.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-null.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-undefined-own.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-undefined-own.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-undefined-own.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-undefined-own.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-undefined.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-undefined.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-undefined.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-expr.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-expr.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-expr.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-expr.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-ident-invalid.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-ident-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-ident-invalid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-ident-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-ident-valid.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-ident-valid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj-yield-ident-valid.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj-yield-ident-valid.js diff --git a/test/language/statements/for-of/dstr-obj-prop-nested-obj.js b/test/language/statements/for-of/dstr/obj-prop-nested-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-nested-obj.js rename to test/language/statements/for-of/dstr/obj-prop-nested-obj.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-const.js b/test/language/statements/for-of/dstr/obj-prop-put-const.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-const.js rename to test/language/statements/for-of/dstr/obj-prop-put-const.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-let.js b/test/language/statements/for-of/dstr/obj-prop-put-let.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-let.js rename to test/language/statements/for-of/dstr/obj-prop-put-let.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-order.js b/test/language/statements/for-of/dstr/obj-prop-put-order.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-order.js rename to test/language/statements/for-of/dstr/obj-prop-put-order.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-prop-ref-no-get.js b/test/language/statements/for-of/dstr/obj-prop-put-prop-ref-no-get.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-prop-ref-no-get.js rename to test/language/statements/for-of/dstr/obj-prop-put-prop-ref-no-get.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-prop-ref-user-err.js b/test/language/statements/for-of/dstr/obj-prop-put-prop-ref-user-err.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-prop-ref-user-err.js rename to test/language/statements/for-of/dstr/obj-prop-put-prop-ref-user-err.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-prop-ref.js b/test/language/statements/for-of/dstr/obj-prop-put-prop-ref.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-prop-ref.js rename to test/language/statements/for-of/dstr/obj-prop-put-prop-ref.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-unresolvable-no-strict.js b/test/language/statements/for-of/dstr/obj-prop-put-unresolvable-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-unresolvable-no-strict.js rename to test/language/statements/for-of/dstr/obj-prop-put-unresolvable-no-strict.js diff --git a/test/language/statements/for-of/dstr-obj-prop-put-unresolvable-strict.js b/test/language/statements/for-of/dstr/obj-prop-put-unresolvable-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-prop-put-unresolvable-strict.js rename to test/language/statements/for-of/dstr/obj-prop-put-unresolvable-strict.js diff --git a/test/language/statements/for-of/dstr-obj-rest-computed-property-no-strict.js b/test/language/statements/for-of/dstr/obj-rest-computed-property-no-strict.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-computed-property-no-strict.js rename to test/language/statements/for-of/dstr/obj-rest-computed-property-no-strict.js diff --git a/test/language/statements/for-of/dstr-obj-rest-computed-property.js b/test/language/statements/for-of/dstr/obj-rest-computed-property.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-computed-property.js rename to test/language/statements/for-of/dstr/obj-rest-computed-property.js diff --git a/test/language/statements/for-of/dstr-obj-rest-descriptors.js b/test/language/statements/for-of/dstr/obj-rest-descriptors.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-descriptors.js rename to test/language/statements/for-of/dstr/obj-rest-descriptors.js diff --git a/test/language/statements/for-of/dstr-obj-rest-empty-obj.js b/test/language/statements/for-of/dstr/obj-rest-empty-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-empty-obj.js rename to test/language/statements/for-of/dstr/obj-rest-empty-obj.js diff --git a/test/language/statements/for-of/dstr-obj-rest-getter-abrupt-get-error.js b/test/language/statements/for-of/dstr/obj-rest-getter-abrupt-get-error.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-getter-abrupt-get-error.js rename to test/language/statements/for-of/dstr/obj-rest-getter-abrupt-get-error.js diff --git a/test/language/statements/for-of/dstr-obj-rest-getter.js b/test/language/statements/for-of/dstr/obj-rest-getter.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-getter.js rename to test/language/statements/for-of/dstr/obj-rest-getter.js diff --git a/test/language/statements/for-of/dstr-obj-rest-not-last-element-invalid.js b/test/language/statements/for-of/dstr/obj-rest-not-last-element-invalid.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-not-last-element-invalid.js rename to test/language/statements/for-of/dstr/obj-rest-not-last-element-invalid.js diff --git a/test/language/statements/for-of/dstr-obj-rest-number.js b/test/language/statements/for-of/dstr/obj-rest-number.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-number.js rename to test/language/statements/for-of/dstr/obj-rest-number.js diff --git a/test/language/statements/for-of/dstr-obj-rest-order.js b/test/language/statements/for-of/dstr/obj-rest-order.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-order.js rename to test/language/statements/for-of/dstr/obj-rest-order.js diff --git a/test/language/statements/for-of/dstr-obj-rest-put-const.js b/test/language/statements/for-of/dstr/obj-rest-put-const.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-put-const.js rename to test/language/statements/for-of/dstr/obj-rest-put-const.js diff --git a/test/language/statements/for-of/dstr-obj-rest-same-name.js b/test/language/statements/for-of/dstr/obj-rest-same-name.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-same-name.js rename to test/language/statements/for-of/dstr/obj-rest-same-name.js diff --git a/test/language/statements/for-of/dstr-obj-rest-skip-non-enumerable.js b/test/language/statements/for-of/dstr/obj-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-skip-non-enumerable.js rename to test/language/statements/for-of/dstr/obj-rest-skip-non-enumerable.js diff --git a/test/language/statements/for-of/dstr-obj-rest-str-val.js b/test/language/statements/for-of/dstr/obj-rest-str-val.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-str-val.js rename to test/language/statements/for-of/dstr/obj-rest-str-val.js diff --git a/test/language/statements/for-of/dstr-obj-rest-symbol-val.js b/test/language/statements/for-of/dstr/obj-rest-symbol-val.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-symbol-val.js rename to test/language/statements/for-of/dstr/obj-rest-symbol-val.js diff --git a/test/language/statements/for-of/dstr-obj-rest-to-property-with-setter.js b/test/language/statements/for-of/dstr/obj-rest-to-property-with-setter.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-to-property-with-setter.js rename to test/language/statements/for-of/dstr/obj-rest-to-property-with-setter.js diff --git a/test/language/statements/for-of/dstr-obj-rest-to-property.js b/test/language/statements/for-of/dstr/obj-rest-to-property.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-to-property.js rename to test/language/statements/for-of/dstr/obj-rest-to-property.js diff --git a/test/language/statements/for-of/dstr-obj-rest-val-null.js b/test/language/statements/for-of/dstr/obj-rest-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-val-null.js rename to test/language/statements/for-of/dstr/obj-rest-val-null.js diff --git a/test/language/statements/for-of/dstr-obj-rest-val-undefined.js b/test/language/statements/for-of/dstr/obj-rest-val-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-val-undefined.js rename to test/language/statements/for-of/dstr/obj-rest-val-undefined.js diff --git a/test/language/statements/for-of/dstr-obj-rest-valid-object.js b/test/language/statements/for-of/dstr/obj-rest-valid-object.js similarity index 100% rename from test/language/statements/for-of/dstr-obj-rest-valid-object.js rename to test/language/statements/for-of/dstr/obj-rest-valid-object.js diff --git a/test/language/statements/for-of/dstr-var-ary-init-iter-close.js b/test/language/statements/for-of/dstr/var-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-init-iter-close.js rename to test/language/statements/for-of/dstr/var-ary-init-iter-close.js diff --git a/test/language/statements/for-of/dstr-var-ary-init-iter-get-err.js b/test/language/statements/for-of/dstr/var-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-init-iter-get-err.js rename to test/language/statements/for-of/dstr/var-ary-init-iter-get-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-init-iter-no-close.js b/test/language/statements/for-of/dstr/var-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-init-iter-no-close.js rename to test/language/statements/for-of/dstr/var-ary-init-iter-no-close.js diff --git a/test/language/statements/for-of/dstr-var-ary-name-iter-val.js b/test/language/statements/for-of/dstr/var-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-name-iter-val.js rename to test/language/statements/for-of/dstr/var-ary-name-iter-val.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elision-exhausted.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elision-exhausted.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elision-iter-close.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elision-iter-close.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elision-step-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elision-step-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-elision.js b/test/language/statements/for-of/dstr/var-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-elision.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-elision.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-empty.js b/test/language/statements/for-of/dstr/var-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-empty.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-elision.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-elision.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-ary.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-ary.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-obj.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-init-obj.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-obj-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-obj-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for-of/dstr-var-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-of/dstr/var-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for-of/dstr/var-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for-of/dstr-var-obj-init-null.js b/test/language/statements/for-of/dstr/var-obj-init-null.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-init-null.js rename to test/language/statements/for-of/dstr/var-obj-init-null.js diff --git a/test/language/statements/for-of/dstr-var-obj-init-undefined.js b/test/language/statements/for-of/dstr/var-obj-init-undefined.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-init-undefined.js rename to test/language/statements/for-of/dstr/var-obj-init-undefined.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-empty.js b/test/language/statements/for-of/dstr/var-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-empty.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-empty.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-get-value-err.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-get-value-err.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-skipped.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-skipped.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-throws.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-throws.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-of/dstr/var-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-list-err.js b/test/language/statements/for-of/dstr/var-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-list-err.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-list-err.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-init.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-init.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-ary.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-eval-err.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-eval-err.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-init.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-id.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-id.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-id.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-init.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-init.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj.js b/test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-prop-obj.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-rest-getter.js b/test/language/statements/for-of/dstr/var-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-rest-getter.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-of/dstr/var-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for-of/dstr-var-obj-ptrn-rest-val-obj.js b/test/language/statements/for-of/dstr/var-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for-of/dstr-var-obj-ptrn-rest-val-obj.js rename to test/language/statements/for-of/dstr/var-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for/dstr-const-ary-init-iter-close.js b/test/language/statements/for/dstr/const-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-init-iter-close.js rename to test/language/statements/for/dstr/const-ary-init-iter-close.js diff --git a/test/language/statements/for/dstr-const-ary-init-iter-get-err.js b/test/language/statements/for/dstr/const-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-init-iter-get-err.js rename to test/language/statements/for/dstr/const-ary-init-iter-get-err.js diff --git a/test/language/statements/for/dstr-const-ary-init-iter-no-close.js b/test/language/statements/for/dstr/const-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-init-iter-no-close.js rename to test/language/statements/for/dstr/const-ary-init-iter-no-close.js diff --git a/test/language/statements/for/dstr-const-ary-name-iter-val.js b/test/language/statements/for/dstr/const-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-name-iter-val.js rename to test/language/statements/for/dstr/const-ary-name-iter-val.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-id.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for/dstr/const-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for/dstr/const-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elision-exhausted.js b/test/language/statements/for/dstr/const-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elision-exhausted.js rename to test/language/statements/for/dstr/const-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elision-iter-close.js b/test/language/statements/for/dstr/const-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elision-iter-close.js rename to test/language/statements/for/dstr/const-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elision-step-err.js b/test/language/statements/for/dstr/const-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elision-step-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-elision.js b/test/language/statements/for/dstr/const-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-elision.js rename to test/language/statements/for/dstr/const-ary-ptrn-elision.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-empty.js b/test/language/statements/for/dstr/const-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-empty.js rename to test/language/statements/for/dstr/const-ary-ptrn-empty.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-ary-elem.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-ary-elision.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-ary-empty.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-ary-rest.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-elision.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-elision.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-id.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-init-ary.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-init-ary.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-init-id.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-init-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-init-obj.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-init-obj.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-id.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-obj-id.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-obj-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for/dstr-const-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for/dstr/const-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-const-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for/dstr/const-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for/dstr-const-obj-init-null.js b/test/language/statements/for/dstr/const-obj-init-null.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-init-null.js rename to test/language/statements/for/dstr/const-obj-init-null.js diff --git a/test/language/statements/for/dstr-const-obj-init-undefined.js b/test/language/statements/for/dstr/const-obj-init-undefined.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-init-undefined.js rename to test/language/statements/for/dstr/const-obj-init-undefined.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-empty.js b/test/language/statements/for/dstr/const-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-empty.js rename to test/language/statements/for/dstr/const-obj-ptrn-empty.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-get-value-err.js b/test/language/statements/for/dstr/const-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-get-value-err.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-skipped.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-skipped.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-throws.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-throws.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for/dstr/const-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-id-trailing-comma.js b/test/language/statements/for/dstr/const-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for/dstr/const-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-list-err.js b/test/language/statements/for/dstr/const-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-list-err.js rename to test/language/statements/for/dstr/const-obj-ptrn-list-err.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-ary-init.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-ary-init.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-ary.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-ary.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-eval-err.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-eval-err.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-init.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-init.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-id.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-id.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-id.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-obj-init.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-obj-init.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-prop-obj.js b/test/language/statements/for/dstr/const-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-prop-obj.js rename to test/language/statements/for/dstr/const-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-rest-getter.js b/test/language/statements/for/dstr/const-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-rest-getter.js rename to test/language/statements/for/dstr/const-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for/dstr/const-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for/dstr/const-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for/dstr-const-obj-ptrn-rest-val-obj.js b/test/language/statements/for/dstr/const-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for/dstr-const-obj-ptrn-rest-val-obj.js rename to test/language/statements/for/dstr/const-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for/dstr-let-ary-init-iter-close.js b/test/language/statements/for/dstr/let-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-init-iter-close.js rename to test/language/statements/for/dstr/let-ary-init-iter-close.js diff --git a/test/language/statements/for/dstr-let-ary-init-iter-get-err.js b/test/language/statements/for/dstr/let-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-init-iter-get-err.js rename to test/language/statements/for/dstr/let-ary-init-iter-get-err.js diff --git a/test/language/statements/for/dstr-let-ary-init-iter-no-close.js b/test/language/statements/for/dstr/let-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-init-iter-no-close.js rename to test/language/statements/for/dstr/let-ary-init-iter-no-close.js diff --git a/test/language/statements/for/dstr-let-ary-name-iter-val.js b/test/language/statements/for/dstr/let-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-name-iter-val.js rename to test/language/statements/for/dstr/let-ary-name-iter-val.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-id.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for/dstr/let-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for/dstr/let-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elision-exhausted.js b/test/language/statements/for/dstr/let-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elision-exhausted.js rename to test/language/statements/for/dstr/let-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elision-iter-close.js b/test/language/statements/for/dstr/let-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elision-iter-close.js rename to test/language/statements/for/dstr/let-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elision-step-err.js b/test/language/statements/for/dstr/let-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elision-step-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-elision.js b/test/language/statements/for/dstr/let-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-elision.js rename to test/language/statements/for/dstr/let-ary-ptrn-elision.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-empty.js b/test/language/statements/for/dstr/let-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-empty.js rename to test/language/statements/for/dstr/let-ary-ptrn-empty.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-ary-elem.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-ary-elision.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-ary-empty.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-ary-rest.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-elision.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-elision.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-id.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-init-ary.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-init-ary.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-init-id.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-init-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-init-obj.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-init-obj.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-id.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-obj-id.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-obj-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for/dstr-let-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for/dstr/let-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-let-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for/dstr/let-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for/dstr-let-obj-init-null.js b/test/language/statements/for/dstr/let-obj-init-null.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-init-null.js rename to test/language/statements/for/dstr/let-obj-init-null.js diff --git a/test/language/statements/for/dstr-let-obj-init-undefined.js b/test/language/statements/for/dstr/let-obj-init-undefined.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-init-undefined.js rename to test/language/statements/for/dstr/let-obj-init-undefined.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-empty.js b/test/language/statements/for/dstr/let-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-empty.js rename to test/language/statements/for/dstr/let-obj-ptrn-empty.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-get-value-err.js b/test/language/statements/for/dstr/let-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-get-value-err.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-skipped.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-skipped.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-throws.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-throws.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for/dstr/let-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-id-trailing-comma.js b/test/language/statements/for/dstr/let-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for/dstr/let-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-list-err.js b/test/language/statements/for/dstr/let-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-list-err.js rename to test/language/statements/for/dstr/let-obj-ptrn-list-err.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-ary-init.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-ary-init.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-ary.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-ary.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-eval-err.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-eval-err.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-init.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-init.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-id.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-id.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-id.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-obj-init.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-obj-init.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-prop-obj.js b/test/language/statements/for/dstr/let-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-prop-obj.js rename to test/language/statements/for/dstr/let-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-rest-getter.js b/test/language/statements/for/dstr/let-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-rest-getter.js rename to test/language/statements/for/dstr/let-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for/dstr/let-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for/dstr/let-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for/dstr-let-obj-ptrn-rest-val-obj.js b/test/language/statements/for/dstr/let-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for/dstr-let-obj-ptrn-rest-val-obj.js rename to test/language/statements/for/dstr/let-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/for/dstr-var-ary-init-iter-close.js b/test/language/statements/for/dstr/var-ary-init-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-init-iter-close.js rename to test/language/statements/for/dstr/var-ary-init-iter-close.js diff --git a/test/language/statements/for/dstr-var-ary-init-iter-get-err.js b/test/language/statements/for/dstr/var-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-init-iter-get-err.js rename to test/language/statements/for/dstr/var-ary-init-iter-get-err.js diff --git a/test/language/statements/for/dstr-var-ary-init-iter-no-close.js b/test/language/statements/for/dstr/var-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-init-iter-no-close.js rename to test/language/statements/for/dstr/var-ary-init-iter-no-close.js diff --git a/test/language/statements/for/dstr-var-ary-name-iter-val.js b/test/language/statements/for/dstr/var-ary-name-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-name-iter-val.js rename to test/language/statements/for/dstr/var-ary-name-iter-val.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-id.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for/dstr/var-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/for/dstr/var-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elision-exhausted.js b/test/language/statements/for/dstr/var-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elision-exhausted.js rename to test/language/statements/for/dstr/var-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elision-iter-close.js b/test/language/statements/for/dstr/var-ary-ptrn-elision-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elision-iter-close.js rename to test/language/statements/for/dstr/var-ary-ptrn-elision-iter-close.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elision-step-err.js b/test/language/statements/for/dstr/var-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elision-step-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-elision.js b/test/language/statements/for/dstr/var-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-elision.js rename to test/language/statements/for/dstr/var-ary-ptrn-elision.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-empty.js b/test/language/statements/for/dstr/var-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-empty.js rename to test/language/statements/for/dstr/var-ary-ptrn-empty.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-ary-elem.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-ary-elem.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-ary-elision.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-ary-elision.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-ary-empty.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-ary-empty.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-ary-rest.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-ary-rest.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-elision.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-elision.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-close.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-close.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-close.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-id.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-init-ary.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-init-ary.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-init-id.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-init-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-init-obj.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-init-obj.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-id.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-obj-id.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-obj-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/for/dstr-var-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for/dstr/var-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-var-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/for/dstr/var-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/for/dstr-var-obj-init-null.js b/test/language/statements/for/dstr/var-obj-init-null.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-init-null.js rename to test/language/statements/for/dstr/var-obj-init-null.js diff --git a/test/language/statements/for/dstr-var-obj-init-undefined.js b/test/language/statements/for/dstr/var-obj-init-undefined.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-init-undefined.js rename to test/language/statements/for/dstr/var-obj-init-undefined.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-empty.js b/test/language/statements/for/dstr/var-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-empty.js rename to test/language/statements/for/dstr/var-obj-ptrn-empty.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-get-value-err.js b/test/language/statements/for/dstr/var-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-get-value-err.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-skipped.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-skipped.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-throws.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-throws.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for/dstr/var-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-id-trailing-comma.js b/test/language/statements/for/dstr/var-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-id-trailing-comma.js rename to test/language/statements/for/dstr/var-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-list-err.js b/test/language/statements/for/dstr/var-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-list-err.js rename to test/language/statements/for/dstr/var-obj-ptrn-list-err.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-ary-init.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-ary-init.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-ary.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-ary.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-ary.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-eval-err.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-eval-err.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-init.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-init.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-id.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-id.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-id.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-obj-init.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-obj-init.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-prop-obj.js b/test/language/statements/for/dstr/var-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-prop-obj.js rename to test/language/statements/for/dstr/var-obj-ptrn-prop-obj.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-rest-getter.js b/test/language/statements/for/dstr/var-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-rest-getter.js rename to test/language/statements/for/dstr/var-obj-ptrn-rest-getter.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for/dstr/var-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/for/dstr/var-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/for/dstr-var-obj-ptrn-rest-val-obj.js b/test/language/statements/for/dstr/var-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/for/dstr-var-obj-ptrn-rest-val-obj.js rename to test/language/statements/for/dstr/var-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/function/dstr-ary-init-iter-close.js b/test/language/statements/function/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/function/dstr-ary-init-iter-close.js rename to test/language/statements/function/dstr/ary-init-iter-close.js diff --git a/test/language/statements/function/dstr-ary-init-iter-get-err.js b/test/language/statements/function/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-init-iter-get-err.js rename to test/language/statements/function/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/function/dstr-ary-init-iter-no-close.js b/test/language/statements/function/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/function/dstr-ary-init-iter-no-close.js rename to test/language/statements/function/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/function/dstr-ary-name-iter-val.js b/test/language/statements/function/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/function/dstr-ary-name-iter-val.js rename to test/language/statements/function/dstr/ary-name-iter-val.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/function/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/function/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/function/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/function/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/function/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/function/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/function/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/function/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/function/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/function/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-elision.js b/test/language/statements/function/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-elision.js rename to test/language/statements/function/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/function/dstr-ary-ptrn-empty.js b/test/language/statements/function/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-empty.js rename to test/language/statements/function/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/function/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/function/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/function/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/function/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/function/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/function/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/function/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/function/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/function/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/function/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/function/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/function/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/function/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-id.js b/test/language/statements/function/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-id.js rename to test/language/statements/function/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/function/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/function/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/function/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/function/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/function/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/function/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/function/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/function/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/function/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/function/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/function/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/function/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/function/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/function/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/function/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/function/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/function/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-init-iter-close.js b/test/language/statements/function/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-init-iter-close.js rename to test/language/statements/function/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/statements/function/dstr-dflt-ary-init-iter-get-err.js b/test/language/statements/function/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-init-iter-get-err.js rename to test/language/statements/function/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-init-iter-no-close.js b/test/language/statements/function/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-init-iter-no-close.js rename to test/language/statements/function/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/function/dstr-dflt-ary-name-iter-val.js b/test/language/statements/function/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-name-iter-val.js rename to test/language/statements/function/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-elision.js b/test/language/statements/function/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-elision.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-empty.js b/test/language/statements/function/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-empty.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/function/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/function/dstr-dflt-obj-init-null.js b/test/language/statements/function/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-init-null.js rename to test/language/statements/function/dstr/dflt-obj-init-null.js diff --git a/test/language/statements/function/dstr-dflt-obj-init-undefined.js b/test/language/statements/function/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-init-undefined.js rename to test/language/statements/function/dstr/dflt-obj-init-undefined.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-empty.js b/test/language/statements/function/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-empty.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/function/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-list-err.js b/test/language/statements/function/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-list-err.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-id.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/statements/function/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/function/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/function/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/function/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/function/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/function/dstr-obj-init-null.js b/test/language/statements/function/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/function/dstr-obj-init-null.js rename to test/language/statements/function/dstr/obj-init-null.js diff --git a/test/language/statements/function/dstr-obj-init-undefined.js b/test/language/statements/function/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/function/dstr-obj-init-undefined.js rename to test/language/statements/function/dstr/obj-init-undefined.js diff --git a/test/language/statements/function/dstr-obj-ptrn-empty.js b/test/language/statements/function/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-empty.js rename to test/language/statements/function/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/function/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/function/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/function/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/function/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/function/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/function/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/function/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/function/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/function/dstr-obj-ptrn-list-err.js b/test/language/statements/function/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-list-err.js rename to test/language/statements/function/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/function/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/function/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/function/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/function/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/function/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/function/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-ary.js b/test/language/statements/function/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/function/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/function/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/function/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/function/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-id.js b/test/language/statements/function/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-id.js rename to test/language/statements/function/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/function/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/function/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/function/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/function/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/function/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/function/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/function/dstr-obj-ptrn-prop-obj.js b/test/language/statements/function/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/function/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/function/dstr-obj-ptrn-rest-getter.js b/test/language/statements/function/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/function/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/function/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/function/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/function/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/function/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/function/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/function/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/function/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/generators/dstr-ary-init-iter-close.js b/test/language/statements/generators/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/generators/dstr-ary-init-iter-close.js rename to test/language/statements/generators/dstr/ary-init-iter-close.js diff --git a/test/language/statements/generators/dstr-ary-init-iter-get-err.js b/test/language/statements/generators/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-init-iter-get-err.js rename to test/language/statements/generators/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/generators/dstr-ary-init-iter-no-close.js b/test/language/statements/generators/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/generators/dstr-ary-init-iter-no-close.js rename to test/language/statements/generators/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/generators/dstr-ary-name-iter-val.js b/test/language/statements/generators/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/generators/dstr-ary-name-iter-val.js rename to test/language/statements/generators/dstr/ary-name-iter-val.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/generators/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/generators/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/generators/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/generators/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/generators/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/generators/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/generators/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-elision.js b/test/language/statements/generators/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-elision.js rename to test/language/statements/generators/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-empty.js b/test/language/statements/generators/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-empty.js rename to test/language/statements/generators/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/generators/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/generators/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/generators/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/generators/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-id.js b/test/language/statements/generators/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-id.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/generators/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/generators/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/generators/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/generators/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/generators/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/generators/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/generators/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/generators/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/generators/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/generators/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-init-iter-close.js b/test/language/statements/generators/dstr/dflt-ary-init-iter-close.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-init-iter-close.js rename to test/language/statements/generators/dstr/dflt-ary-init-iter-close.js diff --git a/test/language/statements/generators/dstr-dflt-ary-init-iter-get-err.js b/test/language/statements/generators/dstr/dflt-ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-init-iter-get-err.js rename to test/language/statements/generators/dstr/dflt-ary-init-iter-get-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-init-iter-no-close.js b/test/language/statements/generators/dstr/dflt-ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-init-iter-no-close.js rename to test/language/statements/generators/dstr/dflt-ary-init-iter-no-close.js diff --git a/test/language/statements/generators/dstr-dflt-ary-name-iter-val.js b/test/language/statements/generators/dstr/dflt-ary-name-iter-val.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-name-iter-val.js rename to test/language/statements/generators/dstr/dflt-ary-name-iter-val.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-val-null.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-hole.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-throws.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-undef.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-done.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-val.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-id-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-val-null.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elision-exhausted.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elision-exhausted.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elision-step-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elision-step-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elision-step-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-elision.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-elision.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-elision.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-elision.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-empty.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-empty.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-empty.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-empty.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-elem.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-elem.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-elision.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-elision.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-empty.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-empty.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-rest.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-ary-rest.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-elision.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-elision.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-exhausted.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-ary.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-ary.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-obj.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-init-obj.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-ary.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-obj.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-obj-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-obj-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/generators/dstr-dflt-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/generators/dstr/dflt-ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/generators/dstr/dflt-ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/generators/dstr-dflt-obj-init-null.js b/test/language/statements/generators/dstr/dflt-obj-init-null.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-init-null.js rename to test/language/statements/generators/dstr/dflt-obj-init-null.js diff --git a/test/language/statements/generators/dstr-dflt-obj-init-undefined.js b/test/language/statements/generators/dstr/dflt-obj-init-undefined.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-init-undefined.js rename to test/language/statements/generators/dstr/dflt-obj-init-undefined.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-empty.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-empty.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-empty.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-empty.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-get-value-err.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-get-value-err.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-skipped.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-skipped.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-throws.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-throws.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-throws.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-unresolvable.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-id-trailing-comma.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-id-trailing-comma.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-list-err.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-list-err.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-list-err.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-init.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-init.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-value-null.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-ary.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-ary.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-eval-err.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-eval-err.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-throws.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-init.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-init.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-id.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-id.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-init.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-init.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-value-null.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-prop-obj.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-prop-obj.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-rest-getter.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-rest-getter.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-rest-getter.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/generators/dstr-dflt-obj-ptrn-rest-val-obj.js b/test/language/statements/generators/dstr/dflt-obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/generators/dstr-dflt-obj-ptrn-rest-val-obj.js rename to test/language/statements/generators/dstr/dflt-obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/generators/dstr-obj-init-null.js b/test/language/statements/generators/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/generators/dstr-obj-init-null.js rename to test/language/statements/generators/dstr/obj-init-null.js diff --git a/test/language/statements/generators/dstr-obj-init-undefined.js b/test/language/statements/generators/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/generators/dstr-obj-init-undefined.js rename to test/language/statements/generators/dstr/obj-init-undefined.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-empty.js b/test/language/statements/generators/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-empty.js rename to test/language/statements/generators/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/generators/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/generators/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/generators/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/generators/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/generators/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/generators/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-list-err.js b/test/language/statements/generators/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-list-err.js rename to test/language/statements/generators/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/generators/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/generators/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/generators/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-ary.js b/test/language/statements/generators/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/generators/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-id.js b/test/language/statements/generators/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-id.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/generators/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/generators/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/generators/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-prop-obj.js b/test/language/statements/generators/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/generators/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-rest-getter.js b/test/language/statements/generators/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/generators/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/generators/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/generators/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/generators/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/generators/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/generators/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/generators/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/let/dstr-ary-init-iter-close.js b/test/language/statements/let/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/let/dstr-ary-init-iter-close.js rename to test/language/statements/let/dstr/ary-init-iter-close.js diff --git a/test/language/statements/let/dstr-ary-init-iter-get-err.js b/test/language/statements/let/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-init-iter-get-err.js rename to test/language/statements/let/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/let/dstr-ary-init-iter-no-close.js b/test/language/statements/let/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/let/dstr-ary-init-iter-no-close.js rename to test/language/statements/let/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/let/dstr-ary-name-iter-val.js b/test/language/statements/let/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/let/dstr-ary-name-iter-val.js rename to test/language/statements/let/dstr/ary-name-iter-val.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/let/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/let/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/let/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/let/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/let/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/let/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/let/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/let/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/let/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/let/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-elision.js b/test/language/statements/let/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-elision.js rename to test/language/statements/let/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/let/dstr-ary-ptrn-empty.js b/test/language/statements/let/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-empty.js rename to test/language/statements/let/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/let/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/let/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/let/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/let/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/let/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/let/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/let/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/let/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/let/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/let/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/let/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/let/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/let/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-id.js b/test/language/statements/let/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-id.js rename to test/language/statements/let/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/let/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/let/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/let/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/let/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/let/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/let/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/let/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/let/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/let/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/let/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/let/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/let/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/let/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/let/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/let/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/let/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/let/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/let/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/let/dstr-obj-init-null.js b/test/language/statements/let/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/let/dstr-obj-init-null.js rename to test/language/statements/let/dstr/obj-init-null.js diff --git a/test/language/statements/let/dstr-obj-init-undefined.js b/test/language/statements/let/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/let/dstr-obj-init-undefined.js rename to test/language/statements/let/dstr/obj-init-undefined.js diff --git a/test/language/statements/let/dstr-obj-ptrn-empty.js b/test/language/statements/let/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-empty.js rename to test/language/statements/let/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/let/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/let/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/let/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/let/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/let/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/let/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/let/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/let/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/let/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/let/dstr-obj-ptrn-list-err.js b/test/language/statements/let/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-list-err.js rename to test/language/statements/let/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/let/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/let/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/let/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/let/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/let/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/let/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-ary.js b/test/language/statements/let/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/let/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/let/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/let/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/let/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-id.js b/test/language/statements/let/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-id.js rename to test/language/statements/let/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/let/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/let/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/let/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/let/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/let/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/let/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/let/dstr-obj-ptrn-prop-obj.js b/test/language/statements/let/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/let/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/let/dstr-obj-ptrn-rest-getter.js b/test/language/statements/let/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/let/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/let/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/let/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/let/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/let/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/let/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/let/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/let/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/try/dstr-ary-init-iter-close.js b/test/language/statements/try/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/try/dstr-ary-init-iter-close.js rename to test/language/statements/try/dstr/ary-init-iter-close.js diff --git a/test/language/statements/try/dstr-ary-init-iter-get-err.js b/test/language/statements/try/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-init-iter-get-err.js rename to test/language/statements/try/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/try/dstr-ary-init-iter-no-close.js b/test/language/statements/try/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/try/dstr-ary-init-iter-no-close.js rename to test/language/statements/try/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/try/dstr-ary-name-iter-val.js b/test/language/statements/try/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/try/dstr-ary-name-iter-val.js rename to test/language/statements/try/dstr/ary-name-iter-val.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/try/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/try/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/try/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/try/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/try/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/try/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/try/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/try/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/try/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/try/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-elision.js b/test/language/statements/try/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-elision.js rename to test/language/statements/try/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/try/dstr-ary-ptrn-empty.js b/test/language/statements/try/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-empty.js rename to test/language/statements/try/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/try/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/try/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/try/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/try/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/try/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/try/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/try/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/try/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/try/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/try/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/try/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/try/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/try/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-id.js b/test/language/statements/try/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-id.js rename to test/language/statements/try/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/try/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/try/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/try/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/try/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/try/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/try/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/try/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/try/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/try/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/try/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/try/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/try/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/try/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/try/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/try/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/try/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/try/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/try/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/try/dstr-obj-init-null.js b/test/language/statements/try/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/try/dstr-obj-init-null.js rename to test/language/statements/try/dstr/obj-init-null.js diff --git a/test/language/statements/try/dstr-obj-init-undefined.js b/test/language/statements/try/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/try/dstr-obj-init-undefined.js rename to test/language/statements/try/dstr/obj-init-undefined.js diff --git a/test/language/statements/try/dstr-obj-ptrn-empty.js b/test/language/statements/try/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-empty.js rename to test/language/statements/try/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/try/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/try/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/try/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/try/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/try/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/try/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/try/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/try/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/try/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/try/dstr-obj-ptrn-list-err.js b/test/language/statements/try/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-list-err.js rename to test/language/statements/try/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/try/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/try/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/try/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/try/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/try/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/try/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-ary.js b/test/language/statements/try/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/try/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/try/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/try/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/try/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-id.js b/test/language/statements/try/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-id.js rename to test/language/statements/try/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/try/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/try/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/try/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/try/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/try/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/try/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/try/dstr-obj-ptrn-prop-obj.js b/test/language/statements/try/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/try/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/try/dstr-obj-ptrn-rest-getter.js b/test/language/statements/try/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/try/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/try/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/try/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/try/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/try/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/try/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/try/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/try/dstr/obj-ptrn-rest-val-obj.js diff --git a/test/language/statements/variable/dstr-ary-init-iter-close.js b/test/language/statements/variable/dstr/ary-init-iter-close.js similarity index 100% rename from test/language/statements/variable/dstr-ary-init-iter-close.js rename to test/language/statements/variable/dstr/ary-init-iter-close.js diff --git a/test/language/statements/variable/dstr-ary-init-iter-get-err.js b/test/language/statements/variable/dstr/ary-init-iter-get-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-init-iter-get-err.js rename to test/language/statements/variable/dstr/ary-init-iter-get-err.js diff --git a/test/language/statements/variable/dstr-ary-init-iter-no-close.js b/test/language/statements/variable/dstr/ary-init-iter-no-close.js similarity index 100% rename from test/language/statements/variable/dstr-ary-init-iter-no-close.js rename to test/language/statements/variable/dstr/ary-init-iter-no-close.js diff --git a/test/language/statements/variable/dstr-ary-name-iter-val.js b/test/language/statements/variable/dstr/ary-name-iter-val.js similarity index 100% rename from test/language/statements/variable/dstr-ary-name-iter-val.js rename to test/language/statements/variable/dstr/ary-name-iter-val.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-elem-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-elem-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-elem-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-elem-iter.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-elem-iter.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-elem-iter.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-elision-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-elision-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-elision-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-elision-iter.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-elision-iter.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-elision-iter.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-empty-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-empty-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-empty-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-empty-iter.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-empty-iter.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-empty-iter.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-rest-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-rest-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-rest-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-rest-iter.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-rest-iter.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-rest-iter.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-ary-val-null.js b/test/language/statements/variable/dstr/ary-ptrn-elem-ary-val-null.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-ary-val-null.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-ary-val-null.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-exhausted.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-exhausted.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-exhausted.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-arrow.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-arrow.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-class.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-class.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-cover.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-cover.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-fn.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-fn.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-fn-name-gen.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-fn-name-gen.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-hole.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-hole.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-hole.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-hole.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-skipped.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-skipped.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-skipped.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-throws.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-throws.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-throws.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-throws.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-undef.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-undef.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-undef.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-undef.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-init-unresolvable.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-init-unresolvable.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-init-unresolvable.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-complete.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-complete.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-complete.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-done.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-done.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-done.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-done.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-step-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-step-err.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-step-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-val-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-val-err.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-val-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-val.js b/test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-val.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-id-iter-val.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-id-iter-val.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-id-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-id-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-id-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-id-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-id.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-id.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-prop-id-init.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-prop-id-init.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-prop-id-init.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-prop-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-prop-id.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-prop-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-val-null.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-val-null.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-val-null.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-val-null.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/variable/dstr/ary-ptrn-elem-obj-val-undef.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elem-obj-val-undef.js rename to test/language/statements/variable/dstr/ary-ptrn-elem-obj-val-undef.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elision-exhausted.js b/test/language/statements/variable/dstr/ary-ptrn-elision-exhausted.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elision-exhausted.js rename to test/language/statements/variable/dstr/ary-ptrn-elision-exhausted.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elision-step-err.js b/test/language/statements/variable/dstr/ary-ptrn-elision-step-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elision-step-err.js rename to test/language/statements/variable/dstr/ary-ptrn-elision-step-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-elision.js b/test/language/statements/variable/dstr/ary-ptrn-elision.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-elision.js rename to test/language/statements/variable/dstr/ary-ptrn-elision.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-empty.js b/test/language/statements/variable/dstr/ary-ptrn-empty.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-empty.js rename to test/language/statements/variable/dstr/ary-ptrn-empty.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-ary-elem.js b/test/language/statements/variable/dstr/ary-ptrn-rest-ary-elem.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-ary-elem.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-ary-elem.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-ary-elision.js b/test/language/statements/variable/dstr/ary-ptrn-rest-ary-elision.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-ary-elision.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-ary-elision.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-ary-empty.js b/test/language/statements/variable/dstr/ary-ptrn-rest-ary-empty.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-ary-empty.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-ary-empty.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-ary-rest.js b/test/language/statements/variable/dstr/ary-ptrn-rest-ary-rest.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-ary-rest.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-ary-rest.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id-elision-next-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id-elision-next-err.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id-elision-next-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id-elision.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id-elision.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id-elision.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id-elision.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id-exhausted.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id-exhausted.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id-exhausted.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id-exhausted.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id-iter-step-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id-iter-step-err.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id-iter-step-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id-iter-val-err.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id-iter-val-err.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id-iter-val-err.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-id.js b/test/language/statements/variable/dstr/ary-ptrn-rest-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-id.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-init-ary.js b/test/language/statements/variable/dstr/ary-ptrn-rest-init-ary.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-init-ary.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-init-ary.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-init-id.js b/test/language/statements/variable/dstr/ary-ptrn-rest-init-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-init-id.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-init-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-init-obj.js b/test/language/statements/variable/dstr/ary-ptrn-rest-init-obj.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-init-obj.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-init-obj.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-not-final-ary.js b/test/language/statements/variable/dstr/ary-ptrn-rest-not-final-ary.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-not-final-ary.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-not-final-ary.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-not-final-id.js b/test/language/statements/variable/dstr/ary-ptrn-rest-not-final-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-not-final-id.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-not-final-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-not-final-obj.js b/test/language/statements/variable/dstr/ary-ptrn-rest-not-final-obj.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-not-final-obj.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-not-final-obj.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-obj-id.js b/test/language/statements/variable/dstr/ary-ptrn-rest-obj-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-obj-id.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-obj-id.js diff --git a/test/language/statements/variable/dstr-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/variable/dstr/ary-ptrn-rest-obj-prop-id.js similarity index 100% rename from test/language/statements/variable/dstr-ary-ptrn-rest-obj-prop-id.js rename to test/language/statements/variable/dstr/ary-ptrn-rest-obj-prop-id.js diff --git a/test/language/statements/variable/dstr-obj-init-null.js b/test/language/statements/variable/dstr/obj-init-null.js similarity index 100% rename from test/language/statements/variable/dstr-obj-init-null.js rename to test/language/statements/variable/dstr/obj-init-null.js diff --git a/test/language/statements/variable/dstr-obj-init-undefined.js b/test/language/statements/variable/dstr/obj-init-undefined.js similarity index 100% rename from test/language/statements/variable/dstr-obj-init-undefined.js rename to test/language/statements/variable/dstr/obj-init-undefined.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-empty.js b/test/language/statements/variable/dstr/obj-ptrn-empty.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-empty.js rename to test/language/statements/variable/dstr/obj-ptrn-empty.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-get-value-err.js b/test/language/statements/variable/dstr/obj-ptrn-id-get-value-err.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-get-value-err.js rename to test/language/statements/variable/dstr/obj-ptrn-id-get-value-err.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-arrow.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-arrow.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-arrow.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-class.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-class.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-class.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-cover.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-cover.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-cover.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-fn.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-fn.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-fn.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-gen.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-fn-name-gen.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-fn-name-gen.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-skipped.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-skipped.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-skipped.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-skipped.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-throws.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-throws.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-throws.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-throws.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-init-unresolvable.js b/test/language/statements/variable/dstr/obj-ptrn-id-init-unresolvable.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-init-unresolvable.js rename to test/language/statements/variable/dstr/obj-ptrn-id-init-unresolvable.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-id-trailing-comma.js b/test/language/statements/variable/dstr/obj-ptrn-id-trailing-comma.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-id-trailing-comma.js rename to test/language/statements/variable/dstr/obj-ptrn-id-trailing-comma.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-list-err.js b/test/language/statements/variable/dstr/obj-ptrn-list-err.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-list-err.js rename to test/language/statements/variable/dstr/obj-ptrn-list-err.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-ary-init.js b/test/language/statements/variable/dstr/obj-ptrn-prop-ary-init.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-ary-init.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-ary-init.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/variable/dstr/obj-ptrn-prop-ary-trailing-comma.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-ary-trailing-comma.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-ary-trailing-comma.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-ary-value-null.js b/test/language/statements/variable/dstr/obj-ptrn-prop-ary-value-null.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-ary-value-null.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-ary-value-null.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-ary.js b/test/language/statements/variable/dstr/obj-ptrn-prop-ary.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-ary.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-ary.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-eval-err.js b/test/language/statements/variable/dstr/obj-ptrn-prop-eval-err.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-eval-err.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-eval-err.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-get-value-err.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-get-value-err.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-get-value-err.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-init-skipped.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-init-skipped.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-init-skipped.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-init-throws.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-init-throws.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-init-throws.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-init-throws.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-init-unresolvable.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-init-unresolvable.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-init-unresolvable.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-init.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-init.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-init.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-init.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id-trailing-comma.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id-trailing-comma.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id-trailing-comma.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-id.js b/test/language/statements/variable/dstr/obj-ptrn-prop-id.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-id.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-id.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-obj-init.js b/test/language/statements/variable/dstr/obj-ptrn-prop-obj-init.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-obj-init.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-obj-init.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-obj-value-null.js b/test/language/statements/variable/dstr/obj-ptrn-prop-obj-value-null.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-obj-value-null.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-obj-value-null.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/variable/dstr/obj-ptrn-prop-obj-value-undef.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-obj-value-undef.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-obj-value-undef.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-prop-obj.js b/test/language/statements/variable/dstr/obj-ptrn-prop-obj.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-prop-obj.js rename to test/language/statements/variable/dstr/obj-ptrn-prop-obj.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-rest-getter.js b/test/language/statements/variable/dstr/obj-ptrn-rest-getter.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-rest-getter.js rename to test/language/statements/variable/dstr/obj-ptrn-rest-getter.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/variable/dstr/obj-ptrn-rest-skip-non-enumerable.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-rest-skip-non-enumerable.js rename to test/language/statements/variable/dstr/obj-ptrn-rest-skip-non-enumerable.js diff --git a/test/language/statements/variable/dstr-obj-ptrn-rest-val-obj.js b/test/language/statements/variable/dstr/obj-ptrn-rest-val-obj.js similarity index 100% rename from test/language/statements/variable/dstr-obj-ptrn-rest-val-obj.js rename to test/language/statements/variable/dstr/obj-ptrn-rest-val-obj.js