use once_cell::sync::Lazy;
use regex::Regex;
pub static FILE_EXTENSION_REGEX: Lazy<Regex> =
Lazy::new(|| Regex::new(r"(?i)\.[a-z0-9]{2,4}$").expect("FILE_EXTENSION_REGEX"));
pub static SIMPLE_TITLE_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)(?:(?:480|540|576|720|1080|2160)[ip]|[xh][\W_]?26[45]|DD\W?5\W1|[<>?*]|848x480|1280x720|1920x1080|3840x2160|4096x2160|(?:8|10)bit|10-bit)\s*?",
)
.expect("SIMPLE_TITLE_REGEX")
});
pub static WEBSITE_PREFIX_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?:(?:\[|\()\s*)?(?:www\.)?[-a-z0-9-]{1,256}\.(?:[a-z]{2,6}\.[a-z]{2,6}|xn--[a-z0-9-]{4,}|[a-z]{2,})\b(?:\s*(?:\]|\))|[ -]{2,})[ -]*",
)
.expect("WEBSITE_PREFIX_REGEX")
});
pub static WEBSITE_POSTFIX_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)(?:\[\s*)?(?:www\.)?[-a-z0-9-]{1,256}\.(?:xn--[a-z0-9-]{4,}|[a-z]{2,6})\b(?:\s*\])$",
)
.expect("WEBSITE_POSTFIX_REGEX")
});
pub static CLEAN_TORRENT_SUFFIX_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)\[(?:ettv|rartv|rarbg|cttv|publichd)\]$").expect("CLEAN_TORRENT_SUFFIX_REGEX")
});
pub static CLEAN_QUALITY_BRACKETS_REGEX: Lazy<Regex> =
Lazy::new(|| Regex::new(r"(?i)\[[a-z0-9 ._-]+\]$").expect("CLEAN_QUALITY_BRACKETS_REGEX"));
pub static REVERSED_TITLE_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)(?:^|[-. _])(?:p027|p0801|\d{2,3}E\d{2}S)[-. _]")
.expect("REVERSED_TITLE_REGEX")
});
pub static SIX_DIGIT_AIR_DATE_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?P<prefix>[_.+-])(?P<airdate>(?P<airyear>[1-9]\d)(?P<airmonth>0[1-9]|1[0-2])(?P<airday>0[1-9]|[12]\d|3[01]))(?P<suffix>[_.+-])",
)
.expect("SIX_DIGIT_AIR_DATE_REGEX")
});
pub static REQUEST_INFO_REGEX: Lazy<Regex> =
Lazy::new(|| Regex::new(r"^\[.+?\]").expect("REQUEST_INFO_REGEX"));
pub static PRE_SUB_SPANISH_REGEX: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[ ._-]\(.+?\((?P<year>\d{4})/(?P<info>S[^/]+)")
.expect("PRE_SUB_SPANISH_REGEX")
});
pub static REJECT_HASHED_REGEXES: Lazy<Vec<Regex>> = Lazy::new(|| {
[
r"^[0-9a-zA-Z]{32}",
r"(?i)^[a-z0-9]{24}$",
r"^[A-Z]{11}\d{3}$",
r"(?i)^[a-z]{12}\d{3}$",
r"^Backup_\d{5,}S\d{2}-\d{2}$",
r"^123$",
r"(?i)^abc$",
r"(?i)^abc[-_. ]xyz",
r"(?i)^b00bs$",
r"^\d{6}_\d{2}$",
r"^[0-9a-zA-Z]{30}",
r"^[0-9a-zA-Z]{26}",
r"^[0-9a-zA-Z]{39}",
r"^[0-9a-zA-Z]{24}",
]
.iter()
.map(|p| Regex::new(p).expect("REJECT_HASHED_REGEX"))
.collect()
});
pub static SEASON_FOLDER_REGEXES: Lazy<Vec<Regex>> = Lazy::new(|| {
[
r"(?i)^(?:S|Season|Saison|Series|Stagione)[-_ ]*\d{1,4}\s*$",
r"(?i)^Specials?$",
]
.iter()
.map(|p| Regex::new(p).expect("SEASON_FOLDER_REGEX"))
.collect()
});
pub struct IndexedRegex {
pub index: u8,
pub regex: &'static Lazy<Regex>,
}
pub static REGEX_00: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?\((?P<titleyear>\d{4})\))[-_. ]+(?P<airyear>19[4-9]\d|20\d\d)(?P<sep1>[-_]?)(?P<airmonth>0\d|1[0-2])(?P<sep2>[-_]?)(?P<airday>[0-2]\d|3[01])[-_. ]\d{2}[-_. ]\d{2}[-_. ]\d{2}")
.expect("REGEX_00")
});
pub static REGEX_01: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<airyear>19[6-9]\d|20\d\d)(?P<sep1>[-_]?)(?P<airmonth>0\d|1[0-2])(?P<sep2>[-_]?)(?P<airday>[0-2]\d|3[01])")
.expect("REGEX_01")
});
pub static REGEX_02: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\W*S(?P<season>\d{1,2}|\d{4})(?:e{1,2}(?P<ep>\d{1,3}))+){2,}")
.expect("REGEX_02")
});
pub static REGEX_03: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\W*(?P<season>\d{1,2}|\d{4})(?:x{1,2}(?P<ep>\d{1,3}))+){2,}")
.expect("REGEX_03")
});
pub static REGEX_04: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:S?(?P<season>\d{1,2}|\d{4})(?:(?:[-_]|[ex]){1,2}(?P<ep>\d{2,3})){2,})")
.expect("REGEX_04")
});
pub static REGEX_05: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:S?(?P<season>\d{1,2}|\d{4})(?:(?:[-_ ]?[ex])(?P<ep>\d{2,3})(?P<splitepisode>[a-d])(?:[ _.])))")
.expect("REGEX_05")
});
pub static REGEX_06: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:S?(?P<season>\d{1,2}|\d{4})(?:(?:[-_ ]?[ex])(?P<ep>\d{2,3})))")
.expect("REGEX_06")
});
pub static REGEX_07: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\](?:_|-|\s|\.)?\s*(?P<title>.+?)[-_. ]+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)(?:[-_. ])+\((?:S(?P<season>\d{1,2})(?:(?:[ex]|\W[ex]){1,2}(?P<episode>\d{2})))(?:v\d+)?(?:\)).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_07")
});
pub static REGEX_08: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\](?:_|-|\s|\.)?\s*(?P<title>.+?)[-_. ]+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)(?:[^a-zA-Z0-9()\[\]!])+(?:S(?P<season>\d{1,2})(?:(?:[ex]|\W[ex]){1,2}(?P<episode>\d{2})))(?:v\d+)?(?:[_. ]).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_08")
});
pub static REGEX_10: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\](?:_|-|\s|\.)?\s*(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!])+(?:S?(?P<season>\d{1,2})(?:(?:[ex]|\W[ex]){1,2}(?P<episode>\d{2}))+)(?:v\d+)?(?:[_. ]).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_10")
});
pub static REGEX_11: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+?(?:Episode)(?:[-_. ]+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_11")
});
pub static REGEX_12: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\](?:_|-|\s|\.)?\s*(?P<title>.+?)(?:(?:[^a-zA-Z0-9()\[\]!])+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:_|-|\s|\.)+(?:S?(?P<season>\d{1,2})(?:(?:[-]|[ex]|\W[ex]){1,2}(?P<episode>\d{2}))+).*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.)$")
.expect("REGEX_12")
});
pub static REGEX_13: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\](?:_|-|\s|\.)?\s*(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!])+(?:S?(?P<season>\d{1,2})(?:(?:[-]|[ex]|\W[ex]){1,2}(?P<episode>\d{2}))+)(?:(?:_|-|\s|\.)+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_13")
});
pub static REGEX_14: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?[^-]+?) - [-_. ]?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)\s?~\s?(?P<absoluteepisode2>\d{2,3}(?:\.\d{1,2})?)(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_14")
});
pub static REGEX_15: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>[^-]+?)[_. ]+?\(Season[_. ](?P<season>\d+)\)[-_. ]+?(?:[-_. ]?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_15")
});
pub static REGEX_16: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>[^\]]+?)(?:[-_. ]{3}(?P<absoluteepisode>\d{2}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_16")
});
pub static REGEX_17A: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+#(?P<absoluteepisode>\d{2,4}(?:\.\d{1,2})?)(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_17A")
});
pub static REGEX_17B: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+\((?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)-(?P<absoluteepisode2>\d{2,3}(?:\.\d{1,2})?)\)(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_17B")
});
pub static REGEX_17C: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+\(?#?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)\)?(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_17C")
});
pub static REGEX_18: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>[^-]+?) - (?:[-_. ]?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_18")
});
pub static REGEX_19: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>[^-]+?)[_ ]+(?:[-_. ]?(?P<absoluteepisode>\d{3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_19")
});
pub static REGEX_20: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)(?:[. ]-[. ](?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_20")
});
pub static REGEX_21: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)[. ]-[. ](?P<absoluteepisode2>\d{2,3}(?:\.\d{1,2})?)(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])?(?:$|\.mkv)")
.expect("REGEX_21")
});
pub static REGEX_26: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!])+(?:S?(?P<season>\d{1,2})(?:(?:[ex]|\W[ex]|-){1,2}(?P<episode>\d{2}))+)[-_. (]+?(?:[-_. ]?(?P<absoluteepisode>\d{3}(?:\.\d{1,2})?))+.+?\[(?P<subgroup>.+?)\](?:$|\.mkv)")
.expect("REGEX_26")
});
pub static REGEX_28: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]Episode(?:[-_. ]+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:.+?)\[(?P<subgroup>.+?)\].*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_28")
});
pub static REGEX_29: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:(?:_|-|\s|\.)+(?P<absoluteepisode>\d{3}(?:\.\d{1,2})))+(?:.+?)\[(?P<subgroup>.+?)\].*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_29")
});
pub static REGEX_30: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]+(?P<absoluteepisode>\d{2})[-_. ]\(\d{4}\)[-_. ]\[(?P<subgroup>.+?)\]")
.expect("REGEX_30")
});
pub static REGEX_31: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>[^-]+?) - (?:[-_. ]?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?.*?(?P<hash>[(\[]\w{8}[)\]])(?:$|\.mkv)")
.expect("REGEX_31")
});
pub static REGEX_32: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:(?:_|-|\s|\.)+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:[-_. ]+(?P<special>special|ova|ovd))?[-_. ]+.*?(?P<hash>[(\[]\w{8}[)\]])$")
.expect("REGEX_32")
});
pub static REGEX_34: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*(?P<airyear>\d{4})\W+(?P<airmonth>[0-1][0-9])\W+(?P<airday>[0-3][0-9]).+?(?:s?(?P<season>\d{1,2}))(?:[ex](?P<ep>\d{1,3}))")
.expect("REGEX_34")
});
pub static REGEX_35: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?[-_. ](?:e\d{2,3})[-_. ](?P<airyear>\d{4})\W+(?P<airmonth>[0-1][0-9])\W+(?P<airday>[0-3][0-9]).+?(?:\[[a-z]+\])")
.expect("REGEX_35")
});
pub static REGEX_49: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*(?P<airyear>\d{4})[-_. ]+(?P<airmonth>[0-1][0-9])[-_. ]+(?P<airday>[0-3][0-9])[-_. ]+Part[-_. ]?(?P<part>[1-9])")
.expect("REGEX_49")
});
pub static REGEX_76: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*(?P<airyear>\d{4})[-_. ]+(?P<airmonth>[0-1][0-9])[-_. ]+(?P<airday>[0-3][0-9])")
.expect("REGEX_76")
});
pub static REGEX_77: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[_. ](?P<absoluteepisode>\d{1,4})(?:[_. ]+)(?:BLM|B[oö]l[uü]m)")
.expect("REGEX_77")
});
pub static REGEX_78: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*(?P<ambiguousairmonth>[0-1][0-9])[-_. ]+(?P<ambiguousairday>[0-3][0-9])[-_. ]+(?P<airyear>\d{4})")
.expect("REGEX_78")
});
pub static REGEX_79: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*(?P<ambiguousairday>[0-3][0-9])[-_. ]+(?P<ambiguousairmonth>[0-1][0-9])[-_. ]+(?P<airyear>\d{4})")
.expect("REGEX_79")
});
pub static REGEX_80: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?P<title>.+?)?\W*(?P<airyear>\d{4})(?P<airmonth>[0-1][0-9])(?P<airday>[0-3][0-9])",
)
.expect("REGEX_80")
});
pub static REGEX_45: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+?(?P<absoluteepisode>\d{4}(?:\.\d{1,2})?)")
.expect("REGEX_45")
});
pub static REGEX_46: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]+(?P<absoluteepisode>\d{4})[-_. ]\[(?P<subgroup>.+?)\]")
.expect("REGEX_46")
});
pub static REGEX_65: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?P<title>.+?S\d{1,2})[-_. ]{3,}(?:EP)?(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)",
)
.expect("REGEX_65")
});
pub static REGEX_66: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)[-_. ]+?(?:Episode[-_. ]+?)(?P<absoluteepisode>\d{1}(?:\.\d{1,2})?)")
.expect("REGEX_66")
});
pub static REGEX_67: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^\[(?P<subgroup>.+?)\][-_. ]?(?P<title>.+?)[-_. ]+?\[(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)\]")
.expect("REGEX_67")
});
pub static REGEX_81: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:(?:_|-|\s|\.)+(?:e|ep)(?P<absoluteepisode>(?:\d{3}|\d{4})(?:\.\d{1,2})?))+[-_. ].*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_81")
});
pub static REGEX_87: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:_|\s|\.)+(?:e|ep)(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?)-(?P<absoluteepisode2>\d{1,2}(?:\.\d{1,2})?).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_87")
});
pub static REGEX_88: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:(?:_|-|\s|\.)+(?:e|ep)(?P<absoluteepisode>\d{2,4}(?:\.\d{1,2})?))+[-_. ].*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_88")
});
pub static REGEX_89: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ](?:Episode)(?:[-_. ]+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_89")
});
pub static REGEX_90: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)[_. ]+(?P<absoluteepisode>\d{1,2}(?:\.\d{1,2})?)-(?P<absoluteepisode2>\d{1,2}(?:\.\d{1,2})?).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_90")
});
pub static REGEX_91: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)[-_. ]+(?:Episode|Episodio)(?:[-_. ]+(?P<absoluteepisode>\d{2,4}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_91")
});
pub static REGEX_92: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:[-_. ]\[)(?:(?:-?)(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+(?:\][-_. ]).*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_92")
});
pub static REGEX_93: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:[-_. ]+(?P<absoluteepisode>\d{2,4}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_93")
});
pub static REGEX_94: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[(?P<subgroup>.+?)\][-_. ]?)?(?P<title>.+?)(?:(?:[^a-zA-Z0-9()\[\]!])+(?P<absoluteepisode>\d{2,3}(?:\.\d{1,2})?))+.*?(?P<hash>[(\[]\w{8}[)\]])?$")
.expect("REGEX_94")
});
pub static REGEX_22: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!]+S(?P<season>\d{1,2}|\d{4})(?:(?:e|[-_. ]e){1,2}(?P<ep>\d{1,3}))+){2,}")
.expect("REGEX_22")
});
pub static REGEX_23: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!]+(?P<season>\d{1,2}|\d{4})(?:x{1,2}(?P<ep>\d{1,3}))+){2,}")
.expect("REGEX_23")
});
pub static REGEX_24: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:[ex]|\W[ex]|_){1,2}(?P<ep>\d{2,3})(?P<special>\.5[ .]\[SP\])")
.expect("REGEX_24")
});
pub static REGEX_25: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:[ex]|\W[ex]|_){1,2}(?P<ep>\d{2,3}).+?\[.+?\]")
.expect("REGEX_25")
});
pub static REGEX_27: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:[ex]|\W[ex]|_){1,2}(?P<ep1>\d{2,3})(?:(?:[-ex]|\W[ex]|_){1,2}(?P<ep2>\d{2,3}))+.+?\[.+?\]")
.expect("REGEX_27")
});
pub static REGEX_33: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?\W*\d{4}\W+[0-1][0-9]\W+[0-3][0-9][-_. ](?:s?(?P<season>\d{1,2}))(?:[ex](?P<ep>\d{1,3}))")
.expect("REGEX_33")
});
pub static REGEX_36: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:(?P<title>.*?)[ ._]/[ ._])+\(?S(?P<season>\d{1,2})\W?E?[ ._]?(?P<ep1>\d{1,2})(?:-(?P<ep2>\d{1,2}))?(?:[ ._]of[ ._](?P<episodecount>\d{1,2}))?\)?[ ._][(\[]")
.expect("REGEX_36")
});
pub static REGEX_37: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S(?P<season>\d{1,2})E(?P<ep1>\d{2,3})(?:-(?P<ep2>\d{2,3}))+(?:[-_. ]|$)")
.expect("REGEX_37")
});
pub static REGEX_38: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S(?P<season>\d{1,2})E(?P<ep1>\d{1,2})(?:-(?P<ep2>\d{1,2}))+(?:[-_. ]|$)")
.expect("REGEX_38")
});
pub static REGEX_39: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:[ex]|\W[ex]){1,2}(?P<ep1>\d{2,3})(?:(?:[-ex]|\W+[ex]|_){1,2}(?P<ep2>\d{2,3}))*)(?:[-_. ]|$)")
.expect("REGEX_39")
});
pub static REGEX_40: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S(?P<season>\d{4})(?:e|\We|_){1,2}(?P<ep1>\d{2,4})(?:(?:[-e]|\We|_){1,2}(?P<ep2>\d{2,3}))*\W?")
.expect("REGEX_40")
});
pub static REGEX_41: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+(?P<season>\d{4})(?:x|\Wx){1,2}(?P<ep1>\d{2,4})(?:(?:[-x]|\Wx|_){1,2}(?P<ep2>\d{2,3}))*\W?")
.expect("REGEX_41")
});
pub static REGEX_42: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?P<title>.+?)[^a-zA-Z0-9()\[\]!]+S(?P<season>\d{2})\.(?P<ep>\d{2,3})(?:[-_. ]|$)",
)
.expect("REGEX_42")
});
pub static REGEX_43: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:Complete Series)?[-_. ]+(?:S|(?:Season|Saison|Series|Stagione)[_. ])(?P<season1>\d{1,2})(?:[-_. ]{1,3})(?:S|(?:Season|Saison|Series|Stagione)[_. ])?(?P<season2>\d{1,2})")
.expect("REGEX_43")
});
pub static REGEX_44: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:\W+S(?P<season>\d{1,2})\W+(?:(?:(?:Part|Vol|P)\W?)(?P<seasonpart>\d{1,2}))+)")
.expect("REGEX_44")
});
pub static REGEX_47: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?\d{4})(?:\W+(?:(?:Part\W?|e)(?P<ep>\d{1,2}))+)")
.expect("REGEX_47")
});
pub static REGEX_48: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[-. _][e])(?P<ep1>\d{2,3})(?:(?:-?[e])(?P<ep2>\d{2,3}))+")
.expect("REGEX_48")
});
pub static REGEX_50: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:\W+(?:(?:Part\W?)(?P<ep>\d{1,2}))+)").expect("REGEX_50")
});
pub static REGEX_51: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:\W+(?:Part[-. _](?P<ep>One|Two|Three|Four|Five|Six|Seven|Eight|Nine)(?:[-. _])))")
.expect("REGEX_51")
});
pub static REGEX_52: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:\W+(?:(?P<ep>\d{1,2})of\d+)+)").expect("REGEX_52")
});
pub static REGEX_53: Lazy<Regex> = Lazy::new(|| {
Regex::new(r#"(?i)(?:.*(?:"|^))(?P<title>.*?)(?:[-_\W][^()\[\]])*(?:\W?Season\W?)(?P<season>\d{1,2})(?:\W|_)+(?:Episode\W)(?:[-_. ]?(?P<ep>\d{1,2}))+"#)
.expect("REGEX_53")
});
pub static REGEX_54: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.*?)[-. _]+\[S(?P<season>\d{2})(?:[E-]{1,2}(?P<ep>\d{2}))+\]")
.expect("REGEX_54")
});
pub static REGEX_55: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.*?)[-. _]+\(S(?P<season>\d{2})(?:[E-]{1,2}(?P<ep>\d{2}))+\)")
.expect("REGEX_55")
});
pub static REGEX_56: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.*?)S(?P<season>\d{2})(?:E(?P<ep>\d{2}))+").expect("REGEX_56")
});
pub static REGEX_57: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]S(?P<season>\d{1,2}|\d{4})(?:(?:[-_. ]?[ex]|[-_. ])(?P<ep>\d{1,2}))+")
.expect("REGEX_57")
});
pub static REGEX_59: Lazy<Regex> = Lazy::new(|| {
Regex::new(r#"(?i)(?:.*(?:"| / |^))(?P<title>.*?)(?:\W?|_)S(?P<season>\d{1,2})(?:\W|_)?Ep?[ ._]?(?P<ep>\d{1,2})(?:[-]\d+)*"#)
.expect("REGEX_59")
});
pub static REGEX_60: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r#"(?i)(?:.*(?:"|^))(?P<title>.*?)(?:\W?|_)S(?P<season>\d{3})(?:\W|_)?E(?P<ep>\d{1,2})"#,
)
.expect("REGEX_60")
});
pub static REGEX_61: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:(?P<title>.+?)(?:_|-|\s|\.)+)(?:S?(?P<season>\d{1,2}))(?:(?:[-ex]|\W[ex]|_){1,2}(?P<ep>\d{5}))")
.expect("REGEX_61")
});
pub static REGEX_62: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:(?P<title>.+?)(?:_|-|\s|\.)+)(?:S?(?P<season>\d{1,2}))(?:(?:[-_. ]{1,3}ep){1,2}(?P<ep>\d{5}))+")
.expect("REGEX_62")
});
pub static REGEX_63: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:_|-|\s|\.)+S(?P<season>\d{2})\W-\WE(?P<ep>\d{2})")
.expect("REGEX_63")
});
pub static REGEX_64: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)?[^a-zA-Z0-9()\[\]!]+\[(?:s)?(?P<season>\d{1,2})(?:(?:[ex])(?P<ep1>\d{2}))(?:(?:[-ex]){1,2}(?P<ep2>\d{2}))*\].+?(?:\.|$)")
.expect("REGEX_64")
});
pub static REGEX_68: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<airyear>\d{2})(?P<airmonth>[0-1][0-9])(?P<airday>[0-3][0-9])[-_. ](?P<title>.+?)[-_. ](?:Season[-_. ]?(?P<season>\d{1,2})[-_. ])?(?:ep|#)(?P<ep>\d{1,5})")
.expect("REGEX_68")
});
pub static REGEX_69: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]+?(?:S|Season|Saison|Series|Stagione)[-_. ]?(?P<season>\d{1,2})[-_. ]\d{4}[-_. ]")
.expect("REGEX_69")
});
pub static REGEX_70: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+)[-_. /]+(?:S|Season|Saison|Series|Stagione)[-_. ]?(?P<season>\d{1,2})(?:[-_. /]|$)+(?P<extras>EXTRAS|SUBPACK)?")
.expect("REGEX_70")
});
pub static REGEX_71: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ]+?(?:S|Season|Saison|Series|Stagione)[-_. ]?(?P<season>\d{4})(?:\W+|_|$)(?P<extras>EXTRAS|SUBPACK)?")
.expect("REGEX_71")
});
pub static REGEX_72: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:(?:[-_. ]+?Temporada.+?|\[.+?\])\[Cap)(?:[-_. ]+(?P<season>\d{1,2})(?P<ep>[1-9][0-9]|0[1-9]))+(?:\])")
.expect("REGEX_72")
});
pub static REGEX_73: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?P<title>.+?)?(?:[_.-]+(?P<season>[1-9])(?P<ep>[1-9][0-9]|0[1-9]))+(?:[_.]|$)",
)
.expect("REGEX_73")
});
pub static REGEX_74: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?:S?(?P<season>\d{1,2})(?:(?:[-ex]|\W[ex]|_){1,2}(?P<ep>\d{4}))+)(?:[^ip\d]|$)",
)
.expect("REGEX_74")
});
pub static REGEX_75: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)(?:[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:(?:[-ex]|\W[ex]|_){1,2}(?P<ep>\d{4}))+)(?:[^ip\d]|$)")
.expect("REGEX_75")
});
pub static REGEX_82: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+)[-_. ]+(?P<season>\d{2})(?P<ep>[1-9][0-9]|0[1-9])(?:[-_. ]+|$)")
.expect("REGEX_82")
});
pub static REGEX_83: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.+?)[-_. ](?:Se\.(?P<season>\d{1,2}|\d{4})(?:(?:[-_ ]?afl\.)(?P<ep1>\d{1,3})(?:(?:[-]|[-_ ]en[-_ ])(?P<ep2>\d{1,3}))*))")
.expect("REGEX_83")
});
pub static REGEX_84: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?P<title>.*?)(?:[^a-zA-Z0-9()\[\]!]+S?(?P<season>\d{1,2})(?:(?:[-ex]){1,2}(?P<ep>\d))+)+(?:\W+|_|$)")
.expect("REGEX_84")
});
pub static REGEX_85: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:Season(?:_|-|\s|\.)(?P<season>\d{1,2}))(?:_|-|\s|\.)(?P<ep>\d{1,2})")
.expect("REGEX_85")
});
pub static REGEX_86: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:(?P<season>\d{1,2})(?:-(?P<ep>\d{2,3})))").expect("REGEX_86")
});
pub static REGEX_95: Lazy<Regex> = Lazy::new(|| {
Regex::new(
r"(?i)^(?P<title>.+?)[-_. ](?P<season>[0]?\d?)(?:(?P<ep1>\d{2})(?P<ep2>\d{2}))[-_. ]",
)
.expect("REGEX_95")
});
pub static REGEX_96: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:\[.+?\][-_. ])?(?P<title>.+?)[-_. ]+?[(\[](?:S|Season|Saison|Series|Stagione)[-_. ]?(?P<season>\d{1,2})(?:[-_. )\]]|$)+(?P<extras>EXTRAS|SUBPACK)?")
.expect("REGEX_96")
});
pub static REGEX_97: Lazy<Regex> = Lazy::new(|| {
Regex::new(r"(?i)^(?:S?(?P<season>\d{1,2}|\d{4})(?:(?:[-_ ]?[ex])(?P<ep>\d)))")
.expect("REGEX_97")
});
pub static REPORT_TITLE_REGEXES: Lazy<Vec<IndexedRegex>> = Lazy::new(|| {
vec![
IndexedRegex {
index: 0,
regex: ®EX_00,
},
IndexedRegex {
index: 1,
regex: ®EX_01,
},
IndexedRegex {
index: 2,
regex: ®EX_02,
},
IndexedRegex {
index: 3,
regex: ®EX_03,
},
IndexedRegex {
index: 4,
regex: ®EX_04,
},
IndexedRegex {
index: 5,
regex: ®EX_05,
},
IndexedRegex {
index: 6,
regex: ®EX_06,
},
IndexedRegex {
index: 7,
regex: ®EX_07,
},
IndexedRegex {
index: 8,
regex: ®EX_08,
},
IndexedRegex {
index: 10,
regex: ®EX_10,
},
IndexedRegex {
index: 11,
regex: ®EX_11,
},
IndexedRegex {
index: 12,
regex: ®EX_12,
},
IndexedRegex {
index: 13,
regex: ®EX_13,
},
IndexedRegex {
index: 14,
regex: ®EX_14,
},
IndexedRegex {
index: 15,
regex: ®EX_15,
},
IndexedRegex {
index: 16,
regex: ®EX_16,
},
IndexedRegex {
index: 17,
regex: ®EX_17A,
},
IndexedRegex {
index: 17,
regex: ®EX_17B,
},
IndexedRegex {
index: 18,
regex: ®EX_18,
},
IndexedRegex {
index: 19,
regex: ®EX_19,
},
IndexedRegex {
index: 20,
regex: ®EX_20,
},
IndexedRegex {
index: 21,
regex: ®EX_21,
},
IndexedRegex {
index: 17,
regex: ®EX_17C,
},
IndexedRegex {
index: 22,
regex: ®EX_22,
},
IndexedRegex {
index: 23,
regex: ®EX_23,
},
IndexedRegex {
index: 24,
regex: ®EX_24,
},
IndexedRegex {
index: 25,
regex: ®EX_25,
},
IndexedRegex {
index: 26,
regex: ®EX_26,
},
IndexedRegex {
index: 27,
regex: ®EX_27,
},
IndexedRegex {
index: 28,
regex: ®EX_28,
},
IndexedRegex {
index: 29,
regex: ®EX_29,
},
IndexedRegex {
index: 30,
regex: ®EX_30,
},
IndexedRegex {
index: 31,
regex: ®EX_31,
},
IndexedRegex {
index: 32,
regex: ®EX_32,
},
IndexedRegex {
index: 33,
regex: ®EX_33,
},
IndexedRegex {
index: 34,
regex: ®EX_34,
},
IndexedRegex {
index: 35,
regex: ®EX_35,
},
IndexedRegex {
index: 36,
regex: ®EX_36,
},
IndexedRegex {
index: 37,
regex: ®EX_37,
},
IndexedRegex {
index: 38,
regex: ®EX_38,
},
IndexedRegex {
index: 39,
regex: ®EX_39,
},
IndexedRegex {
index: 40,
regex: ®EX_40,
},
IndexedRegex {
index: 41,
regex: ®EX_41,
},
IndexedRegex {
index: 42,
regex: ®EX_42,
},
IndexedRegex {
index: 43,
regex: ®EX_43,
},
IndexedRegex {
index: 44,
regex: ®EX_44,
},
IndexedRegex {
index: 45,
regex: ®EX_45,
},
IndexedRegex {
index: 46,
regex: ®EX_46,
},
IndexedRegex {
index: 47,
regex: ®EX_47,
},
IndexedRegex {
index: 48,
regex: ®EX_48,
},
IndexedRegex {
index: 49,
regex: ®EX_49,
},
IndexedRegex {
index: 50,
regex: ®EX_50,
},
IndexedRegex {
index: 51,
regex: ®EX_51,
},
IndexedRegex {
index: 52,
regex: ®EX_52,
},
IndexedRegex {
index: 53,
regex: ®EX_53,
},
IndexedRegex {
index: 54,
regex: ®EX_54,
},
IndexedRegex {
index: 55,
regex: ®EX_55,
},
IndexedRegex {
index: 56,
regex: ®EX_56,
},
IndexedRegex {
index: 57,
regex: ®EX_57,
},
IndexedRegex {
index: 59,
regex: ®EX_59,
},
IndexedRegex {
index: 60,
regex: ®EX_60,
},
IndexedRegex {
index: 61,
regex: ®EX_61,
},
IndexedRegex {
index: 62,
regex: ®EX_62,
},
IndexedRegex {
index: 63,
regex: ®EX_63,
},
IndexedRegex {
index: 64,
regex: ®EX_64,
},
IndexedRegex {
index: 65,
regex: ®EX_65,
},
IndexedRegex {
index: 66,
regex: ®EX_66,
},
IndexedRegex {
index: 67,
regex: ®EX_67,
},
IndexedRegex {
index: 68,
regex: ®EX_68,
},
IndexedRegex {
index: 69,
regex: ®EX_69,
},
IndexedRegex {
index: 70,
regex: ®EX_70,
},
IndexedRegex {
index: 71,
regex: ®EX_71,
},
IndexedRegex {
index: 72,
regex: ®EX_72,
},
IndexedRegex {
index: 73,
regex: ®EX_73,
},
IndexedRegex {
index: 74,
regex: ®EX_74,
},
IndexedRegex {
index: 75,
regex: ®EX_75,
},
IndexedRegex {
index: 76,
regex: ®EX_76,
},
IndexedRegex {
index: 77,
regex: ®EX_77,
},
IndexedRegex {
index: 78,
regex: ®EX_78,
},
IndexedRegex {
index: 79,
regex: ®EX_79,
},
IndexedRegex {
index: 80,
regex: ®EX_80,
},
IndexedRegex {
index: 81,
regex: ®EX_81,
},
IndexedRegex {
index: 82,
regex: ®EX_82,
},
IndexedRegex {
index: 83,
regex: ®EX_83,
},
IndexedRegex {
index: 84,
regex: ®EX_84,
},
IndexedRegex {
index: 85,
regex: ®EX_85,
},
IndexedRegex {
index: 86,
regex: ®EX_86,
},
IndexedRegex {
index: 87,
regex: ®EX_87,
},
IndexedRegex {
index: 88,
regex: ®EX_88,
},
IndexedRegex {
index: 89,
regex: ®EX_89,
},
IndexedRegex {
index: 90,
regex: ®EX_90,
},
IndexedRegex {
index: 91,
regex: ®EX_91,
},
IndexedRegex {
index: 92,
regex: ®EX_92,
},
IndexedRegex {
index: 93,
regex: ®EX_93,
},
IndexedRegex {
index: 94,
regex: ®EX_94,
},
IndexedRegex {
index: 95,
regex: ®EX_95,
},
IndexedRegex {
index: 96,
regex: ®EX_96,
},
IndexedRegex {
index: 97,
regex: ®EX_97,
},
]
});