/* IMPORTANT
 * This snapshot file is auto-generated, but designed for humans.
 * It should be checked into source control and tracked carefully.
 * Re-generate by setting TAP_SNAPSHOT=1 and running tests.
 * Make sure to inspect the output below.  Do not ignore changes!
 */
'use strict'
exports[`test/usurp.ts > TAP > !(!(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)",
  "(?:a|b)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > !(!(a|b)) > toString after flattening 1`] = `
@(a|b)
`

exports[`test/usurp.ts > TAP > !(!(a|b))y > regexpSource 1`] = `
Array [
  "(?:ay|by)y",
  "(?:ay|by)y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > !(!(a|b))y > toString after flattening 1`] = `
@(a|b)y
`

exports[`test/usurp.ts > TAP > ?(*(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)*",
  "(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > ?(*(a|b)) > toString after flattening 1`] = `
*(a|b)
`

exports[`test/usurp.ts > TAP > ?(*(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b)*y",
  "(?:a|b)*y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > ?(*(a|b))y > toString after flattening 1`] = `
*(a|b)y
`

exports[`test/usurp.ts > TAP > ?(+(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)*",
  "(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > ?(+(a|b)) > toString after flattening 1`] = `
*(a|b)
`

exports[`test/usurp.ts > TAP > ?(+(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b)*y",
  "(?:a|b)*y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > ?(+(a|b))y > toString after flattening 1`] = `
*(a|b)y
`

exports[`test/usurp.ts > TAP > @(!(a|b)) > regexpSource 1`] = `
Array [
  "(?:(?!(?:a(?:$|\\\\/)|b(?:$|\\\\/)))(?!\\\\.)[^/]*?)",
  "(?:(?!(?:a(?:$|\\\\/)|b(?:$|\\\\/)))(?!.)[^/]*?)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(!(a|b)) > toString after flattening 1`] = `
!(a|b)
`

exports[`test/usurp.ts > TAP > @(!(a|b))y > regexpSource 1`] = `
Array [
  "(?:(?!(?:ay(?:$|\\\\/)|by(?:$|\\\\/)))(?!\\\\.)[^/]*?)y",
  "(?:(?!(?:ay(?:$|\\\\/)|by(?:$|\\\\/)))(?!.)[^/]*?)y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(!(a|b))y > toString after flattening 1`] = `
!(a|b)y
`

exports[`test/usurp.ts > TAP > @(?(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)",
  "(?:a|b)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(?(a|b)) > toString after flattening 1`] = `
@(a|b|)
`

exports[`test/usurp.ts > TAP > @(?(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b|)y",
  "(?:a|b|)y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(?(a|b))y > toString after flattening 1`] = `
@(a|b|)y
`

exports[`test/usurp.ts > TAP > @(*(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)*",
  "(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(*(a|b)) > toString after flattening 1`] = `
*(a|b)
`

exports[`test/usurp.ts > TAP > @(*(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b)*y",
  "(?:a|b)*y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(*(a|b))y > toString after flattening 1`] = `
*(a|b)y
`

exports[`test/usurp.ts > TAP > @(+(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)+",
  "(?:a|b)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(+(a|b)) > toString after flattening 1`] = `
+(a|b)
`

exports[`test/usurp.ts > TAP > @(+(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b)+y",
  "(?:a|b)+y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(+(a|b))y > toString after flattening 1`] = `
+(a|b)y
`

exports[`test/usurp.ts > TAP > @(a*b) > regexpSource 1`] = `
Array [
  "(?:a[^/]*?b)",
  "(?:a[^/]*?b)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(a*b) > toString after flattening 1`] = `
@(a*b)
`

exports[`test/usurp.ts > TAP > @(a*b)y > regexpSource 1`] = `
Array [
  "(?:a[^/]*?b)y",
  "(?:a[^/]*?b)y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > @(a*b)y > toString after flattening 1`] = `
@(a*b)y
`

exports[`test/usurp.ts > TAP > +(?(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)+",
  "(?:a|b)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > +(?(a|b)) > toString after flattening 1`] = `
+(a|b|)
`

exports[`test/usurp.ts > TAP > +(?(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b|)+y",
  "(?:a|b|)+y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > +(?(a|b))y > toString after flattening 1`] = `
+(a|b|)y
`

exports[`test/usurp.ts > TAP > +(*(a|b)) > regexpSource 1`] = `
Array [
  "(?:a|b)+",
  "(?:a|b)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > +(*(a|b)) > toString after flattening 1`] = `
+(a|b|)
`

exports[`test/usurp.ts > TAP > +(*(a|b))y > regexpSource 1`] = `
Array [
  "(?:a|b|)+y",
  "(?:a|b|)+y",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > +(*(a|b))y > toString after flattening 1`] = `
+(a|b|)y
`

exports[`test/usurp.ts > TAP > x!(!(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b)",
  "x(?:a|b)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x!(!(a|b)) > toString after flattening 1`] = `
x@(a|b)
`

exports[`test/usurp.ts > TAP > x?(*(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b)*",
  "x(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x?(*(a|b)) > toString after flattening 1`] = `
x*(a|b)
`

exports[`test/usurp.ts > TAP > x?(+(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b)*",
  "x(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x?(+(a|b)) > toString after flattening 1`] = `
x*(a|b)
`

exports[`test/usurp.ts > TAP > x@(!(a|b)) > regexpSource 1`] = `
Array [
  "x(?:(?!(?:a(?:$|\\\\/)|b(?:$|\\\\/)))[^/]*?)",
  "x(?:(?!(?:a(?:$|\\\\/)|b(?:$|\\\\/)))[^/]*?)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x@(!(a|b)) > toString after flattening 1`] = `
x!(a|b)
`

exports[`test/usurp.ts > TAP > x@(?(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b|)",
  "x(?:a|b|)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x@(?(a|b)) > toString after flattening 1`] = `
x@(a|b|)
`

exports[`test/usurp.ts > TAP > x@(*(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b)*",
  "x(?:a|b)*",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x@(*(a|b)) > toString after flattening 1`] = `
x*(a|b)
`

exports[`test/usurp.ts > TAP > x@(+(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b)+",
  "x(?:a|b)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x@(+(a|b)) > toString after flattening 1`] = `
x+(a|b)
`

exports[`test/usurp.ts > TAP > x@(a*b) > regexpSource 1`] = `
Array [
  "x(?:a[^/]*?b)",
  "x(?:a[^/]*?b)",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x@(a*b) > toString after flattening 1`] = `
x@(a*b)
`

exports[`test/usurp.ts > TAP > x+(?(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b|)+",
  "x(?:a|b|)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x+(?(a|b)) > toString after flattening 1`] = `
x+(a|b|)
`

exports[`test/usurp.ts > TAP > x+(*(a|b)) > regexpSource 1`] = `
Array [
  "x(?:a|b|)+",
  "x(?:a|b|)+",
  true,
  false,
]
`

exports[`test/usurp.ts > TAP > x+(*(a|b)) > toString after flattening 1`] = `
x+(a|b|)
`
