import "module";
import x from "module";
import { x } from "module";
import { a, b, c } from "module";
import { a, b, c,  } from "module";
import { a as A } from "module";
import { a, a as A, a } from "module";
import { a as A, a as A } from "module";
import a, { a } from "module";
import a, { a as A } from "module";
import x, * as A from "module";
import * as A from "module";

export { x };
export let x;
export var x;
export const x = 1;
export let x = 1,
    y = 1;
export let {x, y, z} = o;
export let [x, y, z] = a;
export { x as X };
export { x as X, a as A };
export * from "module";
export { x } from "module";
export { x, y } from "module";
export { x as A } from "module";
export { x as default };
export default x;
export default 1;
export default {};
export default (1);
export default [1];
export default /r/;
export default function() {}
export default function f() {}
export default function* () {}
export default function* f() {}
export default class {}
export default class X {}
