exports.uncaught = () => {
throw 'uncaught';
}
exports.caught = () => {
try {
throw 'caught';
} catch (e) {
// ignored
exports.rethrown = () => {
throw 'rethrown';
throw e;